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