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