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