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