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