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