Add option to specify directory to search for credentials cache files
[nfs-utils.git] / ChangeLog
1 2006-03-27
2         Add option to specify directory to search for credentials cache files
3         
4         Add command line option to specify which directory should be searched
5         to find credentials caches.
6         
7 2006-03-27 kwc@citi.umich.edu
8         Must still use knowledge of the glue context for pre-1.4 versions of MIT krb5
9         
10         We need to get access to the internal krb5 context pointer for
11         older (pre-1.4) versions of MIT Kerberos.  We get a pointer to
12         the gss glue's context.  Get the right pointer before accessing
13         the context information.
14         
15 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
16         Remove unused variable causing compile warning
17         
18         Remove unused groups variable from get_ids() which was causing a compiler warning.
19         
20 2006-03-27 kwc@citi.umich.edu
21         Update krb5 code to use glue routine lucid context functions
22         
23         The gssd code should not know about the glue layer's context structure.
24         A previous patch added gss_export_lucid_sec_context() and
25         gss_free_lucid_sec_context() functions to the gssapi glue layer.
26         Use these functions rather than calling directly to the Kerberos
27         gssapi code (which requires the Kerberos context handle rather
28         than the glue's context handle).
29         
30 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
31         Separate out context handling code for MIT Kerberos and SPKM3
32         into their own file.
33         
34 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
35         Consolidate gssd and svcgssd since they share much code
36         
37         Remove directory svcgssd which was only created because the old
38         build system could not handle building two daemons in the same
39         directory.  This eliminates build complications since gssd and
40         svcgssd also share many source files.
41         
42         This patch effectively removes the utils/svcgssd directory, moving
43         all its files to the utils/gssd directory.  File utils/gssd/Makefile.am
44         is modified with directions to build both gssd and svcgssd.
45         
46 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
47         Use PKGCONFIG to locate gssapi and rpcsecgss header files
48         
49         Instead of having separate copies of the gssapi and rpcsecgss
50         header files, or depending on the Kerberos gssapi header,
51         locate the headers now installed with the libgssapi and librpcsecgss
52         libraries.
53         
54         Remove local copies of the gssapi and rpcsecgss header files.
55         
56         This depends on the configure_use_autotools patch.
57         
58 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
59         User-selectable idmapping cache lifetime
60         
61         Read and process new configuration option, Cache-Expiration, and use
62         the value to determine how long idmapping entries are cached.
63         
64 2006-03-27 Steve Dickson <steved@redhat.com>
65         Set libnfsidmap library debugging level and logging function.
66
67         This patch adds a call to the new libnfsidmap library function 
68         nfs4_set_debug(), which defines the verbosity level libnfsidmap
69         should use as well as the logging function.
70
71 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
72         Don't close file descriptor until after calling event_del().
73
74         Delete event processing for a file descriptor before closing it.
75         This was causing hangs when used in combination with libevent-1.0b.
76
77 2006-03-27 kwc@citi.umich.edu
78         Find krb5-config on SuSE 10
79
80         SuSE 10.0 puts krb5-config in yet another obscure location.
81         Look for it there and use it if found.
82
83 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
84         Update debian package information.
85
86 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
87         Install /var/lib/nfs files using DESTDIR and add rpcsec headers to distribution
88
89         Add "$(DESTDIR)" to the paths for the "$(statedir)" files so they are
90         put in the right place when DESTDIR is defined.
91
92         Add the rpcsec header files to EXTRA_DIST list.
93
94 2005-12-21 NeilBrown <neilb@suse.de>
95         *utils/rquotad/rquota_server.c: Detect and handle both old-style
96         (2.4) and new-style(2.6) quotactl.
97         *utils/gssd/gss_destroy_cred: remove dependence on "head -1" which
98         might need to be "head -n 1"
99         *utils/nhfsstone/nhfsrun: convert "tail -1" to "tail -n 1"
100         
101 2005-12-20 Kevin Coffman <kwc@citi.umich.edu> NeilBrown <neilb@suse.de>
102         Substantial Makefile/configure rewrite.  
103         Run 'autogen.sh' to create "Makefile.in" etc.
104
105         Also add -D_FILE_OFFSET_BITS=64 to CPP_FLAGS so that mountd can
106         stat and export files larger than 2Gig.
107
108         1.0.8-rc2 released
109
110 2005-12-20 NeilBrown <neilb@suse.de>
111         support/nfs/exports.c(getexportent): is a null host name is given,
112         replace it with '*' so we have a non-empty host name for messages
113         etc.
114         utils/exportfs/exportfs.man: Correct documentation about default
115         export options.
116
117 2005-12-20 Kevin Coffman <kwc@citi.umich.edu>
118         utils/gssd/gssd_proc.c(create_auth_rpc_client): Use service
119           portion of clp->servicename rather than hard-coding "nfs". 
120
121 2005-12-16 NeilBrown <neilb@suse.de>
122         1.0.8-rc1 released
123
124 2005-12-16 Kevin Coffman <kwc@citi.umich.edu>
125         svcgssd needs -lnfs when using new function closeall().
126         
127         ---
128         Remove unused argument from nfsdopen()
129         
130         After previous changes, the arguement to nfsdopen() has become unused.
131         Remove it.
132         
133         ---
134         Fix idmapd error reporting after call to mydaemon()
135         
136         After call to mydaemon(), calls to err[x] and warn[x] result
137         in the message going nowhere.  Change to using idmapd_*
138         versions of these routines which write to syslog.
139         Original problem reported by Vincent Roqueta <vincent.roqueta@ext.bull.net>
140         with a different patch.
141         
142         ---
143         Don't add @domain to names that cannot be mapped.
144         
145         Per rfc3530 section 5.8: when unable to map a uid to a name, don't
146         add the @domain to the "nobody" name.
147         
148         ---
149         Fix idmapd for systems where sizeof(uid_t)!=4 and sizeof(gid_t)!=4
150         
151         Fix conversion cases where uid_t and gid_t are not 32 bits.
152         
153         ---
154         Don't segfault because mech wasn't filled in because of an error
155         
156         From Kevin Coffman <kwc@citi.umich.edu>
157         
158         Initialize mech to null to avoid segfault if an error occurs
159         and mech is never returned from gss_accept_sec_context.
160         
161         ---
162         Remove use of static buffer in do_downcall
163         
164         Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
165         
166         Dynamically allocate buffer of the correct length rather
167         than using fixed-length buffer.
168         
169         ---
170         Print better error message if rpc routine clnt_create() fails.
171         
172         ---
173         Print appropriate error messages after gss calls.
174         
175         Print gss error messages after calls to gss functions, even if they
176         are for Kerberos only.
177         
178         ---
179         Update gssd and svcgssd to use the new gss mech glue lucid context calls.
180         
181         Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
182         
183         Update gssd and svcgssd to use a lucid context from SPKM3 to send down
184         to the kernel.
185         Update gssd and svcgssd to use the new gss mech glue lucid context calls.
186         Add configure check to see if spkm3 support is available.
187         
188         ---
189         Add support for CONTINUE_NEEDED return from gss_accept_sec_context.
190         
191         Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
192         
193         Add CONTINUE_INIT handling to svcgssd. Store the partially complete spkm
194         context handle in the out_handle of CONTINUE_INIT messages so that it is
195         returned in the in_handle of subsequent messages.
196         
197         ---
198         Replace GSS_C_ANON_FLAG with GSS_C_MUTUAL_FLAG.
199         
200         Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
201         
202         Specify GSS_C_MUTUAL_FLAG rather than GSS_C_ANON_FLAG for
203         spkm3.
204         
205         NOTE: we need a way to pass the appropriate value rather than
206         hard-coding this flag.
207         
208         ---
209         Increase size of rpc send/receive buffers
210         
211         Change the clnt_create() to use routines which allow us to set the
212         send and receive buffer size.  This is needed for larger spkm3
213         exchanges including certificate chains.
214         
215         This has the side-effect of skipping the portmap call since
216         we specify the port (by specifying the service) when getting
217         the server's address information.
218         
219         ---
220         Define _LINUX_QUOTA_VERSION to 1
221         
222         The rquotad code is written against the "old" kernel quota interface.
223         Fedora Core 4 is the only platform known to check for different
224         versions, so this should not have any affect on other platforms
225         and fixes the build for FC4.
226         
227         ---
228
229 2005-12-12 Usha Ketineni <ketineni@us.ibm.com>, NeilBrown <neilb@suse.de>
230         *support/nfs/rpcmisc.c(rpc_init): is stdin is a socket, but
231         is already connected (as e.g. from ssh), don't assume we
232         were started by inetd.
233
234 2005-11-03 Steve Dickson <SteveD@redhat.com> NeilBrown <neilb@suse.de>
235         *utils/idmapd/idmaps.c:
236         
237         I've recently updated the nfs-utils in rawhide with the
238         latest patches from the SourceForge CVS tree and the
239         latest CITI patches (1.0.7-4).
240         
241         In testing these patches, I notice that when the server was started
242         and a SIGHUP was sent to rpc.idmapd to open the nfs4.nametoid/channel
243         and nfs4.idtoname/channel files, the second open (the nfs4.idtoname one)
244         failed because the path (i.e. ic->ic_path) was NULL.
245         
246         Now the reason the ic_path was NULL was because it was never set
247         during the call to nfsdopen(). nfsdopen() looks like:
248         nfsdopen(char *path)
249         {
250              return ((nfsdopenone(&nfsd_ic[IC_NAMEID], IC_NAMEID, path) == 0 &&
251              nfsdopenone(&nfsd_ic[IC_IDNAME], IC_IDNAME, path) == 0) ? 0 
252                : -1);
253         }
254
255         Note: the call to nfsdopenone() is how the path is set in each nfsd_ic[]
256         entry and nfsdopen() is only called once.
257         
258         So when rpc.idmap comes up and the first call to nfsdopenone() fails
259         (because the server is not running) the path in nfsd_ic[IC_IDNAME] is
260         never filled in because the second nfsdopenone() never happen...
261         
262         Now there was a CITI patche (idmapd_revert_fix_reopen_on_sighup.dif)
263         that tried to address this problem but did seem to fix it.. The
264         attached patch fix the problem by initializing both nfsd_ic[IC_IDNAME]
265         and nfsd_ic[IC_NAMEID] structures with the needed info...
266         I figured since there is no way of changing these paths or filenames
267         by command line args, why not just set them during compile time...
268         so that's what this patch does.
269         
270         This patch also changes how nfsdreopen_one() handles the
271         case where the event has already been set. Unlike the CITI
272         patch (idmapd_revert_fix_reopen_on_sighup.dif) which just
273         just does not register the second event, my patch deletes
274         the old event and the registers the new one. It just seems like
275         the right thing to do since a SIGHUP means a new server just
276         started so we probably should create a new event as well...
277         
278         steved.
279         
280 2005-10-14 NeilBrown <neilb@suse.de>
281         *utils/mountd/cache.c(nfsd_fh): Understand type 2 and type 3
282         filesystem identifiers, which are used with device numbers
283         That don't fit into 16 bits.
284
285 2005-10-07 Olaf Kirch <okir@suse.de>
286         * utils/mountd/mountd.c(get_exportlist): Without this patch,
287         showmount -e would sometimes display host names that should really
288         have been subsumed under a wildcard entry.
289
290         The problem was that the code in get_exportlist would always
291         skip the next group entry after removing one FQDN.
292
293 2005-10-06 Steve Dickson <SteveD@redhat.com> NeilBrown <neilb@suse.de>
294         * support/nfs/export.c: don't warn about sync/async for readonly
295         exports
296         * support/nfs/closeall.c: new file with function to close all 
297         file descriptors from a give minimum upwards.
298         * nfsd/mountd/statd/idmapd/gsssvcd: use closeall.
299         * utils/mountd/mountd.c: Eliminate 3 syslog message that are
300         logged for successful events. 
301         * utils/mountd/mountd.c: make sure the correct hostname is used in
302         the SM_NOTIFY message that is sent from a rebooted server which
303         has multiple network interfaces. (bz 139101)
304
305         Details can be found in:
306         https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=139101
307
308         *utils/idmapd/idmapd.c:Fixed subscripting problem in idmapd (bz
309         158188) This fixes the following problem: 
310          rpc.idmapd: nfsdreopen: Opening '' failed: errno 2 (No such file or directory)
311
312          Details can be found in:
313          https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=158188
314
315         *utils/statd/statd.c(drop_privs): clear st_gid as well as st_uid
316         of stat fails.
317         *utils/statd/svc_run.c(my_svc_run): remove usage of undocumented
318         %m format specifier.
319         *utils/statd/montor.c(sm_mon_1_svc): as above
320         *support/nfs/xlog.c(xlog): Changed xlog to use LOG_INFO instead of
321         LOG_DEBUG so debug messages will appear w/out any config changes
322         to syslog.conf. 
323
324         
325 2005-09-02 Mike Frysinger <vapier@gentoo.org>
326         * utils/rquotad/rquota_server.c(getquotainfo): use explicit
327         struture-member copying rather than memcpy, as the element
328         sizes are the same on all architectures.
329
330 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>
331         Add option to set rpcsec_gss debugging level (if available)
332
333         Changes to allow gssd/svcgssd to build when using Hiemdal Kerberos
334         libraries.  Note that there are still run-time issues preventing
335         this from working when shared libraries for libgssapi and librpcsecgss
336         are used.
337         
338 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>
339         Remove the rpcsec_gss code and rely on an external library instead.
340
341 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>
342         *utils/mountd/mountd.c:
343         mountd currently always returns AUTH_NULL and AUTH_SYS as the
344         allowable flavors in mount replies.  We want it to also return gss
345         flavors when appropriate. For now as a hack we just have it always
346         return the KRB5 flavors as well. 
347
348         *utils/mountd/cache.c:
349         
350         When attempting to mount an NFSv4 pseudofilesystem (fsid=0) and the
351         actual exported directory does not exist on the server, rpc.mountd
352         doesn't check the directory exists (when fsidtype=1, i.e. using fsid,
353         but does check for fsidtype=0, i.e. using dev/ino).  The non-existent
354         exported directory path with fsid=0 is written to the kernel via
355         /proc/net/rpc/nfsd.export/channel, which leads to path_lookup() to
356         return ENOENT (seems appropriate).  Unfortunately, the new_cache
357         approach ignores errors returned when writing via the channel file so
358         that particular error is lost and the mount request is silently ignored.
359         
360         Assuming it doesn't make sense to revamp the new_cache/up-call method to
361         not ignore returned errors, it seems appropriate to fix the case where
362         rpc.mountd doesn't check for the existence of an exported directory with
363         fsid= semantics.  The following patch does this by moving the stat() up
364         so it is done for both fsidtype's.  I'm not certain whether the other
365         tests need to be executed for fsidtype=1, but it doesn't appear to hurt
366         [Not exactly true: the comparison of inode numbers caused problems so
367         now it's kept for fsidtype=0 only].
368         
369         Would it be also desirable to log a warning for every error, if any,
370         returned by a write to any of the /proc/net/rpc/*/channel files which
371         would otherwise be ignored (maybe under a debug flag)?
372
373         * gssd/mountd/svcgssd: Changes gssd, svcgssd, and mountd to ignore a
374         SIGHUP rather than dying.
375
376         * many: Remove the gssapi code and rely on an external library instead.
377
378 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>
379         * utils/exportfs/exports.man: Document the "crossmnt" export export option
380         * utils/gssd/krb5_util.c: 
381         Add better debugging and partially revert the function
382         check for gss_krb5_ccache_name.
383         
384         For MIT Kerberos releases up to and including 1.3.1, we *must*
385         use the routine gss_krb5_ccache_name to get the K5 gssapi code
386         to use a different credentials cache.
387         
388         For releases 1.3.2 and on, we want to use the KRB5CCNAME
389         environment variable to tell it what to use.
390         (A problem was reported where 1.3.5 was being used, our
391         code was using gss_krb5_ccache_name, but the underlying
392         code continued to use the first (or default?) credentials
393         cache.  Switching to using the env variable fixed the problem.
394         I cannot recreate this problem.
395
396         *utils/gssd/krb5_util.c:
397         Andrew Mahone <andrew.mahone@gmail.com> reported that reiser4
398         always has DT_UNKNOWN.  He supplied patch to move the check
399         for regular files after the stat() call to correctly find
400         ccache files in reiser4 filesystem.
401         
402         Also change the name comparison so that the wrong file is
403         not selected when the substring comparison is done.
404
405         *utils/gssd/krb5_util.c:
406         Limit the set of encryption types that can be negotiated by
407         the Kerberos library to those that the kernel code currently
408         supports.
409         
410         This should eventually query the kernel for the list of
411         supported enctypes.
412
413         *utils/gssd/gss_util.c, utils/svcgssd/svcgssd_main_loop.c:
414         Print more information in error messages to help debugging failures.
415
416         *utils/svcgssd/svcgssd_proc.c: Increase token buffer size and
417         update error handling so that a response is always sent.
418
419         *utils/svcgssd/svcgssd_proc.c: Add support to retrieve
420         supplementary groups. 
421         
422         
423 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>
424         * configure.in etc
425         Consolidate some of the Kerberos checking instead of repeating
426         the same things for MIT and Heimdal.
427         Also adds more checks to distinguish 32-bit from 64-bit
428         (mainly for gssapi.h)
429         Fix svcgssd Makefile so make TOP=../../ works correctly there.
430         Enable running a modern autoheader.
431         * utils/gssd/gss_oids.c: Use correct OID value for SPKM-3
432         * utils/gssd/gss_util.c: Fix build with older MIT releases that do not define GSS_C_NT_HOSTBASED_SERVICE
433         * utils/gssd/write_bytes.h, support/include/gssapi/gssapi.h:
434         Length of gss_buffer_desc is a size_t which is 64-bits on a
435         64-bit machine.  Kernel code expects 32-bit integer for length.
436         Coerce length value into a 32-bit value when reading from or
437         writing to the kernel.
438         Change gssapi.h to use datatype size values obtained from
439         configure rather than hard-coded values.
440         * utils/idmapd/idmapd.c: The EV_INIT check here was wrong, and was
441         causing idmapd to become unresponsive to server requests after
442         receiving a sighup. 
443         * utils/idmapd/idmapd.c: Idmapd should flush the server id<->name
444         caches when its started. 
445
446 2005-04-12  G. Allen Morris III <gam3@gam3.net>
447
448         * All Makefile: added TOP as needed for easier compile.
449
450         * utils/nfsstat/nfsstat.c: added NFS V4 support; added the -m
451           option; Added -2, -3, and -4 options; changed -a option to -v
452           option; added long options; changed default output to not
453           show V2 NFS statistics unless used.
454
455         * utils/nfsstat/nfsstat.man: Documented above changes; changed
456           authors email address; added BUGS section.
457
458 2005-04-07  Chip Salzenberg  <chip@pobox.com>
459
460         * debian/changelog: Version 1.0.7-2.
461
462 2005-04-06  Chip Salzenberg  <chip@pobox.com>
463
464         * config.guess, config.sub: Update.
465
466         * support/rpc/svc_auth_gss.c (_svcauth_gss): Avoid using a cast as
467         an lvalue, as it is non-portable.
468
469         * support/nfs/exports.c (parseopts): Accept "acl" option to mean
470         ~NFSEXP_NOACL, and "no_acl" to mean NFSEXP_NOACL.
471         (putexportent): Report NFSEXP_NOACL as "no_acl", and ~NFSEXP_NOACL
472         as "acl".
473         * utils/exportfs/exportfs.c (dump): Report NFSEXP_NOACL as
474         "no_acl".
475         * utils/exportfs/exports.man: Document "no_acl".
476
477 2005-03-14  NeilBrown <neilb@cse.unsw.edu.au>
478         Denis Vlasenko <vda@ilport.com.ua>
479         * support/export/client.c(client_init and client_gettype):
480         treat N.N.N.N as a special case of MCL_SUBNETWORK instead of 
481         MCL_FQDN
482
483 2005-03-06  G. Allen Morris III <gam3@gam3.net>
484         * support/nfs/cacheio.c(readline): Could not read lines greater
485         than 128 bytes. [1157791] 
486         * utils/exportfs/exports.man: Added a SEE ALSO section and
487         fixed 2 typos. [1018450]
488
489 2005-02-28  Trond Myklebust <trond.myklebust@fys.uio.no>
490         * utils/statd/rmtcall.c(statd_get_socket): If a port number is
491         explicitly given, make sure to try to bind to that.
492         
493 2005-01-11  Chip Salzenberg  <chip@pobox.com>
494
495         * debian/changelog: Version 1.0.7-1.
496         * debian/nfs-common.default (NEED_IDMAPD, NEED_GSSD):
497         Disable by default, on advice of upstream.
498         * debian/nfs-kernel-server.default (NEED_SVCGSSD):
499         Likewise.
500
501         * utils/svcgssd/Makefile (predep): Symbolically link duplicated
502         source files.
503         (distclean): Remove symlinks to duplicated files.
504
505 2004-12-17 NeilBrown <neilb@cse.unsw.edu.au>
506         Release 1.0.7
507
508         * config.mk, configure.in: update version number, run autoconf
509         * configure.in: require nfsidmap.h if gss is enabled.
510         
511 2004-12-10 NeilBrown <neilb@cse.unsw.edu.au>
512         Release 1.0.7-pre2
513         
514         * config.mk, configure.in: update version number, run autoconf
515         
516 2004-12-10 Neil Brown <neilb@cse.unsw.edu.au>
517         * README : note dependancy on kerberos, libevent, and nfsidmap
518         * configure.in : fail if --enable-nfsv4 and libevent or
519         libnfsidmap are missing.
520         * configuyre.in: improve message if krb5 support is missing
521         
522 2004-12-06 Paul Clements <paul.clements@steeleye.com>   
523         * support/include/ha-callout.h: get return status from waitpid
524         correctly. 
525         * support/include/ha-callout.h: don't ignore SIGCHLD while waiting
526         for a callout to complete.
527         * utils/statd/statd.c(sigusr): print current start when re-reading
528         notify list due to SIGUSR1
529         * utils/statd/svc_run.c(my_svc_run): call change_state when
530         re-notifying clients.
531         
532 2004-12-06 Marc Eshel <eshel@almaden.ibm.com>
533         * utils/statd/svc_run.c(my_svc_run): allow loop to exit when in
534         MODE_NOTIFY_ONLY
535         *utils/statd/rmtcall.c(statd_get_socket): if a hostname is given
536         to statd with -n, prefer it's IP address to the default for
537         listening on.
538         
539 2004-12-06 Bruce Allan <bwa@us.ibm.com>
540         * utils/mountd/auth.c(auth_reload)  Clear the "my_client" cache on
541         an auth_reload to avoid old data getting used.
542         
543 2004-12-03 NeilBrown <neilb@cse.unsw.edu.au>
544         Release 1.0.7-pre1 for testing
545         
546         * config.mk, configure.in: update version number, run autoconf
547         
548 2004-12-03 Trond Myklebust <trond.myklebust@fys.uio.no>
549
550         * utils/statd/statd.c(main): ignore SIGPIPE
551         
552 2004-11-22 "J. Bruce Fields" <bfields@fieldses.org>
553
554         * tools/rpcdebug/rpcdebug.c: support aliases "nfsdebug" and
555         "nfsddebug" and update flag names.
556         * configure.in, nodist/* redhat/* nfs-utils.spec*: remove redhat
557         specific files (as no-one actually uses them, especially not
558         redhat), and the nodist /etc files (as they drift out-of-date, and
559         the debian directory provides a suitable example.
560         * utils/svcgssd_proc.c(get_ids): fix memory leak
561         * utils/svcgssd/svcgssd_proc.c: Rely on count of the number of
562         groups instead of using a special guard value to identify the end
563         of the list. 
564         * utils/idmapd/idmapd.c: don't allow Default domain and anon-uid
565         or -gid to be specified on command line.
566         * utils/idmapd/idmapd.c: improve error messages
567         * utils/idmapd/idmapd.c: Reopen nfsd files on sighup.  Allows us
568         to start up client side only (even when nfsd module not loaded),
569         and then sighup later after insmodding nfsd module. 
570         * utils/idmapd/idmapd.c: Make sure we catch all errors on
571         daemonizing by waiting for child to report succesfull startup
572         using a pipe. 
573         * utils/idmapd/idmapd.c: Let libnfsidmapd parse the idmapd.conf
574         file for the default domain, instead of doing that ourselves.
575         * utils/gssd/gssd_proc.c: Make sure we get an error when a gssd
576         downcall fails. 
577         * utils/gssd/gssd_proc.c: We were forgetting to restore the euid
578         on certain failures, which meant gssd could get stuck in a state
579         where it didn't have permissions to read the files in rpc_pipefs
580         that it needed to. 
581         * utils/gssd/gssd_proc.c: Use libnfsidmapd to map gss principals
582         to uids. 
583         * debian/nfs-kernel-server.default: Document the NEED_SVCGSSD
584         variable in /etc/default/nfs-kernel-server. 
585
586         
587 2004-11-22 NeilBrown <neilb@cse.unsw.edu.au>
588
589         * utils/exportfs/nfsd.man: corrected typo in .BR macro usage -
590         reported by Eric Raymond
591         
592 2004-10-19 "J. Bruce Fields" <bfields@fieldses.org>
593
594         * support/gssapi/* support/rpc/* utils/gssd/* utils/svcgssd/* etc
595         initial support for GSSAPI authentication
596         
597 2004-09-15 Neil Brown <neilb@cse.unsw.edu.au>
598
599         * utils/statd/monitor.c(sm_unmon_1_svc): is RESTRICTED_STATD, then
600         check IP address and force my_name to 127.0.0.1 to match 
601         what happens in sm_mon_1_svc.  This avoid spurious "erroneous
602         SM_UNMON" messages.
603         * utils/statd.monitor.c(sm_unmon_all_1_svc): likewise
604         
605 2004-09-15 "J. Bruce Fields" <bfields@fieldses.org>     
606
607         * Assorted changes to support "gss/*" style authentication
608         * utils/idmapd: new idmapd daemon for nfsv4 username lookup
609         
610 2004-09-06 Trond Myklebust <trond.myklebust@fys.uio.no>
611         Neil Brown <neilb@cse.unsw.edu.au>
612
613         * utils/mountd/auth.c(auth_authenticate_internal): fix
614         uninitialsed variable problem (causes bad error messages).
615
616 2004-09-06 Paul Clements <paul.clements@steeleye.com>
617         Neil Brown <neilb@cse.unsw.edu.au>
618
619         * utils/mountd/mountd.c(main): support --ha-callout (-H) for
620         specifying a callout program
621         * utils/mountd/rmtab.c: Call ha_callout on mount/unmount
622         * utils/statd/monitor.c: Call ha_callout on add/del client
623         * utils/statd/rmtcall.c: as above
624         * utils/statd/statd.c: handle --ha-callout (-H)
625         * utils/statd/svc_run.c: call notify_hosts is we have received a
626         sighup
627         * support/include/ha-callout.h: define ha_callout function
628          
629         
630 2004-08-31 NeilBrown <neilb@cse.unsw.edu.au>
631         * utils/mountd/cache.c(cache_process_req): clear fd after
632         processing so as not to confused libc/sunrpc into thinking
633         it need to do something with that fd.
634         
635 2004-08-31 NeilBrown <neilb@cse.unsw.edu.au>
636
637         * debian/nfs-kernel-server.init(start,stop) mount the nfsd
638         filesystem, if available, before starting nfs services, and 
639         unmount it afterwards.
640         * etc/nodist/nfs-server: ditto
641         * etc/redhat/nfs.init: likewise
642         * etc/redhat/nfs: add "MOUNT_NFSD" flag to control above.
643         
644 2004-06-08 NeilBrown <neilb@cse.unsw.edu.au>
645
646         * utils/exportfs/exportfs.c: Don't rmtab_read if new_cache, it
647           isn't necessary.
648         * support/nfs/cacheio.c(cache_flush): Change order in which caches
649           are flushed so that dependancies don't keep things in the cache
650           too long.
651         
652 2004-03-18  Chip Salzenberg  <chip@pobox.com>
653
654         * debian/changelog: Version 1.0.6-2.
655
656 2004-02-24 NeilBrown <neilb@cse.unsw.edu.au>
657         from "J. Bruce Fields" <bfields@fieldses.org>
658
659         * utils/mountd/cache.c: call auth_reload to make sure auth data is
660         current before responding to kernel upcall.
661         
662 2004-02-24 NeilBrown <neilb@cse.unsw.edu.au>
663         Based on patch from  Greg Banks <gnb@melbourne.sgi.com>
664
665         * utils/exportfs/exports.man: Document fsid= option.
666         
667 2003-09-15 NeilBrown <neilb@cse.unsw.edu.au>
668
669         Release 1.0.6
670
671         * rules.mk: Add dep: rule when no OBJS, so "make dep" works in
672         support/include, and depend in "predep"
673         * support/export/Makefile, tools/rpcgen/Makefile,
674         utils/statd/Makefile: add "predep" rule so that "make dep" works.
675         * Makefile: allow a simple "make" to run ./configure and "make dep"
676         if needed.
677         * configure.in, nfs-utils.spec: Update version to 1.0.6
678         * run autoconf
679         
680 2003-09-12  Chip Salzenberg  <chip@pobox.com>
681
682         * debian/changelog: Version 1.0.6-1.
683
684 2003-09-12 NeilBrown <neilb@cse.unsw.edu.au>
685
686         * utils/mountd/mountd.c(main): Impose FD_SETSIZE as an upper limit
687         for RLIMIT_NOFILE
688         * utils/statd/statd.c(main): Ditto.
689
690            michael <michael@newdream.net> discovered that svc_setreqsize
691            in glibc can segfault if RLIMIT_NOFILE is bigger than
692            FD_SETSIZE, so a simple solution is to impose a hard limit.
693
694 2003-09-09  Chip Salzenberg  <chip@pobox.com>
695
696         * debian/changelog: Version 1.0.5-3.
697         * support/export/hostname.c (get_reliable_hostbyaddr): Fix crash
698         on invalid reverse DNS.
699         * utils/showmount/showmount.c (main): Fix inet_ntoa() parameter.
700         * tools/rpcgen/rpc_cout.c (print_header): Remove unused vars.
701         * tools/rpcgen/rpc_parse.c (def_union): Likewise.
702
703 2003-08-22  Chip Salzenberg  <chip@pobox.com>
704
705         * utils/statd/{log.h,log.c}: Rename log() to note() and L_* to
706         N_*, to avoid conflict with ISO C built-in log() function.
707         * utils/statd/*.c: Use note().
708
709 2003-08-20  Chip Salzenberg  <chip@pobox.com>
710
711         * debian/changelog: Version 1.0.5-2.
712
713 2003-08-11 NeilBrown <neilb@cse.unsw.edu.au>
714
715         * utils/mountd/cache.c(cache_get_filehandle): close the filehandle
716         before returning.
717         
718 2003-08-04 NeilBrown <neilb@cse.unsw.edu.au>
719
720         * support/include/nfs/export.h, support/nfs/exports.c,
721         utils/exportfs/exports.c, utils/mountd/mountd.c:  change
722         NFSEXP_CROSSMNT to NFSEXP_CROSSMOUNT to avoid confusion with older
723         meaning. Also remove meaningless
724         NFSEXP_{UIDMAP,KERBEROS,SUNSECURE}
725         
726 2003-08-04 NeilBrown <neilb@cse.unsw.edu.au>
727
728         * support/export/xtab.c, support/include/nfslib.h,
729         support/nfs/cacheio.c, support/nfs/nfssvc.c,
730         utils/exportfs/exportfs.c, utils/exportfs/exportfs.man,
731         utils/exportfs/nfsd.man, utils/mountd/cache.c: support
732         /proc/fs/nfsd/* as a perferred alternate to /proc/fs/nfs/*
733         (nfs-utils-1.0.5-post2)
734         
735 2003-08-04 NeilBrown <neilb@cse.unsw.edu.au>
736
737         * support/nfs/nfsexport.c: open channel file O_WRONLY when
738         only writing.
739         * utils/mountd/cache.c: maintain mountlist when new_cache is
740         active. Also use O_WRONLY for channel files.
741         * utils/mountd/mountd.h: mountlist_{del,add} now take a host name
742         rather than an nfs_export.
743         * utils/mountd/rmtab.c: ditto.
744         (nfs-utils-1.5.0-post1)
745         
746 2003-07-24  Chip Salzenberg  <chip@pobox.com>
747
748         * support/nfs/xlog.c (xlog): Revise buffer-overflow fix to
749         use Debian security team's cleaner approach.
750         * debian/changelog: Version 1.0.5-1.
751         * debian/nfs-kernel-server.init: Cosmetic changes.
752
753 2003-07-18 NeilBrown <neilb@cse.unsw.edu.au>
754
755         Release 1.0.5:
756          1.0.4 was a bit of a brown-paper-bag-release because of the extra
757          'free' in auth.c.  So I'm releasing this just a few days later.
758
759         * support/nfs/cacheio.c(cache_flush): Correct test for 'open
760         failed'
761         * utils/exportfs/exportfs.c(main): If "-f" given as lone option,
762         check if new_cache is enabled, error if not, flush and exit if it
763         is. 
764         * utils/exportfs/exportfs.man: Explain -f option and explain the
765         two different modes that exportfs can work in.
766         * utils/mountd/mountd.c: Do not change RLIMIT_NOFILE if the -o
767         option wasn't given.
768         * utils/mountd/mountd.man: Record the change if default behaviour
769         for RLIMIT_NOFILE.
770         * configure.in, nfs-utils.spec: update version to 1.0.5 and
771         run autoconf
772         
773 2003-07-15 NeilBrown <neilb@cse.unsw.edu.au>
774
775         * utils/mountd/mountd.c(main): getopt string fix for 'o'
776         * utils/mountd/auth.c(auth_authenticate): remove extra 'free'
777         * utils/exportfs/exportfs.c(main): make 'exportfs -f' just flush
778         the caches.
779         * support/include/nfs/export.h: Reserve a bit for possible ACL
780         related use.
781         
782 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
783
784         * utils/exportfs/nfsd.man: new man page for nfsd filesystem. Also
785         assorted changed to cope with section 7 of the manual.
786         * configure.in, nfs-utils.spec: Update version to 1.0.4
787         * run autoconf
788
789         This is a 'pre-release' for 1.1.0  Hopefully 1.1.0 will be the
790         baseline for 2.6 and 2.8.  I.e. it should continue to work right
791         through the 2.8 (or 3.0) kernel series.  Previous releases wont.
792
793 2003-07-04 NeilBrown <neilb@cse.unsw.edu.au>    
794         Steve Dickson <SteveD@redhat.com>
795
796         statd cleanup:
797         * utils/statd/statd.c: create a pidfile with pid of statd, and
798         truncate it when statd exists.
799         * utils/statd/statd.c: drop privs by setuid to owner of SM_DIR,
800         and warn if this is root.
801         * utils/statd/statd.c: when statd forks, connect child to parent
802         with a pipe, and send a byte down the pipe once the child is
803         working properly.
804         * Makefile: create and chown sm, sm.bak, state when "make install"
805         * configure.in: add --with-statduser= option which defaults to
806         "rpcuser" or "nobody"
807         * config.mk.in: pass "statduser" through to Makefile
808         
809 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
810
811         * support/include/nfs/nfs.h: Make sure correct __kernel_dev_t is
812         used as the size was changed somewhere in 2.5.60-2.5.70.  Without
813         this nfs-utils compiles against 2.6 headers will not work on a
814         2.4 kernel.     
815         
816 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
817
818         * support/nfs/nfssvc.c(nfssvc): If /proc/fs/nfs/threads exists,
819         set number of threads by writing to there.  This means it will
820         still work when the syscall interface goes away in 2.7.
821
822 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
823         fumihiko kakuma <kakmy@mvh.biglobe.ne.jp>
824
825         * utils/exportfs/exportfs.c(unexportfs): improve host comparison
826         so as to only export the wildcard exports that were asked for.
827         * support/export/export.c(export_allowed): changed to return the
828         nfs_export rather than a "struct exportent", as m_changed is
829         needed by called
830         * support/export/rmtab.c(rmtab_read): modified to deal with
831         interface change for export_allowed(), and enhanced to preserve
832         m_changed flag when a wild-card export causes the creation of
833         a non-wildcard export.
834         
835 2003-07-02 NeilBrown <neilb@cse.unsw.edu.au>
836         Steve Dickson <SteveD@redhat.com>
837
838         * utils/mountd/mountd.man: Add valid kinds of debugging.
839         * utils/mountd/mountd.c(main): ignore SIGPIPE
840         * utils/nfsstat/nfsstat.c: fine-tune printing of warning so
841         we don't get warnings about unavailable stats that weren't asked
842         for.
843         
844 2003-06-24 NeilBrown <neilb@cse.unsw.edu.au>
845
846         * support/nfs/nfsexport.c(exp_unexp): When unexporting filesystems
847         via /rpc/net/rpc/nfsd*/channel, set the expiry date to 1, not
848         'forever', so things disappear out of the cache rather than just
849         be ignored. 
850         
851 2003-06-16  "J. Bruce Fields" <bfields@fieldses.org>
852
853         * utils/mountd/cache.c(nfsd_fh): don't export the export_ent
854         if it wasn't found.
855
856 2003-06-16  NeilBrown   <neilb@cse.unsw.edu.au>
857
858         * debian/nfs-kernel-server.init,etc/nodist/nfs-server,
859         etc/redhat/nfs.init: when checking if V3 is supported, make sure
860         nfs server 'knows' about 127.0.0.1 first.
861         
862 2003-06-10  Chip Salzenberg  <chip@pobox.com>
863
864         * support/nfs/xlog.c (xlog): Fix off-by-one buffer overflow bug.
865         * debian/changelog: Version 1.0.3-2.
866
867 2003-05-30 Michael Griffith <grif@michaelgriffith.com>
868         NeilBrown <neilb@cse.unsw.edu.au>
869
870         utils/nfsstat/nfsstat.c(print_callstats): use unsigned
871         long long to avoid overflow when printing stats.
872         
873 2003-05-30  NeilBrown <neilb@cse.unsw.edu.au>
874
875         * support/export/export.c, support/include/nfslib.h,
876         support/nfs/export.c, utils/exportfs/exportfs.c,
877         utils/mountd/mountd.c: new export option "mountpoint"
878         If no path is given, then the export point must be a
879         mount point, or it won't be exported.  If a path is 
880         given (e.g. mountpoint=/path) then that path must be
881         a mountpoint or the exportpoint won't be exported.
882         * utils/exportfs/exportfs.man: document mountpoint option.
883         * support/misc/mountpoint.c: New file with is_mountpoint()
884         to determine if something is a mountpoint.
885         
886 2003-05-23  NeilBrown <neilb@cse.unsw.edu.au>
887
888         * utils/mountd/cache.c(cache_get_filehandle): take a separate path
889         argument as we might not be getting the filehandle for the
890         mountpoint.
891         * utils/mountd/mountd.c(get_rootfh): pass real path when calling
892         cache_get_filehandle.
893         * utils/mountd/mountd.c(get_rootfh): check export point and
894         requested directory are on the same filesystem, and complain if
895         not.
896         
897 2003-05-22  NeilBrown <neilb@cse.unsw.edu.au>
898
899         * utils/mountd/auth.c(auth_authenticate_internal): make sure
900         portnumber is still checked when using new cache lookup.
901         
902 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
903
904         * utils/exportfs/exportfs.c: Use check_new_cache and cache_flush
905          Don't actually talk to kernel when new cache is in effect, except
906          to flush
907         * utils/exportfs/exportfs.c: add -f option to fully flush cache.
908         * support/export/xtab.c: Only rename new xtab into place if it has
909          changed, thus preserving modify date for exportfs to use when
910          flushing.
911         * support/nfs/cacheio.c: Add cache_flush
912         * support/export/xtab.c: Only rename new xtab into place if it has
913          changed, thus preserving modify date for exportfs to use when
914          flushing.
915         
916 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
917
918         * support/export/client.c: Add client_compose, client_member to
919         handle new composite client names
920         * support/include/exportfs.h: Declare above functions.
921         * utils/mountd/auth.c: use client_compose to determine calling
922         client if new cache is being used.
923         * utils/mountd/auth.c: call cache_export to export a filesystem if
924         new_cache, check if new cache is used, and call my_svc_run instead
925         of svc_run
926         * utils/mountd/svc_run.c: new file defining my_svc_run
927         * utils/mountd/cache.c: new file for handling cache upcalls.
928         * support/nfs/cacheio.c(check_new_cache): new function to check if
929         new cache should be used.
930         
931         
932 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
933
934         * support/include/nfs/export.h: New CROSSMNT distinct from NOHIDE
935         * support/nfs/exports.c: Make CROSSMNT distinct from NOHIDE
936         * utils/exportfs/exportfs.c(dump): ditto
937         
938 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
939
940         * support/export/hostname.c(get_reliable_hostbyaddr): new function
941         to get host name from address with full checking of authenticity.
942         * support/include/misc.h: declare above function
943         * utils/mountd/auth.c(auth_authenticate_internal): remove all
944         logic for authenticating address.
945         * utils/mountd/auth.c(auth_authenticate): call new
946         get_reliable_hostbyaddr to to hostname lookup before calling _internal.
947         
948         
949 2003-03-30  NeilBrown <neilb@cse.unsw.edu.au>
950
951         * tools/rpcgen/rpc_main.c(find_cpp): removed
952         * tools/rpcgen/rpc_main.c(open_input): use execvp to find "cpp", 
953         then try hard-coded paths.
954         
955 2003-03-26  Chip Salzenberg  <chip@pobox.com>
956
957         * debian/changelog: Version 1.0.3-1.
958
959 2003-03-26 NeilBrown <neilb@cse.unsw.edu.au>
960
961         * utils/mountd/rmtab.c (slink_safe_rename): real_newpath should be
962         "const char*", not "char*".
963
964 2003-03-26 NeilBrown <neilb@cse.unsw.edu.au>
965
966         * configure.in (VERSION): Set to "1.0.3".
967         * nfs-utils.spec: Likewise.
968         * configure: Regenerated.
969
970 2003-03-26 NeilBrown <neilb@cse.unsw.edu.au>
971
972         * support/nfs/cacheio.c: New File - support for read/writing
973         to export cache in /proc/rpc/*/channel
974         * support/nfs/Makefile: compile cacheio.c
975         * support/include/nfslib.h: declare cacheio.c functions
976         * support/nfs/nfsexport.c: export and unexport through
977         /proc/rpc/*/channel if possible, as old syscall interface
978         may not survive into 2.6 on all architectures.
979         
980 2003-02-19 NeilBrown <neilb@cse.unsw.edu.au>    
981         Ben Leslie <benno@sesgroup.net>
982
983         * support/nfs/rpcmisc.c(rpc_init):  change test for ignoring
984         "defport" from (__rpcfdtype == 0) to (__rpcpmstart==0).  The
985         former would incorectly ignore defport if the application 
986         explicitly set __rpcfdtype.  The later is sufficient to avoid the
987         special handling in the case where stdin is an internet socket.
988
989         * utils/mountd/mountd.c(main): Add 'n' to option list in
990         getopt_long as this is a short form of --no-tcp which want being
991         checked.
992         
993 2003-02-12  Chip Salzenberg  <chip@pobox.com>
994
995         * debian/changelog: Version 1.0.2-2.
996
997 2002-11-27  Chip Salzenberg  <chip@pobox.com>
998
999         * utils/mountd/rmtab.c (slink_safe_rename): Fix off-by-one buffer
1000         overflow bug.  Reformat per rest of source file.
1001
1002 2002-11-19  NeilBrown <neilb@cse.unsw.edu.au>
1003
1004         * utils/exportfs/exports.man: Correct notes about whether the wild
1005         card characters match a period.  They do.
1006         
1007 2002-10-15  Juan Gomez <juang@us.ibm.com>
1008
1009         * utils/mountd/rmtab.c (slink_safe_rename): New. Support
1010         symlink.
1011         (mountlist_add): Call slink_safe_rename instead of rename.
1012
1013 2002-10-11  H.J. Lu <hjl@lucon.org>
1014
1015         * support/include/exportfs.h (export_errno): New.
1016
1017         * support/nfs/exports.c: Include <errno.h>.
1018         (export_errno): New.
1019         (getexportent): Set export_errno to EINVAL for bad option.
1020         (parseopts): Likewise.
1021         Report the location of the default sync/async option.
1022
1023         * utils/exportfs/exportfs.c (main): Initialize export_errno to
1024         0. Return export_errno.
1025
1026 2002-10-11  Juan Gomez  <gomez@cs.sjsu.edu>
1027         NeilBrown <neilb@cse.unsw.edu.au>
1028
1029         utils/statd/statd.c(killer): don't pmap_unset if in notify_only mode
1030         utils/statd/statd.c(main): don't pmap_unset if in notify_only mode
1031         
1032 2002-09-16  Chip Salzenberg  <chip@pobox.com>
1033
1034         * utils/rquotad/rquota_svc.c (main): Use int for value of getopt.
1035
1036 2002-09-15  Chip Salzenberg  <chip@pobox.com>
1037
1038         * support/nfs/rpcmisc.c (rpc_init): Allow stdin to be a non-INET
1039         socket, as occurs when run from sshd.
1040         * debian/changelog: Version 1.0.2-1.
1041
1042 2002-09-12  H.J. Lu <hjl@lucon.org>
1043
1044         * support/nfs/svc_socket.c: Remove HAVE_SVCTCP_SOCKET and
1045         HAVE_SVCUDP_SOCKET.
1046
1047 2002-09-12  H.J. Lu <hjl@lucon.org>
1048
1049         * configure.in: Remove checking svctcp_socket and svcudp_socket.
1050         * configure: Regenerated.
1051
1052         * support/include/config.h.in (HAVE_SVCTCP_SOCKET): Removed.
1053         (HAVE_SVCUDP_SOCKET): Removed.
1054
1055         * support/include/nfslib.h: Undo the last change.
1056
1057 2002-09-12  H.J. Lu <hjl@lucon.org>
1058
1059         * support/include/nfslib.h (svctcp_socket): Protect it with
1060         HAVE_SVCTCP_SOCKET.
1061         (svcudp_socket): Protect it with HAVE_SVCUDP_SOCKET.
1062
1063 2002-09-12  H.J. Lu <hjl@lucon.org>
1064
1065         * configure.in (VERSION): Set to "1.0.2".
1066         * configure: Regenerated.
1067         * nfs-utils.spec: Likewise.
1068
1069 2002-09-12  H.J. Lu <hjl@lucon.org>
1070
1071         * configure.in: Check svctcp_socket and svcudp_socket.
1072         * configure: Regenerated.
1073
1074         * support/include/config.h.in (HAVE_SVCTCP_SOCKET): New.
1075         (HAVE_SVCUDP_SOCKET): New.
1076
1077         * support/include/nfslib.h (svctcp_socket): New.
1078         (svcudp_socket): New.
1079
1080         * support/nfs/Makefile (OBJS): Add svc_socket.o.
1081
1082         * support/nfs/svc_socket.c: New.
1083
1084         * support/nfs/rpcmisc.c (rpc_init): Call svctcp_socket and
1085         svcudp_socket if port is unspecified.
1086
1087         * utils/nfsd/nfsd.c (main): Call getservbyname for port.
1088
1089         * utils/rquotad/rquota_svc.c: Include <nfslib.h>.
1090         (killer): New. Signal handler to unregister.
1091         (main): Use killer. Call svcudp_socket to get the default
1092         socket.
1093
1094 2002-09-02 Juan Gomez <juang@us.ibm.com>
1095         NeilBrown <neilb@cse.unsw.edu.au>
1096
1097         Add -N option to statd to run in notify-only mode.
1098
1099         * utils/statd/statd.h: uncomment MODE_NOTIFY_ONLY
1100         * utils/statd/statd.man: document -N
1101         * utils/statd/statd.c: enabled -N, largely exists but needed to be
1102         uncommented and completed
1103         
1104 2002-09-02 Juan Gomez <juang@us.ibm.com>
1105         NeilBrown <neilb@cse.unsw.edu.au>
1106
1107         statd to have " -P directory" arg to use that directory instead
1108         of /var/lib/nfs.  This is useful for fail-over clusters.
1109         
1110         * utils/statd/statd.h: define SM_DIR etc as var, not const.
1111         * utils/statd/statd.c: define "-P" option to set SM_*
1112         appropriately.
1113         * utils/statd/monitor.c: sprintf to cope with SM_DIR not being
1114         a constant any more.
1115         * utils/statd/notify.c: ditto.
1116         * utils/statd/statd.man: document -P option.
1117         
1118 2002-08-26  Chip Salzenberg  <chip@pobox.com>
1119
1120         * utils/nfsd/nfsd.man: Fix typo.
1121         * debian/changelog: Version 1.0.1-1.
1122
1123 2002-05-29 NeilBrown <neilb@cse.unsw.edu.au>
1124
1125         * let parseopts know if /etc/exports was being read or not, 
1126         and have it only print "no sync or async" warning in that case.
1127         
1128 2002-05-06 Tom McNeal <trmcneal@attbi.com>
1129         NeilBrown <neilb@cse.unsw.edu.au>
1130
1131         * utils/nfsstat/nfsstat.c: Handle differing format for
1132            /proc/net/rpc/nfsd between pre and post 2.4.0
1133         
1134 2002-04-09  NeilBrown <neilb@cse.unsw.edu.au>
1135         James Pearson <james-p@moving-picture.com>
1136
1137         * support/nfs/rmtab.c(fendrmtabent): sync changes to 
1138         storage before returning, as this is critical state
1139
1140 2002-04-08  Sean O'Connell <sean@ee.duke.edu>
1141             H.J. Lu <hjl@lucon.org>
1142
1143         * etc/redhat/nfs: New.
1144
1145 2002-04-08  H.J. Lu <hjl@lucon.org>
1146
1147         * etc/redhat/nfs.init: Updated.
1148
1149         * nfs-utils.spec.in: Updated.
1150         * nfs-utils.spec: Regenerated.
1151
1152         * utils/mountd/mountd.c (longopts): Fix a typo.
1153
1154         * utils/mountd/mountd.man: Updated.
1155
1156 2002-04-07  H.J. Lu <hjl@lucon.org>
1157
1158         * etc/redhat/nfslock.init (restart): Just do stop and start.
1159
1160         * etc/redhat/nfs.init: Fix a typo.
1161
1162 2002-04-07  H.J. Lu <hjl@lucon.org>
1163
1164         * configure.in (VERSION): Set to "1.0.1".
1165         * configure: Regenerated.
1166         * nfs-utils.spec: Likewise.
1167
1168         * README: Updated for 1.0.1.
1169
1170 2002-04-07  Sean O'Connell <sean@ee.duke.edu>
1171             H.J. Lu <hjl@lucon.org>
1172
1173         * etc/redhat/nfs.init: Read /etc/sysconfig/nfsd for NFS tuning.
1174
1175 2002-02-28   Steven Whitehouse <steve@gw.chygwyn.com>
1176               NeilBrown <neilb@cse.unsw.edu.au>
1177
1178         Add support for fsid=nn export option so that device
1179         numbers don't go in filehandles.
1180         * support/export/nfsctl.c(expsetup): if exporting and NFSEXP_FSID
1181         is set, pass the fsid in-place of the device number
1182         * support/nfs/exports.c: parse and print fsid= option.
1183         Also check if efname has been set, and use "command line"
1184         instead in error messages.
1185         Also, use strtol instead of atoi for anon[ug]id= so that
1186         bad numbers cause errors.
1187         
1188 2002-01-17   Adrian Drzewiecki <drze@MissionCriticalLinux.com>
1189              NeilBrown <neilb@cse.unsw.edu.au>
1190
1191         * support/nfs/exports.c: remove NFSEXP_ASYNC as a default
1192         flag so that "sync" becomes the default.
1193         Check that either "sync" or "async" is given as an option
1194         and warn if neither are present
1195         * utils/exportfs/exports.man: change documentation for "sync"
1196         to be documentation for "async".
1197         * utils/exportfs/exportfs.man: note that "sync" is the default
1198         rather than "async"
1199         
1200         
1201 2002-01-02  Chip Salzenberg  <chip@pobox.com>
1202
1203         * support/export/nfsctl.c (expsetup): Don't export entries that
1204         specify id mappings not supported by the kernel.  No extant kernel
1205         supports any significant mapping, only 'identity' (i.e. none).
1206         When other mappings are supported, this code will need changing.
1207         * debian/changelog: Version 1.0-2.
1208
1209 2001-12-26  Chip Salzenberg  <chip@pobox.com>
1210
1211         * nfs-utils.spec (Version): Set to "1.0".
1212         * configure.in (VERSION): Likewise.
1213         * configure: Regenerated.
1214         * README: Rewritten.
1215         * debian/changelog: Version 1.0-1.
1216
1217         * utils/exportfs/exports.man: Emphasize the need for options to
1218         immediately follow client names.  Explain that wildcards don't
1219         usually work on addresses, but may work when reverse DNS fails.
1220         Comment out a leftover TP that was TPing our indentation.
1221         * utils/mountd/mountd.man, utils/rquotad/rquotad.man,
1222         utils/statd/statd.man: Remove refs to non-existent "hosts_allow(5)".
1223         * debian/changelog: Version 0.3.3-6.
1224
1225 2001-12-20  NeilBrown <neilb@cse.unsw.edu.au>
1226
1227         * support/export/client.c(client_lookup): If a host has multiple
1228         IP addresses, then we must always use the result of a
1229         gethostbyname, not that of gethostbyaddr for exporting
1230         
1231 2001-12-20  NeilBrown <neilb@cse.unsw.edu.au>
1232
1233         * support/export/client.c (client_lookup): use strcasecmp when
1234         comparing host names
1235         * support/nfs/export.c (getexportent): add fromkernel arg and use
1236         different defaults as kernels prior to 2.4.11 assume different
1237         defaults in /proc/fs/nfs/exports
1238         * support/include/nfslib.h, support/export/export.c,
1239         support/export/xtab.c:  support extra "fromkernel" arg for
1240         getexportent. 
1241         
1242 2001-12-13  Chip Salzenberg  <chip@pobox.com>
1243
1244         * debian/changelog: Version 0.3.3-5.
1245
1246 2001-11-26  TAKAI Kousuke <takai@vlsi.kuee.kyoto-u.ac.jp>
1247
1248         * support/nfs/xio.c (xskip): Call `xungetc' instead of
1249         `ungetc' to keep x_line more properly.
1250
1251 2001-11-26  Chip Salzenberg  <chip@pobox.com>
1252
1253         * utils/showmount/showmount.c (main): Don't assume that strings
1254         starting with digits are IP addresses.
1255         * utils/nfsd/nfsd.c (main): Close all fds and reopen 0,1,2 on
1256         /dev/null before nfssvc().  Use syslog to report nfssvc errors.
1257         * support/misc/tcpwrapper.c, utils/mountd/mountd.man,
1258         utils/rquotad/rquotad.man, utils/statd/statd.man: Fix comments and
1259         man pages: We check host names *and* addresses with tcpwrappers.
1260         * debian/changelog: Version 0.3.3-4.
1261
1262 2001-11-21  Chip Salzenberg  <chip@pobox.com>
1263
1264         * support/nfs/clients.c (cfname): Added: current clients file name.
1265         (setnfsclntent): Set it.
1266         ({get,end}nfsclntent, syntaxerr): Use it.
1267         * support/nfs/exports.c (efname): Added: current exports file name.
1268         (setnfsexportent): Set it.
1269         (endnfsexportent, parseopts, getexport, syntaxerr): Use it.
1270         (parseopts): Accept old-style "crossmnt" option, for old xtabs.
1271         * debian/changelog: Version 0.3.3-3.
1272
1273 2001-10-11  Chip Salzenberg  <chip@pobox.com>
1274
1275         * utils/mountd/mountd.c (main): Close fds > 2 _before_ RPC init.
1276         * debian/changelog: Version 0.3.3-2.
1277
1278 2001-10-08  Chip Salzenberg  <chip@pobox.com>
1279
1280         * utils/mountd/mountd.c (main): When daemonizing, close all fds > 2.
1281         * utils/Makefile.in: Remove old Makefile in target 'distclean'.
1282         * utils/mountd/mountd.man: Update paths to /var/lib.
1283         * debian/*: Version 0.3.3-1, with Debian-specific fixes.
1284
1285 2001-10-06  Preston Brown <pbrown@redhat.com>
1286
1287         * utils/nfsstat/nfsstat.man: Updated.
1288
1289 2001-09-24  H.J. Lu <hjl@lucon.org>
1290
1291         * configure.in (VERSION): Set to "0.3.3".
1292         * configure: Regenerated.
1293         * nfs-utils.spec: Likewise.
1294
1295         * README: Updated for 0.3.3.
1296
1297 2001-09-20 NeilBrown <neilb@cse.unsw.edu.au>
1298
1299         Arrange that "exportfs -au" never does DNS lookup:
1300         
1301         * support/export/client.c (client_lookup) : add "canonical"
1302         flag which says that the hostname is known to be canonical, so
1303         don't do a lookup
1304
1305         * support/export/export.c (export_create) : add "canonical"
1306         flag to be passed down to client_lookup
1307         * support/export/export.c (export_lookup) : Likewise
1308
1309         * support/export/xtab.c (xtab_read) : pass appropriate
1310         "canonical" flag to export_lookup and export_create:
1311         set if reading list of filesystems currently exports
1312         (is_export != 1). 
1313
1314         * support/export/export.c (export_read) : pass 0 as 
1315         "canonical" flag to export_lookup and export_create
1316         * support/export/rmtab.s (rmtab_read) : Likewise
1317
1318         * support/include/exportfs.h : redeclare various routines
1319         to have "canonical" flag
1320
1321         * utils/exportfs/exportfs.c (main) : redo logic for 
1322         "-au" to read in what is currently exported, but never even 
1323         look at what "should" be exported.
1324
1325         * utils/exportfs/exportfs.c (unexportall) : remove this
1326         routine. Functionality is completely included in
1327         exports_update
1328
1329         * utils/exportfs/exportfs.c (exportfs) : set "canonical"
1330         flag to zero in calls to export_lookup and export_create.
1331
1332         
1333 2001-09-20 NeilBrown <neilb@cse.unsw.edu.au>
1334             Anne Milicia <milicia@missioncriticallinux.com>
1335
1336         * support/export/client.c (client_lookup) call gethostbyadd
1337         to make sure that we have a canonical hostname, even for
1338         dotted-quads
1339         * utils/exportfs/exportfs.c (exportfs) Likewise
1340         
1341 2001-09-12 NeilBrown <neilb@cse.unsw.edu.au>
1342
1343         * support/nfs/exports.c (putexportent): \octal quote any spaces
1344         etc in a path name
1345         * support/nfs/xio.c (xgettok): recognise double-quote and
1346         \octal quoting in path names
1347         * utils/exportfs/exports.man: document quoting conventions
1348         for path names
1349         
1350 2001-09-12 NeilBrown <neilb@cse.unsw.edu.au>
1351
1352         * utils/mountd/auth.c (auth_authenticate_internal): Reverse
1353           change from 2000-08-02:  It causes problems if someone exports
1354           to both a hostname and IP addresses.  nfs-utils must be
1355           consistant about the canonical name that it chooses.
1356
1357 2001-08-17  Ragnar Kjørstad <nfs@ragnark.vestdata.no>
1358             H.J. Lu <hjl@lucon.org>
1359
1360         * etc/redhat/nfslock.init (STATDARG): New. Pass it to rpc.statd.
1361
1362         * utils/statd/statd.c (longopts): Add "name".
1363         (usage): Add "-n/--name".
1364         (main): Set MY_NAME with "-n/--name".
1365
1366         * utils/statd/state.c (change_state): Set MY_NAME only if it
1367         is NULL.
1368         
1369         * utils/statd/statd.man: Updated for "-n/--name".
1370
1371 2001-07-26  H.J. Lu <hjl@lucon.org>
1372
1373         * nfs-utils.spec (Release): Set to 8.
1374
1375 2001-07-25  H.J. Lu <hjl@lucon.org>
1376
1377         * etc/redhat/nfs.init: Check if rpc.rquotad exists before doing
1378         anything about it.
1379
1380 2001-06-27  H.J. Lu <hjl@lucon.org>
1381
1382         * etc/redhat/nfs.init: Run rpc.rquotad only if it exists.
1383
1384 2001-06-27  H.J. Lu <hjl@lucon.org>
1385
1386         * utils/rquotad/rquota_server.c: Don't call statfs () for
1387         the block size. Use BLOCK_SIZE instead.
1388
1389 2001-06-27  H.J. Lu <hjl@lucon.org>
1390
1391         * config.mk.in (CC_FOR_BUILD): Renamed from BUILD_CC.
1392         (CFLAGS_FOR_BUILD): New. Don't use @CFLAGS@.
1393
1394         * configure.in (enable_nfsv3): Set to yes by default.
1395         (--enable-rquotad): Added
1396         (AC_PROG_CXX): Removed.
1397         (AC_OUTPUT): Add utils/Makefile.
1398         (CC_FOR_BUILD): Renamed from BUILD_CC.
1399         * configure: Regenerated.
1400
1401         * utils/Makefile: Removed.
1402
1403         * utils/Makefile.in: New.
1404
1405         * nfs-utils.spec.in (rquotad): New. Set to 0 to disable
1406         rquotad.
1407         (CC_FOR_BUILD): Renamed from BUILD_CC.
1408         * nfs-utils.spec: Regenerated.
1409
1410 2001-06-15  Chip Salzenberg  <chip@debian.org>
1411
1412         * debian/changelog: Version 0.3.2-2.
1413         * debian/*.init: Minor fixes.
1414
1415 2001-06-07  Lon H. Hohberger <hohberger@missioncriticallinux.com>
1416
1417         * etc/nodist/nfs-server: Fixed a bug where the script would
1418         disable mounts from NFSv3 clients if NFSv3 is present.
1419
1420 2001-06-05  H.J. Lu <hjl@lucon.org>
1421
1422         * utils/mountd/mountd.c (longopts): Add "descriptors/o".
1423         (main): Support --descriptors/-o to set the limit of the number
1424         of open file descriptors.
1425         (usage): Updated.
1426
1427         * utils/mountd/mountd.man: Updated for --descriptors/-o.
1428
1429 2001-06-04  H.J. Lu <hjl@lucon.org>
1430
1431         * nfs-utils.spec (Release): Set to 6.
1432
1433 2001-05-28  H.J. Lu <hjl@lucon.org>
1434
1435         * utils/lockd/lockd.c (main): chdir to NFS_STATEDIR.
1436         * utils/mountd/mountd.c (main): Likewise.
1437         * utils/nfsd/nfsd.c (main): Likewise.
1438         * utils/rquotad/rquota_svc.c (main): Likewise.
1439
1440 2001-05-06  Anne Milicia <milicia@missioncriticallinux.com>
1441
1442         * support/export/client.c (client_check): Check IP address
1443         againet netgroup.
1444
1445 2001-05-06  Neil Brown <neilb@cse.unsw.edu.au>
1446
1447         * support/export/client.c (client_gettype): Treat `*' as
1448         MCL_ANONYMOUS.
1449
1450 2001-04-22  H.J. Lu <hjl@lucon.org>
1451
1452         * nfs-utils.spec.in: Fix a typo.
1453         * nfs-utils.spec: Regenerated.
1454
1455 2001-04-21  H.J. Lu <hjl@lucon.org>
1456
1457         * nfs-utils.spec.in: Fix cross build.
1458         * nfs-utils.spec: Regenerated.
1459         (Release): Set to 5.
1460
1461 2001-04-18  H.J. Lu <hjl@lucon.org>
1462
1463         * nfs-utils.spec.in: Support cross build.
1464         * nfs-utils.spec: Regenerated.
1465         (Release): Set to 4.
1466
1467         * config.sub: New.
1468         * config.guess: New.
1469
1470         * config.mk.in (BUILD_CC): New.
1471         (CC): Set to $(BUILD_CC) if BUILD is defined.
1472         (AR): Set to @AR@.
1473         (LD): Set to @LD@.
1474         (RANLIB): Set to @RANLIB@.
1475
1476         * configure.in: Check BUILD_CC, RANLIB, AR and LD.
1477         * configure: Regenerated.
1478
1479         * tools/rpcgen/Makefile (BUILD): Set to true.
1480
1481 2001-04-01  Chip Salzenberg  <chip@valinux.com>
1482
1483         * tools/rpcgen/rpc_svcout.c (write_timeout_func): Remove
1484         redundant, and sometimes broken, declaration of svc_fdset;
1485         it may be a macro.
1486         * support/nfs/rpcmisc.c (closedown): Likewise.
1487         
1488 2001-03-21  H.J. Lu <hjl@lucon.org>
1489
1490         * nfs-utils.spec: Regenerated.
1491         (Release): Set to 3.
1492
1493 2001-03-21  Ion Badulescu  <ionut@cs.columbia.edu>
1494
1495         * utils/statd/statd.c (main): make sure file descriptors 0-2
1496         are open to /dev/null.
1497
1498 2001-03-21  H.J. Lu <hjl@lucon.org>
1499
1500         * support/nfs/rpcmisc.c: Restore the change made on 2001-03-10.
1501         * support/nfs/rpcmisc.c: Likewise.
1502         * utils/rquotad/rquota_svc.c: Likewise.
1503         * utils/rquotad/rquotad.man: Likewise.
1504         * utils/statd/Makefile: Likewise.
1505         * utils/statd/rmtcall.c: Likewise.
1506         * utils/statd/simulate.c: Likewise.
1507         * utils/statd/statd.c: Likewise.
1508         * utils/statd/statd.man: Likewise.
1509
1510 2001-03-11  H.J. Lu <hjl@lucon.org>
1511
1512         * configure.in (RELEASE): New. Default to 1, set by
1513         --with-release=XXX. Substitute nfs-utils.spec.
1514         * nfs-utils.spec.in (Release): Set to @RELEASE@.
1515         * configure: Regenerated.
1516         * nfs-utils.spec: Likewise.
1517
1518 2001-03-11  H.J. Lu <hjl@lucon.org>
1519
1520         * utils/rquotad/rquotad.man: Fix a typo.
1521
1522 2001-03-11  H.J. Lu <hjl@lucon.org>
1523
1524         * support/include/rpcmisc.h: Undo the change made on 2001-03-10.
1525         * support/nfs/rpcmisc.c: Likewise.
1526         * utils/rquotad/rquota_svc.c: Likewise.
1527         * utils/rquotad/rquotad.man: Likewise.
1528         * utils/statd/Makefile: Likewise.
1529         * utils/statd/rmtcall.c: Likewise.
1530         * utils/statd/simulate.c: Likewise.
1531         * utils/statd/statd.c: Likewise.
1532         * utils/statd/statd.man: Likewise.
1533
1534 2001-03-10  H.J. Lu <hjl@lucon.org>
1535
1536         * configure.in (VERSION): Set to "0.3.2".
1537         * configure: Regenerated.
1538         * nfs-utils.spec: Likewise.
1539
1540         * README: Updated for 0.3.2.
1541
1542 2001-03-10  Tavis Barr <tavis@boole.isetr.columbia.edu>
1543
1544         * utils/rquotad/rquotad.man: Updated for -p.
1545         * utils/statd/statd.man: Likewise.
1546
1547 2001-03-10  Ion Badulescu  <ionut@cs.columbia.edu>
1548
1549         * support/nfs/rpcmisc.c: export makesock()
1550
1551         * support/include/rpcmisc.h (makesock): Declared.
1552
1553         * utils/rquotad/rquota_svc.c: added longopts, added support for
1554         specifying the port to bind to on the command line.
1555
1556         * utils/statd/statd.c: ditto, also specify port used for
1557         outgoing connections.
1558         (do_regist): Removed.
1559
1560         * utils/statd/rmtcall.c (statd_get_socket): Renamed from
1561         get_socket. Make it extern.
1562
1563         * utils/statd/simulate.c (daemon_simulator): Call rpc_init
1564         instead of do_regist.
1565
1566         * utils/statd/Makefile (LIBS): link with our own libnfs
1567
1568 2001-03-09  H.J. Lu <hjl@lucon.org>
1569
1570         * etc/redhat/nfslock.init: Changed chkconfig line to 60 86.
1571         * etc/nodist/nfs-client: Likewise.
1572
1573 2001-02-26  Chip Salzenberg  <chip@valinux.com>
1574
1575         * debian/changelog: Version 0.3.1-1.
1576         * Mention upstream source and license in copyright file.
1577         * Add build-Depends for debhelper and libwrap0-dev.
1578
1579 2001-02-20  Lon Hohberger <hohberger@missioncriticallinux.com>
1580
1581         * etc/nodist/nfs-server: Changed chkconfig line to 60 20
1582         * etc/nodist/nfs-client: Likewise.
1583
1584 2001-02-18  Lon Hohberger <hohberger@missioncriticallinux.com>
1585
1586         * utils/statd/statd.man: Changed /usr/sbin/rpc.statd to
1587         /sbin/rpc.statd.
1588
1589 2001-02-17  Patrick J. LoPresti <patl@curl.com>
1590
1591         * utils/statd/log.c (log_init): Use LOG_DAEMON instead of
1592         LOG_LOCAL5.
1593
1594 2001-02-14  H.J. Lu <hjl@lucon.org>
1595
1596         * utils/statd/rmtcall.c: Include <time.h>.
1597         * utils/statd/svc_run.c: Likewise.
1598
1599 2001-02-14  H.J. Lu <hjl@lucon.org>
1600
1601         * configure.in (VERSION): Set to "0.3.1".
1602         * configure: Regenerated.
1603         * nfs-utils.spec: Likewise.
1604
1605         * README: Updated for 0.3.1.
1606
1607 2001-02-14  H.J. Lu <hjl@lucon.org>
1608
1609         * support/nfs/rpcmisc.c: Include <time.h>.
1610
1611 2001-02-14  Chip Salzenberg  <chip@valinux.com>
1612
1613         * debian/control: Change priority of nhfsstone package to 'extra'.
1614
1615 2001-02-12  Chip Salzenberg  <chip@valinux.com>
1616
1617         * debian/changelog: Version 0.3-2.
1618
1619 2001-02-02  H.J. Lu <hjl@lucon.org>
1620
1621         * support/include/rpcmisc.h (rpc_init): Remove bufsize.
1622         
1623         * support/nfs/rpcmisc.c (makesock): Remove socksz and comment
1624         out SO_SNDBUF/SO_RCVBUF.
1625         (rpc_init): Remove bufsize and remove socksz in calls to
1626         makesock ().
1627
1628         * utils/mountd/mountd.c (main): Remove bufsize in calls to
1629         rpc_init ().
1630
1631 2001-01-28  Chip Salzenberg  <chip@valinux.com>
1632
1633         * debian/changelog: Version 0.3-1.
1634
1635 2001-01-25  H.J. Lu <hjl@lucon.org>
1636
1637         * configure.in (VERSION): Set to "0.3".
1638         * configure: Regenerated.
1639         * nfs-utils.spec: Likewise.
1640
1641         * README: Updated for 0.3.
1642
1643 2001-01-25  H.J. Lu <hjl@lucon.org>
1644
1645         * utils/lockd/lockd.c (main): Ignore errno == EINVAL.
1646
1647 2001-01-20  Chip Salzenberg  <chip@valinux.com>
1648
1649         * support/include/xio.h (xgetc): Declare to return int.
1650         * support/nfs/xio.c (xgetc): Return int.
1651         (xgettok, xskip, xskipcomment): Use int for value of xgetc.
1652         * utils/statd/statd.c (main): Use int for value of getopt.
1653         * debian/changelog: Version 0.2.1-5.
1654         
1655 2000-12-10  Chip Salzenberg  <chip@valinux.com>
1656
1657         * utils/statd/monitor.c (sm_mon_1_svc): Fix buggy check for
1658         program and procedure numbers of kernel lockd's callback.  Also,
1659         besides the old (and broken) procedure #24, allow #16 per Trond.
1660
1661 2000-12-03  Chip Salzenberg  <chip@valinux.com>
1662
1663         * support/nfs/xio.c (xfopen): Initialize x_line to one, not zero.
1664         * debian/control: Let nhfsstone replace files in nfs-kernel-server.
1665         * debian/changelog: Version 0.2.1-4.
1666
1667 2000-11-27  Tobias Ringstrom <tori@tellus.mine.nu>
1668
1669         * utils/mountd/auth.c (auth_authenticate): Log the bad path
1670         warning.
1671
1672 2000-11-24  Neil Brown <neilb@cse.unsw.edu.au>
1673
1674         * support/nfs/exports.c (getexportent): Check for host name
1675         without option, or options without hostname, and print a warning,
1676         as this is most likely a typo.
1677
1678 2000-11-19  Chip Salzenberg  <chip@valinux.com>
1679
1680         * debian/control: Add dependency on portmap.
1681         * debian/changelog: Version 0.2.1-3.
1682
1683 2000-11-10  H.J. Lu <hjl@lucon.org>
1684
1685         * nfs-utils.spec.in: Don't use libtool.
1686         Add ChangeLog and COPYING to doc.
1687         * nfs-utils.spec: Rebuild.
1688
1689 2000-11-09  H.J. Lu <hjl@lucon.org>
1690
1691         * etc/redhat/nfs.init (start): Back out the last change.
1692
1693 2000-11-09  H.J. Lu <hjl@lucon.org>
1694
1695         * etc/redhat/nfs.init (start): Pass --no-tcp to mountd if
1696         TCP is not supported by kernel.
1697
1698         * support/nfs/rpcmisc.c (rpc_init): Don't set _rpcfdtype to 0.
1699
1700         * utils/mountd/mountd.c (longopts): Add "-n/--no-tcp".
1701         (main): Set to _rpcfdtype to SOCK_DGRAM for "-n/--no-tcp".
1702
1703         * utils/mountd/mountd.man: Updated for "-n/--no-tcp".
1704
1705 2000-10-24  Lon Hohberger <hohberger@missioncriticallinux.com>
1706
1707         * utils/statd/callback.c: Fix bug preventing callbacks to local lockd.
1708         * utils/statd/rmtcall.c: Add some IP address paranoia when doing
1709         callbacks to local lockd.
1710
1711 2000-10-18  Scott McDermott <mcdermot@questra.com>
1712
1713         * utils/exportfs/exports.man: Updated for CIDR netmask.
1714
1715 2000-10-17  Scott McDermott <mcdermot@questra.com>
1716
1717         * support/export/client.c (client_init): Support CIDR netmask
1718         in /etc/exports.
1719
1720 2000-10-11  H.J. Lu <hjl@lucon.org>
1721
1722         * aclocal.m4 (AC_TCP_WRAPPER): Fix a typo.
1723         * configure: Rebuilt.
1724
1725 2000-10-06  Lon Hohberger <hohberger@missioncriticallinux.com>
1726
1727         * utils/statd/statd.man: Change "/var/lib/nfs/sm/state" to
1728         "/var/lib/nfs/state".
1729
1730 2000-10-05  Lon Hohberger <hohberger@missioncriticallinux.com>
1731
1732         * utils/statd/statd.h (run_mode): New global bitmask of runtime
1733         behaviors: fg/bg, logging, etc.
1734         * utils/statd/statd.c: New command line options: -V -h -? -d .
1735         * utils/statd/statd.man: Update for changes to statd.
1736
1737         * utils/statd/log.h (log_init): Remove parameter of function; use
1738         global variable "name_p" instead.
1739         * utils/statd/log.c: Add support for logging to stderr.
1740
1741         * utils/statd/notlist.c: Partially rewrite notify list handling
1742         functions.  Eliminate run-off-end-of-list bug when calling
1743         nlist_insert_timer.  Add lots of comments.
1744         
1745 2000-09-27  H.J. Lu <hjl@lucon.org>
1746
1747         * README: Updated for RedHat 7.0.
1748
1749 2000-09-27  H.J. Lu <hjl@lucon.org>
1750
1751         * nfs-utils.spec: Rebuild.
1752
1753 2000-09-27  H.J. Lu <hjl@lucon.org>
1754
1755         * README: Updated for 0.2.1.
1756
1757 2000-09-27  H.J. Lu <hjl@lucon.org>
1758
1759         * nfs-utils.spec.in: Updated to use rpm macros and support
1760         RedHat 7.0.
1761
1762 2000-09-25  H.J. Lu <hjl@lucon.org>
1763
1764         * configure.in (VERSION): Set to "0.2.1".
1765         * configure: Regenerated.
1766         * nfs-utils.spec: Updated.
1767
1768 2000-09-25  H.J. Lu <hjl@lucon.org>
1769
1770         * utils/mountd/auth.c (auth_authenticate_internal): Make sure a
1771         non-NULL hostent is always returned.
1772
1773 2000-09-11  Ion Badulescu  <ionut@cs.columbia.edu>
1774
1775         * etc/redhat/nfslock.init: don't kill lockd processes that do not
1776         have an executable (i.e. kernel threads)
1777
1778 2000-09-01  H.J. Lu <hjl@lucon.org>
1779
1780         * README: Updated for 0.2.
1781
1782 2000-09-01  Jay Weber <jweber@valinux.com>
1783
1784         * etc/redhat/nfs.init: Added ability for rpc.mountd to default to
1785         supporting version 3 of nfs if available, else it will fall back to
1786         version 2 support only.
1787
1788 2000-08-30  H.J. Lu <hjl@lucon.org>
1789
1790         * configure.in (VERSION): Set to "0.2".
1791         * configure: Regenerated.
1792         * nfs-utils.spec: Updated.
1793
1794 2000-08-25  H.J. Lu <hjl@lucon.org>
1795
1796         * support/misc/tcpwrapper.c (logit): Modify the log output.
1797
1798 2000-08-25  Ion Badulescu  <ionut@cs.columbia.edu>
1799
1800         * utils/rquotad/rquotad.man, utils/statd/statd.man,
1801         utils/mountd/mountd.man: updated
1802         
1803         * utils/mountd/Makefile (LIBS): added -lmisc $(LIBWRAP) $(LIBNSL)
1804         * utils/rquotad/Makefile: fix comment
1805
1806         * support/misc/tcpwrapper.c (logit): added comment about waiting
1807         for the children after fork()
1808         
1809         * utils/mountd/mountd.c (main): ignore SIGCHLD to prevent leaving
1810         zombies behind (from logit()'s fork)
1811         * utils/rquotad/rquota_svc.c (main): ditto
1812         * utils/statd/statd.c (main): ditto
1813
1814         * utils/rquotad/rquota_svc.c (rquotaprog_1): pass RQUOTAPROG
1815         to check_default instead of 0, for prognum
1816
1817         * utils/statd/statd.c (sm_prog_1_wrapper): pass SM_PROG
1818         to check_default instead of 0, for prognum
1819
1820         * utils/mountd/mount_dispatch.c: Include "tcpwrapper.h" if
1821         HAVE_TCP_WRAPPER is defined.
1822         (mount_dispatch): Call check_default () if HAVE_TCP_WRAPPER is
1823         defined. Reject an RPC call if check_default () fails.
1824
1825 2000-08-25  H.J. Lu <hjl@lucon.org>
1826
1827         * support/include/tcpwrapper.h: New for the tcp wrapper
1828         support.
1829         * support/misc/Makefile: Likewise.
1830         * support/misc/from_local.c: Likewise.
1831         * support/misc/tcpwrapper.c: Likewise.
1832
1833         * aclocal.m4 (AC_TCP_WRAPPER): New.
1834         * configure.in: Use it. Substitute LIBWRAP.
1835         * configure: Rebuilt.
1836
1837         * config.mk.in (LIBNSL): New.
1838         (LIBWRAP): Likewise.
1839
1840         * support/Makefile (SUBDIRS): Add misc.
1841
1842         * support/lib/Makefile (LIBS): Add libmisc.a.
1843
1844         * utils/rquotad/Makefile (LIBS): Add
1845         
1846                 -lmisc $(LIBWRAP) $(LIBNSL)
1847
1848         * utils/statd/Makefile (LIBS): Likewise.
1849
1850         * utils/rquotad/rquota_svc.c: Include "tcpwrapper.h" if
1851         HAVE_TCP_WRAPPER is defined.
1852         (rquotaprog_1): Call check_default () if HAVE_TCP_WRAPPER is
1853         defined. Reject an RPC call if check_default () fails.
1854
1855         * utils/statd/statd.c: Include "tcpwrapper.h" if
1856         HAVE_TCP_WRAPPER is defined.
1857         (sm_prog_1_wrapper): New. A wrapper for sm_prog_1. Call
1858         check_default () before calling sm_prog_1 (). Define it as
1859         sm_prog_1_wrapper if HAVE_TCP_WRAPPER is defined.
1860
1861 2000-08-25  Chip Salzenberg  <chip@valinux.com>
1862
1863         * debian/*: Complete Debian build support.
1864         * etc/debian/*: Remove.
1865
1866 2000-08-24  Neil Brown <neilb@cse.unsw.edu.au>
1867
1868         * support/export/client.c(client_check): removed the "dot+1" as a
1869           ypdomain argument to innetgr as this is entirely bogus.
1870           It should always be NULL.
1871         
1872 2000-08-23  Neil Brown <neilb@cse.unsw.edu.au>
1873
1874         * support/export/xtab.c(xtab_read): introduce new mode for
1875            reading xtab. i.e. a list of exports that might be known to the
1876            kernel, or might not.  These are flagged as m_exported == -1
1877         * support/export/xtab.c(xtab_mount_read):  call xtab_read with new
1878            value "2" for xtab, meaning don't trust this too much.
1879         * support/include/exportfs.h(struct mexport): changed m_exported
1880            from one bit to an int so that it can hold new value
1881         * utils/exportfs/exportfs.c(exportfs_ipdate): add an export to the
1882            kernel if it is uncertain whether the kernel knows (m_exported == -1)
1883         * utils/mountd/mountd.c(get_rootfh): similarly export to kernel if
1884            status is uncertain
1885
1886         * support/nfs/xio.c(xflock): added O_CREAT when getting
1887            a write lock so that missing files aren't fatal.
1888
1889         * etc/debian/nfs-common: new file from "potato"
1890         * etc/debian/nfs-kernel-server: new file from "potato" plus fixes.
1891          
1892 2000-08-09  H.J. Lu <hjl@lucon.org>
1893
1894         * etc/redhat/nfs.init: Run /usr/sbin/exportfs first during
1895         startup to ensure all existing clients work fine.
1896
1897         * support/export/xtab.c (xtab_mount_read): Pass 1 instead of 0
1898         to xtab_read () for reading _PATH_XTAB.
1899
1900 2000-08-02  H.J. Lu <hjl@lucon.org>
1901
1902         * utils/mountd/auth.c (auth_authenticate_internal): Try to
1903         avoid the reverse name lookup.
1904
1905 2000-07-04  H.J. Lu <hjl@lucon.org>
1906
1907         * utils/statd/log.c: Include <stdlib.h> for exit ().
1908
1909         * utils/statd/misc.c (xunlink): Add `{' and `}' to quiet the
1910         gcc warning.
1911
1912 2000-07-04  H.J. Lu <hjl@lucon.org>
1913
1914         * configure.in (VERSION): Set to "0.1.9.1".
1915         * configure: Regenerated.
1916         * nfs-utils.spec: Updated.
1917
1918         * README: Updated.
1919
1920 2000-07-04  Neil Brown  <neilb@cse.unsw.edu.au>
1921
1922         * support/export/hostname.c (hostent_dup): Handle the NULL
1923         h_aliases field.
1924
1925 2000-07-03  H.J. Lu <hjl@lucon.org>
1926
1927         * README: Update the util-linux requirement.
1928
1929 2000-07-03  H.J. Lu <hjl@lucon.org>
1930
1931         * configure.in (VERSION): Set to "0.1.9".
1932         * configure: Regenerated.
1933         * nfs-utils.spec: Updated.
1934
1935         * README: Updated.
1936
1937 2000-07-03  H.J. Lu <hjl@lucon.org>
1938
1939         * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
1940         stop to ensure all clients can still access the server
1941         before it is shutdown.
1942
1943 2000-06-30  Jeff Uphoff <juphoff@transmeta.com>
1944
1945         * tools/rpcgen/rpc_svcout.c (write_msg_out): Generate syslog()
1946         calls with format string.
1947         
1948 2000-06-28  Chip Salzenberg  <chip@valinux.com>
1949
1950         * utils/statd/log.c (log): Call syslog with format string.
1951
1952 2000-06-27  H.J. Lu <hjl@lucon.org>
1953
1954         * utils/statd/statd.c (main): Use sysconf (_SC_OPEN_MAX)
1955         instead of OPEN_MAX.
1956
1957 2000-06-27  H.J. Lu <hjl@lucon.org>
1958
1959         * README: Updated.
1960
1961 2000-06-27  H.J. Lu <hjl@lucon.org>
1962
1963         * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
1964         startup to ensure all existing clients are exported.
1965
1966         * configure.in (VERSION): Set to "0.1.8.2".
1967         * configure: Regenerated.
1968         * nfs-utils.spec: Updated.
1969
1970 2000-06-06  H.J. Lu <hjl@lucon.org>
1971
1972         * configure.in (VERSION): Set to "0.1.8.1".
1973         * configure: Regenerated.
1974         * nfs-utils.spec: Updated.
1975
1976 2000-06-06  H.J. Lu <hjl@lucon.org>
1977
1978         * utils/mountd/mountd.c (mount_dump_1_svc): Cast svc_getcaller
1979         to "struct sockaddr_in *" for glibc 2.2.
1980         (mount_umnt_1_svc): Likewise.
1981         (mount_umntall_1_svc): Likewise.
1982         (mount_export_1_svc): Likewise.
1983         (mount_exportall_1_svc): Likewise.
1984         (mount_pathconf_2_svc): Likewise.
1985         (get_rootfh): Likewise.
1986
1987 2000-06-04  H.J. Lu <hjl@lucon.org>
1988
1989         * etc/redhat/nfs.init: Fix a typo in comment.
1990
1991 2000-05-31  H.J. Lu <hjl@lucon.org>
1992
1993         * configure.in (VERSION): Set to "0.1.8".
1994         * configure: Regenerated.
1995         * nfs-utils.spec: Updated.
1996
1997         * README: Updated.
1998
1999 2000-05-31  H.J. Lu <hjl@lucon.org>
2000
2001         * configure.in (VERSION): Set to "0.1.7.5".
2002         * configure: Regenerated.
2003         * nfs-utils.spec: Updated.
2004
2005         * support/include/nfslib.h (exportent): Add a new field,
2006         r_count, to count the number of mounts from a client.
2007         (getrmtabent): Take a new argument for position in file.
2008         (putrmtabent): Likewise.
2009         (fgetrmtabent): Likewise.
2010         (fputrmtabent): Likewise.
2011         * support/nfs/rmtab.c (getrmtabent): Handle the new argument
2012         for position in file.
2013         (fgetrmtabent): Likewise.
2014         (putrmtabent): Likewise.
2015         (fputrmtabent): Likewise.
2016
2017         * support/nfs/rmtab.c (fgetrmtabent): Get value for the new
2018         field, r_count.
2019
2020         * support/export/rmtab.c (rmtab_read): Pass NULL as the new
2021         argument to getrmtabent (), fgetrmtabent (), putrmtabent ()
2022         and fputrmtabent ().
2023         * utils/mountd/rmtab.c (mountlist_add): Likewise.
2024         (mountlist_del): Likewise.
2025         (mountlist_del_all): Likewise.
2026         (mountlist_list): Likewise.
2027
2028         * utils/mountd/rmtab.c (mountlist_add): Increment "r_count"
2029         for the existing entry and initialize "r_count" to 1.
2030         (mountlist_del): Decrement "r_count".
2031
2032 2000-05-18  H.J. Lu <hjl@lucon.org>
2033
2034         * configure.in (VERSION): Set to "0.1.7.4".
2035         * configure: Regenerated.
2036         * nfs-utils.spec: Updated.
2037
2038 2000-05-18  H.J. Lu <hjl@lucon.org>
2039
2040         * etc/redhat/nfs.init (restart): Just do stop and start.
2041
2042 2000-05-09  Jay Weber <jweber@valinux.com>
2043
2044         * utils/rquotad/hasquota.c: added support for ext3 recognition
2045         in rquotad.
2046         * utils/rquotad/mntent.h: Likewise.
2047
2048 2000-05-01  H.J. Lu <hjl@lucon.org>
2049
2050         * configure.in (VERSION): Set to "0.1.7.3".
2051         * configure: Regenerated.
2052         * nfs-utils.spec: Updated.
2053
2054 2000-05-01  H.J. Lu <hjl@lucon.org>
2055
2056         * utils/rquotad/rquota_server.c (getquotainfo): Skip bad
2057         mounting poins in /etc/fstab.
2058
2059 2000-05-01  H.J. Lu <hjl@lucon.org>
2060
2061         * configure.in (VERSION): Set to "0.1.7.2".
2062         * configure: Regenerated.
2063         * nfs-utils.spec: Updated.
2064
2065 2000-05-01  H.J. Lu <hjl@lucon.org>
2066
2067         * utils/rquotad/rquota_server.c (getquotainfo): Call stat ()
2068         to check for the mounting point.
2069
2070 2000-04-29  Chip Salzenberg  <chip@valinux.com>
2071             Neil Brown  <neilb@cse.unsw.edu.au>
2072
2073         * Really re-use RPC ports.
2074           (Fixes earlier patch.  Sorry, Neil.)
2075
2076 2000-04-26  H.J. Lu <hjl@lucon.org>
2077
2078         * configure.in (VERSION): Set to "0.1.7.1".
2079         * configure: Regenerated.
2080         * nfs-utils.spec: Updated.
2081
2082 2000-04-26  H.J. Lu <hjl@lucon.org>
2083
2084         * etc/redhat/nfslock.init: Check if lockd exits before killing
2085         it.
2086
2087 2000-04-25  H.J. Lu <hjl@lucon.org>
2088
2089         * README: Require util-linux-2.10f-mount-rpc.patch for mount.
2090
2091 2000-03-21 Michael Weiser <michael@weiser.saale-net.de>
2092
2093         * support/nfs/exports.c (parsesquash): Correctly set the
2094         return pointer.
2095
2096 Tue Mar 21 11:38:48 EST 2000 NeilBrown <neilb@cse.unsw.edu.au>
2097
2098         * support/include/nfs/nfs.h: Removed knowledge of internals of
2099              kernel filehandles (which can change) and defined nfs_fh_size
2100              which has variable size
2101         
2102         * support/nfs/getfh.c: defined getfh_size to use new syscall to
2103              get variable sized file handles, and change getfh{,old} to
2104              use nfs_fh_size        
2105         
2106         * utils/mountd/mountd.c: use nfd_fh_size and call getfh_size for
2107              NFSv3 file handles
2108
2109         * tools/Makefile, tools/nlmtest/nlmtest.c
2110              nlmtest.c depended on internel format of file handles, so now
2111              doesn't work.
2112
2113         
2114 2000-03-12  Chip Salzenberg  <chip@valinux.com>
2115             Neil Brown  <neilb@cse.unsw.edu.au>
2116
2117         * support/nfs/rpcmisc.c (rpc_init): Share transports.
2118
2119 2000-03-13 H.J. Lu <hjl@lucon.org>
2120
2121         * etc/redhat/nfsd.init: Updated.
2122
2123         * etc/redhat/nfslock.init: Updated.
2124
2125         * nfs-utils.spec.in: Updated.
2126
2127         * configure.in (VERSION): Set to "0.1.7".
2128         * configure: Regenerated.
2129         * nfs-utils.spec: Updated.
2130
2131         * README: Updated.
2132
2133 Wed Mar  8 09:42:43 2000 Neil Brown <neilb@cse.unsw.edu.au>
2134
2135         * utils/exportfs/exportfs.c (dump): Included printing of
2136            nohide, no_subtree_check, and insecure_locks
2137
2138 2000-02-26  Chip Salzenberg  <chip@valinux.com>
2139
2140         * config.mk.in (INSTALLSUID): Strip ("-s").
2141         (INSTALLSCRIPT): Define.
2142         * utils/nhfsstone/Makefile: Use it.
2143
2144 2000-02-26  Chip Salzenberg  <chip@valinux.com>
2145
2146         * utils/lockd/lockd.man: Create.
2147         * utils/lockd/Makefile: Install it.
2148         * utils/nhfsstone/nhfs{run,nums,graph}.man: Create.
2149         * utils/nhfsstone/nhfsstone.man: Change suffix from ".1".
2150         * utils/nhfsstone/Makefile: Install the helper scripts and
2151           all four man pages.
2152         * utils/exportfs/exports.man: Fix typo.
2153
2154 2000-02-26  Chip Salzenberg  <chip@valinux.com>
2155
2156         * support/nfs/xio.c (xungetc): Decrement line number when
2157         character to unget is newline.  Make first parameter int, so
2158         it can distinguish EOF from \377.
2159         * support/include/xio.h (xungetc): Adjust prototype.
2160
2161 Fri Feb  4 23:42:23 2000 Neil Brown <neilb@cse.unsw.edu.au>
2162
2163         * support/include/nfs/export.h: added NFSEXP_NOAUTHNLM
2164         * support/nfs/exports.c: added handling for NFSEXP_NOAUTHNLM
2165         * utils/exportfs/exports.man: added documentation for no_auth_nlm.
2166
2167         This is for supporting a new option introduced in 2.3.42
2168
2169 Thu Feb  3 14:55:48 2000 H.J. Lu <hjl@lucon.org>
2170
2171         * COPYING: Added. GPL.
2172
2173 Thu Feb 03 14:40:40 2000 Cristian Gafton <gafton@redhat.com>
2174
2175         * utils/rquotad/rquota_server.c (getquotainfo): Call statfs ()
2176         to get the block size.
2177
2178 Tue Jan 25 11:04:17 2000 H.J. Lu <hjl@lucon.org>
2179
2180         * nfs-utils.spec.in: Update ftp site.
2181
2182 Mon Jan 17 11:48:18 2000 H.J. Lu <hjl@lucon.org>
2183
2184         * README: Update hostnames.
2185
2186 Tue Jan 11 10:06:22 2000 H.J. Lu <hjl@lucon.org>
2187
2188         * configure.in (VERSION): Set to "0.1.6".
2189         * configure: Regenerated.
2190         * nfs-utils.spec: Updated.
2191
2192         * README: Updated.
2193
2194 Mon Jan 10 14:26:33 2000 H.J. Lu <hjl@lucon.org>
2195
2196         * utils/mountd/auth.c (auth_authenticate_internal): Call
2197         xstrdup for hostname before passing it to gethostbyname.
2198
2199         * utils/mountd/mountd.c (get_exportlist): Use xstrdup instead
2200         of strdup.
2201
2202 Sun Dec 19 09:35:01 1999  H.J. Lu <hjl@lucon.org>
2203
2204         * README: Update the mailing list address.
2205
2206 Sun Dec 19 09:22:28 1999  H.J. Lu <hjl@lucon.org>
2207
2208         * configure.in (VERSION): Set to "0.1.5".
2209         * configure: Regenerated.
2210         * nfs-utils.spec: Updated.
2211
2212         * README: Updated.
2213
2214 Mon Dec 13 13:40:20 1999  H.J. Lu <hjl@lucon.org>
2215
2216         * utils/rquotad/hasquota.c (hasquota): Malloc one more char
2217         for '/'.
2218
2219 Mon Dec  6 09:42:45 1999  H.J. Lu <hjl@lucon.org>
2220
2221         * configure.in (VERSION): Set to "0.1.4".
2222         * configure: Regenerated.
2223         * nfs-utils.spec: Updated.
2224
2225         * README: Updated.
2226
2227 Mon Dec  6 09:28:07 1999  H.J. Lu <hjl@lucon.org>
2228
2229         * nfs-utils.spec.in: New file.
2230
2231         * config.mk.in (VERSION): Changed to "nfs-utils @VERSION@".
2232
2233         * configure.in (nfs-utils.spec): Added to AC_OUTPUT.
2234
2235 1999-12-04  Chip Salzenberg  <chip@valinux.com>
2236
2237         * config.mk.in: Use $(CC) as set by configure.
2238
2239 1999-12-04  Chip Salzenberg  <chip@valinux.com>
2240
2241         * rules.mk: Call $(MAKE) with $(MFLAGS).
2242
2243 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
2244
2245         * tools/rpcgen/rpc_main.c (h_output): Generate IXDR_GET_INT32,
2246         IXDR_PUT_INT32, IXDR_GET_U_INT32 and IXDR_PUT_U_INT32.
2247
2248 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
2249
2250         * nfs-utils.spec (Version): Set to 0.1.3.
2251
2252         * configure.in (VERSION): Set to "nfs-utils 0.1.3".
2253         * configure: Regenerated.
2254
2255         * README: Updated.
2256
2257 Mon Nov 29 11:15:47 1999  H.J. Lu <hjl@lucon.org>
2258
2259         * utils/rquotad/rquota_server.c (nfsmount_to_devname): Removed.
2260         (_PATH_DEV_DSK): Likewise.
2261         (getquotainfo): Match the mounting point from /etc/mtab
2262         instead of calling nfsmount_to_devname ().
2263
2264 1999-11-24  Chip Salzenberg  <chip@valinux.com>
2265
2266         * utils/statd/monitor.c (sm_mon_1_svc): Accept lockd callbacks
2267         to the new port 24 as well as the historical port 100021.
2268
2269 Tue Nov 23 10:21:34 1999 Neil Brown <neilb@cse.unsw.edu.au>
2270
2271         * etc/redhat/nfsd.init (stop): moved exportfs -ua after
2272         stopping nfsd to stop spurious ESTALE on server shutdown.
2273         
2274 Tue Nov 23 10:13:39 1999  Neil Brown <neilb@cse.unsw.edu.au>
2275
2276         * support/nfs/exports.c (parseopts): make copy of opt string
2277         before 'nul'ing out commas so that
2278
2279         # exportfs -o option1,option2 hosta:/fs hostb:/fs
2280
2281         applies both options to both exports.
2282
2283 Thu Oct 28 12:55:42 1999  H.J. Lu <hjl@lucon.org>
2284
2285         * README: Fix a few typos.
2286
2287         * tools/rpcgen/rpc_cout.c (print_header): Use int32_t instead
2288         of long.
2289         * tools/rpcgen/rpc_hout.c (pdefine): Likewise.
2290         * tools/rpcgen/rpc_main.c (c_initialize): Likewise.
2291         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
2292         (unsigned_dec): Likewise.
2293         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
2294         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
2295
2296         * tools/rpcgen/rpc_cout.c (emit_single_in_line): Use INT32
2297         instead of LONG.
2298         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
2299         (unsigned_dec): Likewise.
2300         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
2301         * tools/rpcgen/rpc_scan.h (tok_kind): Likewise.
2302         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
2303
2304 Thu Oct 28 11:27:51 1999 Neil Brown <neilb@cse.unsw.edu.au>
2305
2306         * support/include/nfs/export.h addedd NFSEXP_NOSUBTREECHECK
2307         * support/nfs/exports.c: added {no_,}subtree_check and changed
2308           crossmnt to nohide
2309         * utils/exportfs/exports.man: added no_subtree_check and nohide
2310           and removed irrelevant stuff from unfsd.
2311         * support/export/rmtab.c: rmtab_read didn't quite do the right
2312           thing if a pathname from rmtab was a subdirectory of an export-point
2313
2314 Tue Oct 26 17:22:40 1999  H.J. Lu <hjl@lucon.org>
2315
2316         * README: Updated ftp site.
2317
2318 Mon Oct 25 18:12:45 1999  H.J. Lu <hjl@lucon.org>
2319
2320         * nfs-utils.spec (Version): Set to 0.1.2.
2321
2322         * configure.in (VERSION): Set to "nfs-utils 0.1.2".
2323         * configure: Regenerated.
2324
2325         * README: Updated.
2326
2327 Mon Oct 25 18:11:21 1999  H.J. Lu <hjl@lucon.org>
2328
2329         * utils/mountd/auth.c (auth_error): Add "no_forward_dns".
2330         (auth_authenticate_internal): Check for NULL return on forward
2331         DNS lookup.
2332         (auth_authenticate): Handle "no_forward_dns".
2333
2334 Thu Oct 21 16:22:06 1999  H.J. Lu <hjl@lucon.org>
2335
2336         * Version 0.1.1 released.
2337
2338         * nfs-utils.spec (Version): Set to 0.1.1.
2339
2340         * configure.in (VERSION): Set to "nfs-utils 0.1.1".
2341         * configure: Regenerated.
2342
2343         * README: Updated.
2344
2345 Mon Oct 18 17:43:29 1999  H.J. Lu <hjl@lucon.org>
2346
2347         * nfs-utils.spec (Obsoletes): Fixed a typo, change knfsd-client
2348         to knfsd-clients.
2349         (Provides): Likewise.
2350
2351 Mon Oct 18 14:56:22 1999  H.J. Lu <hjl@lucon.org>
2352
2353         * Initial version 0.1 released.
2354
2355         * configure.in (VERSION): Set to "nfs-utils 0.1".
2356         * configure: Regenerated.
2357
2358 Mon Oct 18 14:54:57 1999  H.J. Lu <hjl@lucon.org>
2359
2360         * utils/mountd/mountd.c (get_exportlist): Cleanup.
2361
2362         * utils/exportfs/exportfs.c (unexport_all): Unexport from
2363         kernel only if the entry is exported to kernel.
2364         (unexportfs): Likewise.
2365
2366 Wed Sep 08 16:49:32 1999  Neil Brown <neilb@cse.unsw.edu.au>
2367
2368 1/ utils/mountd/rmtab.c::mountlist_list
2369
2370      This routine stats the rmtab file to see if it has changed.  It
2371      if has, it cleans up it's old copy of the data. But it still
2372      always re-read the file, thus returning multiple copies of the
2373      data on consecutive calls without intervening changes.
2374      "Showmount -a" didn't show this as it appears to sort/unique the
2375      data, but 'strace showmount -a' showed that the size of the
2376      datagram that it received grew.
2377
2378      I moved the getrmtabent loop inside the mtime test.
2379
2380 2/ utils/exportfs/exportfs.c
2381    
2382      Many routines used the m_path field of m_export instead of
2383      e_path.
2384      According to the comment in nfslib.h, m_path should only
2385      be used when processing a mount request (i.e. in mountd)
2386      where the mountpoint may be a subdirectory of the export point.
2387
2388      I changed all occurances of m_path to e_path
2389
2390
2391 3/ utils/exportfs/exportfs.c:main
2392
2393       extra arguments are not meaningful with -a or -r, but
2394       exportfs accepted them and then ignored the -a/-r, expect that
2395       -r would still unexport everything first.
2396
2397       I generate an error if there are extra args and f_all
2398
2399 4/ utils/exportfs/exportfs.c:main
2400      extract dump out as a special case.
2401
2402 5/ utils/exportfs/exportfs.c
2403      made f_reexport a local variable.
2404
2405
2406 6/ utils/exportfs/exportfs.c:main,exportall
2407
2408     support/export/rmtab.c
2409        only  mayexport on newly created entries, don't set xtabent at all
2410
2411 7/ support/include/nfslib.h
2412
2413       add #define _PATH_PROC_EXPORTS to be /proc/fs/nds/exports
2414
2415 8/ support/export/xtab.c
2416
2417       xtab_mount_read loads data from _PATH_PROC_EXPORTS if it exists,
2418       else from xtab
2419
2420
2421 9/ support/export/xtab.c
2422
2423       xtab_mount_read now sets m_exported, and NOT
2424         xtabent and mayexport
2425
2426       removed the append arguement from xtab_write as it was
2427         never used.
2428
2429       added is_export flag to xtab_write similar to xtab_read
2430         if is_export, only write entries with m_xtabent or m_addxtab
2431         if !is_export, only write entries with m_exported
2432      
2433 10/ support/export/export.c::export_allowed_internal
2434
2435       added test for exp->m_mayexport, as the export tree
2436         may have entries that are no longer allowed to be exported,
2437         and so shouldn't caused deduced exported by rmtab_read
2438
2439 11/ utils/exportfs/exportfs.c::main
2440         error checking of flags.
2441
2442 12/ utils/exportfs/exportfs.c
2443
2444         total rewrite of export and unexport logic.
2445         We now:
2446         -  build an exportslist of valid exports, based on
2447            current etab file  and arguments,
2448         -  read rmtab to instantiate relevant wild card entries
2449         -  read etab to find out what is currently exported
2450         -  synchronise intention with reality
2451         -  write out etab and xtab
2452
2453 13/  various
2454         discard the m_addxtab flag
2455         add m_changed flag so we know what to report in exportfs
2456
2457 14/ utils/mountd/auth.c:auth_authenticate
2458
2459         the value returned by gethostbyaddr was trusted.
2460
2461         It now follows this with a call to gethostbyname
2462         and checks that the address is in the list.
2463
2464 15/ support/export/nfsctl.c::cltsetup,expsetup
2465
2466         force client names to lowercase as kernel is
2467         sensitive to case
2468
2469 16/ quietened a few compiler warnings
2470
2471 17/ support/export/client:client_lookup
2472
2473      look for pre-existing client with same name before creating
2474         a new one.
2475
2476 18/ support/include/exportfs.h
2477
2478      The ordering of the MCL_* enum was:
2479         ANONYMOUS, FQDN, SUBNETWORK, WILDCARD, NETGROUP
2480
2481      I moved ANONYMOUS to the end.
2482
2483      The ordering is significant when an export entry is being searched for to 
2484         match a given address.  There are two problems with ANONYMOUS being first.
2485
2486         1/ if a directory is exported rw to a couple of hosts and ro to everyone else,
2487            then the ro case will always be found first and the privileged hosts won't get
2488            their privilege
2489         2/ When mountd gets a request to mount an ANONYMOUSly exported tree, it creates a FQDN
2490            export entry for the specific host, and writes it to xtab.
2491            When another request comes from the same host, the ANONYMOUS entry is found again, 
2492            before the new FQDN entry, so it creates another FQDN entry and writes it to xtab
2493            again.  If causes bloat in xtab.
2494
2495       Putting ANONYMOUS at the end reflects it's nature as a catch-all
2496
2497 19/ utils/exportfs/exportfs.man
2498         many updates to the man page to reflect changes to the code
2499
2500 -----------------------
2501
2502
2503
2504 TODO:
2505
2506 - allow exportfs to modify rmtab file
2507 - make sure kernel never gets two clients with same IP address
2508     - possible kernel should reject
2509     - needs to be some way to lookup client in kernel by IP address
2510 - maybe get kernel to do case-insensitive comparisons on client names
2511 - remove unused clients from kernel
2512
2513 - change etab to xtab and xtab to xtab.active
2514
2515 - timestamp and/or statd-stamp in rmtab for removing old entries.
2516
2517 Mon Oct 18 11:48:07 1999  H.J. Lu <hjl@lucon.org>
2518
2519         * linux-nfs: New directory.
2520         * linux-nfs/ChangeLog: Moved from ..
2521         * linux-nfs/INSTALL: Likewise.
2522         * linux-nfs/KNOWNBUGS: Likewise.
2523         * linux-nfs/NEW: Likewise.
2524         * linux-nfs/README: Likewise.
2525         * linux-nfs/THANKS: Likewise.
2526         * linux-nfs/TODO: Likewise.
2527
2528         * Starting from knfsd 1.4.7.