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