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