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