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