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