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