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