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