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