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