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