Change CROSSMNT to CROSSMOUNT
[nfs-utils.git] / ChangeLog
1 2003-08-04 NeilBrown <neilb@cse.unsw.edu.au>
2         * support/include/nfs/export.h, support/nfs/exports.c,
3         utils/exportfs/exports.c, utils/mountd/mountd.c:  change
4         NFSEXP_CROSSMNT to NFSEXP_CROSSMOUNT to avoid confusion with older
5         meaning. Also remove meaningless
6         NFSEXP_{UIDMAP,KERBEROS,SUNSECURE}
7         
8 2003-08-04 NeilBrown <neilb@cse.unsw.edu.au>
9         * support/export/xtab.c, support/include/nfslib.h,
10         support/nfs/cacheio.c, support/nfs/nfssvc.c,
11         utils/exportfs/exportfs.c, utils/exportfs/exportfs.man,
12         utils/exportfs/nfsd.man, utils/mountd/cache.c: support
13         /proc/fs/nfsd/* as a perferred alternate to /proc/fs/nfs/*
14         (nfs-utils-1.0.5-post2)
15         
16 2003-08-04 NeilBrown <neilb@cse.unsw.edu.au>
17         * support/nfs/nfsexport.c: open channel file O_WRONLY when
18         only writing.
19         * utils/mountd/cache.c: maintain mountlist when new_cache is
20         active. Also use O_WRONLY for channel files.
21         * utils/mountd/mountd.h: mountlist_{del,add} now take a host name
22         rather than an nfs_export.
23         * utils/mountd/rmtab.c: ditto.
24         (nfs-utils-1.5.0-post1)
25         
26 2003-07-24  Chip Salzenberg  <chip@pobox.com>
27
28         * support/nfs/xlog.c (xlog): Revise buffer-overflow fix to
29         use Debian security team's cleaner approach.
30         * debian/changelog: Version 1.0.5-1.
31         * debian/nfs-kernel-server.init: Cosmetic changes.
32
33 2003-07-18 NeilBrown <neilb@cse.unsw.edu.au>
34
35         Release 1.0.5:
36          1.0.4 was a bit of a brown-paper-bag-release because of the extra
37          'free' in auth.c.  So I'm releasing this just a few days later.
38
39         * support/nfs/cacheio.c(cache_flush): Correct test for 'open
40         failed'
41         * utils/exportfs/exportfs.c(main): If "-f" given as lone option,
42         check if new_cache is enabled, error if not, flush and exit if it
43         is. 
44         * utils/exportfs/exportfs.man: Explain -f option and explain the
45         two different modes that exportfs can work in.
46         * utils/mountd/mountd.c: Do not change RLIMIT_NOFILE if the -o
47         option wasn't given.
48         * utils/mountd/mountd.man: Record the change if default behaviour
49         for RLIMIT_NOFILE.
50         * configure.in, nfs-utils.spec: update version to 1.0.5 and
51         run autoconf
52         
53 2003-07-15 NeilBrown <neilb@cse.unsw.edu.au>
54
55         * utils/mountd/mountd.c(main): getopt string fix for 'o'
56         * utils/mountd/auth.c(auth_authenticate): remove extra 'free'
57         * utils/exportfs/exportfs.c(main): make 'exportfs -f' just flush
58         the caches.
59         * support/include/nfs/export.h: Reserve a bit for possible ACL
60         related use.
61         
62 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
63
64         * utils/exportfs/nfsd.man: new man page for nfsd filesystem. Also
65         assorted changed to cope with section 7 of the manual.
66         * configure.in, nfs-utils.spec: Update version to 1.0.4
67         * run autoconf
68
69         This is a 'pre-release' for 1.1.0  Hopefully 1.1.0 will be the
70         baseline for 2.6 and 2.8.  I.e. it should continue to work right
71         through the 2.8 (or 3.0) kernel series.  Previous releases wont.
72
73 2003-07-04 NeilBrown <neilb@cse.unsw.edu.au>    
74         Steve Dickson <SteveD@redhat.com>
75
76         statd cleanup:
77         * utils/statd/statd.c: create a pidfile with pid of statd, and
78         truncate it when statd exists.
79         * utils/statd/statd.c: drop privs by setuid to owner of SM_DIR,
80         and warn if this is root.
81         * utils/statd/statd.c: when statd forks, connect child to parent
82         with a pipe, and send a byte down the pipe once the child is
83         working properly.
84         * Makefile: create and chown sm, sm.bak, state when "make install"
85         * configure.in: add --with-statduser= option which defaults to
86         "rpcuser" or "nobody"
87         * config.mk.in: pass "statduser" through to Makefile
88         
89 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
90
91         * support/include/nfs/nfs.h: Make sure correct __kernel_dev_t is
92         used as the size was changed somewhere in 2.5.60-2.5.70.  Without
93         this nfs-utils compiles against 2.6 headers will not work on a
94         2.4 kernel.     
95         
96 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
97
98         * support/nfs/nfssvc.c(nfssvc): If /proc/fs/nfs/threads exists,
99         set number of threads by writing to there.  This means it will
100         still work when the syscall interface goes away in 2.7.
101
102 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
103         fumihiko kakuma <kakmy@mvh.biglobe.ne.jp>
104
105         * utils/exportfs/exportfs.c(unexportfs): improve host comparison
106         so as to only export the wildcard exports that were asked for.
107         * support/export/export.c(export_allowed): changed to return the
108         nfs_export rather than a "struct exportent", as m_changed is
109         needed by called
110         * support/export/rmtab.c(rmtab_read): modified to deal with
111         interface change for export_allowed(), and enhanced to preserve
112         m_changed flag when a wild-card export causes the creation of
113         a non-wildcard export.
114         
115 2003-07-02 NeilBrown <neilb@cse.unsw.edu.au>
116         Steve Dickson <SteveD@redhat.com>
117
118         * utils/mountd/mountd.man: Add valid kinds of debugging.
119         * utils/mountd/mountd.c(main): ignore SIGPIPE
120         * utils/nfsstat/nfsstat.c: fine-tune printing of warning so
121         we don't get warnings about unavailable stats that weren't asked
122         for.
123         
124 2003-06-24 NeilBrown <neilb@cse.unsw.edu.au>
125
126         * support/nfs/nfsexport.c(exp_unexp): When unexporting filesystems
127         via /rpc/net/rpc/nfsd*/channel, set the expiry date to 1, not
128         'forever', so things disappear out of the cache rather than just
129         be ignored. 
130         
131 2003-06-16  "J. Bruce Fields" <bfields@fieldses.org>
132
133         * utils/mountd/cache.c(nfsd_fh): don't export the export_ent
134         if it wasn't found.
135
136 2003-06-16  NeilBrown   <neilb@cse.unsw.edu.au>
137
138         * debian/nfs-kernel-server.init,etc/nodist/nfs-server,
139         etc/redhat/nfs.init: when checking if V3 is supported, make sure
140         nfs server 'knows' about 127.0.0.1 first.
141         
142 2003-06-10  Chip Salzenberg  <chip@pobox.com>
143
144         * support/nfs/xlog.c (xlog): Fix off-by-one buffer overflow bug.
145         * debian/changelog: Version 1.0.3-2.
146
147 2003-05-30 Michael Griffith <grif@michaelgriffith.com>
148         NeilBrown <neilb@cse.unsw.edu.au>
149
150         utils/nfsstat/nfsstat.c(print_callstats): use unsigned
151         long long to avoid overflow when printing stats.
152         
153 2003-05-30  NeilBrown <neilb@cse.unsw.edu.au>
154
155         * support/export/export.c, support/include/nfslib.h,
156         support/nfs/export.c, utils/exportfs/exportfs.c,
157         utils/mountd/mountd.c: new export option "mountpoint"
158         If no path is given, then the export point must be a
159         mount point, or it won't be exported.  If a path is 
160         given (e.g. mountpoint=/path) then that path must be
161         a mountpoint or the exportpoint won't be exported.
162         * utils/exportfs/exportfs.man: document mountpoint option.
163         * support/misc/mountpoint.c: New file with is_mountpoint()
164         to determine if something is a mountpoint.
165         
166 2003-05-23  NeilBrown <neilb@cse.unsw.edu.au>
167
168         * utils/mountd/cache.c(cache_get_filehandle): take a separate path
169         argument as we might not be getting the filehandle for the
170         mountpoint.
171         * utils/mountd/mountd.c(get_rootfh): pass real path when calling
172         cache_get_filehandle.
173         * utils/mountd/mountd.c(get_rootfh): check export point and
174         requested directory are on the same filesystem, and complain if
175         not.
176         
177 2003-05-22  NeilBrown <neilb@cse.unsw.edu.au>
178
179         * utils/mountd/auth.c(auth_authenticate_internal): make sure
180         portnumber is still checked when using new cache lookup.
181         
182 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
183
184         * utils/exportfs/exportfs.c: Use check_new_cache and cache_flush
185          Don't actually talk to kernel when new cache is in effect, except
186          to flush
187         * utils/exportfs/exportfs.c: add -f option to fully flush cache.
188         * support/export/xtab.c: Only rename new xtab into place if it has
189          changed, thus preserving modify date for exportfs to use when
190          flushing.
191         * support/nfs/cacheio.c: Add cache_flush
192         * support/export/xtab.c: Only rename new xtab into place if it has
193          changed, thus preserving modify date for exportfs to use when
194          flushing.
195         
196 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
197
198         * support/export/client.c: Add client_compose, client_member to
199         handle new composite client names
200         * support/include/exportfs.h: Declare above functions.
201         * utils/mountd/auth.c: use client_compose to determine calling
202         client if new cache is being used.
203         * utils/mountd/auth.c: call cache_export to export a filesystem if
204         new_cache, check if new cache is used, and call my_svc_run instead
205         of svc_run
206         * utils/mountd/svc_run.c: new file defining my_svc_run
207         * utils/mountd/cache.c: new file for handling cache upcalls.
208         * support/nfs/cacheio.c(check_new_cache): new function to check if
209         new cache should be used.
210         
211         
212 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
213
214         * support/include/nfs/export.h: New CROSSMNT distinct from NOHIDE
215         * support/nfs/exports.c: Make CROSSMNT distinct from NOHIDE
216         * utils/exportfs/exportfs.c(dump): ditto
217         
218 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
219
220         * support/export/hostname.c(get_reliable_hostbyaddr): new function
221         to get host name from address with full checking of authenticity.
222         * support/include/misc.h: declare above function
223         * utils/mountd/auth.c(auth_authenticate_internal): remove all
224         logic for authenticating address.
225         * utils/mountd/auth.c(auth_authenticate): call new
226         get_reliable_hostbyaddr to to hostname lookup before calling _internal.
227         
228         
229 2003-03-30  NeilBrown <neilb@cse.unsw.edu.au>
230
231         * tools/rpcgen/rpc_main.c(find_cpp): removed
232         * tools/rpcgen/rpc_main.c(open_input): use execvp to find "cpp", 
233         then try hard-coded paths.
234         
235 2003-03-26  Chip Salzenberg  <chip@pobox.com>
236
237         * debian/changelog: Version 1.0.3-1.
238
239 2003-03-26 NeilBrown <neilb@cse.unsw.edu.au>
240
241         * utils/mountd/rmtab.c (slink_safe_rename): real_newpath should be
242         "const char*", not "char*".
243
244 2003-03-26 NeilBrown <neilb@cse.unsw.edu.au>
245
246         * configure.in (VERSION): Set to "1.0.3".
247         * nfs-utils.spec: Likewise.
248         * configure: Regenerated.
249
250 2003-03-26 NeilBrown <neilb@cse.unsw.edu.au>
251
252         * support/nfs/cacheio.c: New File - support for read/writing
253         to export cache in /proc/rpc/*/channel
254         * support/nfs/Makefile: compile cacheio.c
255         * support/include/nfslib.h: declare cacheio.c functions
256         * support/nfs/nfsexport.c: export and unexport through
257         /proc/rpc/*/channel if possible, as old syscall interface
258         may not survive into 2.6 on all architectures.
259         
260 2003-02-19 NeilBrown <neilb@cse.unsw.edu.au>    
261         Ben Leslie <benno@sesgroup.net>
262
263         * support/nfs/rpcmisc.c(rpc_init):  change test for ignoring
264         "defport" from (__rpcfdtype == 0) to (__rpcpmstart==0).  The
265         former would incorectly ignore defport if the application 
266         explicitly set __rpcfdtype.  The later is sufficient to avoid the
267         special handling in the case where stdin is an internet socket.
268
269         * utils/mountd/mountd.c(main): Add 'n' to option list in
270         getopt_long as this is a short form of --no-tcp which want being
271         checked.
272         
273 2003-02-12  Chip Salzenberg  <chip@pobox.com>
274
275         * debian/changelog: Version 1.0.2-2.
276
277 2002-11-27  Chip Salzenberg  <chip@pobox.com>
278
279         * utils/mountd/rmtab.c (slink_safe_rename): Fix off-by-one buffer
280         overflow bug.  Reformat per rest of source file.
281
282 2002-11-19  NeilBrown <neilb@cse.unsw.edu.au>
283
284         * utils/exportfs/exports.man: Correct notes about whether the wild
285         card characters match a period.  They do.
286         
287 2002-10-15  Juan Gomez <juang@us.ibm.com>
288
289         * utils/mountd/rmtab.c (slink_safe_rename): New. Support
290         symlink.
291         (mountlist_add): Call slink_safe_rename instead of rename.
292
293 2002-10-11  H.J. Lu <hjl@lucon.org>
294
295         * support/include/exportfs.h (export_errno): New.
296
297         * support/nfs/exports.c: Include <errno.h>.
298         (export_errno): New.
299         (getexportent): Set export_errno to EINVAL for bad option.
300         (parseopts): Likewise.
301         Report the location of the default sync/async option.
302
303         * utils/exportfs/exportfs.c (main): Initialize export_errno to
304         0. Return export_errno.
305
306 2002-10-11  Juan Gomez  <gomez@cs.sjsu.edu>
307         NeilBrown <neilb@cse.unsw.edu.au>
308
309         utils/statd/statd.c(killer): don't pmap_unset if in notify_only mode
310         utils/statd/statd.c(main): don't pmap_unset if in notify_only mode
311         
312 2002-09-16  Chip Salzenberg  <chip@pobox.com>
313
314         * utils/rquotad/rquota_svc.c (main): Use int for value of getopt.
315
316 2002-09-15  Chip Salzenberg  <chip@pobox.com>
317
318         * support/nfs/rpcmisc.c (rpc_init): Allow stdin to be a non-INET
319         socket, as occurs when run from sshd.
320         * debian/changelog: Version 1.0.2-1.
321
322 2002-09-12  H.J. Lu <hjl@lucon.org>
323
324         * support/nfs/svc_socket.c: Remove HAVE_SVCTCP_SOCKET and
325         HAVE_SVCUDP_SOCKET.
326
327 2002-09-12  H.J. Lu <hjl@lucon.org>
328
329         * configure.in: Remove checking svctcp_socket and svcudp_socket.
330         * configure: Regenerated.
331
332         * support/include/config.h.in (HAVE_SVCTCP_SOCKET): Removed.
333         (HAVE_SVCUDP_SOCKET): Removed.
334
335         * support/include/nfslib.h: Undo the last change.
336
337 2002-09-12  H.J. Lu <hjl@lucon.org>
338
339         * support/include/nfslib.h (svctcp_socket): Protect it with
340         HAVE_SVCTCP_SOCKET.
341         (svcudp_socket): Protect it with HAVE_SVCUDP_SOCKET.
342
343 2002-09-12  H.J. Lu <hjl@lucon.org>
344
345         * configure.in (VERSION): Set to "1.0.2".
346         * configure: Regenerated.
347         * nfs-utils.spec: Likewise.
348
349 2002-09-12  H.J. Lu <hjl@lucon.org>
350
351         * configure.in: Check svctcp_socket and svcudp_socket.
352         * configure: Regenerated.
353
354         * support/include/config.h.in (HAVE_SVCTCP_SOCKET): New.
355         (HAVE_SVCUDP_SOCKET): New.
356
357         * support/include/nfslib.h (svctcp_socket): New.
358         (svcudp_socket): New.
359
360         * support/nfs/Makefile (OBJS): Add svc_socket.o.
361
362         * support/nfs/svc_socket.c: New.
363
364         * support/nfs/rpcmisc.c (rpc_init): Call svctcp_socket and
365         svcudp_socket if port is unspecified.
366
367         * utils/nfsd/nfsd.c (main): Call getservbyname for port.
368
369         * utils/rquotad/rquota_svc.c: Include <nfslib.h>.
370         (killer): New. Signal handler to unregister.
371         (main): Use killer. Call svcudp_socket to get the default
372         socket.
373
374 2002-09-02 Juan Gomez <juang@us.ibm.com>
375         NeilBrown <neilb@cse.unsw.edu.au>
376
377         Add -N option to statd to run in notify-only mode.
378
379         * utils/statd/statd.h: uncomment MODE_NOTIFY_ONLY
380         * utils/statd/statd.man: document -N
381         * utils/statd/statd.c: enabled -N, largely exists but needed to be
382         uncommented and completed
383         
384 2002-09-02 Juan Gomez <juang@us.ibm.com>
385         NeilBrown <neilb@cse.unsw.edu.au>
386
387         statd to have " -P directory" arg to use that directory instead
388         of /var/lib/nfs.  This is useful for fail-over clusters.
389         
390         * utils/statd/statd.h: define SM_DIR etc as var, not const.
391         * utils/statd/statd.c: define "-P" option to set SM_*
392         appropriately.
393         * utils/statd/monitor.c: sprintf to cope with SM_DIR not being
394         a constant any more.
395         * utils/statd/notify.c: ditto.
396         * utils/statd/statd.man: document -P option.
397         
398 2002-08-26  Chip Salzenberg  <chip@pobox.com>
399
400         * utils/nfsd/nfsd.man: Fix typo.
401         * debian/changelog: Version 1.0.1-1.
402
403 2002-05-29 NeilBrown <neilb@cse.unsw.edu.au>
404
405         * let parseopts know if /etc/exports was being read or not, 
406         and have it only print "no sync or async" warning in that case.
407         
408 2002-05-06 Tom McNeal <trmcneal@attbi.com>
409         NeilBrown <neilb@cse.unsw.edu.au>
410
411         * utils/nfsstat/nfsstat.c: Handle differing format for
412            /proc/net/rpc/nfsd between pre and post 2.4.0
413         
414 2002-04-09  NeilBrown <neilb@cse.unsw.edu.au>
415         James Pearson <james-p@moving-picture.com>
416
417         * support/nfs/rmtab.c(fendrmtabent): sync changes to 
418         storage before returning, as this is critical state
419
420 2002-04-08  Sean O'Connell <sean@ee.duke.edu>
421             H.J. Lu <hjl@lucon.org>
422
423         * etc/redhat/nfs: New.
424
425 2002-04-08  H.J. Lu <hjl@lucon.org>
426
427         * etc/redhat/nfs.init: Updated.
428
429         * nfs-utils.spec.in: Updated.
430         * nfs-utils.spec: Regenerated.
431
432         * utils/mountd/mountd.c (longopts): Fix a typo.
433
434         * utils/mountd/mountd.man: Updated.
435
436 2002-04-07  H.J. Lu <hjl@lucon.org>
437
438         * etc/redhat/nfslock.init (restart): Just do stop and start.
439
440         * etc/redhat/nfs.init: Fix a typo.
441
442 2002-04-07  H.J. Lu <hjl@lucon.org>
443
444         * configure.in (VERSION): Set to "1.0.1".
445         * configure: Regenerated.
446         * nfs-utils.spec: Likewise.
447
448         * README: Updated for 1.0.1.
449
450 2002-04-07  Sean O'Connell <sean@ee.duke.edu>
451             H.J. Lu <hjl@lucon.org>
452
453         * etc/redhat/nfs.init: Read /etc/sysconfig/nfsd for NFS tuning.
454
455 2002-02-28   Steven Whitehouse <steve@gw.chygwyn.com>
456               NeilBrown <neilb@cse.unsw.edu.au>
457
458         Add support for fsid=nn export option so that device
459         numbers don't go in filehandles.
460         * support/export/nfsctl.c(expsetup): if exporting and NFSEXP_FSID
461         is set, pass the fsid in-place of the device number
462         * support/nfs/exports.c: parse and print fsid= option.
463         Also check if efname has been set, and use "command line"
464         instead in error messages.
465         Also, use strtol instead of atoi for anon[ug]id= so that
466         bad numbers cause errors.
467         
468 2002-01-17   Adrian Drzewiecki <drze@MissionCriticalLinux.com>
469              NeilBrown <neilb@cse.unsw.edu.au>
470
471         * support/nfs/exports.c: remove NFSEXP_ASYNC as a default
472         flag so that "sync" becomes the default.
473         Check that either "sync" or "async" is given as an option
474         and warn if neither are present
475         * utils/exportfs/exports.man: change documentation for "sync"
476         to be documentation for "async".
477         * utils/exportfs/exportfs.man: note that "sync" is the default
478         rather than "async"
479         
480         
481 2002-01-02  Chip Salzenberg  <chip@pobox.com>
482
483         * support/export/nfsctl.c (expsetup): Don't export entries that
484         specify id mappings not supported by the kernel.  No extant kernel
485         supports any significant mapping, only 'identity' (i.e. none).
486         When other mappings are supported, this code will need changing.
487         * debian/changelog: Version 1.0-2.
488
489 2001-12-26  Chip Salzenberg  <chip@pobox.com>
490
491         * nfs-utils.spec (Version): Set to "1.0".
492         * configure.in (VERSION): Likewise.
493         * configure: Regenerated.
494         * README: Rewritten.
495         * debian/changelog: Version 1.0-1.
496
497         * utils/exportfs/exports.man: Emphasize the need for options to
498         immediately follow client names.  Explain that wildcards don't
499         usually work on addresses, but may work when reverse DNS fails.
500         Comment out a leftover TP that was TPing our indentation.
501         * utils/mountd/mountd.man, utils/rquotad/rquotad.man,
502         utils/statd/statd.man: Remove refs to non-existent "hosts_allow(5)".
503         * debian/changelog: Version 0.3.3-6.
504
505 2001-12-20  NeilBrown <neilb@cse.unsw.edu.au>
506
507         * support/export/client.c(client_lookup): If a host has multiple
508         IP addresses, then we must always use the result of a
509         gethostbyname, not that of gethostbyaddr for exporting
510         
511 2001-12-20  NeilBrown <neilb@cse.unsw.edu.au>
512
513         * support/export/client.c (client_lookup): use strcasecmp when
514         comparing host names
515         * support/nfs/export.c (getexportent): add fromkernel arg and use
516         different defaults as kernels prior to 2.4.11 assume different
517         defaults in /proc/fs/nfs/exports
518         * support/include/nfslib.h, support/export/export.c,
519         support/export/xtab.c:  support extra "fromkernel" arg for
520         getexportent. 
521         
522 2001-12-13  Chip Salzenberg  <chip@pobox.com>
523
524         * debian/changelog: Version 0.3.3-5.
525
526 2001-11-26  TAKAI Kousuke <takai@vlsi.kuee.kyoto-u.ac.jp>
527
528         * support/nfs/xio.c (xskip): Call `xungetc' instead of
529         `ungetc' to keep x_line more properly.
530
531 2001-11-26  Chip Salzenberg  <chip@pobox.com>
532
533         * utils/showmount/showmount.c (main): Don't assume that strings
534         starting with digits are IP addresses.
535         * utils/nfsd/nfsd.c (main): Close all fds and reopen 0,1,2 on
536         /dev/null before nfssvc().  Use syslog to report nfssvc errors.
537         * support/misc/tcpwrapper.c, utils/mountd/mountd.man,
538         utils/rquotad/rquotad.man, utils/statd/statd.man: Fix comments and
539         man pages: We check host names *and* addresses with tcpwrappers.
540         * debian/changelog: Version 0.3.3-4.
541
542 2001-11-21  Chip Salzenberg  <chip@pobox.com>
543
544         * support/nfs/clients.c (cfname): Added: current clients file name.
545         (setnfsclntent): Set it.
546         ({get,end}nfsclntent, syntaxerr): Use it.
547         * support/nfs/exports.c (efname): Added: current exports file name.
548         (setnfsexportent): Set it.
549         (endnfsexportent, parseopts, getexport, syntaxerr): Use it.
550         (parseopts): Accept old-style "crossmnt" option, for old xtabs.
551         * debian/changelog: Version 0.3.3-3.
552
553 2001-10-11  Chip Salzenberg  <chip@pobox.com>
554
555         * utils/mountd/mountd.c (main): Close fds > 2 _before_ RPC init.
556         * debian/changelog: Version 0.3.3-2.
557
558 2001-10-08  Chip Salzenberg  <chip@pobox.com>
559
560         * utils/mountd/mountd.c (main): When daemonizing, close all fds > 2.
561         * utils/Makefile.in: Remove old Makefile in target 'distclean'.
562         * utils/mountd/mountd.man: Update paths to /var/lib.
563         * debian/*: Version 0.3.3-1, with Debian-specific fixes.
564
565 2001-10-06  Preston Brown <pbrown@redhat.com>
566
567         * utils/nfsstat/nfsstat.man: Updated.
568
569 2001-09-24  H.J. Lu <hjl@lucon.org>
570
571         * configure.in (VERSION): Set to "0.3.3".
572         * configure: Regenerated.
573         * nfs-utils.spec: Likewise.
574
575         * README: Updated for 0.3.3.
576
577 2001-09-20 NeilBrown <neilb@cse.unsw.edu.au>
578
579         Arrange that "exportfs -au" never does DNS lookup:
580         
581         * support/export/client.c (client_lookup) : add "canonical"
582         flag which says that the hostname is known to be canonical, so
583         don't do a lookup
584
585         * support/export/export.c (export_create) : add "canonical"
586         flag to be passed down to client_lookup
587         * support/export/export.c (export_lookup) : Likewise
588
589         * support/export/xtab.c (xtab_read) : pass appropriate
590         "canonical" flag to export_lookup and export_create:
591         set if reading list of filesystems currently exports
592         (is_export != 1). 
593
594         * support/export/export.c (export_read) : pass 0 as 
595         "canonical" flag to export_lookup and export_create
596         * support/export/rmtab.s (rmtab_read) : Likewise
597
598         * support/include/exportfs.h : redeclare various routines
599         to have "canonical" flag
600
601         * utils/exportfs/exportfs.c (main) : redo logic for 
602         "-au" to read in what is currently exported, but never even 
603         look at what "should" be exported.
604
605         * utils/exportfs/exportfs.c (unexportall) : remove this
606         routine. Functionality is completely included in
607         exports_update
608
609         * utils/exportfs/exportfs.c (exportfs) : set "canonical"
610         flag to zero in calls to export_lookup and export_create.
611
612         
613 2001-09-20 NeilBrown <neilb@cse.unsw.edu.au>
614             Anne Milicia <milicia@missioncriticallinux.com>
615
616         * support/export/client.c (client_lookup) call gethostbyadd
617         to make sure that we have a canonical hostname, even for
618         dotted-quads
619         * utils/exportfs/exportfs.c (exportfs) Likewise
620         
621 2001-09-12 NeilBrown <neilb@cse.unsw.edu.au>
622
623         * support/nfs/exports.c (putexportent): \octal quote any spaces
624         etc in a path name
625         * support/nfs/xio.c (xgettok): recognise double-quote and
626         \octal quoting in path names
627         * utils/exportfs/exports.man: document quoting conventions
628         for path names
629         
630 2001-09-12 NeilBrown <neilb@cse.unsw.edu.au>
631
632         * utils/mountd/auth.c (auth_authenticate_internal): Reverse
633           change from 2000-08-02:  It causes problems if someone exports
634           to both a hostname and IP addresses.  nfs-utils must be
635           consistant about the canonical name that it chooses.
636
637 2001-08-17  Ragnar Kjørstad <nfs@ragnark.vestdata.no>
638             H.J. Lu <hjl@lucon.org>
639
640         * etc/redhat/nfslock.init (STATDARG): New. Pass it to rpc.statd.
641
642         * utils/statd/statd.c (longopts): Add "name".
643         (usage): Add "-n/--name".
644         (main): Set MY_NAME with "-n/--name".
645
646         * utils/statd/state.c (change_state): Set MY_NAME only if it
647         is NULL.
648         
649         * utils/statd/statd.man: Updated for "-n/--name".
650
651 2001-07-26  H.J. Lu <hjl@lucon.org>
652
653         * nfs-utils.spec (Release): Set to 8.
654
655 2001-07-25  H.J. Lu <hjl@lucon.org>
656
657         * etc/redhat/nfs.init: Check if rpc.rquotad exists before doing
658         anything about it.
659
660 2001-06-27  H.J. Lu <hjl@lucon.org>
661
662         * etc/redhat/nfs.init: Run rpc.rquotad only if it exists.
663
664 2001-06-27  H.J. Lu <hjl@lucon.org>
665
666         * utils/rquotad/rquota_server.c: Don't call statfs () for
667         the block size. Use BLOCK_SIZE instead.
668
669 2001-06-27  H.J. Lu <hjl@lucon.org>
670
671         * config.mk.in (CC_FOR_BUILD): Renamed from BUILD_CC.
672         (CFLAGS_FOR_BUILD): New. Don't use @CFLAGS@.
673
674         * configure.in (enable_nfsv3): Set to yes by default.
675         (--enable-rquotad): Added
676         (AC_PROG_CXX): Removed.
677         (AC_OUTPUT): Add utils/Makefile.
678         (CC_FOR_BUILD): Renamed from BUILD_CC.
679         * configure: Regenerated.
680
681         * utils/Makefile: Removed.
682
683         * utils/Makefile.in: New.
684
685         * nfs-utils.spec.in (rquotad): New. Set to 0 to disable
686         rquotad.
687         (CC_FOR_BUILD): Renamed from BUILD_CC.
688         * nfs-utils.spec: Regenerated.
689
690 2001-06-15  Chip Salzenberg  <chip@debian.org>
691
692         * debian/changelog: Version 0.3.2-2.
693         * debian/*.init: Minor fixes.
694
695 2001-06-07  Lon H. Hohberger <hohberger@missioncriticallinux.com>
696
697         * etc/nodist/nfs-server: Fixed a bug where the script would
698         disable mounts from NFSv3 clients if NFSv3 is present.
699
700 2001-06-05  H.J. Lu <hjl@lucon.org>
701
702         * utils/mountd/mountd.c (longopts): Add "descriptors/o".
703         (main): Support --descriptors/-o to set the limit of the number
704         of open file descriptors.
705         (usage): Updated.
706
707         * utils/mountd/mountd.man: Updated for --descriptors/-o.
708
709 2001-06-04  H.J. Lu <hjl@lucon.org>
710
711         * nfs-utils.spec (Release): Set to 6.
712
713 2001-05-28  H.J. Lu <hjl@lucon.org>
714
715         * utils/lockd/lockd.c (main): chdir to NFS_STATEDIR.
716         * utils/mountd/mountd.c (main): Likewise.
717         * utils/nfsd/nfsd.c (main): Likewise.
718         * utils/rquotad/rquota_svc.c (main): Likewise.
719
720 2001-05-06  Anne Milicia <milicia@missioncriticallinux.com>
721
722         * support/export/client.c (client_check): Check IP address
723         againet netgroup.
724
725 2001-05-06  Neil Brown <neilb@cse.unsw.edu.au>
726
727         * support/export/client.c (client_gettype): Treat `*' as
728         MCL_ANONYMOUS.
729
730 2001-04-22  H.J. Lu <hjl@lucon.org>
731
732         * nfs-utils.spec.in: Fix a typo.
733         * nfs-utils.spec: Regenerated.
734
735 2001-04-21  H.J. Lu <hjl@lucon.org>
736
737         * nfs-utils.spec.in: Fix cross build.
738         * nfs-utils.spec: Regenerated.
739         (Release): Set to 5.
740
741 2001-04-18  H.J. Lu <hjl@lucon.org>
742
743         * nfs-utils.spec.in: Support cross build.
744         * nfs-utils.spec: Regenerated.
745         (Release): Set to 4.
746
747         * config.sub: New.
748         * config.guess: New.
749
750         * config.mk.in (BUILD_CC): New.
751         (CC): Set to $(BUILD_CC) if BUILD is defined.
752         (AR): Set to @AR@.
753         (LD): Set to @LD@.
754         (RANLIB): Set to @RANLIB@.
755
756         * configure.in: Check BUILD_CC, RANLIB, AR and LD.
757         * configure: Regenerated.
758
759         * tools/rpcgen/Makefile (BUILD): Set to true.
760
761 2001-04-01  Chip Salzenberg  <chip@valinux.com>
762
763         * tools/rpcgen/rpc_svcout.c (write_timeout_func): Remove
764         redundant, and sometimes broken, declaration of svc_fdset;
765         it may be a macro.
766         * support/nfs/rpcmisc.c (closedown): Likewise.
767         
768 2001-03-21  H.J. Lu <hjl@lucon.org>
769
770         * nfs-utils.spec: Regenerated.
771         (Release): Set to 3.
772
773 2001-03-21  Ion Badulescu  <ionut@cs.columbia.edu>
774
775         * utils/statd/statd.c (main): make sure file descriptors 0-2
776         are open to /dev/null.
777
778 2001-03-21  H.J. Lu <hjl@lucon.org>
779
780         * support/nfs/rpcmisc.c: Restore the change made on 2001-03-10.
781         * support/nfs/rpcmisc.c: Likewise.
782         * utils/rquotad/rquota_svc.c: Likewise.
783         * utils/rquotad/rquotad.man: Likewise.
784         * utils/statd/Makefile: Likewise.
785         * utils/statd/rmtcall.c: Likewise.
786         * utils/statd/simulate.c: Likewise.
787         * utils/statd/statd.c: Likewise.
788         * utils/statd/statd.man: Likewise.
789
790 2001-03-11  H.J. Lu <hjl@lucon.org>
791
792         * configure.in (RELEASE): New. Default to 1, set by
793         --with-release=XXX. Substitute nfs-utils.spec.
794         * nfs-utils.spec.in (Release): Set to @RELEASE@.
795         * configure: Regenerated.
796         * nfs-utils.spec: Likewise.
797
798 2001-03-11  H.J. Lu <hjl@lucon.org>
799
800         * utils/rquotad/rquotad.man: Fix a typo.
801
802 2001-03-11  H.J. Lu <hjl@lucon.org>
803
804         * support/include/rpcmisc.h: Undo the change made on 2001-03-10.
805         * support/nfs/rpcmisc.c: Likewise.
806         * utils/rquotad/rquota_svc.c: Likewise.
807         * utils/rquotad/rquotad.man: Likewise.
808         * utils/statd/Makefile: Likewise.
809         * utils/statd/rmtcall.c: Likewise.
810         * utils/statd/simulate.c: Likewise.
811         * utils/statd/statd.c: Likewise.
812         * utils/statd/statd.man: Likewise.
813
814 2001-03-10  H.J. Lu <hjl@lucon.org>
815
816         * configure.in (VERSION): Set to "0.3.2".
817         * configure: Regenerated.
818         * nfs-utils.spec: Likewise.
819
820         * README: Updated for 0.3.2.
821
822 2001-03-10  Tavis Barr <tavis@boole.isetr.columbia.edu>
823
824         * utils/rquotad/rquotad.man: Updated for -p.
825         * utils/statd/statd.man: Likewise.
826
827 2001-03-10  Ion Badulescu  <ionut@cs.columbia.edu>
828
829         * support/nfs/rpcmisc.c: export makesock()
830
831         * support/include/rpcmisc.h (makesock): Declared.
832
833         * utils/rquotad/rquota_svc.c: added longopts, added support for
834         specifying the port to bind to on the command line.
835
836         * utils/statd/statd.c: ditto, also specify port used for
837         outgoing connections.
838         (do_regist): Removed.
839
840         * utils/statd/rmtcall.c (statd_get_socket): Renamed from
841         get_socket. Make it extern.
842
843         * utils/statd/simulate.c (daemon_simulator): Call rpc_init
844         instead of do_regist.
845
846         * utils/statd/Makefile (LIBS): link with our own libnfs
847
848 2001-03-09  H.J. Lu <hjl@lucon.org>
849
850         * etc/redhat/nfslock.init: Changed chkconfig line to 60 86.
851         * etc/nodist/nfs-client: Likewise.
852
853 2001-02-26  Chip Salzenberg  <chip@valinux.com>
854
855         * debian/changelog: Version 0.3.1-1.
856         * Mention upstream source and license in copyright file.
857         * Add build-Depends for debhelper and libwrap0-dev.
858
859 2001-02-20  Lon Hohberger <hohberger@missioncriticallinux.com>
860
861         * etc/nodist/nfs-server: Changed chkconfig line to 60 20
862         * etc/nodist/nfs-client: Likewise.
863
864 2001-02-18  Lon Hohberger <hohberger@missioncriticallinux.com>
865
866         * utils/statd/statd.man: Changed /usr/sbin/rpc.statd to
867         /sbin/rpc.statd.
868
869 2001-02-17  Patrick J. LoPresti <patl@curl.com>
870
871         * utils/statd/log.c (log_init): Use LOG_DAEMON instead of
872         LOG_LOCAL5.
873
874 2001-02-14  H.J. Lu <hjl@lucon.org>
875
876         * utils/statd/rmtcall.c: Include <time.h>.
877         * utils/statd/svc_run.c: Likewise.
878
879 2001-02-14  H.J. Lu <hjl@lucon.org>
880
881         * configure.in (VERSION): Set to "0.3.1".
882         * configure: Regenerated.
883         * nfs-utils.spec: Likewise.
884
885         * README: Updated for 0.3.1.
886
887 2001-02-14  H.J. Lu <hjl@lucon.org>
888
889         * support/nfs/rpcmisc.c: Include <time.h>.
890
891 2001-02-14  Chip Salzenberg  <chip@valinux.com>
892
893         * debian/control: Change priority of nhfsstone package to 'extra'.
894
895 2001-02-12  Chip Salzenberg  <chip@valinux.com>
896
897         * debian/changelog: Version 0.3-2.
898
899 2001-02-02  H.J. Lu <hjl@lucon.org>
900
901         * support/include/rpcmisc.h (rpc_init): Remove bufsize.
902         
903         * support/nfs/rpcmisc.c (makesock): Remove socksz and comment
904         out SO_SNDBUF/SO_RCVBUF.
905         (rpc_init): Remove bufsize and remove socksz in calls to
906         makesock ().
907
908         * utils/mountd/mountd.c (main): Remove bufsize in calls to
909         rpc_init ().
910
911 2001-01-28  Chip Salzenberg  <chip@valinux.com>
912
913         * debian/changelog: Version 0.3-1.
914
915 2001-01-25  H.J. Lu <hjl@lucon.org>
916
917         * configure.in (VERSION): Set to "0.3".
918         * configure: Regenerated.
919         * nfs-utils.spec: Likewise.
920
921         * README: Updated for 0.3.
922
923 2001-01-25  H.J. Lu <hjl@lucon.org>
924
925         * utils/lockd/lockd.c (main): Ignore errno == EINVAL.
926
927 2001-01-20  Chip Salzenberg  <chip@valinux.com>
928
929         * support/include/xio.h (xgetc): Declare to return int.
930         * support/nfs/xio.c (xgetc): Return int.
931         (xgettok, xskip, xskipcomment): Use int for value of xgetc.
932         * utils/statd/statd.c (main): Use int for value of getopt.
933         * debian/changelog: Version 0.2.1-5.
934         
935 2000-12-10  Chip Salzenberg  <chip@valinux.com>
936
937         * utils/statd/monitor.c (sm_mon_1_svc): Fix buggy check for
938         program and procedure numbers of kernel lockd's callback.  Also,
939         besides the old (and broken) procedure #24, allow #16 per Trond.
940
941 2000-12-03  Chip Salzenberg  <chip@valinux.com>
942
943         * support/nfs/xio.c (xfopen): Initialize x_line to one, not zero.
944         * debian/control: Let nhfsstone replace files in nfs-kernel-server.
945         * debian/changelog: Version 0.2.1-4.
946
947 2000-11-27  Tobias Ringstrom <tori@tellus.mine.nu>
948
949         * utils/mountd/auth.c (auth_authenticate): Log the bad path
950         warning.
951
952 2000-11-24  Neil Brown <neilb@cse.unsw.edu.au>
953
954         * support/nfs/exports.c (getexportent): Check for host name
955         without option, or options without hostname, and print a warning,
956         as this is most likely a typo.
957
958 2000-11-19  Chip Salzenberg  <chip@valinux.com>
959
960         * debian/control: Add dependency on portmap.
961         * debian/changelog: Version 0.2.1-3.
962
963 2000-11-10  H.J. Lu <hjl@lucon.org>
964
965         * nfs-utils.spec.in: Don't use libtool.
966         Add ChangeLog and COPYING to doc.
967         * nfs-utils.spec: Rebuild.
968
969 2000-11-09  H.J. Lu <hjl@lucon.org>
970
971         * etc/redhat/nfs.init (start): Back out the last change.
972
973 2000-11-09  H.J. Lu <hjl@lucon.org>
974
975         * etc/redhat/nfs.init (start): Pass --no-tcp to mountd if
976         TCP is not supported by kernel.
977
978         * support/nfs/rpcmisc.c (rpc_init): Don't set _rpcfdtype to 0.
979
980         * utils/mountd/mountd.c (longopts): Add "-n/--no-tcp".
981         (main): Set to _rpcfdtype to SOCK_DGRAM for "-n/--no-tcp".
982
983         * utils/mountd/mountd.man: Updated for "-n/--no-tcp".
984
985 2000-10-24  Lon Hohberger <hohberger@missioncriticallinux.com>
986
987         * utils/statd/callback.c: Fix bug preventing callbacks to local lockd.
988         * utils/statd/rmtcall.c: Add some IP address paranoia when doing
989         callbacks to local lockd.
990
991 2000-10-18  Scott McDermott <mcdermot@questra.com>
992
993         * utils/exportfs/exports.man: Updated for CIDR netmask.
994
995 2000-10-17  Scott McDermott <mcdermot@questra.com>
996
997         * support/export/client.c (client_init): Support CIDR netmask
998         in /etc/exports.
999
1000 2000-10-11  H.J. Lu <hjl@lucon.org>
1001
1002         * aclocal.m4 (AC_TCP_WRAPPER): Fix a typo.
1003         * configure: Rebuilt.
1004
1005 2000-10-06  Lon Hohberger <hohberger@missioncriticallinux.com>
1006
1007         * utils/statd/statd.man: Change "/var/lib/nfs/sm/state" to
1008         "/var/lib/nfs/state".
1009
1010 2000-10-05  Lon Hohberger <hohberger@missioncriticallinux.com>
1011
1012         * utils/statd/statd.h (run_mode): New global bitmask of runtime
1013         behaviors: fg/bg, logging, etc.
1014         * utils/statd/statd.c: New command line options: -V -h -? -d .
1015         * utils/statd/statd.man: Update for changes to statd.
1016
1017         * utils/statd/log.h (log_init): Remove parameter of function; use
1018         global variable "name_p" instead.
1019         * utils/statd/log.c: Add support for logging to stderr.
1020
1021         * utils/statd/notlist.c: Partially rewrite notify list handling
1022         functions.  Eliminate run-off-end-of-list bug when calling
1023         nlist_insert_timer.  Add lots of comments.
1024         
1025 2000-09-27  H.J. Lu <hjl@lucon.org>
1026
1027         * README: Updated for RedHat 7.0.
1028
1029 2000-09-27  H.J. Lu <hjl@lucon.org>
1030
1031         * nfs-utils.spec: Rebuild.
1032
1033 2000-09-27  H.J. Lu <hjl@lucon.org>
1034
1035         * README: Updated for 0.2.1.
1036
1037 2000-09-27  H.J. Lu <hjl@lucon.org>
1038
1039         * nfs-utils.spec.in: Updated to use rpm macros and support
1040         RedHat 7.0.
1041
1042 2000-09-25  H.J. Lu <hjl@lucon.org>
1043
1044         * configure.in (VERSION): Set to "0.2.1".
1045         * configure: Regenerated.
1046         * nfs-utils.spec: Updated.
1047
1048 2000-09-25  H.J. Lu <hjl@lucon.org>
1049
1050         * utils/mountd/auth.c (auth_authenticate_internal): Make sure a
1051         non-NULL hostent is always returned.
1052
1053 2000-09-11  Ion Badulescu  <ionut@cs.columbia.edu>
1054
1055         * etc/redhat/nfslock.init: don't kill lockd processes that do not
1056         have an executable (i.e. kernel threads)
1057
1058 2000-09-01  H.J. Lu <hjl@lucon.org>
1059
1060         * README: Updated for 0.2.
1061
1062 2000-09-01  Jay Weber <jweber@valinux.com>
1063
1064         * etc/redhat/nfs.init: Added ability for rpc.mountd to default to
1065         supporting version 3 of nfs if available, else it will fall back to
1066         version 2 support only.
1067
1068 2000-08-30  H.J. Lu <hjl@lucon.org>
1069
1070         * configure.in (VERSION): Set to "0.2".
1071         * configure: Regenerated.
1072         * nfs-utils.spec: Updated.
1073
1074 2000-08-25  H.J. Lu <hjl@lucon.org>
1075
1076         * support/misc/tcpwrapper.c (logit): Modify the log output.
1077
1078 2000-08-25  Ion Badulescu  <ionut@cs.columbia.edu>
1079
1080         * utils/rquotad/rquotad.man, utils/statd/statd.man,
1081         utils/mountd/mountd.man: updated
1082         
1083         * utils/mountd/Makefile (LIBS): added -lmisc $(LIBWRAP) $(LIBNSL)
1084         * utils/rquotad/Makefile: fix comment
1085
1086         * support/misc/tcpwrapper.c (logit): added comment about waiting
1087         for the children after fork()
1088         
1089         * utils/mountd/mountd.c (main): ignore SIGCHLD to prevent leaving
1090         zombies behind (from logit()'s fork)
1091         * utils/rquotad/rquota_svc.c (main): ditto
1092         * utils/statd/statd.c (main): ditto
1093
1094         * utils/rquotad/rquota_svc.c (rquotaprog_1): pass RQUOTAPROG
1095         to check_default instead of 0, for prognum
1096
1097         * utils/statd/statd.c (sm_prog_1_wrapper): pass SM_PROG
1098         to check_default instead of 0, for prognum
1099
1100         * utils/mountd/mount_dispatch.c: Include "tcpwrapper.h" if
1101         HAVE_TCP_WRAPPER is defined.
1102         (mount_dispatch): Call check_default () if HAVE_TCP_WRAPPER is
1103         defined. Reject an RPC call if check_default () fails.
1104
1105 2000-08-25  H.J. Lu <hjl@lucon.org>
1106
1107         * support/include/tcpwrapper.h: New for the tcp wrapper
1108         support.
1109         * support/misc/Makefile: Likewise.
1110         * support/misc/from_local.c: Likewise.
1111         * support/misc/tcpwrapper.c: Likewise.
1112
1113         * aclocal.m4 (AC_TCP_WRAPPER): New.
1114         * configure.in: Use it. Substitute LIBWRAP.
1115         * configure: Rebuilt.
1116
1117         * config.mk.in (LIBNSL): New.
1118         (LIBWRAP): Likewise.
1119
1120         * support/Makefile (SUBDIRS): Add misc.
1121
1122         * support/lib/Makefile (LIBS): Add libmisc.a.
1123
1124         * utils/rquotad/Makefile (LIBS): Add
1125         
1126                 -lmisc $(LIBWRAP) $(LIBNSL)
1127
1128         * utils/statd/Makefile (LIBS): Likewise.
1129
1130         * utils/rquotad/rquota_svc.c: Include "tcpwrapper.h" if
1131         HAVE_TCP_WRAPPER is defined.
1132         (rquotaprog_1): Call check_default () if HAVE_TCP_WRAPPER is
1133         defined. Reject an RPC call if check_default () fails.
1134
1135         * utils/statd/statd.c: Include "tcpwrapper.h" if
1136         HAVE_TCP_WRAPPER is defined.
1137         (sm_prog_1_wrapper): New. A wrapper for sm_prog_1. Call
1138         check_default () before calling sm_prog_1 (). Define it as
1139         sm_prog_1_wrapper if HAVE_TCP_WRAPPER is defined.
1140
1141 2000-08-25  Chip Salzenberg  <chip@valinux.com>
1142
1143         * debian/*: Complete Debian build support.
1144         * etc/debian/*: Remove.
1145
1146 2000-08-24  Neil Brown <neilb@cse.unsw.edu.au>
1147
1148         * support/export/client.c(client_check): removed the "dot+1" as a
1149           ypdomain argument to innetgr as this is entirely bogus.
1150           It should always be NULL.
1151         
1152 2000-08-23  Neil Brown <neilb@cse.unsw.edu.au>
1153
1154         * support/export/xtab.c(xtab_read): introduce new mode for
1155            reading xtab. i.e. a list of exports that might be known to the
1156            kernel, or might not.  These are flagged as m_exported == -1
1157         * support/export/xtab.c(xtab_mount_read):  call xtab_read with new
1158            value "2" for xtab, meaning don't trust this too much.
1159         * support/include/exportfs.h(struct mexport): changed m_exported
1160            from one bit to an int so that it can hold new value
1161         * utils/exportfs/exportfs.c(exportfs_ipdate): add an export to the
1162            kernel if it is uncertain whether the kernel knows (m_exported == -1)
1163         * utils/mountd/mountd.c(get_rootfh): similarly export to kernel if
1164            status is uncertain
1165
1166         * support/nfs/xio.c(xflock): added O_CREAT when getting
1167            a write lock so that missing files aren't fatal.
1168
1169         * etc/debian/nfs-common: new file from "potato"
1170         * etc/debian/nfs-kernel-server: new file from "potato" plus fixes.
1171          
1172 2000-08-09  H.J. Lu <hjl@lucon.org>
1173
1174         * etc/redhat/nfs.init: Run /usr/sbin/exportfs first during
1175         startup to ensure all existing clients work fine.
1176
1177         * support/export/xtab.c (xtab_mount_read): Pass 1 instead of 0
1178         to xtab_read () for reading _PATH_XTAB.
1179
1180 2000-08-02  H.J. Lu <hjl@lucon.org>
1181
1182         * utils/mountd/auth.c (auth_authenticate_internal): Try to
1183         avoid the reverse name lookup.
1184
1185 2000-07-04  H.J. Lu <hjl@lucon.org>
1186
1187         * utils/statd/log.c: Include <stdlib.h> for exit ().
1188
1189         * utils/statd/misc.c (xunlink): Add `{' and `}' to quiet the
1190         gcc warning.
1191
1192 2000-07-04  H.J. Lu <hjl@lucon.org>
1193
1194         * configure.in (VERSION): Set to "0.1.9.1".
1195         * configure: Regenerated.
1196         * nfs-utils.spec: Updated.
1197
1198         * README: Updated.
1199
1200 2000-07-04  Neil Brown  <neilb@cse.unsw.edu.au>
1201
1202         * support/export/hostname.c (hostent_dup): Handle the NULL
1203         h_aliases field.
1204
1205 2000-07-03  H.J. Lu <hjl@lucon.org>
1206
1207         * README: Update the util-linux requirement.
1208
1209 2000-07-03  H.J. Lu <hjl@lucon.org>
1210
1211         * configure.in (VERSION): Set to "0.1.9".
1212         * configure: Regenerated.
1213         * nfs-utils.spec: Updated.
1214
1215         * README: Updated.
1216
1217 2000-07-03  H.J. Lu <hjl@lucon.org>
1218
1219         * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
1220         stop to ensure all clients can still access the server
1221         before it is shutdown.
1222
1223 2000-06-30  Jeff Uphoff <juphoff@transmeta.com>
1224
1225         * tools/rpcgen/rpc_svcout.c (write_msg_out): Generate syslog()
1226         calls with format string.
1227         
1228 2000-06-28  Chip Salzenberg  <chip@valinux.com>
1229
1230         * utils/statd/log.c (log): Call syslog with format string.
1231
1232 2000-06-27  H.J. Lu <hjl@lucon.org>
1233
1234         * utils/statd/statd.c (main): Use sysconf (_SC_OPEN_MAX)
1235         instead of OPEN_MAX.
1236
1237 2000-06-27  H.J. Lu <hjl@lucon.org>
1238
1239         * README: Updated.
1240
1241 2000-06-27  H.J. Lu <hjl@lucon.org>
1242
1243         * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
1244         startup to ensure all existing clients are exported.
1245
1246         * configure.in (VERSION): Set to "0.1.8.2".
1247         * configure: Regenerated.
1248         * nfs-utils.spec: Updated.
1249
1250 2000-06-06  H.J. Lu <hjl@lucon.org>
1251
1252         * configure.in (VERSION): Set to "0.1.8.1".
1253         * configure: Regenerated.
1254         * nfs-utils.spec: Updated.
1255
1256 2000-06-06  H.J. Lu <hjl@lucon.org>
1257
1258         * utils/mountd/mountd.c (mount_dump_1_svc): Cast svc_getcaller
1259         to "struct sockaddr_in *" for glibc 2.2.
1260         (mount_umnt_1_svc): Likewise.
1261         (mount_umntall_1_svc): Likewise.
1262         (mount_export_1_svc): Likewise.
1263         (mount_exportall_1_svc): Likewise.
1264         (mount_pathconf_2_svc): Likewise.
1265         (get_rootfh): Likewise.
1266
1267 2000-06-04  H.J. Lu <hjl@lucon.org>
1268
1269         * etc/redhat/nfs.init: Fix a typo in comment.
1270
1271 2000-05-31  H.J. Lu <hjl@lucon.org>
1272
1273         * configure.in (VERSION): Set to "0.1.8".
1274         * configure: Regenerated.
1275         * nfs-utils.spec: Updated.
1276
1277         * README: Updated.
1278
1279 2000-05-31  H.J. Lu <hjl@lucon.org>
1280
1281         * configure.in (VERSION): Set to "0.1.7.5".
1282         * configure: Regenerated.
1283         * nfs-utils.spec: Updated.
1284
1285         * support/include/nfslib.h (exportent): Add a new field,
1286         r_count, to count the number of mounts from a client.
1287         (getrmtabent): Take a new argument for position in file.
1288         (putrmtabent): Likewise.
1289         (fgetrmtabent): Likewise.
1290         (fputrmtabent): Likewise.
1291         * support/nfs/rmtab.c (getrmtabent): Handle the new argument
1292         for position in file.
1293         (fgetrmtabent): Likewise.
1294         (putrmtabent): Likewise.
1295         (fputrmtabent): Likewise.
1296
1297         * support/nfs/rmtab.c (fgetrmtabent): Get value for the new
1298         field, r_count.
1299
1300         * support/export/rmtab.c (rmtab_read): Pass NULL as the new
1301         argument to getrmtabent (), fgetrmtabent (), putrmtabent ()
1302         and fputrmtabent ().
1303         * utils/mountd/rmtab.c (mountlist_add): Likewise.
1304         (mountlist_del): Likewise.
1305         (mountlist_del_all): Likewise.
1306         (mountlist_list): Likewise.
1307
1308         * utils/mountd/rmtab.c (mountlist_add): Increment "r_count"
1309         for the existing entry and initialize "r_count" to 1.
1310         (mountlist_del): Decrement "r_count".
1311
1312 2000-05-18  H.J. Lu <hjl@lucon.org>
1313
1314         * configure.in (VERSION): Set to "0.1.7.4".
1315         * configure: Regenerated.
1316         * nfs-utils.spec: Updated.
1317
1318 2000-05-18  H.J. Lu <hjl@lucon.org>
1319
1320         * etc/redhat/nfs.init (restart): Just do stop and start.
1321
1322 2000-05-09  Jay Weber <jweber@valinux.com>
1323
1324         * utils/rquotad/hasquota.c: added support for ext3 recognition
1325         in rquotad.
1326         * utils/rquotad/mntent.h: Likewise.
1327
1328 2000-05-01  H.J. Lu <hjl@lucon.org>
1329
1330         * configure.in (VERSION): Set to "0.1.7.3".
1331         * configure: Regenerated.
1332         * nfs-utils.spec: Updated.
1333
1334 2000-05-01  H.J. Lu <hjl@lucon.org>
1335
1336         * utils/rquotad/rquota_server.c (getquotainfo): Skip bad
1337         mounting poins in /etc/fstab.
1338
1339 2000-05-01  H.J. Lu <hjl@lucon.org>
1340
1341         * configure.in (VERSION): Set to "0.1.7.2".
1342         * configure: Regenerated.
1343         * nfs-utils.spec: Updated.
1344
1345 2000-05-01  H.J. Lu <hjl@lucon.org>
1346
1347         * utils/rquotad/rquota_server.c (getquotainfo): Call stat ()
1348         to check for the mounting point.
1349
1350 2000-04-29  Chip Salzenberg  <chip@valinux.com>
1351             Neil Brown  <neilb@cse.unsw.edu.au>
1352
1353         * Really re-use RPC ports.
1354           (Fixes earlier patch.  Sorry, Neil.)
1355
1356 2000-04-26  H.J. Lu <hjl@lucon.org>
1357
1358         * configure.in (VERSION): Set to "0.1.7.1".
1359         * configure: Regenerated.
1360         * nfs-utils.spec: Updated.
1361
1362 2000-04-26  H.J. Lu <hjl@lucon.org>
1363
1364         * etc/redhat/nfslock.init: Check if lockd exits before killing
1365         it.
1366
1367 2000-04-25  H.J. Lu <hjl@lucon.org>
1368
1369         * README: Require util-linux-2.10f-mount-rpc.patch for mount.
1370
1371 2000-03-21 Michael Weiser <michael@weiser.saale-net.de>
1372
1373         * support/nfs/exports.c (parsesquash): Correctly set the
1374         return pointer.
1375
1376 Tue Mar 21 11:38:48 EST 2000 NeilBrown <neilb@cse.unsw.edu.au>
1377
1378         * support/include/nfs/nfs.h: Removed knowledge of internals of
1379              kernel filehandles (which can change) and defined nfs_fh_size
1380              which has variable size
1381         
1382         * support/nfs/getfh.c: defined getfh_size to use new syscall to
1383              get variable sized file handles, and change getfh{,old} to
1384              use nfs_fh_size        
1385         
1386         * utils/mountd/mountd.c: use nfd_fh_size and call getfh_size for
1387              NFSv3 file handles
1388
1389         * tools/Makefile, tools/nlmtest/nlmtest.c
1390              nlmtest.c depended on internel format of file handles, so now
1391              doesn't work.
1392
1393         
1394 2000-03-12  Chip Salzenberg  <chip@valinux.com>
1395             Neil Brown  <neilb@cse.unsw.edu.au>
1396
1397         * support/nfs/rpcmisc.c (rpc_init): Share transports.
1398
1399 2000-03-13 H.J. Lu <hjl@lucon.org>
1400
1401         * etc/redhat/nfsd.init: Updated.
1402
1403         * etc/redhat/nfslock.init: Updated.
1404
1405         * nfs-utils.spec.in: Updated.
1406
1407         * configure.in (VERSION): Set to "0.1.7".
1408         * configure: Regenerated.
1409         * nfs-utils.spec: Updated.
1410
1411         * README: Updated.
1412
1413 Wed Mar  8 09:42:43 2000 Neil Brown <neilb@cse.unsw.edu.au>
1414
1415         * utils/exportfs/exportfs.c (dump): Included printing of
1416            nohide, no_subtree_check, and insecure_locks
1417
1418 2000-02-26  Chip Salzenberg  <chip@valinux.com>
1419
1420         * config.mk.in (INSTALLSUID): Strip ("-s").
1421         (INSTALLSCRIPT): Define.
1422         * utils/nhfsstone/Makefile: Use it.
1423
1424 2000-02-26  Chip Salzenberg  <chip@valinux.com>
1425
1426         * utils/lockd/lockd.man: Create.
1427         * utils/lockd/Makefile: Install it.
1428         * utils/nhfsstone/nhfs{run,nums,graph}.man: Create.
1429         * utils/nhfsstone/nhfsstone.man: Change suffix from ".1".
1430         * utils/nhfsstone/Makefile: Install the helper scripts and
1431           all four man pages.
1432         * utils/exportfs/exports.man: Fix typo.
1433
1434 2000-02-26  Chip Salzenberg  <chip@valinux.com>
1435
1436         * support/nfs/xio.c (xungetc): Decrement line number when
1437         character to unget is newline.  Make first parameter int, so
1438         it can distinguish EOF from \377.
1439         * support/include/xio.h (xungetc): Adjust prototype.
1440
1441 Fri Feb  4 23:42:23 2000 Neil Brown <neilb@cse.unsw.edu.au>
1442
1443         * support/include/nfs/export.h: added NFSEXP_NOAUTHNLM
1444         * support/nfs/exports.c: added handling for NFSEXP_NOAUTHNLM
1445         * utils/exportfs/exports.man: added documentation for no_auth_nlm.
1446
1447         This is for supporting a new option introduced in 2.3.42
1448
1449 Thu Feb  3 14:55:48 2000 H.J. Lu <hjl@lucon.org>
1450
1451         * COPYING: Added. GPL.
1452
1453 Thu Feb 03 14:40:40 2000 Cristian Gafton <gafton@redhat.com>
1454
1455         * utils/rquotad/rquota_server.c (getquotainfo): Call statfs ()
1456         to get the block size.
1457
1458 Tue Jan 25 11:04:17 2000 H.J. Lu <hjl@lucon.org>
1459
1460         * nfs-utils.spec.in: Update ftp site.
1461
1462 Mon Jan 17 11:48:18 2000 H.J. Lu <hjl@lucon.org>
1463
1464         * README: Update hostnames.
1465
1466 Tue Jan 11 10:06:22 2000 H.J. Lu <hjl@lucon.org>
1467
1468         * configure.in (VERSION): Set to "0.1.6".
1469         * configure: Regenerated.
1470         * nfs-utils.spec: Updated.
1471
1472         * README: Updated.
1473
1474 Mon Jan 10 14:26:33 2000 H.J. Lu <hjl@lucon.org>
1475
1476         * utils/mountd/auth.c (auth_authenticate_internal): Call
1477         xstrdup for hostname before passing it to gethostbyname.
1478
1479         * utils/mountd/mountd.c (get_exportlist): Use xstrdup instead
1480         of strdup.
1481
1482 Sun Dec 19 09:35:01 1999  H.J. Lu <hjl@lucon.org>
1483
1484         * README: Update the mailing list address.
1485
1486 Sun Dec 19 09:22:28 1999  H.J. Lu <hjl@lucon.org>
1487
1488         * configure.in (VERSION): Set to "0.1.5".
1489         * configure: Regenerated.
1490         * nfs-utils.spec: Updated.
1491
1492         * README: Updated.
1493
1494 Mon Dec 13 13:40:20 1999  H.J. Lu <hjl@lucon.org>
1495
1496         * utils/rquotad/hasquota.c (hasquota): Malloc one more char
1497         for '/'.
1498
1499 Mon Dec  6 09:42:45 1999  H.J. Lu <hjl@lucon.org>
1500
1501         * configure.in (VERSION): Set to "0.1.4".
1502         * configure: Regenerated.
1503         * nfs-utils.spec: Updated.
1504
1505         * README: Updated.
1506
1507 Mon Dec  6 09:28:07 1999  H.J. Lu <hjl@lucon.org>
1508
1509         * nfs-utils.spec.in: New file.
1510
1511         * config.mk.in (VERSION): Changed to "nfs-utils @VERSION@".
1512
1513         * configure.in (nfs-utils.spec): Added to AC_OUTPUT.
1514
1515 1999-12-04  Chip Salzenberg  <chip@valinux.com>
1516
1517         * config.mk.in: Use $(CC) as set by configure.
1518
1519 1999-12-04  Chip Salzenberg  <chip@valinux.com>
1520
1521         * rules.mk: Call $(MAKE) with $(MFLAGS).
1522
1523 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
1524
1525         * tools/rpcgen/rpc_main.c (h_output): Generate IXDR_GET_INT32,
1526         IXDR_PUT_INT32, IXDR_GET_U_INT32 and IXDR_PUT_U_INT32.
1527
1528 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
1529
1530         * nfs-utils.spec (Version): Set to 0.1.3.
1531
1532         * configure.in (VERSION): Set to "nfs-utils 0.1.3".
1533         * configure: Regenerated.
1534
1535         * README: Updated.
1536
1537 Mon Nov 29 11:15:47 1999  H.J. Lu <hjl@lucon.org>
1538
1539         * utils/rquotad/rquota_server.c (nfsmount_to_devname): Removed.
1540         (_PATH_DEV_DSK): Likewise.
1541         (getquotainfo): Match the mounting point from /etc/mtab
1542         instead of calling nfsmount_to_devname ().
1543
1544 1999-11-24  Chip Salzenberg  <chip@valinux.com>
1545
1546         * utils/statd/monitor.c (sm_mon_1_svc): Accept lockd callbacks
1547         to the new port 24 as well as the historical port 100021.
1548
1549 Tue Nov 23 10:21:34 1999 Neil Brown <neilb@cse.unsw.edu.au>
1550
1551         * etc/redhat/nfsd.init (stop): moved exportfs -ua after
1552         stopping nfsd to stop spurious ESTALE on server shutdown.
1553         
1554 Tue Nov 23 10:13:39 1999  Neil Brown <neilb@cse.unsw.edu.au>
1555
1556         * support/nfs/exports.c (parseopts): make copy of opt string
1557         before 'nul'ing out commas so that
1558
1559         # exportfs -o option1,option2 hosta:/fs hostb:/fs
1560
1561         applies both options to both exports.
1562
1563 Thu Oct 28 12:55:42 1999  H.J. Lu <hjl@lucon.org>
1564
1565         * README: Fix a few typos.
1566
1567         * tools/rpcgen/rpc_cout.c (print_header): Use int32_t instead
1568         of long.
1569         * tools/rpcgen/rpc_hout.c (pdefine): Likewise.
1570         * tools/rpcgen/rpc_main.c (c_initialize): Likewise.
1571         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
1572         (unsigned_dec): Likewise.
1573         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
1574         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
1575
1576         * tools/rpcgen/rpc_cout.c (emit_single_in_line): Use INT32
1577         instead of LONG.
1578         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
1579         (unsigned_dec): Likewise.
1580         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
1581         * tools/rpcgen/rpc_scan.h (tok_kind): Likewise.
1582         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
1583
1584 Thu Oct 28 11:27:51 1999 Neil Brown <neilb@cse.unsw.edu.au>
1585
1586         * support/include/nfs/export.h addedd NFSEXP_NOSUBTREECHECK
1587         * support/nfs/exports.c: added {no_,}subtree_check and changed
1588           crossmnt to nohide
1589         * utils/exportfs/exports.man: added no_subtree_check and nohide
1590           and removed irrelevant stuff from unfsd.
1591         * support/export/rmtab.c: rmtab_read didn't quite do the right
1592           thing if a pathname from rmtab was a subdirectory of an export-point
1593
1594 Tue Oct 26 17:22:40 1999  H.J. Lu <hjl@lucon.org>
1595
1596         * README: Updated ftp site.
1597
1598 Mon Oct 25 18:12:45 1999  H.J. Lu <hjl@lucon.org>
1599
1600         * nfs-utils.spec (Version): Set to 0.1.2.
1601
1602         * configure.in (VERSION): Set to "nfs-utils 0.1.2".
1603         * configure: Regenerated.
1604
1605         * README: Updated.
1606
1607 Mon Oct 25 18:11:21 1999  H.J. Lu <hjl@lucon.org>
1608
1609         * utils/mountd/auth.c (auth_error): Add "no_forward_dns".
1610         (auth_authenticate_internal): Check for NULL return on forward
1611         DNS lookup.
1612         (auth_authenticate): Handle "no_forward_dns".
1613
1614 Thu Oct 21 16:22:06 1999  H.J. Lu <hjl@lucon.org>
1615
1616         * Version 0.1.1 released.
1617
1618         * nfs-utils.spec (Version): Set to 0.1.1.
1619
1620         * configure.in (VERSION): Set to "nfs-utils 0.1.1".
1621         * configure: Regenerated.
1622
1623         * README: Updated.
1624
1625 Mon Oct 18 17:43:29 1999  H.J. Lu <hjl@lucon.org>
1626
1627         * nfs-utils.spec (Obsoletes): Fixed a typo, change knfsd-client
1628         to knfsd-clients.
1629         (Provides): Likewise.
1630
1631 Mon Oct 18 14:56:22 1999  H.J. Lu <hjl@lucon.org>
1632
1633         * Initial version 0.1 released.
1634
1635         * configure.in (VERSION): Set to "nfs-utils 0.1".
1636         * configure: Regenerated.
1637
1638 Mon Oct 18 14:54:57 1999  H.J. Lu <hjl@lucon.org>
1639
1640         * utils/mountd/mountd.c (get_exportlist): Cleanup.
1641
1642         * utils/exportfs/exportfs.c (unexport_all): Unexport from
1643         kernel only if the entry is exported to kernel.
1644         (unexportfs): Likewise.
1645
1646 Wed Sep 08 16:49:32 1999  Neil Brown <neilb@cse.unsw.edu.au>
1647
1648 1/ utils/mountd/rmtab.c::mountlist_list
1649
1650      This routine stats the rmtab file to see if it has changed.  It
1651      if has, it cleans up it's old copy of the data. But it still
1652      always re-read the file, thus returning multiple copies of the
1653      data on consecutive calls without intervening changes.
1654      "Showmount -a" didn't show this as it appears to sort/unique the
1655      data, but 'strace showmount -a' showed that the size of the
1656      datagram that it received grew.
1657
1658      I moved the getrmtabent loop inside the mtime test.
1659
1660 2/ utils/exportfs/exportfs.c
1661    
1662      Many routines used the m_path field of m_export instead of
1663      e_path.
1664      According to the comment in nfslib.h, m_path should only
1665      be used when processing a mount request (i.e. in mountd)
1666      where the mountpoint may be a subdirectory of the export point.
1667
1668      I changed all occurances of m_path to e_path
1669
1670
1671 3/ utils/exportfs/exportfs.c:main
1672
1673       extra arguments are not meaningful with -a or -r, but
1674       exportfs accepted them and then ignored the -a/-r, expect that
1675       -r would still unexport everything first.
1676
1677       I generate an error if there are extra args and f_all
1678
1679 4/ utils/exportfs/exportfs.c:main
1680      extract dump out as a special case.
1681
1682 5/ utils/exportfs/exportfs.c
1683      made f_reexport a local variable.
1684
1685
1686 6/ utils/exportfs/exportfs.c:main,exportall
1687
1688     support/export/rmtab.c
1689        only  mayexport on newly created entries, don't set xtabent at all
1690
1691 7/ support/include/nfslib.h
1692
1693       add #define _PATH_PROC_EXPORTS to be /proc/fs/nds/exports
1694
1695 8/ support/export/xtab.c
1696
1697       xtab_mount_read loads data from _PATH_PROC_EXPORTS if it exists,
1698       else from xtab
1699
1700
1701 9/ support/export/xtab.c
1702
1703       xtab_mount_read now sets m_exported, and NOT
1704         xtabent and mayexport
1705
1706       removed the append arguement from xtab_write as it was
1707         never used.
1708
1709       added is_export flag to xtab_write similar to xtab_read
1710         if is_export, only write entries with m_xtabent or m_addxtab
1711         if !is_export, only write entries with m_exported
1712      
1713 10/ support/export/export.c::export_allowed_internal
1714
1715       added test for exp->m_mayexport, as the export tree
1716         may have entries that are no longer allowed to be exported,
1717         and so shouldn't caused deduced exported by rmtab_read
1718
1719 11/ utils/exportfs/exportfs.c::main
1720         error checking of flags.
1721
1722 12/ utils/exportfs/exportfs.c
1723
1724         total rewrite of export and unexport logic.
1725         We now:
1726         -  build an exportslist of valid exports, based on
1727            current etab file  and arguments,
1728         -  read rmtab to instantiate relevant wild card entries
1729         -  read etab to find out what is currently exported
1730         -  synchronise intention with reality
1731         -  write out etab and xtab
1732
1733 13/  various
1734         discard the m_addxtab flag
1735         add m_changed flag so we know what to report in exportfs
1736
1737 14/ utils/mountd/auth.c:auth_authenticate
1738
1739         the value returned by gethostbyaddr was trusted.
1740
1741         It now follows this with a call to gethostbyname
1742         and checks that the address is in the list.
1743
1744 15/ support/export/nfsctl.c::cltsetup,expsetup
1745
1746         force client names to lowercase as kernel is
1747         sensitive to case
1748
1749 16/ quietened a few compiler warnings
1750
1751 17/ support/export/client:client_lookup
1752
1753      look for pre-existing client with same name before creating
1754         a new one.
1755
1756 18/ support/include/exportfs.h
1757
1758      The ordering of the MCL_* enum was:
1759         ANONYMOUS, FQDN, SUBNETWORK, WILDCARD, NETGROUP
1760
1761      I moved ANONYMOUS to the end.
1762
1763      The ordering is significant when an export entry is being searched for to 
1764         match a given address.  There are two problems with ANONYMOUS being first.
1765
1766         1/ if a directory is exported rw to a couple of hosts and ro to everyone else,
1767            then the ro case will always be found first and the privileged hosts won't get
1768            their privilege
1769         2/ When mountd gets a request to mount an ANONYMOUSly exported tree, it creates a FQDN
1770            export entry for the specific host, and writes it to xtab.
1771            When another request comes from the same host, the ANONYMOUS entry is found again, 
1772            before the new FQDN entry, so it creates another FQDN entry and writes it to xtab
1773            again.  If causes bloat in xtab.
1774
1775       Putting ANONYMOUS at the end reflects it's nature as a catch-all
1776
1777 19/ utils/exportfs/exportfs.man
1778         many updates to the man page to reflect changes to the code
1779
1780 -----------------------
1781
1782
1783
1784 TODO:
1785
1786 - allow exportfs to modify rmtab file
1787 - make sure kernel never gets two clients with same IP address
1788     - possible kernel should reject
1789     - needs to be some way to lookup client in kernel by IP address
1790 - maybe get kernel to do case-insensitive comparisons on client names
1791 - remove unused clients from kernel
1792
1793 - change etab to xtab and xtab to xtab.active
1794
1795 - timestamp and/or statd-stamp in rmtab for removing old entries.
1796
1797 Mon Oct 18 11:48:07 1999  H.J. Lu <hjl@lucon.org>
1798
1799         * linux-nfs: New directory.
1800         * linux-nfs/ChangeLog: Moved from ..
1801         * linux-nfs/INSTALL: Likewise.
1802         * linux-nfs/KNOWNBUGS: Likewise.
1803         * linux-nfs/NEW: Likewise.
1804         * linux-nfs/README: Likewise.
1805         * linux-nfs/THANKS: Likewise.
1806         * linux-nfs/TODO: Likewise.
1807
1808         * Starting from knfsd 1.4.7.