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