]> git.decadent.org.uk Git - nfs-utils.git/blob - ChangeLog
2000-09-27 H.J. Lu <hjl@lucon.org>
[nfs-utils.git] / ChangeLog
1 2000-09-27  H.J. Lu <hjl@lucon.org>
2
3         * nfs-utils.spec: Rebuild.
4
5 2000-09-27  H.J. Lu <hjl@lucon.org>
6
7         * README: Updated for 0.2.1.
8
9 2000-09-27  H.J. Lu <hjl@lucon.org>
10
11         * nfs-utils.spec.in: Updated to use rpm macros and support
12         RedHat 7.0.
13
14 2000-09-25  H.J. Lu <hjl@lucon.org>
15
16         * configure.in (VERSION): Set to "0.2.1".
17         * configure: Regenerated.
18         * nfs-utils.spec: Updated.
19
20 2000-09-25  H.J. Lu <hjl@lucon.org>
21
22         * utils/mountd/auth.c (auth_authenticate_internal): Make sure a
23         non-NULL hostent is always returned.
24
25 2000-09-11  Ion Badulescu  <ionut@moisil.dev.hydraweb.com>
26
27         * etc/redhat/nfslock.init: don't kill lockd processes that do not
28         have an executable (i.e. kernel threads)
29
30 2000-09-01  H.J. Lu <hjl@lucon.org>
31
32         * README: Updated for 0.2.
33
34 2000-09-01  Jay Weber <jweber@valinux.com>
35
36         * etc/redhat/nfs.init: Added ability for rpc.mountd to default to
37         supporting version 3 of nfs if available, else it will fall back to
38         version 2 support only.
39
40 2000-08-30  H.J. Lu <hjl@lucon.org>
41
42         * configure.in (VERSION): Set to "0.2".
43         * configure: Regenerated.
44         * nfs-utils.spec: Updated.
45
46 2000-08-25  H.J. Lu <hjl@lucon.org>
47
48         * support/misc/tcpwrapper.c (logit): Modify the log output.
49
50 2000-08-25  Ion Badulescu  <ionut@cs.columbia.edu>
51
52         * utils/rquotad/rquotad.man, utils/statd/statd.man,
53         utils/mountd/mountd.man: updated
54         
55         * utils/mountd/Makefile (LIBS): added -lmisc $(LIBWRAP) $(LIBNSL)
56         * utils/rquotad/Makefile: fix comment
57
58         * support/misc/tcpwrapper.c (logit): added comment about waiting
59         for the children after fork()
60         
61         * utils/mountd/mountd.c (main): ignore SIGCHLD to prevent leaving
62         zombies behind (from logit()'s fork)
63         * utils/rquotad/rquota_svc.c (main): ditto
64         * utils/statd/statd.c (main): ditto
65
66         * utils/rquotad/rquota_svc.c (rquotaprog_1): pass RQUOTAPROG
67         to check_default instead of 0, for prognum
68
69         * utils/statd/statd.c (sm_prog_1_wrapper): pass SM_PROG
70         to check_default instead of 0, for prognum
71
72         * utils/mountd/mount_dispatch.c: Include "tcpwrapper.h" if
73         HAVE_TCP_WRAPPER is defined.
74         (mount_dispatch): Call check_default () if HAVE_TCP_WRAPPER is
75         defined. Reject an RPC call if check_default () fails.
76
77 2000-08-25  H.J. Lu <hjl@lucon.org>
78
79         * support/include/tcpwrapper.h: New for the tcp wrapper
80         support.
81         * support/misc/Makefile: Likewise.
82         * support/misc/from_local.c: Likewise.
83         * support/misc/tcpwrapper.c: Likewise.
84
85         * aclocal.m4 (AC_TCP_WRAPPER): New.
86         * configure.in: Use it. Substitute LIBWRAP.
87         * configure: Rebuilt.
88
89         * config.mk.in (LIBNSL): New.
90         (LIBWRAP): Likewise.
91
92         * support/Makefile (SUBDIRS): Add misc.
93
94         * support/lib/Makefile (LIBS): Add libmisc.a.
95
96         * utils/rquotad/Makefile (LIBS): Add
97         
98                 -lmisc $(LIBWRAP) $(LIBNSL)
99
100         * utils/statd/Makefile (LIBS): Likewise.
101
102         * utils/rquotad/rquota_svc.c: Include "tcpwrapper.h" if
103         HAVE_TCP_WRAPPER is defined.
104         (rquotaprog_1): Call check_default () if HAVE_TCP_WRAPPER is
105         defined. Reject an RPC call if check_default () fails.
106
107         * utils/statd/statd.c: Include "tcpwrapper.h" if
108         HAVE_TCP_WRAPPER is defined.
109         (sm_prog_1_wrapper): New. A wrapper for sm_prog_1. Call
110         check_default () before calling sm_prog_1 (). Define it as
111         sm_prog_1_wrapper if HAVE_TCP_WRAPPER is defined.
112
113 2000-08-25  Chip Salzenberg  <chip@valinux.com>
114
115         * debian/*: Complete Debian build support.
116         * etc/debian/*: Remove.
117
118 2000-08-24  Neil Brown <neilb@cse.unsw.edu.au>
119
120         * support/export/client.c(client_check): removed the "dot+1" as a
121           ypdomain argument to innetgr as this is entirely bogus.
122           It should always be NULL.
123         
124 2000-08-23  Neil Brown <neilb@cse.unsw.edu.au>
125
126         * support/export/xtab.c(xtab_read): introduce new mode for
127            reading xtab. i.e. a list of exports that might be known to the
128            kernel, or might not.  These are flagged as m_exported == -1
129         * support/export/xtab.c(xtab_mount_read):  call xtab_read with new
130            value "2" for xtab, meaning don't trust this too much.
131         * support/include/exportfs.h(struct mexport): changed m_exported
132            from one bit to an int so that it can hold new value
133         * utils/exportfs/exportfs.c(exportfs_ipdate): add an export to the
134            kernel if it is uncertain whether the kernel knows (m_exported == -1)
135         * utils/mountd/mountd.c(get_rootfh): similarly export to kernel if
136            status is uncertain
137
138         * support/nfs/xio.c(xflock): added O_CREAT when getting
139            a write lock so that missing files aren't fatal.
140
141         * etc/debian/nfs-common: new file from "potato"
142         * etc/debian/nfs-kernel-server: new file from "potato" plus fixes.
143          
144 2000-08-09  H.J. Lu <hjl@lucon.org>
145
146         * etc/redhat/nfs.init: Run /usr/sbin/exportfs first during
147         startup to ensure all existing clients work fine.
148
149         * support/export/xtab.c (xtab_mount_read): Pass 1 instead of 0
150         to xtab_read () for reading _PATH_XTAB.
151
152 2000-08-02  H.J. Lu <hjl@lucon.org>
153
154         * utils/mountd/auth.c (auth_authenticate_internal): Try to
155         avoid the reverse name lookup.
156
157 2000-07-04  H.J. Lu <hjl@lucon.org>
158
159         * utils/statd/log.c: Include <stdlib.h> for exit ().
160
161         * utils/statd/misc.c (xunlink): Add `{' and `}' to quiet the
162         gcc warning.
163
164 2000-07-04  H.J. Lu <hjl@lucon.org>
165
166         * configure.in (VERSION): Set to "0.1.9.1".
167         * configure: Regenerated.
168         * nfs-utils.spec: Updated.
169
170         * README: Updated.
171
172 2000-07-04  Neil Brown  <neilb@cse.unsw.edu.au>
173
174         * support/export/hostname.c (hostent_dup): Handle the NULL
175         h_aliases field.
176
177 2000-07-03  H.J. Lu <hjl@lucon.org>
178
179         * README: Update the util-linux requirement.
180
181 2000-07-03  H.J. Lu <hjl@lucon.org>
182
183         * configure.in (VERSION): Set to "0.1.9".
184         * configure: Regenerated.
185         * nfs-utils.spec: Updated.
186
187         * README: Updated.
188
189 2000-07-03  H.J. Lu <hjl@lucon.org>
190
191         * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
192         stop to ensure all clients can still access the server
193         before it is shutdown.
194
195 2000-06-30  Jeff Uphoff <juphoff@transmeta.com>
196
197         * tools/rpcgen/rpc_svcout.c (write_msg_out): Generate syslog()
198         calls with format string.
199         
200 2000-06-28  Chip Salzenberg  <chip@valinux.com>
201
202         * utils/statd/log.c (log): Call syslog with format string.
203
204 2000-06-27  H.J. Lu <hjl@lucon.org>
205
206         * utils/statd/statd.c (main): Use sysconf (_SC_OPEN_MAX)
207         instead of OPEN_MAX.
208
209 2000-06-27  H.J. Lu <hjl@lucon.org>
210
211         * README: Updated.
212
213 2000-06-27  H.J. Lu <hjl@lucon.org>
214
215         * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
216         startup to ensure all existing clients are exported.
217
218         * configure.in (VERSION): Set to "0.1.8.2".
219         * configure: Regenerated.
220         * nfs-utils.spec: Updated.
221
222 2000-06-06  H.J. Lu <hjl@lucon.org>
223
224         * configure.in (VERSION): Set to "0.1.8.1".
225         * configure: Regenerated.
226         * nfs-utils.spec: Updated.
227
228 2000-06-06  H.J. Lu <hjl@lucon.org>
229
230         * utils/mountd/mountd.c (mount_dump_1_svc): Cast svc_getcaller
231         to "struct sockaddr_in *" for glibc 2.2.
232         (mount_umnt_1_svc): Likewise.
233         (mount_umntall_1_svc): Likewise.
234         (mount_export_1_svc): Likewise.
235         (mount_exportall_1_svc): Likewise.
236         (mount_pathconf_2_svc): Likewise.
237         (get_rootfh): Likewise.
238
239 2000-06-04  H.J. Lu <hjl@lucon.org>
240
241         * etc/redhat/nfs.init: Fix a typo in comment.
242
243 2000-05-31  H.J. Lu <hjl@lucon.org>
244
245         * configure.in (VERSION): Set to "0.1.8".
246         * configure: Regenerated.
247         * nfs-utils.spec: Updated.
248
249         * README: Updated.
250
251 2000-05-31  H.J. Lu <hjl@lucon.org>
252
253         * configure.in (VERSION): Set to "0.1.7.5".
254         * configure: Regenerated.
255         * nfs-utils.spec: Updated.
256
257         * support/include/nfslib.h (exportent): Add a new field,
258         r_count, to count the number of mounts from a client.
259         (getrmtabent): Take a new argument for position in file.
260         (putrmtabent): Likewise.
261         (fgetrmtabent): Likewise.
262         (fputrmtabent): Likewise.
263         * support/nfs/rmtab.c (getrmtabent): Handle the new argument
264         for position in file.
265         (fgetrmtabent): Likewise.
266         (putrmtabent): Likewise.
267         (fputrmtabent): Likewise.
268
269         * support/nfs/rmtab.c (fgetrmtabent): Get value for the new
270         field, r_count.
271
272         * support/export/rmtab.c (rmtab_read): Pass NULL as the new
273         argument to getrmtabent (), fgetrmtabent (), putrmtabent ()
274         and fputrmtabent ().
275         * utils/mountd/rmtab.c (mountlist_add): Likewise.
276         (mountlist_del): Likewise.
277         (mountlist_del_all): Likewise.
278         (mountlist_list): Likewise.
279
280         * utils/mountd/rmtab.c (mountlist_add): Increment "r_count"
281         for the existing entry and initialize "r_count" to 1.
282         (mountlist_del): Decrement "r_count".
283
284 2000-05-18  H.J. Lu <hjl@lucon.org>
285
286         * configure.in (VERSION): Set to "0.1.7.4".
287         * configure: Regenerated.
288         * nfs-utils.spec: Updated.
289
290 2000-05-18  H.J. Lu <hjl@lucon.org>
291
292         * etc/redhat/nfs.init (restart): Just do stop and start.
293
294 2000-05-09  Jay Weber <jweber@valinux.com>
295
296         * utils/rquotad/hasquota.c: added support for ext3 recognition
297         in rquotad.
298         * utils/rquotad/mntent.h: Likewise.
299
300 2000-05-01  H.J. Lu <hjl@lucon.org>
301
302         * configure.in (VERSION): Set to "0.1.7.3".
303         * configure: Regenerated.
304         * nfs-utils.spec: Updated.
305
306 2000-05-01  H.J. Lu <hjl@lucon.org>
307
308         * utils/rquotad/rquota_server.c (getquotainfo): Skip bad
309         mounting poins in /etc/fstab.
310
311 2000-05-01  H.J. Lu <hjl@lucon.org>
312
313         * configure.in (VERSION): Set to "0.1.7.2".
314         * configure: Regenerated.
315         * nfs-utils.spec: Updated.
316
317 2000-05-01  H.J. Lu <hjl@lucon.org>
318
319         * utils/rquotad/rquota_server.c (getquotainfo): Call stat ()
320         to check for the mounting point.
321
322 2000-04-29  Chip Salzenberg  <chip@valinux.com>
323             Neil Brown  <neilb@cse.unsw.edu.au>
324
325         * Really re-use RPC ports.
326           (Fixes earlier patch.  Sorry, Neil.)
327
328 2000-04-26  H.J. Lu <hjl@lucon.org>
329
330         * configure.in (VERSION): Set to "0.1.7.1".
331         * configure: Regenerated.
332         * nfs-utils.spec: Updated.
333
334 2000-04-26  H.J. Lu <hjl@lucon.org>
335
336         * etc/redhat/nfslock.init: Check if lockd exits before killing
337         it.
338
339 2000-04-25  H.J. Lu <hjl@lucon.org>
340
341         * README: Require util-linux-2.10f-mount-rpc.patch for mount.
342
343 2000-03-21 Michael Weiser <michael@weiser.saale-net.de>
344
345         * support/nfs/exports.c (parsesquash): Correctly set the
346         return pointer.
347
348 Tue Mar 21 11:38:48 EST 2000 NeilBrown <neilb@cse.unsw.edu.au>
349
350         * support/include/nfs/nfs.h: Removed knowledge of internals of
351              kernel filehandles (which can change) and defined nfs_fh_size
352              which has variable size
353         
354         * support/nfs/getfh.c: defined getfh_size to use new syscall to
355              get variable sized file handles, and change getfh{,old} to
356              use nfs_fh_size        
357         
358         * utils/mountd/mountd.c: use nfd_fh_size and call getfh_size for
359              NFSv3 file handles
360
361         * tools/Makefile, tools/nlmtest/nlmtest.c
362              nlmtest.c depended on internel format of file handles, so now
363              doesn't work.
364
365         
366 2000-03-12  Chip Salzenberg  <chip@valinux.com>
367             Neil Brown  <neilb@cse.unsw.edu.au>
368
369         * support/nfs/rpcmisc.c (rpc_init): Share transports.
370
371 2000-03-13 H.J. Lu <hjl@lucon.org>
372
373         * etc/redhat/nfsd.init: Updated.
374
375         * etc/redhat/nfslock.init: Updated.
376
377         * nfs-utils.spec.in: Updated.
378
379         * configure.in (VERSION): Set to "0.1.7".
380         * configure: Regenerated.
381         * nfs-utils.spec: Updated.
382
383         * README: Updated.
384
385 Wed Mar  8 09:42:43 2000 Neil Brown <neilb@cse.unsw.edu.au>
386
387         * utils/exportfs/exportfs.c (dump): Included printing of
388            nohide, no_subtree_check, and insecure_locks
389
390 2000-02-26  Chip Salzenberg  <chip@valinux.com>
391
392         * config.mk.in (INSTALLSUID): Strip ("-s").
393         (INSTALLSCRIPT): Define.
394         * utils/nhfsstone/Makefile: Use it.
395
396 2000-02-26  Chip Salzenberg  <chip@valinux.com>
397
398         * utils/lockd/lockd.man: Create.
399         * utils/lockd/Makefile: Install it.
400         * utils/nhfsstone/nhfs{run,nums,graph}.man: Create.
401         * utils/nhfsstone/nhfsstone.man: Change suffix from ".1".
402         * utils/nhfsstone/Makefile: Install the helper scripts and
403           all four man pages.
404         * utils/exportfs/exports.man: Fix typo.
405
406 2000-02-26  Chip Salzenberg  <chip@valinux.com>
407
408         * support/nfs/xio.c (xungetc): Decrement line number when
409         character to unget is newline.  Make first parameter int, so
410         it can distinguish EOF from \377.
411         * support/include/xio.h (xungetc): Adjust prototype.
412
413 Fri Feb  4 23:42:23 2000 Neil Brown <neilb@cse.unsw.edu.au>
414
415         * support/include/nfs/export.h: added NFSEXP_NOAUTHNLM
416         * support/nfs/exports.c: added handling for NFSEXP_NOAUTHNLM
417         * utils/exportfs/exports.man: added documentation for no_auth_nlm.
418
419         This is for supporting a new option introduced in 2.3.42
420
421 Thu Feb  3 14:55:48 2000 H.J. Lu <hjl@lucon.org>
422
423         * COPYING: Added. GPL.
424
425 Thu Feb 03 14:40:40 2000 Cristian Gafton <gafton@redhat.com>
426
427         * utils/rquotad/rquota_server.c (getquotainfo): Call statfs ()
428         to get the block size.
429
430 Tue Jan 25 11:04:17 2000 H.J. Lu <hjl@lucon.org>
431
432         * nfs-utils.spec.in: Update ftp site.
433
434 Mon Jan 17 11:48:18 2000 H.J. Lu <hjl@lucon.org>
435
436         * README: Update hostnames.
437
438 Tue Jan 11 10:06:22 2000 H.J. Lu <hjl@lucon.org>
439
440         * configure.in (VERSION): Set to "0.1.6".
441         * configure: Regenerated.
442         * nfs-utils.spec: Updated.
443
444         * README: Updated.
445
446 Mon Jan 10 14:26:33 2000 H.J. Lu <hjl@lucon.org>
447
448         * utils/mountd/auth.c (auth_authenticate_internal): Call
449         xstrdup for hostname before passing it to gethostbyname.
450
451         * utils/mountd/mountd.c (get_exportlist): Use xstrdup instead
452         of strdup.
453
454 Sun Dec 19 09:35:01 1999  H.J. Lu <hjl@lucon.org>
455
456         * README: Update the mailing list address.
457
458 Sun Dec 19 09:22:28 1999  H.J. Lu <hjl@lucon.org>
459
460         * configure.in (VERSION): Set to "0.1.5".
461         * configure: Regenerated.
462         * nfs-utils.spec: Updated.
463
464         * README: Updated.
465
466 Mon Dec 13 13:40:20 1999  H.J. Lu <hjl@lucon.org>
467
468         * utils/rquotad/hasquota.c (hasquota): Malloc one more char
469         for '/'.
470
471 Mon Dec  6 09:42:45 1999  H.J. Lu <hjl@lucon.org>
472
473         * configure.in (VERSION): Set to "0.1.4".
474         * configure: Regenerated.
475         * nfs-utils.spec: Updated.
476
477         * README: Updated.
478
479 Mon Dec  6 09:28:07 1999  H.J. Lu <hjl@lucon.org>
480
481         * nfs-utils.spec.in: New file.
482
483         * config.mk.in (VERSION): Changed to "nfs-utils @VERSION@".
484
485         * configure.in (nfs-utils.spec): Added to AC_OUTPUT.
486
487 1999-12-04  Chip Salzenberg  <chip@valinux.com>
488
489         * config.mk.in: Use $(CC) as set by configure.
490
491 1999-12-04  Chip Salzenberg  <chip@valinux.com>
492
493         * rules.mk: Call $(MAKE) with $(MFLAGS).
494
495 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
496
497         * tools/rpcgen/rpc_main.c (h_output): Generate IXDR_GET_INT32,
498         IXDR_PUT_INT32, IXDR_GET_U_INT32 and IXDR_PUT_U_INT32.
499
500 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
501
502         * nfs-utils.spec (Version): Set to 0.1.3.
503
504         * configure.in (VERSION): Set to "nfs-utils 0.1.3".
505         * configure: Regenerated.
506
507         * README: Updated.
508
509 Mon Nov 29 11:15:47 1999  H.J. Lu <hjl@lucon.org>
510
511         * utils/rquotad/rquota_server.c (nfsmount_to_devname): Removed.
512         (_PATH_DEV_DSK): Likewise.
513         (getquotainfo): Match the mounting point from /etc/mtab
514         instead of calling nfsmount_to_devname ().
515
516 1999-11-24  Chip Salzenberg  <chip@valinux.com>
517
518         * utils/statd/monitor.c (sm_mon_1_svc): Accept lockd callbacks
519         to the new port 24 as well as the historical port 100021.
520
521 Tue Nov 23 10:21:34 1999 Neil Brown <neilb@cse.unsw.edu.au>
522
523         * etc/redhat/nfsd.init (stop): moved exportfs -ua after
524         stopping nfsd to stop spurious ESTALE on server shutdown.
525         
526 Tue Nov 23 10:13:39 1999  Neil Brown <neilb@cse.unsw.edu.au>
527
528         * support/nfs/exports.c (parseopts): make copy of opt string
529         before 'nul'ing out commas so that
530
531         # exportfs -o option1,option2 hosta:/fs hostb:/fs
532
533         applies both options to both exports.
534
535 Thu Oct 28 12:55:42 1999  H.J. Lu <hjl@lucon.org>
536
537         * README: Fix a few typos.
538
539         * tools/rpcgen/rpc_cout.c (print_header): Use int32_t instead
540         of long.
541         * tools/rpcgen/rpc_hout.c (pdefine): Likewise.
542         * tools/rpcgen/rpc_main.c (c_initialize): Likewise.
543         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
544         (unsigned_dec): Likewise.
545         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
546         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
547
548         * tools/rpcgen/rpc_cout.c (emit_single_in_line): Use INT32
549         instead of LONG.
550         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
551         (unsigned_dec): Likewise.
552         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
553         * tools/rpcgen/rpc_scan.h (tok_kind): Likewise.
554         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
555
556 Thu Oct 28 11:27:51 1999 Neil Brown <neilb@cse.unsw.edu.au>
557
558         * support/include/nfs/export.h addedd NFSEXP_NOSUBTREECHECK
559         * support/nfs/exports.c: added {no_,}subtree_check and changed
560           crossmnt to nohide
561         * utils/exportfs/exports.man: added no_subtree_check and nohide
562           and removed irrelevant stuff from unfsd.
563         * support/export/rmtab.c: rmtab_read didn't quite do the right
564           thing if a pathname from rmtab was a subdirectory of an export-point
565
566 Tue Oct 26 17:22:40 1999  H.J. Lu <hjl@lucon.org>
567
568         * README: Updated ftp site.
569
570 Mon Oct 25 18:12:45 1999  H.J. Lu <hjl@lucon.org>
571
572         * nfs-utils.spec (Version): Set to 0.1.2.
573
574         * configure.in (VERSION): Set to "nfs-utils 0.1.2".
575         * configure: Regenerated.
576
577         * README: Updated.
578
579 Mon Oct 25 18:11:21 1999  H.J. Lu <hjl@lucon.org>
580
581         * utils/mountd/auth.c (auth_error): Add "no_forward_dns".
582         (auth_authenticate_internal): Check for NULL return on forward
583         DNS lookup.
584         (auth_authenticate): Handle "no_forward_dns".
585
586 Thu Oct 21 16:22:06 1999  H.J. Lu <hjl@lucon.org>
587
588         * Version 0.1.1 released.
589
590         * nfs-utils.spec (Version): Set to 0.1.1.
591
592         * configure.in (VERSION): Set to "nfs-utils 0.1.1".
593         * configure: Regenerated.
594
595         * README: Updated.
596
597 Mon Oct 18 17:43:29 1999  H.J. Lu <hjl@lucon.org>
598
599         * nfs-utils.spec (Obsoletes): Fixed a typo, change knfsd-client
600         to knfsd-clients.
601         (Provides): Likewise.
602
603 Mon Oct 18 14:56:22 1999  H.J. Lu <hjl@lucon.org>
604
605         * Initial version 0.1 released.
606
607         * configure.in (VERSION): Set to "nfs-utils 0.1".
608         * configure: Regenerated.
609
610 Mon Oct 18 14:54:57 1999  H.J. Lu <hjl@lucon.org>
611
612         * utils/mountd/mountd.c (get_exportlist): Cleanup.
613
614         * utils/exportfs/exportfs.c (unexport_all): Unexport from
615         kernel only if the entry is exported to kernel.
616         (unexportfs): Likewise.
617
618 Wed Sep 08 16:49:32 1999  Neil Brown <neilb@cse.unsw.edu.au>
619
620 1/ utils/mountd/rmtab.c::mountlist_list
621
622      This routine stats the rmtab file to see if it has changed.  It
623      if has, it cleans up it's old copy of the data. But it still
624      always re-read the file, thus returning multiple copies of the
625      data on consecutive calls without intervening changes.
626      "Showmount -a" didn't show this as it appears to sort/unique the
627      data, but 'strace showmount -a' showed that the size of the
628      datagram that it received grew.
629
630      I moved the getrmtabent loop inside the mtime test.
631
632 2/ utils/exportfs/exportfs.c
633    
634      Many routines used the m_path field of m_export instead of
635      e_path.
636      According to the comment in nfslib.h, m_path should only
637      be used when processing a mount request (i.e. in mountd)
638      where the mountpoint may be a subdirectory of the export point.
639
640      I changed all occurances of m_path to e_path
641
642
643 3/ utils/exportfs/exportfs.c:main
644
645       extra arguments are not meaningful with -a or -r, but
646       exportfs accepted them and then ignored the -a/-r, expect that
647       -r would still unexport everything first.
648
649       I generate an error if there are extra args and f_all
650
651 4/ utils/exportfs/exportfs.c:main
652      extract dump out as a special case.
653
654 5/ utils/exportfs/exportfs.c
655      made f_reexport a local variable.
656
657
658 6/ utils/exportfs/exportfs.c:main,exportall
659
660     support/export/rmtab.c
661        only  mayexport on newly created entries, don't set xtabent at all
662
663 7/ support/include/nfslib.h
664
665       add #define _PATH_PROC_EXPORTS to be /proc/fs/nds/exports
666
667 8/ support/export/xtab.c
668
669       xtab_mount_read loads data from _PATH_PROC_EXPORTS if it exists,
670       else from xtab
671
672
673 9/ support/export/xtab.c
674
675       xtab_mount_read now sets m_exported, and NOT
676         xtabent and mayexport
677
678       removed the append arguement from xtab_write as it was
679         never used.
680
681       added is_export flag to xtab_write similar to xtab_read
682         if is_export, only write entries with m_xtabent or m_addxtab
683         if !is_export, only write entries with m_exported
684      
685 10/ support/export/export.c::export_allowed_internal
686
687       added test for exp->m_mayexport, as the export tree
688         may have entries that are no longer allowed to be exported,
689         and so shouldn't caused deduced exported by rmtab_read
690
691 11/ utils/exportfs/exportfs.c::main
692         error checking of flags.
693
694 12/ utils/exportfs/exportfs.c
695
696         total rewrite of export and unexport logic.
697         We now:
698         -  build an exportslist of valid exports, based on
699            current etab file  and arguments,
700         -  read rmtab to instantiate relevant wild card entries
701         -  read etab to find out what is currently exported
702         -  synchronise intention with reality
703         -  write out etab and xtab
704
705 13/  various
706         discard the m_addxtab flag
707         add m_changed flag so we know what to report in exportfs
708
709 14/ utils/mountd/auth.c:auth_authenticate
710
711         the value returned by gethostbyaddr was trusted.
712
713         It now follows this with a call to gethostbyname
714         and checks that the address is in the list.
715
716 15/ support/export/nfsctl.c::cltsetup,expsetup
717
718         force client names to lowercase as kernel is
719         sensitive to case
720
721 16/ quietened a few compiler warnings
722
723 17/ support/export/client:client_lookup
724
725      look for pre-existing client with same name before creating
726         a new one.
727
728 18/ support/include/exportfs.h
729
730      The ordering of the MCL_* enum was:
731         ANONYMOUS, FQDN, SUBNETWORK, WILDCARD, NETGROUP
732
733      I moved ANONYMOUS to the end.
734
735      The ordering is significant when an export entry is being searched for to 
736         match a given address.  There are two problems with ANONYMOUS being first.
737
738         1/ if a directory is exported rw to a couple of hosts and ro to everyone else,
739            then the ro case will always be found first and the privileged hosts won't get
740            their privilege
741         2/ When mountd gets a request to mount an ANONYMOUSly exported tree, it creates a FQDN
742            export entry for the specific host, and writes it to xtab.
743            When another request comes from the same host, the ANONYMOUS entry is found again, 
744            before the new FQDN entry, so it creates another FQDN entry and writes it to xtab
745            again.  If causes bloat in xtab.
746
747       Putting ANONYMOUS at the end reflects it's nature as a catch-all
748
749 19/ utils/exportfs/exportfs.man
750         many updates to the man page to reflect changes to the code
751
752 -----------------------
753
754
755
756 TODO:
757
758 - allow exportfs to modify rmtab file
759 - make sure kernel never gets two clients with same IP address
760     - possible kernel should reject
761     - needs to be some way to lookup client in kernel by IP address
762 - maybe get kernel to do case-insensitive comparisons on client names
763 - remove unused clients from kernel
764
765 - change etab to xtab and xtab to xtab.active
766
767 - timestamp and/or statd-stamp in rmtab for removing old entries.
768
769 Mon Oct 18 11:48:07 1999  H.J. Lu <hjl@lucon.org>
770
771         * linux-nfs: New directory.
772         * linux-nfs/ChangeLog: Moved from ..
773         * linux-nfs/INSTALL: Likewise.
774         * linux-nfs/KNOWNBUGS: Likewise.
775         * linux-nfs/NEW: Likewise.
776         * linux-nfs/README: Likewise.
777         * linux-nfs/THANKS: Likewise.
778         * linux-nfs/TODO: Likewise.
779
780         * Starting from knfsd 1.4.7.