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