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