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