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