TOR: fix compilation
[tomato.git] / release / src / router / nfs-utils / ChangeLog
blob1a9e642d33c7df87608b4a589f52eab82199b746
1 Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
2 Date:  Wed Sep 13 22:23:23 CEST 2006
4     Fix -n option to mountd
6     The getopt_long() option string in mountd was having a spurious
7     colon after the 'n', leading to the short form of --no-tcp not
8     being usable (expecting a parameter, contrary to the long form
9     and the documentation). Fix.
10     
11 Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
12 Date:  Wed Sep 13 22:19:39 CEST 2006
14     Document sensitive gids
16     The exports(8) man page already mentions that some non-root users,
17     such as bin, might be just as sensitive as root, and that root_squash
18     thus might not be as effective as one could hope for. Update the
19     documentation to also mention that this could be the case for non-root
20     groups, such as staff.
22 Author: NeilBrown <neilb@cse.unsw.edu.au>
23 Date:  Mon Aug  7 16:35:03 AEST 2006
25     Set version to 1.0.10
26         Note: 1.0.10 should be used in preference to
27          1.0.9 especially with kernels 2.6.18 and later
28          otherwise 'rpc.nfsd N' won't work to change the
29          number of threads after nfsd has been started.
30         
31 Author: NeilBrown <neilb@cse.unsw.edu.au>
32 Date:  Mon Aug  7 16:35:03 AEST 2006
34     support/nfs/nfssvc.c:  if any ports are already open,
35            don't try to open any more.  
36          This means that once nfsd is running
37              rpc.nfsd  X
38          will just change the number of threads, not the
39          ports in use.
41 Author: NeilBrown <neilb@cse.unsw.edu.au>
42 Date:  Mon Aug  7 14:01:35 AEST 2006
44     Remove warning if neither 'sync' or 'async' present.
45     Add warning of neither 'subtree_check' or 'no_subtree_check' present.
46         
47 commit 7194d7d6320736c14f40d31c3738d40f3119ead5
48 Author: Kevin Coffman <kwc@citi.umich.edu>
49 Date:   Sat Jul 8 10:01:40 2006 +1000
51     Use uid/gid of -1 to indicate the export's anonuid/anongid should be used
52     
53     Kernel routine nfsd_setuser() in fs/nfsd/auth.c checks for the
54     value -1 and defaults the credential's fsuid/fsgid to the
55     correct anonuid/anongid values for the given export.  We should
56     be passing this value (-1) down when a name mapping cannot be found.
57     Thanks to J. Bruce Fields <bfields@fieldses.org> for the reference.
58     
59     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
60     Acked-by: J. Bruce Fields <bfields@fieldses.org>
62 commit b0604c623f7a98c6061dff19988722d3ae848bd7
63 Author: Kevin Coffman <kwc@citi.umich.edu>
64 Date:   Sat Jul 8 09:58:03 2006 +1000
66     Change svcgssd_LDFLAGS to match gssd_LDFLAGS
68 commit 99414bd3eecf93f23c378d3bb3d45bc98f364abc
69 Author: Neil Brown <neilb@suse.de>
70 Date:   Sat Jul 8 09:41:58 2006 +1000
72     Disable building/installing mount.nfs by default.
73     
74     mount.nfs does not yet support 'user' option and some others.
75     To make it support this we need to make it setuid-root, and
76     some security isses need to be resolved before that can be done
77     safely.
79 commit b0c3cbfee702c019dab0a22557bbf38e24dfcee1
80 Author: Steve Dickson <steved@redhat.com>
81 Date:   Sat Jul 8 09:35:02 2006 +1000
83     Call nfssvc_versbits before nfssvc_setfds
84     
85     nfssvc_versbits() has to be called before nfssvc_setfds()
86     for the version processing to work correctly
88 commit 26fff911b21943f20e3937ae3f2d29a1572d2309
89 Author: Neil Brown <neilb@suse.de>
90 Date:   Thu Jul 6 13:05:11 2006 +1000
92     Only use -rpath for Kerberos libs when actually needed.
93     
94     Avoid usage of -rpath is generally safer, and is required by Debian policy.
96 commit 28a7603b719f8d35bf22fd3018b610b489fec78f
97 Author: Neil Brown <neilb@suse.de>
98 Date:   Thu Jul 6 12:28:33 2006 +1000
100     Use 65534 instead of -2 in svcgssd_proc.c
101     
102     as this is more consistant across achitectures.
104 commit 904de920ea4da3ad5604c417f0d784fcda83ed2a
105 Author: Shankar Anand <shanand@novell.com>
106 Date:   Tue Jul 4 08:50:56 2006 -0600
108     This patch adds code to nfsstat to read /proc/net/rpc/nfsd for nfsv4 server statistics and print them.
109     
110     Submitted by: Shankar Anand <shanand@novell.com>
112 commit 2179c112b9a386ca3d51d0e19390ddfadd745030
113 Author: Steinar H. Gunderson <sesse@debian.org>
114 Date:   Wed Jul 5 15:55:45 2006 +1000
116     Fix typos in various man pages.
118 commit 3419e37500dfd19cb2c246260dbd2bc0ee4704d4
119 Author: Steinar H. Gunderson <sesse@debian.org>
120 Date:   Wed Jul 5 15:51:30 2006 +1000
122     Use 65534 for anon uid/gid rather than -2
123     
124     This is more consistant across platforms.
126 commit 65735eef8a9441901245f6047edafc50f2d97c97
127 Author: Greg Banks <gnb@chook.melbourne.sgi.com>
128 Date:   Wed Jul 5 13:37:21 2006 +1000
130     Update rpcdebug to know about new 2.6 debug flags.  Added
131     a manpage and installed rpcdebug (in sbindir).
133 commit 23b3a9d0284d78cb6bf96b8cd44e9a4662ff60ae
134 Author: Greg Banks <gnb@chook.melbourne.sgi.com>
135 Date:   Wed Jul 5 12:22:45 2006 +1000
137     Ignore new generated files.
139 commit 89053f3f440b629911cb994a293d5be73bb79bf9
140 Author: Greg Banks <gnb@chook.melbourne.sgi.com>
141 Date:   Wed Jul 5 12:20:20 2006 +1000
143     Add rquota.h to BUILT_SOURCES so rquotad builds on the first try.
145 commit 66f9d8251c92124e46a209c47e5c0f7d3a0c4e6e
146 Author: Neil Brown <neilb@suse.de>
147 Date:   Wed Jul 5 11:06:09 2006 +1000
149     Generate rquota_xdr.c and rquota.h from rquota.x
150     
151     rquota_svc.c is still by-hand as it contains alot of extras.
152     These should really be moved to rquota_server.c
154 commit 9f5b40b7a68fe0a2648565ecbd4b08bf60287130
155 Author: Neil Brown <neilb@suse.de>
156 Date:   Wed Jul 5 10:41:03 2006 +1000
158     Remove some files that old, unused, unneeded.
159     
160         deleted:  support/export/keys.c
161         deleted:  support/include/rpcdispatch.h
162         deleted:  support/include/rpcsec.h
163         deleted:  support/include/version.h
164         deleted:  support/include/ypupdate.h
165         deleted:  support/nfs/clients.c
166         deleted:  support/nfs/keytab.c
167         deleted:  support/nfs/ypupdate_xdr.c
168         deleted:  support/rpc/include/Makefile.am
169         deleted:  tools/rpcdebug/neat_idea.c
170         deleted:  utils/mountd/mount_xdr.c
171         deleted:  utils/rquotad/pathnames.h
173 commit fbb1602bbd34cbe89dd55ca6eaaa19432237db1d
174 Author: Neil Brown <neilb@suse.de>
175 Date:   Wed Jul 5 10:30:51 2006 +1000
177     Avoid error creating an existing symlink
178     
179     Just remove the link first.
181 commit 0bc710a5a2b695039613a917e009dba3552ab1cc
182 Author: kwc@citi.umich.edu <kwc@citi.umich.edu>
183 Date:   Mon Jul 3 18:33:54 2006 -0400
185     Don't depend on Kerberos headers when checking librpcsecgss in configure
186     
187     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
188     
189     Older versions of MIT Kerberos are missing an OID definition, causing
190     the configure checks for librpcsecgss to fail.  We shouldn't be depending
191     on their libraries during the configure.
193 commit 5bfa10c94c44f082dc211a5fb431e2202ea9bb35
194 Author: Greg Banks <gnb@melbourne.sgi.com>
195 Date:   Tue Jul 4 18:33:56 2006 +1000
197     Eliminate warnings from code generated by rpcgen
198     
199      - unused variable 'buf'
200         - emit a declaration for `buf' on demand.
201      - unused variable 'i'
202         - declare i immediately before use
203      - unused value from IXDR_PUT_
204         - cast to (void)
205      - type-punned pointer reference
206         - cast to (void*) first :-(
208 commit acae444246635ec2ca8990d53e685c9062d73091
209 Author: kwc@citi.umich.edu <kwc@citi.umich.edu>
210 Date:   Mon Jul 3 18:34:43 2006 -0400
212     Handle mapping failure from get_ids.
213     
214     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
215     
216     Temporary patch to do default mapping if we get an error while trying to
217     map a gss principal to the appropriate uid/gid.  This currently returns
218     hardcoded values.  This may be correct, or we may need to try and figure
219     out the correct values to match the anonuid/anongid for the export.
221 commit 1f1b05a65ef3dc6597c7bc1e2a38f38ae95bf230
222 Author: kwc@citi.umich.edu <kwc@citi.umich.edu>
223 Date:   Mon Jul 3 18:34:38 2006 -0400
225     Properly report errors in readline() function
226     
227     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
228     
229     Change message priorities for errors and debug messages.
231 commit ee664fd246d77010af13fb557407c612752a5ea8
232 Author: kwc@citi.umich.edu <kwc@citi.umich.edu>
233 Date:   Mon Jul 3 18:34:33 2006 -0400
235     Change default buffer size increment for readline()
236     
237     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
238     
239     The readline routine expects much smaller messages than we are passing.
240     Change the default initial allocation and increment value from 128
241     to 2048.  This saves many calls to realloc().
243 commit 3da69ce5c4fac5677e91aa20e60750ab8de2ab97
244 Author: kwc@citi.umich.edu <kwc@citi.umich.edu>
245 Date:   Mon Jul 3 18:34:27 2006 -0400
247     Clean up the printerr() logging function.
248     
249     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
250     
251     Update the printerr() function to:
252     
253     1) Determine whether we'll print the message before going to all the
254        work of formatting it.
255     2) Don't just toss away messages that are too long for the buffer.
256        Print what we can and give an indication of the truncation with
257        "..." at the end.
258     3) Use a single buffer rather than two.
259     4) Messages either go to syslog (with level ERR) or stderr.  Don't
260        send some messages to syslog level DEBUG.
262 commit 0b2a5b574c7ffd99aa3226d36e1d261826405625
263 Author: kwc@citi.umich.edu <kwc@citi.umich.edu>
264 Date:   Mon Jul 3 18:34:21 2006 -0400
266     Use setfsuid() rather than seteuid() while creating contexts
267     
268     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
269     
270     As suggested by Olaf Kirch <okir@suse.de>, use setfsuid() rather than
271     seteuid() when creating a gss context.  This prevents users from using
272     credentials that do not belong to them, while also preventing them from
273     doing things like killing, renicing, or changing the priority of the
274     gssd process while it is processing the context creation.
276 commit 0f899e6d862994ffb437ae73e087c4a21ab59723
277 Author: kwc@citi.umich.edu <kwc@citi.umich.edu>
278 Date:   Mon Jul 3 18:34:16 2006 -0400
280     Limit acquire_cred call to to Kerberos only
281     
282     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
283     
284     Specify that the acquire_cred call should only be concerned with returning
285     Kerberos credentials since this is Kerberos-only functionality.
287 commit 3829bb90e764cd72c0009cb32a8b39d0fab89d81
288 Author: kwc@citi.umich.edu <kwc@citi.umich.edu>
289 Date:   Mon Jul 3 18:34:10 2006 -0400
291     Check that the gssapi library is usable early on.
292     
293     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
294     
295     Do a call to determine mechanisms supported by the gssapi library early.
296     This allows us to discover early in case the gssapi library is somehow
297     misconfigured.  We can bail out early and give a meaningful message
298     rather than getting errors on each attempt at a context negotiation.
300 commit 119c3e9aafe84c0f7c2846c46ad5e6f5eeece0da
301 Author: kwc@citi.umich.edu <kwc@citi.umich.edu>
302 Date:   Mon Jul 3 18:34:05 2006 -0400
304     Fix problems with 64-bit big-endian machines
305     
306     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
307     
308     Correct the definition of mech_used in the gss context to use gss_OID_desc.
309     This fixes problems on 64-bit machines when referencing the OID.
310     
311     Also updates write_buffer function to use u_int rather than size_t when
312     doing calculations.
314 commit c3f05548d7b3d586e7eebbdde9339617e88530f3
315 Author: kwc@citi.umich.edu <kwc@citi.umich.edu>
316 Date:   Mon Jul 3 18:33:59 2006 -0400
318     Define CFLAGS for gss_clnt_send_err compile
319     
320     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
321     
322     Add CFLAGS to make sure we find and use the correct gssapi.h when
323     building gss_clnt_send_err
325 commit 4e9ed06f8f8a0cd9f34a6830c0ff14344a528042
326 Author: Greg Banks <gnb@melbourne.sgi.com>
327 Date:   Mon Jul 3 15:59:54 2006 +1000
329     Use socklen_t some more to avoid warnings.
331 commit 6c40236820fda8960af891f41aa9d53f8bbe50a2
332 Author: Greg Banks <gnb@melbourne.sgi.com>
333 Date:   Mon Jul 3 15:39:41 2006 +1000
335     Fix warning about pointer signedness differing.
337 commit 3bf702b1a914b3867117b74d519c55fa68f4dc28
338 Author: Greg Banks <gnb@melbourne.sgi.com>
339 Date:   Mon Jul 3 15:17:34 2006 +1000
341     Include the right header to get xmalloc() declaration.
343 commit 940c7c304d4a43c00c27529cdddc7c87db6eef87
344 Merge: b90d201... a503848...
345 Author: Greg Banks <gnb@melbourne.sgi.com>
346 Date:   Mon Jul 3 14:21:48 2006 +1000
348     Merge branch 'master' of git://linux-nfs.org/nfs-utils
350 commit b90d201551aaa712c011c3d5de900fad714a26a6
351 Author: Greg Banks <gnb@melbourne.sgi.com>
352 Date:   Tue Jun 27 21:30:18 2006 +1000
354     Comment out unused variable.
356 commit 33beb42d3d2cd13a82ddbbdc4275d2a048030ae3
357 Author: Greg Banks <gnb@melbourne.sgi.com>
358 Date:   Tue Jun 27 21:22:59 2006 +1000
360     Comment out the decades-old SCCS id strings from the original Sun
361     distribution.  They cause compile warnings, there is no longer any
362     reason to try to build them into the binaries, and gcc seems to be
363     eliding some of them anyway.
365 commit 3172063ead6b99611d049a59938808a6358f48a4
366 Author: Greg Banks <gnb@melbourne.sgi.com>
367 Date:   Tue Jun 27 20:55:07 2006 +1000
369     Detect if glibc provides socklen_t and use that instead
370     of int in those cases which generate compile warnings,
371     e.g. the last argument of recvfrom().
373 commit a09eeb36c2c45151b9bb89f5015da0c584799716
374 Author: Greg Banks <gnb@melbourne.sgi.com>
375 Date:   Tue Jun 27 20:28:02 2006 +1000
377     Replace the deprecated sigblock() with more modern
378     signal functions to avoid compile warnings.
380 commit 93608a52655abf5ac23404c4b5cc05fe575a9c04
381 Author: Greg Banks <gnb@melbourne.sgi.com>
382 Date:   Thu Jun 22 18:01:10 2006 +1000
384     Fix a number of the easier compile warnings: unused variables,
385     unused labels, constness, signedness.
387 commit a07343ee0da4f0974a23b673ae1b0d482c7426a1
388 Author: Greg Banks <gnb@melbourne.sgi.com>
389 Date:   Thu Jun 22 17:31:24 2006 +1000
391     Detect presence of nfs4_set_debug() in libnfsidmap and
392     don't bother calling it if it's missing.
394 commit dcfcb677b39443b6392db3234fd50498bc158507
395 Author: Greg Banks <gnb@melbourne.sgi.com>
396 Date:   Thu Jun 22 17:19:17 2006 +1000
398     Remove useless m4 quoting around args to PKG_CHECK_MODULES().
400 commit 24d303ffae686192bda0a5996e8590219dcc82e7
401 Author: Greg Banks <gnb@melbourne.sgi.com>
402 Date:   Thu Jun 22 17:16:19 2006 +1000
404     Do m4 quoting of AC_MSG_ERROR() and AC_MSG_WARN() as
405     the autoconf people intended.  This avoids errors in
406     autoconf on SLES10.
408 commit 66a699d953727d3a992cc09ed5304b83d661a737
409 Author: Greg Banks <gnb@melbourne.sgi.com>
410 Date:   Thu Jun 22 16:51:44 2006 +1000
412     Add a .gitignore file to suppress the files generated
413     during autogen, configure and build.
414 commit 49b164d978ee6266df7ba0bd335cb34337e7c381
415 Author: Steve Dickson <SteveD@redhat.com>
416 Date:   Mon Jul 3 09:52:00 2006 +1000
418     Allow rpc.nfsd to suppress tcp or udp, and listen on a specific address.
419     
420      -T       - will suppressing listening for TCP connection.
421      -U       - will suppress UDP
422      -H host  - will only listen on that local address
423      -p port  - will listen on that port.
424     
425     This requires kernel patches which will hopefully be in 2.6.19 and possibly some
426     earlier test and vendor kernels.
428 commit fde2ae7794047a698feeaf17963d690a1e660a80
429 Author: Steve Dickson <SteveD@redhat.com>
430 Date:   Mon Jun 26 15:23:19 2006 +1000
432     Add support for suppressing different NFS versions.
433     
434     e.g.  -N 2
435     means that NFSv2 won't be supported, just v3 and v4 (if the kernel
436     supports them).
438 commit 0523fd513c6baa8dbf45d1a7afea2044262aeb3d
439 Author: Neil Brown <neilb@suse.de>
440 Date:   Fri Jun 23 17:10:56 2006 +1000
442     Further coverity related cleanups.
443     
444     Greg Banks suggested some variations, particularly improved
445     use of xmalloc/xstrdup functions.  Thanks.
447 commit 2e075a16da4963f54cd556403ca9e15a68de27fd
448 Author: Neil Brown <neilb@suse.de>
449 Date:   Fri Jun 23 14:38:33 2006 +1000
451     Fix various issues discovered by Coverity
452     
453     Thanks to Michael Halcrow for finding them.
455 commit ff42180930a444cea7f19e55e2cd2bfe6d3f108b
456 Author: Neil Brown <neilb@suse.de>
457 Date:   Fri Jun 23 14:06:00 2006 +1000
459     Fix comment parsing (again)
460     
461     Bruce Fields noticed that I broke comment parsing...
462     
463     as xskip() is always called before xgettok(), that is the
464     best place to put xskipcomment and still maintain proper
465     semantics of xskip and xgettok.
467 commit bec968578d97eabc63ae4a12bdeb2b33f40baec4
468 Author: Amit Gud <agud@redhat.com>
469 Date:   Thu Jun 22 12:51:04 2006 -0400
471     Change mount configure option to --enable-mount
472     
473     Change the configure option from --with-mount to --enable-mount.
474     
475     Signed-off-by: Amit Gud <agud@redhat.com>
476     Signed-off-by: Steve Dickson <steved@redhat.com>
478 commit ceeffc1f76485b4084b2c61f4ff3c40e4f51c3b8
479 Author: Amit Gud <gud@eth.net>
480 Date:   Thu Jun 22 12:49:24 2006 -0400
482     Merge nfsmount.x and mount.x into mount.x
483     
484     
485     Merge utils/mount/nfsmount.x and support/export/mount.x into support/export/mount.x.
486     
487     Signed-off-by: Amit Gud <agud@redhat.com>
488     Signed-off-by: Steve Dickson <steved@redhat.com>
490 commit c2db41e8abb6ddc9d03a0c91c6db043fa0f85a8f
491 Author: Neil Brown <neilb@suse.de>
492 Date:   Fri Jun 23 13:37:08 2006 +1000
494     Try to make sure that clientid used for NFSv4 is reliable.
495     
496     We need to give an IP address to identify this client to the
497     server.
498     The current code does a gethostbyname of the hostname. One
499     some systems this returns 127.0.0.1 or similar, which is not useful.
500     
501     Instead, use getsockname of the sock used to connect to the server
502     to confirm that the server is working.  This gives the address on the
503     interface that was chosen to talk to that server, which is the
504     best address we can find (if there is a NAT in the way, it might
505     still not work, but in that case there is nothing we can do).
507 commit 11d34d11153df198103a57291937ea9ff8b7356e
508 Author: Greg Banks <gnb@melbourne.sgi.com>
509 Date:   Wed Jun 14 22:48:10 2006 +1000
511     multiple threads for mountd
512     
513     
514     How about the attached patch against nfs-utils tot?  It
515     adds a -t option to set the number of forked workers.
516     Default is 1 thread, i.e. the old behaviour.
517     
518     I've verified that showmount -e, the Ogata mount client,
519     and a real mount from Linux and IRIX boxes work with and
520     without the new option.
521     
522     I've verified that you can manually kill any of the workers
523     without the portmap registration going away, that killing
524     all the workers causes the manager process to wake up and
525     unregister, and killing the manager process causes the
526     workers to be killed and portmap unregistered.
527     
528     I've verified that all the workers have file descriptors
529     for the udp socket and the tcp rendezvous socket, that
530     connections are balanced across all the workers if service
531     times are sufficiently long, and that performance is
532     improved by that parallelism, at least for small numbers
533     of threads.  For example, with 60 parallel MOUNT calls
534     and a testing patch to make DNS lookups take 100 milliseconds
535     time to perform all mounts (averaged over 5 runs) is:
536     
537     num         elapsed
538     threads             time (sec)
539      ------             ----------
540     1           13.125
541     2            6.859
542     3            4.836
543     4            3.841
544     5            3.303
545     6            3.100
546     7            3.078
547     8            3.018
548     
549     Greg.
550     --
551     Greg Banks, R&D Software Engineer, SGI Australian Software Group.
552     I don't speak for SGI.
554 commit db96d056578338dd1bb0371dc84638973c187ec6
555 Author: Neil Brown <neilb@suse.de>
556 Date:   Fri Jun 16 13:16:09 2006 +1000
558     Remove some temporary files that shouldn't be in 'git'.
559     
560         deleted:  compile
561         deleted:  config.guess
562         deleted:  config.sub
563         deleted:  depcomp
564         deleted:  install-sh
565         deleted:  ltmain.sh
566         deleted:  missing
568 commit 82b53188aaffad0e237461f8f1274794166feb3a
569 Author: Neil Brown <neilb@suse.de>
570 Date:   Fri Jun 16 13:09:26 2006 +1000
572     Add support to auto-generate nfsmount* files for new nfs.mount program
574 commit 4e2bae795e5eaf9922f0b966ab5df64994c836a2
575 Author: Amit Gud <agud@redhat.com>
576 Date:   Mon Jun 12 19:08:27 2006 -0400
578     Move NFS mount code from util-linux to nfs-utils - part 2
579     
580     Adds the support functions needed for mount and umount. This
581     functionality will someday be available in the form of shared mount
582     library.
583     
584     Signed-off-by: Amit Gud <agud@redhat.com>
585     Signed-off-by: Steve Dickson <steved@redhat.com>
587 commit a0520fa1a41bd33815b331b660b4545f2723495c
588 Author: Amit Gud <agud@redhat.com>
589 Date:   Mon Jun 12 19:06:36 2006 -0400
591     Move NFS mount code from util-linux to nfs-utils - part 1
592     
593     Adds the mount directory and the code to mount and umount the NFS file system.
594     
595     Signed-off-by: Amit Gud <agud@redhat.com>
596     Signed-off-by: Steve Dickson <steved@redhat.com>
598 2006-06-05 NeilBrown <neilb@suse.de>
599         - Remove debian/ at request of Debian maintainer "Steinar H. Gunderson" <sesse@debian.org>
600         - fix_exportfs_with_multiple_matches.diff: Fixes a problem with exportfs -o
601           and multiple entries of the same type for the same patch that matches
602           a given client. The entire rationale and problem description can be found
603           at http://bugs.debian.org/245449 (fumihiko kakuma <kakmy@mvh.biglobe.ne.jp>)
604         - escape hashes in exports
605           Makes sure any # signs in the printed-out exports file are
606           escaped (as with quotes, spaces, etc.), so they won't be treated
607           as a comment when they're read back in again.
608                 "Steinar H. Gunderson" <sesse@debian.org>
609         - Only treat '#' as starting a comment when at the start of a
610           token, otherwise '#' in filenames cannot be read.
611                 NeilBrown
612         - document sync option:
613           Document the 'sync' option in the exports(5) man page -- ATM
614           only the 'async' option is documented, which is not very
615           symmetric. :-)  "Steinar H. Gunderson" <sesse@debian.org>
616         - mountd state directory:
617           Let the user select (via a new parameter) the path to the NFS
618           state directory for mountd, to match the statd functionality.
619                  "Steinar H. Gunderson" <sesse@debian.org>
620         - fix nhfsrun signal:
621           nhfsrun is supposed to be able to be signalled with SIGUSR1, but
622           the signal trapped is number 30, which is something else
623           entirely (SIGPWR). This patch simply changes it to say "USR1",
624           which gets it right no matter what the value is.
625                  "Steinar H. Gunderson" <sesse@debian.org>
626         - Minor man page tidy up
627         
628 2006-04-12 NeilBrown <neilb@suse.de>
629         Remove **/Makefile.in, aclocal.m4, configure, and
630          support/include/config.h.in from source control
631         These are auto autogenerated by
632           aclocal -I aclocal ; autoheader ; automake ; autoconf
633         
634 2006-04-12 NeilBrown <neilb@suse.de>
635         utils/statd/rmtcall.c: use HAVE_IFADDRS_H to control compilation
636         of code using ifaddrs.h
637         configure.in: test for present of ifaddrs.h
639         Old glibc's don't have ifaddrs.h
640         
641 2006-06-12 Amit Gud <agud@redhat.com>
642         Added the mount functionality from util-linux.
643         Added --without-mount configure option.
645 2006-04-12 NeilBrown <neilb@suse.de>
646         Set version to 1.0.8, 
647         aclocal -I aclocal ; autoheader ; automake ; autoconf
649 2006-04-10 NeilBrown <neilb@suse.de>
650         Various paranoia checks:
651         gssd_proc.c: pass max_field sizes to sscanf to avoid buffer
652           overflow
653         svcgssd_proc.c: range_check name.length, to ensure name.length+1
654           doesn't wrap
655         idmapd.c(nfsdcb): make sure at least one byte is read before
656          zeroing the last byte that was read, otherwise memory corruption
657          is possible.
659         Found by SuSE security audit.
660         
661 2006-04-10 "Kevin Coffman" <kwc@citi.umich.edu>
662         Check for sufficient version of librpcsecgss and libgssapi
663         in configure.in
665 2006-04-10 "Kevin Coffman" <kwc@citi.umich.edu>
666         Update aclocal/tcp-wrappers.m4 to define HAVE_LIBWRAP and
667         HAVE_TCP_WRAPPERS as appropriate.       
669 2006-04-10 NeilBrown <neilb@suse.de>
670         Add checking for innetgr back to configure.in
671         
672 2006-04-10 kwc@citi.umich.edu
673         Update calls to gss_export_lucid_sec_context()
674         
675         Change the calls to gss_export_lucid_sec_context() to match the corrected
676         interface definition in libgssapi-0.9.
677         
678 2006-04-10 kwc@citi.umich.edu
679         Plug memory leaks in svcgssd
680         
681         Various memory leaks in the svcgssd context processing are eliminated.
682         
683 2006-04-10 kwc@citi.umich.edu
684         Fix memory leak of the AUTH structure on context negotiations
685         
686         Free AUTH structure after completing context negotiation and sending
687         context information to the kernel.
688         
689 2006-04-10 kwc@citi.umich.edu
690         Fix support/include/config.h.in such as would be done be running autoheader.
691         
692 2006-03-28 NeilBrown <neilb@suse.de>
693         1.0.8-pre3, aclocal/autoconf/automake
694         
695 2006-03-28 kwc@citi.umich.edu
696         Use PKGCONFIG to locate gssapi and rpcsecgss header files
697         
698         Instead of having separate copies of the gssapi and rpcsecgss
699         header files, or depending on the Kerberos gssapi header,
700         locate the headers now installed with the libgssapi and librpcsecgss
701         libraries.
702         
703         Remove local copies of the gssapi and rpcsecgss header files.
704         
705         This depends on the configure_use_autotools patch.
706         
707 2006-03-28 kwc@citi.umich.edu
708         Add debugging to better detect negotiation of enctype not supported by kernel
709         
710         Print debugging message indicating the type of encryption keys being sent
711         down to the kernel.  This should make it easier to detect cases where
712         unsupported encryption types are being negotiated.
713         (really this time)
714         
715 2006-03-28 kwc@citi.umich.edu
716         
717         Don't close and reopen all pipes on every DNOTIFY signal.
718         
719         From: Vince Busam <vbusam@google.com>
720         Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
721         
722         Don't unnecessarily close and re-open all pipes after every DNOTIFY
723         signal.  These unnecessary closes were triggering a kernel Oops.
724         Original patch modified to correct segfault when unmounting last
725         NFSv4 mount.
726         
727 2006-03-28 kwc@citi.umich.edu
728         Add option to specify directory to search for credentials cache files
729         
730         
731         From: Vince Busam <vbusam@google.com>
732         Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
733         
734         Add command line option to specify which directory should be searched
735         to find credentials caches.
736         (really this time)      
737         
738 2006-03-28 kwc@citi.umich.edu
739         Must still use knowledge of the glue context for pre-1.4 versions of MIT krb5
740         
741         We need to get access to the internal krb5 context pointer for
742         older (pre-1.4) versions of MIT Kerberos.  We get a pointer to
743         the gss glue's context.  Get the right pointer before accessing
744         the context information.
745         (really this time)
746         
747 2006-03-28 kwc@citi.umich.edu
748         
749         Remove unused groups variable from get_ids() which was causing a compiler warning.
750         (really this time)
751         
752 2006-03-28 kwc@citi.umich.edu
753         Update krb5 code to use glue routine lucid context functions
754         
755         
756         
757         The gssd code should not know about the glue layer's context structure.
758         A previous patch added gss_export_lucid_sec_context() and
759         gss_free_lucid_sec_context() functions to the gssapi glue layer.
760         Use these functions rather than calling directly to the Kerberos
761         gssapi code (which requires the Kerberos context handle rather
762         than the glue's context handle).
763         
764         (really this time)
765         
766 2006-03-28 kwc@citi.umich.edu
767         
768         Separate out context handling code for MIT Kerberos and SPKM3
769         into their own file.
770         (Really this time)
771         
772 2006-03-28 Kevin Coffman <kwc@citi.umich.edu>
773         User-selectable idmapping cache lifetime
774         
775         Read and process new configuration option, Cache-Expiration, and use
776         the value to determine how long idmapping entries are cached.
777         (Really this time)
778         
779 2006-03-27 NeilBrown <neilb@suse.de>
780         1.0.8-rc3
782 2006-03-27 kwc@citi.umich.edu
783         Add debugging to better detect negotiation of enctype not supported by kernel
785         Print debugging message indicating the type of encryption keys being sent
786         down to the kernel.  This should make it easier to detect cases where
787         unsupported encryption types are being negotiated.
788         
789 2006-03-27
790         Don't close and reopen all pipes on every DNOTIFY signal.
791         
792         Don't unnecessarily close and re-open all pipes after every DNOTIFY
793         signal.  These unnecessary closes were triggering a kernel Oops.
794         Original patch modified to correct segfault when unmounting last
795         NFSv4 mount.
796         
797 2006-03-27
798         Add option to specify directory to search for credentials cache files
799         
800         Add command line option to specify which directory should be searched
801         to find credentials caches.
802         
803 2006-03-27 kwc@citi.umich.edu
804         Must still use knowledge of the glue context for pre-1.4 versions of MIT krb5
805         
806         We need to get access to the internal krb5 context pointer for
807         older (pre-1.4) versions of MIT Kerberos.  We get a pointer to
808         the gss glue's context.  Get the right pointer before accessing
809         the context information.
810         
811 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
812         Remove unused variable causing compile warning
813         
814         Remove unused groups variable from get_ids() which was causing a compiler warning.
815         
816 2006-03-27 kwc@citi.umich.edu
817         Update krb5 code to use glue routine lucid context functions
818         
819         The gssd code should not know about the glue layer's context structure.
820         A previous patch added gss_export_lucid_sec_context() and
821         gss_free_lucid_sec_context() functions to the gssapi glue layer.
822         Use these functions rather than calling directly to the Kerberos
823         gssapi code (which requires the Kerberos context handle rather
824         than the glue's context handle).
825         
826 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
827         Separate out context handling code for MIT Kerberos and SPKM3
828         into their own file.
829         
830 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
831         Consolidate gssd and svcgssd since they share much code
832         
833         Remove directory svcgssd which was only created because the old
834         build system could not handle building two daemons in the same
835         directory.  This eliminates build complications since gssd and
836         svcgssd also share many source files.
837         
838         This patch effectively removes the utils/svcgssd directory, moving
839         all its files to the utils/gssd directory.  File utils/gssd/Makefile.am
840         is modified with directions to build both gssd and svcgssd.
841         
842 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
843         Use PKGCONFIG to locate gssapi and rpcsecgss header files
844         
845         Instead of having separate copies of the gssapi and rpcsecgss
846         header files, or depending on the Kerberos gssapi header,
847         locate the headers now installed with the libgssapi and librpcsecgss
848         libraries.
849         
850         Remove local copies of the gssapi and rpcsecgss header files.
851         
852         This depends on the configure_use_autotools patch.
853         
854 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
855         User-selectable idmapping cache lifetime
856         
857         Read and process new configuration option, Cache-Expiration, and use
858         the value to determine how long idmapping entries are cached.
859         
860 2006-03-27 Steve Dickson <steved@redhat.com>
861         Set libnfsidmap library debugging level and logging function.
863         This patch adds a call to the new libnfsidmap library function 
864         nfs4_set_debug(), which defines the verbosity level libnfsidmap
865         should use as well as the logging function.
867 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
868         Don't close file descriptor until after calling event_del().
870         Delete event processing for a file descriptor before closing it.
871         This was causing hangs when used in combination with libevent-1.0b.
873 2006-03-27 kwc@citi.umich.edu
874         Find krb5-config on SuSE 10
876         SuSE 10.0 puts krb5-config in yet another obscure location.
877         Look for it there and use it if found.
879 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
880         Update debian package information.
882 2006-03-27 Kevin Coffman <kwc@citi.umich.edu>
883         Install /var/lib/nfs files using DESTDIR and add rpcsec headers to distribution
885         Add "$(DESTDIR)" to the paths for the "$(statedir)" files so they are
886         put in the right place when DESTDIR is defined.
888         Add the rpcsec header files to EXTRA_DIST list.
890 2005-12-21 NeilBrown <neilb@suse.de>
891         *utils/rquotad/rquota_server.c: Detect and handle both old-style
892         (2.4) and new-style(2.6) quotactl.
893         *utils/gssd/gss_destroy_cred: remove dependence on "head -1" which
894         might need to be "head -n 1"
895         *utils/nhfsstone/nhfsrun: convert "tail -1" to "tail -n 1"
896         
897 2005-12-20 Kevin Coffman <kwc@citi.umich.edu> NeilBrown <neilb@suse.de>
898         Substantial Makefile/configure rewrite.  
899         Run 'autogen.sh' to create "Makefile.in" etc.
901         Also add -D_FILE_OFFSET_BITS=64 to CPP_FLAGS so that mountd can
902         stat and export files larger than 2Gig.
904         1.0.8-rc2 released
906 2005-12-20 NeilBrown <neilb@suse.de>
907         support/nfs/exports.c(getexportent): is a null host name is given,
908         replace it with '*' so we have a non-empty host name for messages
909         etc.
910         utils/exportfs/exportfs.man: Correct documentation about default
911         export options.
913 2005-12-20 Kevin Coffman <kwc@citi.umich.edu>
914         utils/gssd/gssd_proc.c(create_auth_rpc_client): Use service
915           portion of clp->servicename rather than hard-coding "nfs". 
917 2005-12-16 NeilBrown <neilb@suse.de>
918         1.0.8-rc1 released
920 2005-12-16 Kevin Coffman <kwc@citi.umich.edu>
921         svcgssd needs -lnfs when using new function closeall().
922         
923         ---
924         Remove unused argument from nfsdopen()
925         
926         After previous changes, the arguement to nfsdopen() has become unused.
927         Remove it.
928         
929         ---
930         Fix idmapd error reporting after call to mydaemon()
931         
932         After call to mydaemon(), calls to err[x] and warn[x] result
933         in the message going nowhere.  Change to using idmapd_*
934         versions of these routines which write to syslog.
935         Original problem reported by Vincent Roqueta <vincent.roqueta@ext.bull.net>
936         with a different patch.
937         
938         ---
939         Don't add @domain to names that cannot be mapped.
940         
941         Per rfc3530 section 5.8: when unable to map a uid to a name, don't
942         add the @domain to the "nobody" name.
943         
944         ---
945         Fix idmapd for systems where sizeof(uid_t)!=4 and sizeof(gid_t)!=4
946         
947         Fix conversion cases where uid_t and gid_t are not 32 bits.
948         
949         ---
950         Don't segfault because mech wasn't filled in because of an error
951         
952         From Kevin Coffman <kwc@citi.umich.edu>
953         
954         Initialize mech to null to avoid segfault if an error occurs
955         and mech is never returned from gss_accept_sec_context.
956         
957         ---
958         Remove use of static buffer in do_downcall
959         
960         Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
961         
962         Dynamically allocate buffer of the correct length rather
963         than using fixed-length buffer.
964         
965         ---
966         Print better error message if rpc routine clnt_create() fails.
967         
968         ---
969         Print appropriate error messages after gss calls.
970         
971         Print gss error messages after calls to gss functions, even if they
972         are for Kerberos only.
973         
974         ---
975         Update gssd and svcgssd to use the new gss mech glue lucid context calls.
976         
977         Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
978         
979         Update gssd and svcgssd to use a lucid context from SPKM3 to send down
980         to the kernel.
981         Update gssd and svcgssd to use the new gss mech glue lucid context calls.
982         Add configure check to see if spkm3 support is available.
983         
984         ---
985         Add support for CONTINUE_NEEDED return from gss_accept_sec_context.
986         
987         Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
988         
989         Add CONTINUE_INIT handling to svcgssd. Store the partially complete spkm
990         context handle in the out_handle of CONTINUE_INIT messages so that it is
991         returned in the in_handle of subsequent messages.
992         
993         ---
994         Replace GSS_C_ANON_FLAG with GSS_C_MUTUAL_FLAG.
995         
996         Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
997         
998         Specify GSS_C_MUTUAL_FLAG rather than GSS_C_ANON_FLAG for
999         spkm3.
1000         
1001         NOTE: we need a way to pass the appropriate value rather than
1002         hard-coding this flag.
1003         
1004         ---
1005         Increase size of rpc send/receive buffers
1006         
1007         Change the clnt_create() to use routines which allow us to set the
1008         send and receive buffer size.  This is needed for larger spkm3
1009         exchanges including certificate chains.
1010         
1011         This has the side-effect of skipping the portmap call since
1012         we specify the port (by specifying the service) when getting
1013         the server's address information.
1014         
1015         ---
1016         Define _LINUX_QUOTA_VERSION to 1
1017         
1018         The rquotad code is written against the "old" kernel quota interface.
1019         Fedora Core 4 is the only platform known to check for different
1020         versions, so this should not have any affect on other platforms
1021         and fixes the build for FC4.
1022         
1023         ---
1025 2005-12-12 Usha Ketineni <ketineni@us.ibm.com>, NeilBrown <neilb@suse.de>
1026         *support/nfs/rpcmisc.c(rpc_init): is stdin is a socket, but
1027         is already connected (as e.g. from ssh), don't assume we
1028         were started by inetd.
1030 2005-11-03 Steve Dickson <SteveD@redhat.com> NeilBrown <neilb@suse.de>
1031         *utils/idmapd/idmaps.c:
1032         
1033         I've recently updated the nfs-utils in rawhide with the
1034         latest patches from the SourceForge CVS tree and the
1035         latest CITI patches (1.0.7-4).
1036         
1037         In testing these patches, I notice that when the server was started
1038         and a SIGHUP was sent to rpc.idmapd to open the nfs4.nametoid/channel
1039         and nfs4.idtoname/channel files, the second open (the nfs4.idtoname one)
1040         failed because the path (i.e. ic->ic_path) was NULL.
1041         
1042         Now the reason the ic_path was NULL was because it was never set
1043         during the call to nfsdopen(). nfsdopen() looks like:
1044         nfsdopen(char *path)
1045         {
1046              return ((nfsdopenone(&nfsd_ic[IC_NAMEID], IC_NAMEID, path) == 0 &&
1047              nfsdopenone(&nfsd_ic[IC_IDNAME], IC_IDNAME, path) == 0) ? 0 
1048                : -1);
1049         }
1051         Note: the call to nfsdopenone() is how the path is set in each nfsd_ic[]
1052         entry and nfsdopen() is only called once.
1053         
1054         So when rpc.idmap comes up and the first call to nfsdopenone() fails
1055         (because the server is not running) the path in nfsd_ic[IC_IDNAME] is
1056         never filled in because the second nfsdopenone() never happen...
1057         
1058         Now there was a CITI patche (idmapd_revert_fix_reopen_on_sighup.dif)
1059         that tried to address this problem but did seem to fix it.. The
1060         attached patch fix the problem by initializing both nfsd_ic[IC_IDNAME]
1061         and nfsd_ic[IC_NAMEID] structures with the needed info...
1062         I figured since there is no way of changing these paths or filenames
1063         by command line args, why not just set them during compile time...
1064         so that's what this patch does.
1065         
1066         This patch also changes how nfsdreopen_one() handles the
1067         case where the event has already been set. Unlike the CITI
1068         patch (idmapd_revert_fix_reopen_on_sighup.dif) which just
1069         just does not register the second event, my patch deletes
1070         the old event and the registers the new one. It just seems like
1071         the right thing to do since a SIGHUP means a new server just
1072         started so we probably should create a new event as well...
1073         
1074         steved.
1075         
1076 2005-10-14 NeilBrown <neilb@suse.de>
1077         *utils/mountd/cache.c(nfsd_fh): Understand type 2 and type 3
1078         filesystem identifiers, which are used with device numbers
1079         That don't fit into 16 bits.
1081 2005-10-07 Olaf Kirch <okir@suse.de>
1082         * utils/mountd/mountd.c(get_exportlist): Without this patch,
1083         showmount -e would sometimes display host names that should really
1084         have been subsumed under a wildcard entry.
1086         The problem was that the code in get_exportlist would always
1087         skip the next group entry after removing one FQDN.
1089 2005-10-06 Steve Dickson <SteveD@redhat.com> NeilBrown <neilb@suse.de>
1090         * support/nfs/export.c: don't warn about sync/async for readonly
1091         exports
1092         * support/nfs/closeall.c: new file with function to close all 
1093         file descriptors from a give minimum upwards.
1094         * nfsd/mountd/statd/idmapd/gsssvcd: use closeall.
1095         * utils/mountd/mountd.c: Eliminate 3 syslog message that are
1096         logged for successful events. 
1097         * utils/mountd/mountd.c: make sure the correct hostname is used in
1098         the SM_NOTIFY message that is sent from a rebooted server which
1099         has multiple network interfaces. (bz 139101)
1101         Details can be found in:
1102         https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=139101
1104         *utils/idmapd/idmapd.c:Fixed subscripting problem in idmapd (bz
1105         158188) This fixes the following problem: 
1106          rpc.idmapd: nfsdreopen: Opening '' failed: errno 2 (No such file or directory)
1108          Details can be found in:
1109          https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=158188
1111         *utils/statd/statd.c(drop_privs): clear st_gid as well as st_uid
1112         of stat fails.
1113         *utils/statd/svc_run.c(my_svc_run): remove usage of undocumented
1114         %m format specifier.
1115         *utils/statd/montor.c(sm_mon_1_svc): as above
1116         *support/nfs/xlog.c(xlog): Changed xlog to use LOG_INFO instead of
1117         LOG_DEBUG so debug messages will appear w/out any config changes
1118         to syslog.conf. 
1120         
1121 2005-09-02 Mike Frysinger <vapier@gentoo.org>
1122         * utils/rquotad/rquota_server.c(getquotainfo): use explicit
1123         struture-member copying rather than memcpy, as the element
1124         sizes are the same on all architectures.
1126 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>
1127         Add option to set rpcsec_gss debugging level (if available)
1129         Changes to allow gssd/svcgssd to build when using Hiemdal Kerberos
1130         libraries.  Note that there are still run-time issues preventing
1131         this from working when shared libraries for libgssapi and librpcsecgss
1132         are used.
1133         
1134 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>
1135         Remove the rpcsec_gss code and rely on an external library instead.
1137 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>
1138         *utils/mountd/mountd.c:
1139         mountd currently always returns AUTH_NULL and AUTH_SYS as the
1140         allowable flavors in mount replies.  We want it to also return gss
1141         flavors when appropriate. For now as a hack we just have it always
1142         return the KRB5 flavors as well. 
1144         *utils/mountd/cache.c:
1145         
1146         When attempting to mount an NFSv4 pseudofilesystem (fsid=0) and the
1147         actual exported directory does not exist on the server, rpc.mountd
1148         doesn't check the directory exists (when fsidtype=1, i.e. using fsid,
1149         but does check for fsidtype=0, i.e. using dev/ino).  The non-existent
1150         exported directory path with fsid=0 is written to the kernel via
1151         /proc/net/rpc/nfsd.export/channel, which leads to path_lookup() to
1152         return ENOENT (seems appropriate).  Unfortunately, the new_cache
1153         approach ignores errors returned when writing via the channel file so
1154         that particular error is lost and the mount request is silently ignored.
1155         
1156         Assuming it doesn't make sense to revamp the new_cache/up-call method to
1157         not ignore returned errors, it seems appropriate to fix the case where
1158         rpc.mountd doesn't check for the existence of an exported directory with
1159         fsid= semantics.  The following patch does this by moving the stat() up
1160         so it is done for both fsidtype's.  I'm not certain whether the other
1161         tests need to be executed for fsidtype=1, but it doesn't appear to hurt
1162         [Not exactly true: the comparison of inode numbers caused problems so
1163         now it's kept for fsidtype=0 only].
1164         
1165         Would it be also desirable to log a warning for every error, if any,
1166         returned by a write to any of the /proc/net/rpc/*/channel files which
1167         would otherwise be ignored (maybe under a debug flag)?
1169         * gssd/mountd/svcgssd: Changes gssd, svcgssd, and mountd to ignore a
1170         SIGHUP rather than dying.
1172         * many: Remove the gssapi code and rely on an external library instead.
1174 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>
1175         * utils/exportfs/exports.man: Document the "crossmnt" export export option
1176         * utils/gssd/krb5_util.c: 
1177         Add better debugging and partially revert the function
1178         check for gss_krb5_ccache_name.
1179         
1180         For MIT Kerberos releases up to and including 1.3.1, we *must*
1181         use the routine gss_krb5_ccache_name to get the K5 gssapi code
1182         to use a different credentials cache.
1183         
1184         For releases 1.3.2 and on, we want to use the KRB5CCNAME
1185         environment variable to tell it what to use.
1186         (A problem was reported where 1.3.5 was being used, our
1187         code was using gss_krb5_ccache_name, but the underlying
1188         code continued to use the first (or default?) credentials
1189         cache.  Switching to using the env variable fixed the problem.
1190         I cannot recreate this problem.
1192         *utils/gssd/krb5_util.c:
1193         Andrew Mahone <andrew.mahone@gmail.com> reported that reiser4
1194         always has DT_UNKNOWN.  He supplied patch to move the check
1195         for regular files after the stat() call to correctly find
1196         ccache files in reiser4 filesystem.
1197         
1198         Also change the name comparison so that the wrong file is
1199         not selected when the substring comparison is done.
1201         *utils/gssd/krb5_util.c:
1202         Limit the set of encryption types that can be negotiated by
1203         the Kerberos library to those that the kernel code currently
1204         supports.
1205         
1206         This should eventually query the kernel for the list of
1207         supported enctypes.
1209         *utils/gssd/gss_util.c, utils/svcgssd/svcgssd_main_loop.c:
1210         Print more information in error messages to help debugging failures.
1212         *utils/svcgssd/svcgssd_proc.c: Increase token buffer size and
1213         update error handling so that a response is always sent.
1215         *utils/svcgssd/svcgssd_proc.c: Add support to retrieve
1216         supplementary groups. 
1217         
1218         
1219 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>
1220         * configure.in etc
1221         Consolidate some of the Kerberos checking instead of repeating
1222         the same things for MIT and Heimdal.
1223         Also adds more checks to distinguish 32-bit from 64-bit
1224         (mainly for gssapi.h)
1225         Fix svcgssd Makefile so make TOP=../../ works correctly there.
1226         Enable running a modern autoheader.
1227         * utils/gssd/gss_oids.c: Use correct OID value for SPKM-3
1228         * utils/gssd/gss_util.c: Fix build with older MIT releases that do not define GSS_C_NT_HOSTBASED_SERVICE
1229         * utils/gssd/write_bytes.h, support/include/gssapi/gssapi.h:
1230         Length of gss_buffer_desc is a size_t which is 64-bits on a
1231         64-bit machine.  Kernel code expects 32-bit integer for length.
1232         Coerce length value into a 32-bit value when reading from or
1233         writing to the kernel.
1234         Change gssapi.h to use datatype size values obtained from
1235         configure rather than hard-coded values.
1236         * utils/idmapd/idmapd.c: The EV_INIT check here was wrong, and was
1237         causing idmapd to become unresponsive to server requests after
1238         receiving a sighup. 
1239         * utils/idmapd/idmapd.c: Idmapd should flush the server id<->name
1240         caches when its started. 
1242 2005-04-12  G. Allen Morris III <gam3@gam3.net>
1244         * All Makefile: added TOP as needed for easier compile.
1246         * utils/nfsstat/nfsstat.c: added NFS V4 support; added the -m
1247           option; Added -2, -3, and -4 options; changed -a option to -v
1248           option; added long options; changed default output to not
1249           show V2 NFS statistics unless used.
1251         * utils/nfsstat/nfsstat.man: Documented above changes; changed
1252           authors email address; added BUGS section.
1254 2005-04-07  Chip Salzenberg  <chip@pobox.com>
1256         * debian/changelog: Version 1.0.7-2.
1258 2005-04-06  Chip Salzenberg  <chip@pobox.com>
1260         * config.guess, config.sub: Update.
1262         * support/rpc/svc_auth_gss.c (_svcauth_gss): Avoid using a cast as
1263         an lvalue, as it is non-portable.
1265         * support/nfs/exports.c (parseopts): Accept "acl" option to mean
1266         ~NFSEXP_NOACL, and "no_acl" to mean NFSEXP_NOACL.
1267         (putexportent): Report NFSEXP_NOACL as "no_acl", and ~NFSEXP_NOACL
1268         as "acl".
1269         * utils/exportfs/exportfs.c (dump): Report NFSEXP_NOACL as
1270         "no_acl".
1271         * utils/exportfs/exports.man: Document "no_acl".
1273 2005-03-14  NeilBrown <neilb@cse.unsw.edu.au>
1274         Denis Vlasenko <vda@ilport.com.ua>
1275         * support/export/client.c(client_init and client_gettype):
1276         treat N.N.N.N as a special case of MCL_SUBNETWORK instead of 
1277         MCL_FQDN
1279 2005-03-06  G. Allen Morris III <gam3@gam3.net>
1280         * support/nfs/cacheio.c(readline): Could not read lines greater
1281         than 128 bytes. [1157791] 
1282         * utils/exportfs/exports.man: Added a SEE ALSO section and
1283         fixed 2 typos. [1018450]
1285 2005-02-28  Trond Myklebust <trond.myklebust@fys.uio.no>
1286         * utils/statd/rmtcall.c(statd_get_socket): If a port number is
1287         explicitly given, make sure to try to bind to that.
1288         
1289 2005-01-11  Chip Salzenberg  <chip@pobox.com>
1291         * debian/changelog: Version 1.0.7-1.
1292         * debian/nfs-common.default (NEED_IDMAPD, NEED_GSSD):
1293         Disable by default, on advice of upstream.
1294         * debian/nfs-kernel-server.default (NEED_SVCGSSD):
1295         Likewise.
1297         * utils/svcgssd/Makefile (predep): Symbolically link duplicated
1298         source files.
1299         (distclean): Remove symlinks to duplicated files.
1301 2004-12-17 NeilBrown <neilb@cse.unsw.edu.au>
1302         Release 1.0.7
1304         * config.mk, configure.in: update version number, run autoconf
1305         * configure.in: require nfsidmap.h if gss is enabled.
1306         
1307 2004-12-10 NeilBrown <neilb@cse.unsw.edu.au>
1308         Release 1.0.7-pre2
1309         
1310         * config.mk, configure.in: update version number, run autoconf
1311         
1312 2004-12-10 Neil Brown <neilb@cse.unsw.edu.au>
1313         * README : note dependancy on kerberos, libevent, and nfsidmap
1314         * configure.in : fail if --enable-nfsv4 and libevent or
1315         libnfsidmap are missing.
1316         * configuyre.in: improve message if krb5 support is missing
1317         
1318 2004-12-06 Paul Clements <paul.clements@steeleye.com>   
1319         * support/include/ha-callout.h: get return status from waitpid
1320         correctly. 
1321         * support/include/ha-callout.h: don't ignore SIGCHLD while waiting
1322         for a callout to complete.
1323         * utils/statd/statd.c(sigusr): print current start when re-reading
1324         notify list due to SIGUSR1
1325         * utils/statd/svc_run.c(my_svc_run): call change_state when
1326         re-notifying clients.
1327         
1328 2004-12-06 Marc Eshel <eshel@almaden.ibm.com>
1329         * utils/statd/svc_run.c(my_svc_run): allow loop to exit when in
1330         MODE_NOTIFY_ONLY
1331         *utils/statd/rmtcall.c(statd_get_socket): if a hostname is given
1332         to statd with -n, prefer it's IP address to the default for
1333         listening on.
1334         
1335 2004-12-06 Bruce Allan <bwa@us.ibm.com>
1336         * utils/mountd/auth.c(auth_reload)  Clear the "my_client" cache on
1337         an auth_reload to avoid old data getting used.
1338         
1339 2004-12-03 NeilBrown <neilb@cse.unsw.edu.au>
1340         Release 1.0.7-pre1 for testing
1341         
1342         * config.mk, configure.in: update version number, run autoconf
1343         
1344 2004-12-03 Trond Myklebust <trond.myklebust@fys.uio.no>
1346         * utils/statd/statd.c(main): ignore SIGPIPE
1347         
1348 2004-11-22 "J. Bruce Fields" <bfields@fieldses.org>
1350         * tools/rpcdebug/rpcdebug.c: support aliases "nfsdebug" and
1351         "nfsddebug" and update flag names.
1352         * configure.in, nodist/* redhat/* nfs-utils.spec*: remove redhat
1353         specific files (as no-one actually uses them, especially not
1354         redhat), and the nodist /etc files (as they drift out-of-date, and
1355         the debian directory provides a suitable example.
1356         * utils/svcgssd_proc.c(get_ids): fix memory leak
1357         * utils/svcgssd/svcgssd_proc.c: Rely on count of the number of
1358         groups instead of using a special guard value to identify the end
1359         of the list. 
1360         * utils/idmapd/idmapd.c: don't allow Default domain and anon-uid
1361         or -gid to be specified on command line.
1362         * utils/idmapd/idmapd.c: improve error messages
1363         * utils/idmapd/idmapd.c: Reopen nfsd files on sighup.  Allows us
1364         to start up client side only (even when nfsd module not loaded),
1365         and then sighup later after insmodding nfsd module. 
1366         * utils/idmapd/idmapd.c: Make sure we catch all errors on
1367         daemonizing by waiting for child to report succesfull startup
1368         using a pipe. 
1369         * utils/idmapd/idmapd.c: Let libnfsidmapd parse the idmapd.conf
1370         file for the default domain, instead of doing that ourselves.
1371         * utils/gssd/gssd_proc.c: Make sure we get an error when a gssd
1372         downcall fails. 
1373         * utils/gssd/gssd_proc.c: We were forgetting to restore the euid
1374         on certain failures, which meant gssd could get stuck in a state
1375         where it didn't have permissions to read the files in rpc_pipefs
1376         that it needed to. 
1377         * utils/gssd/gssd_proc.c: Use libnfsidmapd to map gss principals
1378         to uids. 
1379         * debian/nfs-kernel-server.default: Document the NEED_SVCGSSD
1380         variable in /etc/default/nfs-kernel-server. 
1382         
1383 2004-11-22 NeilBrown <neilb@cse.unsw.edu.au>
1385         * utils/exportfs/nfsd.man: corrected typo in .BR macro usage -
1386         reported by Eric Raymond
1387         
1388 2004-10-19 "J. Bruce Fields" <bfields@fieldses.org>
1390         * support/gssapi/* support/rpc/* utils/gssd/* utils/svcgssd/* etc
1391         initial support for GSSAPI authentication
1392         
1393 2004-09-15 Neil Brown <neilb@cse.unsw.edu.au>
1395         * utils/statd/monitor.c(sm_unmon_1_svc): is RESTRICTED_STATD, then
1396         check IP address and force my_name to 127.0.0.1 to match 
1397         what happens in sm_mon_1_svc.  This avoid spurious "erroneous
1398         SM_UNMON" messages.
1399         * utils/statd.monitor.c(sm_unmon_all_1_svc): likewise
1400         
1401 2004-09-15 "J. Bruce Fields" <bfields@fieldses.org>     
1403         * Assorted changes to support "gss/*" style authentication
1404         * utils/idmapd: new idmapd daemon for nfsv4 username lookup
1405         
1406 2004-09-06 Trond Myklebust <trond.myklebust@fys.uio.no>
1407         Neil Brown <neilb@cse.unsw.edu.au>
1409         * utils/mountd/auth.c(auth_authenticate_internal): fix
1410         uninitialsed variable problem (causes bad error messages).
1412 2004-09-06 Paul Clements <paul.clements@steeleye.com>
1413         Neil Brown <neilb@cse.unsw.edu.au>
1415         * utils/mountd/mountd.c(main): support --ha-callout (-H) for
1416         specifying a callout program
1417         * utils/mountd/rmtab.c: Call ha_callout on mount/unmount
1418         * utils/statd/monitor.c: Call ha_callout on add/del client
1419         * utils/statd/rmtcall.c: as above
1420         * utils/statd/statd.c: handle --ha-callout (-H)
1421         * utils/statd/svc_run.c: call notify_hosts is we have received a
1422         sighup
1423         * support/include/ha-callout.h: define ha_callout function
1424          
1425         
1426 2004-08-31 NeilBrown <neilb@cse.unsw.edu.au>
1427         * utils/mountd/cache.c(cache_process_req): clear fd after
1428         processing so as not to confused libc/sunrpc into thinking
1429         it need to do something with that fd.
1430         
1431 2004-08-31 NeilBrown <neilb@cse.unsw.edu.au>
1433         * debian/nfs-kernel-server.init(start,stop) mount the nfsd
1434         filesystem, if available, before starting nfs services, and 
1435         unmount it afterwards.
1436         * etc/nodist/nfs-server: ditto
1437         * etc/redhat/nfs.init: likewise
1438         * etc/redhat/nfs: add "MOUNT_NFSD" flag to control above.
1439         
1440 2004-06-08 NeilBrown <neilb@cse.unsw.edu.au>
1442         * utils/exportfs/exportfs.c: Don't rmtab_read if new_cache, it
1443           isn't necessary.
1444         * support/nfs/cacheio.c(cache_flush): Change order in which caches
1445           are flushed so that dependancies don't keep things in the cache
1446           too long.
1447         
1448 2004-03-18  Chip Salzenberg  <chip@pobox.com>
1450         * debian/changelog: Version 1.0.6-2.
1452 2004-02-24 NeilBrown <neilb@cse.unsw.edu.au>
1453         from "J. Bruce Fields" <bfields@fieldses.org>
1455         * utils/mountd/cache.c: call auth_reload to make sure auth data is
1456         current before responding to kernel upcall.
1457         
1458 2004-02-24 NeilBrown <neilb@cse.unsw.edu.au>
1459         Based on patch from  Greg Banks <gnb@melbourne.sgi.com>
1461         * utils/exportfs/exports.man: Document fsid= option.
1462         
1463 2003-09-15 NeilBrown <neilb@cse.unsw.edu.au>
1465         Release 1.0.6
1467         * rules.mk: Add dep: rule when no OBJS, so "make dep" works in
1468         support/include, and depend in "predep"
1469         * support/export/Makefile, tools/rpcgen/Makefile,
1470         utils/statd/Makefile: add "predep" rule so that "make dep" works.
1471         * Makefile: allow a simple "make" to run ./configure and "make dep"
1472         if needed.
1473         * configure.in, nfs-utils.spec: Update version to 1.0.6
1474         * run autoconf
1475         
1476 2003-09-12  Chip Salzenberg  <chip@pobox.com>
1478         * debian/changelog: Version 1.0.6-1.
1480 2003-09-12 NeilBrown <neilb@cse.unsw.edu.au>
1482         * utils/mountd/mountd.c(main): Impose FD_SETSIZE as an upper limit
1483         for RLIMIT_NOFILE
1484         * utils/statd/statd.c(main): Ditto.
1486            michael <michael@newdream.net> discovered that svc_setreqsize
1487            in glibc can segfault if RLIMIT_NOFILE is bigger than
1488            FD_SETSIZE, so a simple solution is to impose a hard limit.
1490 2003-09-09  Chip Salzenberg  <chip@pobox.com>
1492         * debian/changelog: Version 1.0.5-3.
1493         * support/export/hostname.c (get_reliable_hostbyaddr): Fix crash
1494         on invalid reverse DNS.
1495         * utils/showmount/showmount.c (main): Fix inet_ntoa() parameter.
1496         * tools/rpcgen/rpc_cout.c (print_header): Remove unused vars.
1497         * tools/rpcgen/rpc_parse.c (def_union): Likewise.
1499 2003-08-22  Chip Salzenberg  <chip@pobox.com>
1501         * utils/statd/{log.h,log.c}: Rename log() to note() and L_* to
1502         N_*, to avoid conflict with ISO C built-in log() function.
1503         * utils/statd/*.c: Use note().
1505 2003-08-20  Chip Salzenberg  <chip@pobox.com>
1507         * debian/changelog: Version 1.0.5-2.
1509 2003-08-11 NeilBrown <neilb@cse.unsw.edu.au>
1511         * utils/mountd/cache.c(cache_get_filehandle): close the filehandle
1512         before returning.
1513         
1514 2003-08-04 NeilBrown <neilb@cse.unsw.edu.au>
1516         * support/include/nfs/export.h, support/nfs/exports.c,
1517         utils/exportfs/exports.c, utils/mountd/mountd.c:  change
1518         NFSEXP_CROSSMNT to NFSEXP_CROSSMOUNT to avoid confusion with older
1519         meaning. Also remove meaningless
1520         NFSEXP_{UIDMAP,KERBEROS,SUNSECURE}
1521         
1522 2003-08-04 NeilBrown <neilb@cse.unsw.edu.au>
1524         * support/export/xtab.c, support/include/nfslib.h,
1525         support/nfs/cacheio.c, support/nfs/nfssvc.c,
1526         utils/exportfs/exportfs.c, utils/exportfs/exportfs.man,
1527         utils/exportfs/nfsd.man, utils/mountd/cache.c: support
1528         /proc/fs/nfsd/* as a perferred alternate to /proc/fs/nfs/*
1529         (nfs-utils-1.0.5-post2)
1530         
1531 2003-08-04 NeilBrown <neilb@cse.unsw.edu.au>
1533         * support/nfs/nfsexport.c: open channel file O_WRONLY when
1534         only writing.
1535         * utils/mountd/cache.c: maintain mountlist when new_cache is
1536         active. Also use O_WRONLY for channel files.
1537         * utils/mountd/mountd.h: mountlist_{del,add} now take a host name
1538         rather than an nfs_export.
1539         * utils/mountd/rmtab.c: ditto.
1540         (nfs-utils-1.5.0-post1)
1541         
1542 2003-07-24  Chip Salzenberg  <chip@pobox.com>
1544         * support/nfs/xlog.c (xlog): Revise buffer-overflow fix to
1545         use Debian security team's cleaner approach.
1546         * debian/changelog: Version 1.0.5-1.
1547         * debian/nfs-kernel-server.init: Cosmetic changes.
1549 2003-07-18 NeilBrown <neilb@cse.unsw.edu.au>
1551         Release 1.0.5:
1552          1.0.4 was a bit of a brown-paper-bag-release because of the extra
1553          'free' in auth.c.  So I'm releasing this just a few days later.
1555         * support/nfs/cacheio.c(cache_flush): Correct test for 'open
1556         failed'
1557         * utils/exportfs/exportfs.c(main): If "-f" given as lone option,
1558         check if new_cache is enabled, error if not, flush and exit if it
1559         is. 
1560         * utils/exportfs/exportfs.man: Explain -f option and explain the
1561         two different modes that exportfs can work in.
1562         * utils/mountd/mountd.c: Do not change RLIMIT_NOFILE if the -o
1563         option wasn't given.
1564         * utils/mountd/mountd.man: Record the change if default behaviour
1565         for RLIMIT_NOFILE.
1566         * configure.in, nfs-utils.spec: update version to 1.0.5 and
1567         run autoconf
1568         
1569 2003-07-15 NeilBrown <neilb@cse.unsw.edu.au>
1571         * utils/mountd/mountd.c(main): getopt string fix for 'o'
1572         * utils/mountd/auth.c(auth_authenticate): remove extra 'free'
1573         * utils/exportfs/exportfs.c(main): make 'exportfs -f' just flush
1574         the caches.
1575         * support/include/nfs/export.h: Reserve a bit for possible ACL
1576         related use.
1577         
1578 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
1580         * utils/exportfs/nfsd.man: new man page for nfsd filesystem. Also
1581         assorted changed to cope with section 7 of the manual.
1582         * configure.in, nfs-utils.spec: Update version to 1.0.4
1583         * run autoconf
1585         This is a 'pre-release' for 1.1.0  Hopefully 1.1.0 will be the
1586         baseline for 2.6 and 2.8.  I.e. it should continue to work right
1587         through the 2.8 (or 3.0) kernel series.  Previous releases wont.
1589 2003-07-04 NeilBrown <neilb@cse.unsw.edu.au>    
1590         Steve Dickson <SteveD@redhat.com>
1592         statd cleanup:
1593         * utils/statd/statd.c: create a pidfile with pid of statd, and
1594         truncate it when statd exists.
1595         * utils/statd/statd.c: drop privs by setuid to owner of SM_DIR,
1596         and warn if this is root.
1597         * utils/statd/statd.c: when statd forks, connect child to parent
1598         with a pipe, and send a byte down the pipe once the child is
1599         working properly.
1600         * Makefile: create and chown sm, sm.bak, state when "make install"
1601         * configure.in: add --with-statduser= option which defaults to
1602         "rpcuser" or "nobody"
1603         * config.mk.in: pass "statduser" through to Makefile
1604         
1605 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
1607         * support/include/nfs/nfs.h: Make sure correct __kernel_dev_t is
1608         used as the size was changed somewhere in 2.5.60-2.5.70.  Without
1609         this nfs-utils compiles against 2.6 headers will not work on a
1610         2.4 kernel.     
1611         
1612 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
1614         * support/nfs/nfssvc.c(nfssvc): If /proc/fs/nfs/threads exists,
1615         set number of threads by writing to there.  This means it will
1616         still work when the syscall interface goes away in 2.7.
1618 2003-07-03 NeilBrown <neilb@cse.unsw.edu.au>
1619         fumihiko kakuma <kakmy@mvh.biglobe.ne.jp>
1621         * utils/exportfs/exportfs.c(unexportfs): improve host comparison
1622         so as to only export the wildcard exports that were asked for.
1623         * support/export/export.c(export_allowed): changed to return the
1624         nfs_export rather than a "struct exportent", as m_changed is
1625         needed by called
1626         * support/export/rmtab.c(rmtab_read): modified to deal with
1627         interface change for export_allowed(), and enhanced to preserve
1628         m_changed flag when a wild-card export causes the creation of
1629         a non-wildcard export.
1630         
1631 2003-07-02 NeilBrown <neilb@cse.unsw.edu.au>
1632         Steve Dickson <SteveD@redhat.com>
1634         * utils/mountd/mountd.man: Add valid kinds of debugging.
1635         * utils/mountd/mountd.c(main): ignore SIGPIPE
1636         * utils/nfsstat/nfsstat.c: fine-tune printing of warning so
1637         we don't get warnings about unavailable stats that weren't asked
1638         for.
1639         
1640 2003-06-24 NeilBrown <neilb@cse.unsw.edu.au>
1642         * support/nfs/nfsexport.c(exp_unexp): When unexporting filesystems
1643         via /rpc/net/rpc/nfsd*/channel, set the expiry date to 1, not
1644         'forever', so things disappear out of the cache rather than just
1645         be ignored. 
1646         
1647 2003-06-16  "J. Bruce Fields" <bfields@fieldses.org>
1649         * utils/mountd/cache.c(nfsd_fh): don't export the export_ent
1650         if it wasn't found.
1652 2003-06-16  NeilBrown   <neilb@cse.unsw.edu.au>
1654         * debian/nfs-kernel-server.init,etc/nodist/nfs-server,
1655         etc/redhat/nfs.init: when checking if V3 is supported, make sure
1656         nfs server 'knows' about 127.0.0.1 first.
1657         
1658 2003-06-10  Chip Salzenberg  <chip@pobox.com>
1660         * support/nfs/xlog.c (xlog): Fix off-by-one buffer overflow bug.
1661         * debian/changelog: Version 1.0.3-2.
1663 2003-05-30 Michael Griffith <grif@michaelgriffith.com>
1664         NeilBrown <neilb@cse.unsw.edu.au>
1666         utils/nfsstat/nfsstat.c(print_callstats): use unsigned
1667         long long to avoid overflow when printing stats.
1668         
1669 2003-05-30  NeilBrown <neilb@cse.unsw.edu.au>
1671         * support/export/export.c, support/include/nfslib.h,
1672         support/nfs/export.c, utils/exportfs/exportfs.c,
1673         utils/mountd/mountd.c: new export option "mountpoint"
1674         If no path is given, then the export point must be a
1675         mount point, or it won't be exported.  If a path is 
1676         given (e.g. mountpoint=/path) then that path must be
1677         a mountpoint or the exportpoint won't be exported.
1678         * utils/exportfs/exportfs.man: document mountpoint option.
1679         * support/misc/mountpoint.c: New file with is_mountpoint()
1680         to determine if something is a mountpoint.
1681         
1682 2003-05-23  NeilBrown <neilb@cse.unsw.edu.au>
1684         * utils/mountd/cache.c(cache_get_filehandle): take a separate path
1685         argument as we might not be getting the filehandle for the
1686         mountpoint.
1687         * utils/mountd/mountd.c(get_rootfh): pass real path when calling
1688         cache_get_filehandle.
1689         * utils/mountd/mountd.c(get_rootfh): check export point and
1690         requested directory are on the same filesystem, and complain if
1691         not.
1692         
1693 2003-05-22  NeilBrown <neilb@cse.unsw.edu.au>
1695         * utils/mountd/auth.c(auth_authenticate_internal): make sure
1696         portnumber is still checked when using new cache lookup.
1697         
1698 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
1700         * utils/exportfs/exportfs.c: Use check_new_cache and cache_flush
1701          Don't actually talk to kernel when new cache is in effect, except
1702          to flush
1703         * utils/exportfs/exportfs.c: add -f option to fully flush cache.
1704         * support/export/xtab.c: Only rename new xtab into place if it has
1705          changed, thus preserving modify date for exportfs to use when
1706          flushing.
1707         * support/nfs/cacheio.c: Add cache_flush
1708         * support/export/xtab.c: Only rename new xtab into place if it has
1709          changed, thus preserving modify date for exportfs to use when
1710          flushing.
1711         
1712 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
1714         * support/export/client.c: Add client_compose, client_member to
1715         handle new composite client names
1716         * support/include/exportfs.h: Declare above functions.
1717         * utils/mountd/auth.c: use client_compose to determine calling
1718         client if new cache is being used.
1719         * utils/mountd/auth.c: call cache_export to export a filesystem if
1720         new_cache, check if new cache is used, and call my_svc_run instead
1721         of svc_run
1722         * utils/mountd/svc_run.c: new file defining my_svc_run
1723         * utils/mountd/cache.c: new file for handling cache upcalls.
1724         * support/nfs/cacheio.c(check_new_cache): new function to check if
1725         new cache should be used.
1726         
1727         
1728 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
1730         * support/include/nfs/export.h: New CROSSMNT distinct from NOHIDE
1731         * support/nfs/exports.c: Make CROSSMNT distinct from NOHIDE
1732         * utils/exportfs/exportfs.c(dump): ditto
1733         
1734 2003-05-21  NeilBrown <neilb@cse.unsw.edu.au>
1736         * support/export/hostname.c(get_reliable_hostbyaddr): new function
1737         to get host name from address with full checking of authenticity.
1738         * support/include/misc.h: declare above function
1739         * utils/mountd/auth.c(auth_authenticate_internal): remove all
1740         logic for authenticating address.
1741         * utils/mountd/auth.c(auth_authenticate): call new
1742         get_reliable_hostbyaddr to to hostname lookup before calling _internal.
1743         
1744         
1745 2003-03-30  NeilBrown <neilb@cse.unsw.edu.au>
1747         * tools/rpcgen/rpc_main.c(find_cpp): removed
1748         * tools/rpcgen/rpc_main.c(open_input): use execvp to find "cpp", 
1749         then try hard-coded paths.
1750         
1751 2003-03-26  Chip Salzenberg  <chip@pobox.com>
1753         * debian/changelog: Version 1.0.3-1.
1755 2003-03-26 NeilBrown <neilb@cse.unsw.edu.au>
1757         * utils/mountd/rmtab.c (slink_safe_rename): real_newpath should be
1758         "const char*", not "char*".
1760 2003-03-26 NeilBrown <neilb@cse.unsw.edu.au>
1762         * configure.in (VERSION): Set to "1.0.3".
1763         * nfs-utils.spec: Likewise.
1764         * configure: Regenerated.
1766 2003-03-26 NeilBrown <neilb@cse.unsw.edu.au>
1768         * support/nfs/cacheio.c: New File - support for read/writing
1769         to export cache in /proc/rpc/*/channel
1770         * support/nfs/Makefile: compile cacheio.c
1771         * support/include/nfslib.h: declare cacheio.c functions
1772         * support/nfs/nfsexport.c: export and unexport through
1773         /proc/rpc/*/channel if possible, as old syscall interface
1774         may not survive into 2.6 on all architectures.
1775         
1776 2003-02-19 NeilBrown <neilb@cse.unsw.edu.au>    
1777         Ben Leslie <benno@sesgroup.net>
1779         * support/nfs/rpcmisc.c(rpc_init):  change test for ignoring
1780         "defport" from (__rpcfdtype == 0) to (__rpcpmstart==0).  The
1781         former would incorectly ignore defport if the application 
1782         explicitly set __rpcfdtype.  The later is sufficient to avoid the
1783         special handling in the case where stdin is an internet socket.
1785         * utils/mountd/mountd.c(main): Add 'n' to option list in
1786         getopt_long as this is a short form of --no-tcp which want being
1787         checked.
1788         
1789 2003-02-12  Chip Salzenberg  <chip@pobox.com>
1791         * debian/changelog: Version 1.0.2-2.
1793 2002-11-27  Chip Salzenberg  <chip@pobox.com>
1795         * utils/mountd/rmtab.c (slink_safe_rename): Fix off-by-one buffer
1796         overflow bug.  Reformat per rest of source file.
1798 2002-11-19  NeilBrown <neilb@cse.unsw.edu.au>
1800         * utils/exportfs/exports.man: Correct notes about whether the wild
1801         card characters match a period.  They do.
1802         
1803 2002-10-15  Juan Gomez <juang@us.ibm.com>
1805         * utils/mountd/rmtab.c (slink_safe_rename): New. Support
1806         symlink.
1807         (mountlist_add): Call slink_safe_rename instead of rename.
1809 2002-10-11  H.J. Lu <hjl@lucon.org>
1811         * support/include/exportfs.h (export_errno): New.
1813         * support/nfs/exports.c: Include <errno.h>.
1814         (export_errno): New.
1815         (getexportent): Set export_errno to EINVAL for bad option.
1816         (parseopts): Likewise.
1817         Report the location of the default sync/async option.
1819         * utils/exportfs/exportfs.c (main): Initialize export_errno to
1820         0. Return export_errno.
1822 2002-10-11  Juan Gomez  <gomez@cs.sjsu.edu>
1823         NeilBrown <neilb@cse.unsw.edu.au>
1825         utils/statd/statd.c(killer): don't pmap_unset if in notify_only mode
1826         utils/statd/statd.c(main): don't pmap_unset if in notify_only mode
1827         
1828 2002-09-16  Chip Salzenberg  <chip@pobox.com>
1830         * utils/rquotad/rquota_svc.c (main): Use int for value of getopt.
1832 2002-09-15  Chip Salzenberg  <chip@pobox.com>
1834         * support/nfs/rpcmisc.c (rpc_init): Allow stdin to be a non-INET
1835         socket, as occurs when run from sshd.
1836         * debian/changelog: Version 1.0.2-1.
1838 2002-09-12  H.J. Lu <hjl@lucon.org>
1840         * support/nfs/svc_socket.c: Remove HAVE_SVCTCP_SOCKET and
1841         HAVE_SVCUDP_SOCKET.
1843 2002-09-12  H.J. Lu <hjl@lucon.org>
1845         * configure.in: Remove checking svctcp_socket and svcudp_socket.
1846         * configure: Regenerated.
1848         * support/include/config.h.in (HAVE_SVCTCP_SOCKET): Removed.
1849         (HAVE_SVCUDP_SOCKET): Removed.
1851         * support/include/nfslib.h: Undo the last change.
1853 2002-09-12  H.J. Lu <hjl@lucon.org>
1855         * support/include/nfslib.h (svctcp_socket): Protect it with
1856         HAVE_SVCTCP_SOCKET.
1857         (svcudp_socket): Protect it with HAVE_SVCUDP_SOCKET.
1859 2002-09-12  H.J. Lu <hjl@lucon.org>
1861         * configure.in (VERSION): Set to "1.0.2".
1862         * configure: Regenerated.
1863         * nfs-utils.spec: Likewise.
1865 2002-09-12  H.J. Lu <hjl@lucon.org>
1867         * configure.in: Check svctcp_socket and svcudp_socket.
1868         * configure: Regenerated.
1870         * support/include/config.h.in (HAVE_SVCTCP_SOCKET): New.
1871         (HAVE_SVCUDP_SOCKET): New.
1873         * support/include/nfslib.h (svctcp_socket): New.
1874         (svcudp_socket): New.
1876         * support/nfs/Makefile (OBJS): Add svc_socket.o.
1878         * support/nfs/svc_socket.c: New.
1880         * support/nfs/rpcmisc.c (rpc_init): Call svctcp_socket and
1881         svcudp_socket if port is unspecified.
1883         * utils/nfsd/nfsd.c (main): Call getservbyname for port.
1885         * utils/rquotad/rquota_svc.c: Include <nfslib.h>.
1886         (killer): New. Signal handler to unregister.
1887         (main): Use killer. Call svcudp_socket to get the default
1888         socket.
1890 2002-09-02 Juan Gomez <juang@us.ibm.com>
1891         NeilBrown <neilb@cse.unsw.edu.au>
1893         Add -N option to statd to run in notify-only mode.
1895         * utils/statd/statd.h: uncomment MODE_NOTIFY_ONLY
1896         * utils/statd/statd.man: document -N
1897         * utils/statd/statd.c: enabled -N, largely exists but needed to be
1898         uncommented and completed
1899         
1900 2002-09-02 Juan Gomez <juang@us.ibm.com>
1901         NeilBrown <neilb@cse.unsw.edu.au>
1903         statd to have " -P directory" arg to use that directory instead
1904         of /var/lib/nfs.  This is useful for fail-over clusters.
1905         
1906         * utils/statd/statd.h: define SM_DIR etc as var, not const.
1907         * utils/statd/statd.c: define "-P" option to set SM_*
1908         appropriately.
1909         * utils/statd/monitor.c: sprintf to cope with SM_DIR not being
1910         a constant any more.
1911         * utils/statd/notify.c: ditto.
1912         * utils/statd/statd.man: document -P option.
1913         
1914 2002-08-26  Chip Salzenberg  <chip@pobox.com>
1916         * utils/nfsd/nfsd.man: Fix typo.
1917         * debian/changelog: Version 1.0.1-1.
1919 2002-05-29 NeilBrown <neilb@cse.unsw.edu.au>
1921         * let parseopts know if /etc/exports was being read or not, 
1922         and have it only print "no sync or async" warning in that case.
1923         
1924 2002-05-06 Tom McNeal <trmcneal@attbi.com>
1925         NeilBrown <neilb@cse.unsw.edu.au>
1927         * utils/nfsstat/nfsstat.c: Handle differing format for
1928            /proc/net/rpc/nfsd between pre and post 2.4.0
1929         
1930 2002-04-09  NeilBrown <neilb@cse.unsw.edu.au>
1931         James Pearson <james-p@moving-picture.com>
1933         * support/nfs/rmtab.c(fendrmtabent): sync changes to 
1934         storage before returning, as this is critical state
1936 2002-04-08  Sean O'Connell <sean@ee.duke.edu>
1937             H.J. Lu <hjl@lucon.org>
1939         * etc/redhat/nfs: New.
1941 2002-04-08  H.J. Lu <hjl@lucon.org>
1943         * etc/redhat/nfs.init: Updated.
1945         * nfs-utils.spec.in: Updated.
1946         * nfs-utils.spec: Regenerated.
1948         * utils/mountd/mountd.c (longopts): Fix a typo.
1950         * utils/mountd/mountd.man: Updated.
1952 2002-04-07  H.J. Lu <hjl@lucon.org>
1954         * etc/redhat/nfslock.init (restart): Just do stop and start.
1956         * etc/redhat/nfs.init: Fix a typo.
1958 2002-04-07  H.J. Lu <hjl@lucon.org>
1960         * configure.in (VERSION): Set to "1.0.1".
1961         * configure: Regenerated.
1962         * nfs-utils.spec: Likewise.
1964         * README: Updated for 1.0.1.
1966 2002-04-07  Sean O'Connell <sean@ee.duke.edu>
1967             H.J. Lu <hjl@lucon.org>
1969         * etc/redhat/nfs.init: Read /etc/sysconfig/nfsd for NFS tuning.
1971 2002-02-28   Steven Whitehouse <steve@gw.chygwyn.com>
1972               NeilBrown <neilb@cse.unsw.edu.au>
1974         Add support for fsid=nn export option so that device
1975         numbers don't go in filehandles.
1976         * support/export/nfsctl.c(expsetup): if exporting and NFSEXP_FSID
1977         is set, pass the fsid in-place of the device number
1978         * support/nfs/exports.c: parse and print fsid= option.
1979         Also check if efname has been set, and use "command line"
1980         instead in error messages.
1981         Also, use strtol instead of atoi for anon[ug]id= so that
1982         bad numbers cause errors.
1983         
1984 2002-01-17   Adrian Drzewiecki <drze@MissionCriticalLinux.com>
1985              NeilBrown <neilb@cse.unsw.edu.au>
1987         * support/nfs/exports.c: remove NFSEXP_ASYNC as a default
1988         flag so that "sync" becomes the default.
1989         Check that either "sync" or "async" is given as an option
1990         and warn if neither are present
1991         * utils/exportfs/exports.man: change documentation for "sync"
1992         to be documentation for "async".
1993         * utils/exportfs/exportfs.man: note that "sync" is the default
1994         rather than "async"
1995         
1996         
1997 2002-01-02  Chip Salzenberg  <chip@pobox.com>
1999         * support/export/nfsctl.c (expsetup): Don't export entries that
2000         specify id mappings not supported by the kernel.  No extant kernel
2001         supports any significant mapping, only 'identity' (i.e. none).
2002         When other mappings are supported, this code will need changing.
2003         * debian/changelog: Version 1.0-2.
2005 2001-12-26  Chip Salzenberg  <chip@pobox.com>
2007         * nfs-utils.spec (Version): Set to "1.0".
2008         * configure.in (VERSION): Likewise.
2009         * configure: Regenerated.
2010         * README: Rewritten.
2011         * debian/changelog: Version 1.0-1.
2013         * utils/exportfs/exports.man: Emphasize the need for options to
2014         immediately follow client names.  Explain that wildcards don't
2015         usually work on addresses, but may work when reverse DNS fails.
2016         Comment out a leftover TP that was TPing our indentation.
2017         * utils/mountd/mountd.man, utils/rquotad/rquotad.man,
2018         utils/statd/statd.man: Remove refs to non-existent "hosts_allow(5)".
2019         * debian/changelog: Version 0.3.3-6.
2021 2001-12-20  NeilBrown <neilb@cse.unsw.edu.au>
2023         * support/export/client.c(client_lookup): If a host has multiple
2024         IP addresses, then we must always use the result of a
2025         gethostbyname, not that of gethostbyaddr for exporting
2026         
2027 2001-12-20  NeilBrown <neilb@cse.unsw.edu.au>
2029         * support/export/client.c (client_lookup): use strcasecmp when
2030         comparing host names
2031         * support/nfs/export.c (getexportent): add fromkernel arg and use
2032         different defaults as kernels prior to 2.4.11 assume different
2033         defaults in /proc/fs/nfs/exports
2034         * support/include/nfslib.h, support/export/export.c,
2035         support/export/xtab.c:  support extra "fromkernel" arg for
2036         getexportent. 
2037         
2038 2001-12-13  Chip Salzenberg  <chip@pobox.com>
2040         * debian/changelog: Version 0.3.3-5.
2042 2001-11-26  TAKAI Kousuke <takai@vlsi.kuee.kyoto-u.ac.jp>
2044         * support/nfs/xio.c (xskip): Call `xungetc' instead of
2045         `ungetc' to keep x_line more properly.
2047 2001-11-26  Chip Salzenberg  <chip@pobox.com>
2049         * utils/showmount/showmount.c (main): Don't assume that strings
2050         starting with digits are IP addresses.
2051         * utils/nfsd/nfsd.c (main): Close all fds and reopen 0,1,2 on
2052         /dev/null before nfssvc().  Use syslog to report nfssvc errors.
2053         * support/misc/tcpwrapper.c, utils/mountd/mountd.man,
2054         utils/rquotad/rquotad.man, utils/statd/statd.man: Fix comments and
2055         man pages: We check host names *and* addresses with tcpwrappers.
2056         * debian/changelog: Version 0.3.3-4.
2058 2001-11-21  Chip Salzenberg  <chip@pobox.com>
2060         * support/nfs/clients.c (cfname): Added: current clients file name.
2061         (setnfsclntent): Set it.
2062         ({get,end}nfsclntent, syntaxerr): Use it.
2063         * support/nfs/exports.c (efname): Added: current exports file name.
2064         (setnfsexportent): Set it.
2065         (endnfsexportent, parseopts, getexport, syntaxerr): Use it.
2066         (parseopts): Accept old-style "crossmnt" option, for old xtabs.
2067         * debian/changelog: Version 0.3.3-3.
2069 2001-10-11  Chip Salzenberg  <chip@pobox.com>
2071         * utils/mountd/mountd.c (main): Close fds > 2 _before_ RPC init.
2072         * debian/changelog: Version 0.3.3-2.
2074 2001-10-08  Chip Salzenberg  <chip@pobox.com>
2076         * utils/mountd/mountd.c (main): When daemonizing, close all fds > 2.
2077         * utils/Makefile.in: Remove old Makefile in target 'distclean'.
2078         * utils/mountd/mountd.man: Update paths to /var/lib.
2079         * debian/*: Version 0.3.3-1, with Debian-specific fixes.
2081 2001-10-06  Preston Brown <pbrown@redhat.com>
2083         * utils/nfsstat/nfsstat.man: Updated.
2085 2001-09-24  H.J. Lu <hjl@lucon.org>
2087         * configure.in (VERSION): Set to "0.3.3".
2088         * configure: Regenerated.
2089         * nfs-utils.spec: Likewise.
2091         * README: Updated for 0.3.3.
2093 2001-09-20 NeilBrown <neilb@cse.unsw.edu.au>
2095         Arrange that "exportfs -au" never does DNS lookup:
2096         
2097         * support/export/client.c (client_lookup) : add "canonical"
2098         flag which says that the hostname is known to be canonical, so
2099         don't do a lookup
2101         * support/export/export.c (export_create) : add "canonical"
2102         flag to be passed down to client_lookup
2103         * support/export/export.c (export_lookup) : Likewise
2105         * support/export/xtab.c (xtab_read) : pass appropriate
2106         "canonical" flag to export_lookup and export_create:
2107         set if reading list of filesystems currently exports
2108         (is_export != 1). 
2110         * support/export/export.c (export_read) : pass 0 as 
2111         "canonical" flag to export_lookup and export_create
2112         * support/export/rmtab.s (rmtab_read) : Likewise
2114         * support/include/exportfs.h : redeclare various routines
2115         to have "canonical" flag
2117         * utils/exportfs/exportfs.c (main) : redo logic for 
2118         "-au" to read in what is currently exported, but never even 
2119         look at what "should" be exported.
2121         * utils/exportfs/exportfs.c (unexportall) : remove this
2122         routine. Functionality is completely included in
2123         exports_update
2125         * utils/exportfs/exportfs.c (exportfs) : set "canonical"
2126         flag to zero in calls to export_lookup and export_create.
2128         
2129 2001-09-20 NeilBrown <neilb@cse.unsw.edu.au>
2130             Anne Milicia <milicia@missioncriticallinux.com>
2132         * support/export/client.c (client_lookup) call gethostbyadd
2133         to make sure that we have a canonical hostname, even for
2134         dotted-quads
2135         * utils/exportfs/exportfs.c (exportfs) Likewise
2136         
2137 2001-09-12 NeilBrown <neilb@cse.unsw.edu.au>
2139         * support/nfs/exports.c (putexportent): \octal quote any spaces
2140         etc in a path name
2141         * support/nfs/xio.c (xgettok): recognise double-quote and
2142         \octal quoting in path names
2143         * utils/exportfs/exports.man: document quoting conventions
2144         for path names
2145         
2146 2001-09-12 NeilBrown <neilb@cse.unsw.edu.au>
2148         * utils/mountd/auth.c (auth_authenticate_internal): Reverse
2149           change from 2000-08-02:  It causes problems if someone exports
2150           to both a hostname and IP addresses.  nfs-utils must be
2151           consistant about the canonical name that it chooses.
2153 2001-08-17  Ragnar Kjørstad <nfs@ragnark.vestdata.no>
2154             H.J. Lu <hjl@lucon.org>
2156         * etc/redhat/nfslock.init (STATDARG): New. Pass it to rpc.statd.
2158         * utils/statd/statd.c (longopts): Add "name".
2159         (usage): Add "-n/--name".
2160         (main): Set MY_NAME with "-n/--name".
2162         * utils/statd/state.c (change_state): Set MY_NAME only if it
2163         is NULL.
2164         
2165         * utils/statd/statd.man: Updated for "-n/--name".
2167 2001-07-26  H.J. Lu <hjl@lucon.org>
2169         * nfs-utils.spec (Release): Set to 8.
2171 2001-07-25  H.J. Lu <hjl@lucon.org>
2173         * etc/redhat/nfs.init: Check if rpc.rquotad exists before doing
2174         anything about it.
2176 2001-06-27  H.J. Lu <hjl@lucon.org>
2178         * etc/redhat/nfs.init: Run rpc.rquotad only if it exists.
2180 2001-06-27  H.J. Lu <hjl@lucon.org>
2182         * utils/rquotad/rquota_server.c: Don't call statfs () for
2183         the block size. Use BLOCK_SIZE instead.
2185 2001-06-27  H.J. Lu <hjl@lucon.org>
2187         * config.mk.in (CC_FOR_BUILD): Renamed from BUILD_CC.
2188         (CFLAGS_FOR_BUILD): New. Don't use @CFLAGS@.
2190         * configure.in (enable_nfsv3): Set to yes by default.
2191         (--enable-rquotad): Added
2192         (AC_PROG_CXX): Removed.
2193         (AC_OUTPUT): Add utils/Makefile.
2194         (CC_FOR_BUILD): Renamed from BUILD_CC.
2195         * configure: Regenerated.
2197         * utils/Makefile: Removed.
2199         * utils/Makefile.in: New.
2201         * nfs-utils.spec.in (rquotad): New. Set to 0 to disable
2202         rquotad.
2203         (CC_FOR_BUILD): Renamed from BUILD_CC.
2204         * nfs-utils.spec: Regenerated.
2206 2001-06-15  Chip Salzenberg  <chip@debian.org>
2208         * debian/changelog: Version 0.3.2-2.
2209         * debian/*.init: Minor fixes.
2211 2001-06-07  Lon H. Hohberger <hohberger@missioncriticallinux.com>
2213         * etc/nodist/nfs-server: Fixed a bug where the script would
2214         disable mounts from NFSv3 clients if NFSv3 is present.
2216 2001-06-05  H.J. Lu <hjl@lucon.org>
2218         * utils/mountd/mountd.c (longopts): Add "descriptors/o".
2219         (main): Support --descriptors/-o to set the limit of the number
2220         of open file descriptors.
2221         (usage): Updated.
2223         * utils/mountd/mountd.man: Updated for --descriptors/-o.
2225 2001-06-04  H.J. Lu <hjl@lucon.org>
2227         * nfs-utils.spec (Release): Set to 6.
2229 2001-05-28  H.J. Lu <hjl@lucon.org>
2231         * utils/lockd/lockd.c (main): chdir to NFS_STATEDIR.
2232         * utils/mountd/mountd.c (main): Likewise.
2233         * utils/nfsd/nfsd.c (main): Likewise.
2234         * utils/rquotad/rquota_svc.c (main): Likewise.
2236 2001-05-06  Anne Milicia <milicia@missioncriticallinux.com>
2238         * support/export/client.c (client_check): Check IP address
2239         againet netgroup.
2241 2001-05-06  Neil Brown <neilb@cse.unsw.edu.au>
2243         * support/export/client.c (client_gettype): Treat `*' as
2244         MCL_ANONYMOUS.
2246 2001-04-22  H.J. Lu <hjl@lucon.org>
2248         * nfs-utils.spec.in: Fix a typo.
2249         * nfs-utils.spec: Regenerated.
2251 2001-04-21  H.J. Lu <hjl@lucon.org>
2253         * nfs-utils.spec.in: Fix cross build.
2254         * nfs-utils.spec: Regenerated.
2255         (Release): Set to 5.
2257 2001-04-18  H.J. Lu <hjl@lucon.org>
2259         * nfs-utils.spec.in: Support cross build.
2260         * nfs-utils.spec: Regenerated.
2261         (Release): Set to 4.
2263         * config.sub: New.
2264         * config.guess: New.
2266         * config.mk.in (BUILD_CC): New.
2267         (CC): Set to $(BUILD_CC) if BUILD is defined.
2268         (AR): Set to @AR@.
2269         (LD): Set to @LD@.
2270         (RANLIB): Set to @RANLIB@.
2272         * configure.in: Check BUILD_CC, RANLIB, AR and LD.
2273         * configure: Regenerated.
2275         * tools/rpcgen/Makefile (BUILD): Set to true.
2277 2001-04-01  Chip Salzenberg  <chip@valinux.com>
2279         * tools/rpcgen/rpc_svcout.c (write_timeout_func): Remove
2280         redundant, and sometimes broken, declaration of svc_fdset;
2281         it may be a macro.
2282         * support/nfs/rpcmisc.c (closedown): Likewise.
2283         
2284 2001-03-21  H.J. Lu <hjl@lucon.org>
2286         * nfs-utils.spec: Regenerated.
2287         (Release): Set to 3.
2289 2001-03-21  Ion Badulescu  <ionut@cs.columbia.edu>
2291         * utils/statd/statd.c (main): make sure file descriptors 0-2
2292         are open to /dev/null.
2294 2001-03-21  H.J. Lu <hjl@lucon.org>
2296         * support/nfs/rpcmisc.c: Restore the change made on 2001-03-10.
2297         * support/nfs/rpcmisc.c: Likewise.
2298         * utils/rquotad/rquota_svc.c: Likewise.
2299         * utils/rquotad/rquotad.man: Likewise.
2300         * utils/statd/Makefile: Likewise.
2301         * utils/statd/rmtcall.c: Likewise.
2302         * utils/statd/simulate.c: Likewise.
2303         * utils/statd/statd.c: Likewise.
2304         * utils/statd/statd.man: Likewise.
2306 2001-03-11  H.J. Lu <hjl@lucon.org>
2308         * configure.in (RELEASE): New. Default to 1, set by
2309         --with-release=XXX. Substitute nfs-utils.spec.
2310         * nfs-utils.spec.in (Release): Set to @RELEASE@.
2311         * configure: Regenerated.
2312         * nfs-utils.spec: Likewise.
2314 2001-03-11  H.J. Lu <hjl@lucon.org>
2316         * utils/rquotad/rquotad.man: Fix a typo.
2318 2001-03-11  H.J. Lu <hjl@lucon.org>
2320         * support/include/rpcmisc.h: Undo the change made on 2001-03-10.
2321         * support/nfs/rpcmisc.c: Likewise.
2322         * utils/rquotad/rquota_svc.c: Likewise.
2323         * utils/rquotad/rquotad.man: Likewise.
2324         * utils/statd/Makefile: Likewise.
2325         * utils/statd/rmtcall.c: Likewise.
2326         * utils/statd/simulate.c: Likewise.
2327         * utils/statd/statd.c: Likewise.
2328         * utils/statd/statd.man: Likewise.
2330 2001-03-10  H.J. Lu <hjl@lucon.org>
2332         * configure.in (VERSION): Set to "0.3.2".
2333         * configure: Regenerated.
2334         * nfs-utils.spec: Likewise.
2336         * README: Updated for 0.3.2.
2338 2001-03-10  Tavis Barr <tavis@boole.isetr.columbia.edu>
2340         * utils/rquotad/rquotad.man: Updated for -p.
2341         * utils/statd/statd.man: Likewise.
2343 2001-03-10  Ion Badulescu  <ionut@cs.columbia.edu>
2345         * support/nfs/rpcmisc.c: export makesock()
2347         * support/include/rpcmisc.h (makesock): Declared.
2349         * utils/rquotad/rquota_svc.c: added longopts, added support for
2350         specifying the port to bind to on the command line.
2352         * utils/statd/statd.c: ditto, also specify port used for
2353         outgoing connections.
2354         (do_regist): Removed.
2356         * utils/statd/rmtcall.c (statd_get_socket): Renamed from
2357         get_socket. Make it extern.
2359         * utils/statd/simulate.c (daemon_simulator): Call rpc_init
2360         instead of do_regist.
2362         * utils/statd/Makefile (LIBS): link with our own libnfs
2364 2001-03-09  H.J. Lu <hjl@lucon.org>
2366         * etc/redhat/nfslock.init: Changed chkconfig line to 60 86.
2367         * etc/nodist/nfs-client: Likewise.
2369 2001-02-26  Chip Salzenberg  <chip@valinux.com>
2371         * debian/changelog: Version 0.3.1-1.
2372         * Mention upstream source and license in copyright file.
2373         * Add build-Depends for debhelper and libwrap0-dev.
2375 2001-02-20  Lon Hohberger <hohberger@missioncriticallinux.com>
2377         * etc/nodist/nfs-server: Changed chkconfig line to 60 20
2378         * etc/nodist/nfs-client: Likewise.
2380 2001-02-18  Lon Hohberger <hohberger@missioncriticallinux.com>
2382         * utils/statd/statd.man: Changed /usr/sbin/rpc.statd to
2383         /sbin/rpc.statd.
2385 2001-02-17  Patrick J. LoPresti <patl@curl.com>
2387         * utils/statd/log.c (log_init): Use LOG_DAEMON instead of
2388         LOG_LOCAL5.
2390 2001-02-14  H.J. Lu <hjl@lucon.org>
2392         * utils/statd/rmtcall.c: Include <time.h>.
2393         * utils/statd/svc_run.c: Likewise.
2395 2001-02-14  H.J. Lu <hjl@lucon.org>
2397         * configure.in (VERSION): Set to "0.3.1".
2398         * configure: Regenerated.
2399         * nfs-utils.spec: Likewise.
2401         * README: Updated for 0.3.1.
2403 2001-02-14  H.J. Lu <hjl@lucon.org>
2405         * support/nfs/rpcmisc.c: Include <time.h>.
2407 2001-02-14  Chip Salzenberg  <chip@valinux.com>
2409         * debian/control: Change priority of nhfsstone package to 'extra'.
2411 2001-02-12  Chip Salzenberg  <chip@valinux.com>
2413         * debian/changelog: Version 0.3-2.
2415 2001-02-02  H.J. Lu <hjl@lucon.org>
2417         * support/include/rpcmisc.h (rpc_init): Remove bufsize.
2418         
2419         * support/nfs/rpcmisc.c (makesock): Remove socksz and comment
2420         out SO_SNDBUF/SO_RCVBUF.
2421         (rpc_init): Remove bufsize and remove socksz in calls to
2422         makesock ().
2424         * utils/mountd/mountd.c (main): Remove bufsize in calls to
2425         rpc_init ().
2427 2001-01-28  Chip Salzenberg  <chip@valinux.com>
2429         * debian/changelog: Version 0.3-1.
2431 2001-01-25  H.J. Lu <hjl@lucon.org>
2433         * configure.in (VERSION): Set to "0.3".
2434         * configure: Regenerated.
2435         * nfs-utils.spec: Likewise.
2437         * README: Updated for 0.3.
2439 2001-01-25  H.J. Lu <hjl@lucon.org>
2441         * utils/lockd/lockd.c (main): Ignore errno == EINVAL.
2443 2001-01-20  Chip Salzenberg  <chip@valinux.com>
2445         * support/include/xio.h (xgetc): Declare to return int.
2446         * support/nfs/xio.c (xgetc): Return int.
2447         (xgettok, xskip, xskipcomment): Use int for value of xgetc.
2448         * utils/statd/statd.c (main): Use int for value of getopt.
2449         * debian/changelog: Version 0.2.1-5.
2450         
2451 2000-12-10  Chip Salzenberg  <chip@valinux.com>
2453         * utils/statd/monitor.c (sm_mon_1_svc): Fix buggy check for
2454         program and procedure numbers of kernel lockd's callback.  Also,
2455         besides the old (and broken) procedure #24, allow #16 per Trond.
2457 2000-12-03  Chip Salzenberg  <chip@valinux.com>
2459         * support/nfs/xio.c (xfopen): Initialize x_line to one, not zero.
2460         * debian/control: Let nhfsstone replace files in nfs-kernel-server.
2461         * debian/changelog: Version 0.2.1-4.
2463 2000-11-27  Tobias Ringstrom <tori@tellus.mine.nu>
2465         * utils/mountd/auth.c (auth_authenticate): Log the bad path
2466         warning.
2468 2000-11-24  Neil Brown <neilb@cse.unsw.edu.au>
2470         * support/nfs/exports.c (getexportent): Check for host name
2471         without option, or options without hostname, and print a warning,
2472         as this is most likely a typo.
2474 2000-11-19  Chip Salzenberg  <chip@valinux.com>
2476         * debian/control: Add dependency on portmap.
2477         * debian/changelog: Version 0.2.1-3.
2479 2000-11-10  H.J. Lu <hjl@lucon.org>
2481         * nfs-utils.spec.in: Don't use libtool.
2482         Add ChangeLog and COPYING to doc.
2483         * nfs-utils.spec: Rebuild.
2485 2000-11-09  H.J. Lu <hjl@lucon.org>
2487         * etc/redhat/nfs.init (start): Back out the last change.
2489 2000-11-09  H.J. Lu <hjl@lucon.org>
2491         * etc/redhat/nfs.init (start): Pass --no-tcp to mountd if
2492         TCP is not supported by kernel.
2494         * support/nfs/rpcmisc.c (rpc_init): Don't set _rpcfdtype to 0.
2496         * utils/mountd/mountd.c (longopts): Add "-n/--no-tcp".
2497         (main): Set to _rpcfdtype to SOCK_DGRAM for "-n/--no-tcp".
2499         * utils/mountd/mountd.man: Updated for "-n/--no-tcp".
2501 2000-10-24  Lon Hohberger <hohberger@missioncriticallinux.com>
2503         * utils/statd/callback.c: Fix bug preventing callbacks to local lockd.
2504         * utils/statd/rmtcall.c: Add some IP address paranoia when doing
2505         callbacks to local lockd.
2507 2000-10-18  Scott McDermott <mcdermot@questra.com>
2509         * utils/exportfs/exports.man: Updated for CIDR netmask.
2511 2000-10-17  Scott McDermott <mcdermot@questra.com>
2513         * support/export/client.c (client_init): Support CIDR netmask
2514         in /etc/exports.
2516 2000-10-11  H.J. Lu <hjl@lucon.org>
2518         * aclocal.m4 (AC_TCP_WRAPPER): Fix a typo.
2519         * configure: Rebuilt.
2521 2000-10-06  Lon Hohberger <hohberger@missioncriticallinux.com>
2523         * utils/statd/statd.man: Change "/var/lib/nfs/sm/state" to
2524         "/var/lib/nfs/state".
2526 2000-10-05  Lon Hohberger <hohberger@missioncriticallinux.com>
2528         * utils/statd/statd.h (run_mode): New global bitmask of runtime
2529         behaviors: fg/bg, logging, etc.
2530         * utils/statd/statd.c: New command line options: -V -h -? -d .
2531         * utils/statd/statd.man: Update for changes to statd.
2533         * utils/statd/log.h (log_init): Remove parameter of function; use
2534         global variable "name_p" instead.
2535         * utils/statd/log.c: Add support for logging to stderr.
2537         * utils/statd/notlist.c: Partially rewrite notify list handling
2538         functions.  Eliminate run-off-end-of-list bug when calling
2539         nlist_insert_timer.  Add lots of comments.
2540         
2541 2000-09-27  H.J. Lu <hjl@lucon.org>
2543         * README: Updated for RedHat 7.0.
2545 2000-09-27  H.J. Lu <hjl@lucon.org>
2547         * nfs-utils.spec: Rebuild.
2549 2000-09-27  H.J. Lu <hjl@lucon.org>
2551         * README: Updated for 0.2.1.
2553 2000-09-27  H.J. Lu <hjl@lucon.org>
2555         * nfs-utils.spec.in: Updated to use rpm macros and support
2556         RedHat 7.0.
2558 2000-09-25  H.J. Lu <hjl@lucon.org>
2560         * configure.in (VERSION): Set to "0.2.1".
2561         * configure: Regenerated.
2562         * nfs-utils.spec: Updated.
2564 2000-09-25  H.J. Lu <hjl@lucon.org>
2566         * utils/mountd/auth.c (auth_authenticate_internal): Make sure a
2567         non-NULL hostent is always returned.
2569 2000-09-11  Ion Badulescu  <ionut@cs.columbia.edu>
2571         * etc/redhat/nfslock.init: don't kill lockd processes that do not
2572         have an executable (i.e. kernel threads)
2574 2000-09-01  H.J. Lu <hjl@lucon.org>
2576         * README: Updated for 0.2.
2578 2000-09-01  Jay Weber <jweber@valinux.com>
2580         * etc/redhat/nfs.init: Added ability for rpc.mountd to default to
2581         supporting version 3 of nfs if available, else it will fall back to
2582         version 2 support only.
2584 2000-08-30  H.J. Lu <hjl@lucon.org>
2586         * configure.in (VERSION): Set to "0.2".
2587         * configure: Regenerated.
2588         * nfs-utils.spec: Updated.
2590 2000-08-25  H.J. Lu <hjl@lucon.org>
2592         * support/misc/tcpwrapper.c (logit): Modify the log output.
2594 2000-08-25  Ion Badulescu  <ionut@cs.columbia.edu>
2596         * utils/rquotad/rquotad.man, utils/statd/statd.man,
2597         utils/mountd/mountd.man: updated
2598         
2599         * utils/mountd/Makefile (LIBS): added -lmisc $(LIBWRAP) $(LIBNSL)
2600         * utils/rquotad/Makefile: fix comment
2602         * support/misc/tcpwrapper.c (logit): added comment about waiting
2603         for the children after fork()
2604         
2605         * utils/mountd/mountd.c (main): ignore SIGCHLD to prevent leaving
2606         zombies behind (from logit()'s fork)
2607         * utils/rquotad/rquota_svc.c (main): ditto
2608         * utils/statd/statd.c (main): ditto
2610         * utils/rquotad/rquota_svc.c (rquotaprog_1): pass RQUOTAPROG
2611         to check_default instead of 0, for prognum
2613         * utils/statd/statd.c (sm_prog_1_wrapper): pass SM_PROG
2614         to check_default instead of 0, for prognum
2616         * utils/mountd/mount_dispatch.c: Include "tcpwrapper.h" if
2617         HAVE_TCP_WRAPPER is defined.
2618         (mount_dispatch): Call check_default () if HAVE_TCP_WRAPPER is
2619         defined. Reject an RPC call if check_default () fails.
2621 2000-08-25  H.J. Lu <hjl@lucon.org>
2623         * support/include/tcpwrapper.h: New for the tcp wrapper
2624         support.
2625         * support/misc/Makefile: Likewise.
2626         * support/misc/from_local.c: Likewise.
2627         * support/misc/tcpwrapper.c: Likewise.
2629         * aclocal.m4 (AC_TCP_WRAPPER): New.
2630         * configure.in: Use it. Substitute LIBWRAP.
2631         * configure: Rebuilt.
2633         * config.mk.in (LIBNSL): New.
2634         (LIBWRAP): Likewise.
2636         * support/Makefile (SUBDIRS): Add misc.
2638         * support/lib/Makefile (LIBS): Add libmisc.a.
2640         * utils/rquotad/Makefile (LIBS): Add
2641         
2642                 -lmisc $(LIBWRAP) $(LIBNSL)
2644         * utils/statd/Makefile (LIBS): Likewise.
2646         * utils/rquotad/rquota_svc.c: Include "tcpwrapper.h" if
2647         HAVE_TCP_WRAPPER is defined.
2648         (rquotaprog_1): Call check_default () if HAVE_TCP_WRAPPER is
2649         defined. Reject an RPC call if check_default () fails.
2651         * utils/statd/statd.c: Include "tcpwrapper.h" if
2652         HAVE_TCP_WRAPPER is defined.
2653         (sm_prog_1_wrapper): New. A wrapper for sm_prog_1. Call
2654         check_default () before calling sm_prog_1 (). Define it as
2655         sm_prog_1_wrapper if HAVE_TCP_WRAPPER is defined.
2657 2000-08-25  Chip Salzenberg  <chip@valinux.com>
2659         * debian/*: Complete Debian build support.
2660         * etc/debian/*: Remove.
2662 2000-08-24  Neil Brown <neilb@cse.unsw.edu.au>
2664         * support/export/client.c(client_check): removed the "dot+1" as a
2665           ypdomain argument to innetgr as this is entirely bogus.
2666           It should always be NULL.
2667         
2668 2000-08-23  Neil Brown <neilb@cse.unsw.edu.au>
2670         * support/export/xtab.c(xtab_read): introduce new mode for
2671            reading xtab. i.e. a list of exports that might be known to the
2672            kernel, or might not.  These are flagged as m_exported == -1
2673         * support/export/xtab.c(xtab_mount_read):  call xtab_read with new
2674            value "2" for xtab, meaning don't trust this too much.
2675         * support/include/exportfs.h(struct mexport): changed m_exported
2676            from one bit to an int so that it can hold new value
2677         * utils/exportfs/exportfs.c(exportfs_ipdate): add an export to the
2678            kernel if it is uncertain whether the kernel knows (m_exported == -1)
2679         * utils/mountd/mountd.c(get_rootfh): similarly export to kernel if
2680            status is uncertain
2682         * support/nfs/xio.c(xflock): added O_CREAT when getting
2683            a write lock so that missing files aren't fatal.
2685         * etc/debian/nfs-common: new file from "potato"
2686         * etc/debian/nfs-kernel-server: new file from "potato" plus fixes.
2687          
2688 2000-08-09  H.J. Lu <hjl@lucon.org>
2690         * etc/redhat/nfs.init: Run /usr/sbin/exportfs first during
2691         startup to ensure all existing clients work fine.
2693         * support/export/xtab.c (xtab_mount_read): Pass 1 instead of 0
2694         to xtab_read () for reading _PATH_XTAB.
2696 2000-08-02  H.J. Lu <hjl@lucon.org>
2698         * utils/mountd/auth.c (auth_authenticate_internal): Try to
2699         avoid the reverse name lookup.
2701 2000-07-04  H.J. Lu <hjl@lucon.org>
2703         * utils/statd/log.c: Include <stdlib.h> for exit ().
2705         * utils/statd/misc.c (xunlink): Add `{' and `}' to quiet the
2706         gcc warning.
2708 2000-07-04  H.J. Lu <hjl@lucon.org>
2710         * configure.in (VERSION): Set to "0.1.9.1".
2711         * configure: Regenerated.
2712         * nfs-utils.spec: Updated.
2714         * README: Updated.
2716 2000-07-04  Neil Brown  <neilb@cse.unsw.edu.au>
2718         * support/export/hostname.c (hostent_dup): Handle the NULL
2719         h_aliases field.
2721 2000-07-03  H.J. Lu <hjl@lucon.org>
2723         * README: Update the util-linux requirement.
2725 2000-07-03  H.J. Lu <hjl@lucon.org>
2727         * configure.in (VERSION): Set to "0.1.9".
2728         * configure: Regenerated.
2729         * nfs-utils.spec: Updated.
2731         * README: Updated.
2733 2000-07-03  H.J. Lu <hjl@lucon.org>
2735         * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
2736         stop to ensure all clients can still access the server
2737         before it is shutdown.
2739 2000-06-30  Jeff Uphoff <juphoff@transmeta.com>
2741         * tools/rpcgen/rpc_svcout.c (write_msg_out): Generate syslog()
2742         calls with format string.
2743         
2744 2000-06-28  Chip Salzenberg  <chip@valinux.com>
2746         * utils/statd/log.c (log): Call syslog with format string.
2748 2000-06-27  H.J. Lu <hjl@lucon.org>
2750         * utils/statd/statd.c (main): Use sysconf (_SC_OPEN_MAX)
2751         instead of OPEN_MAX.
2753 2000-06-27  H.J. Lu <hjl@lucon.org>
2755         * README: Updated.
2757 2000-06-27  H.J. Lu <hjl@lucon.org>
2759         * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
2760         startup to ensure all existing clients are exported.
2762         * configure.in (VERSION): Set to "0.1.8.2".
2763         * configure: Regenerated.
2764         * nfs-utils.spec: Updated.
2766 2000-06-06  H.J. Lu <hjl@lucon.org>
2768         * configure.in (VERSION): Set to "0.1.8.1".
2769         * configure: Regenerated.
2770         * nfs-utils.spec: Updated.
2772 2000-06-06  H.J. Lu <hjl@lucon.org>
2774         * utils/mountd/mountd.c (mount_dump_1_svc): Cast svc_getcaller
2775         to "struct sockaddr_in *" for glibc 2.2.
2776         (mount_umnt_1_svc): Likewise.
2777         (mount_umntall_1_svc): Likewise.
2778         (mount_export_1_svc): Likewise.
2779         (mount_exportall_1_svc): Likewise.
2780         (mount_pathconf_2_svc): Likewise.
2781         (get_rootfh): Likewise.
2783 2000-06-04  H.J. Lu <hjl@lucon.org>
2785         * etc/redhat/nfs.init: Fix a typo in comment.
2787 2000-05-31  H.J. Lu <hjl@lucon.org>
2789         * configure.in (VERSION): Set to "0.1.8".
2790         * configure: Regenerated.
2791         * nfs-utils.spec: Updated.
2793         * README: Updated.
2795 2000-05-31  H.J. Lu <hjl@lucon.org>
2797         * configure.in (VERSION): Set to "0.1.7.5".
2798         * configure: Regenerated.
2799         * nfs-utils.spec: Updated.
2801         * support/include/nfslib.h (exportent): Add a new field,
2802         r_count, to count the number of mounts from a client.
2803         (getrmtabent): Take a new argument for position in file.
2804         (putrmtabent): Likewise.
2805         (fgetrmtabent): Likewise.
2806         (fputrmtabent): Likewise.
2807         * support/nfs/rmtab.c (getrmtabent): Handle the new argument
2808         for position in file.
2809         (fgetrmtabent): Likewise.
2810         (putrmtabent): Likewise.
2811         (fputrmtabent): Likewise.
2813         * support/nfs/rmtab.c (fgetrmtabent): Get value for the new
2814         field, r_count.
2816         * support/export/rmtab.c (rmtab_read): Pass NULL as the new
2817         argument to getrmtabent (), fgetrmtabent (), putrmtabent ()
2818         and fputrmtabent ().
2819         * utils/mountd/rmtab.c (mountlist_add): Likewise.
2820         (mountlist_del): Likewise.
2821         (mountlist_del_all): Likewise.
2822         (mountlist_list): Likewise.
2824         * utils/mountd/rmtab.c (mountlist_add): Increment "r_count"
2825         for the existing entry and initialize "r_count" to 1.
2826         (mountlist_del): Decrement "r_count".
2828 2000-05-18  H.J. Lu <hjl@lucon.org>
2830         * configure.in (VERSION): Set to "0.1.7.4".
2831         * configure: Regenerated.
2832         * nfs-utils.spec: Updated.
2834 2000-05-18  H.J. Lu <hjl@lucon.org>
2836         * etc/redhat/nfs.init (restart): Just do stop and start.
2838 2000-05-09  Jay Weber <jweber@valinux.com>
2840         * utils/rquotad/hasquota.c: added support for ext3 recognition
2841         in rquotad.
2842         * utils/rquotad/mntent.h: Likewise.
2844 2000-05-01  H.J. Lu <hjl@lucon.org>
2846         * configure.in (VERSION): Set to "0.1.7.3".
2847         * configure: Regenerated.
2848         * nfs-utils.spec: Updated.
2850 2000-05-01  H.J. Lu <hjl@lucon.org>
2852         * utils/rquotad/rquota_server.c (getquotainfo): Skip bad
2853         mounting poins in /etc/fstab.
2855 2000-05-01  H.J. Lu <hjl@lucon.org>
2857         * configure.in (VERSION): Set to "0.1.7.2".
2858         * configure: Regenerated.
2859         * nfs-utils.spec: Updated.
2861 2000-05-01  H.J. Lu <hjl@lucon.org>
2863         * utils/rquotad/rquota_server.c (getquotainfo): Call stat ()
2864         to check for the mounting point.
2866 2000-04-29  Chip Salzenberg  <chip@valinux.com>
2867             Neil Brown  <neilb@cse.unsw.edu.au>
2869         * Really re-use RPC ports.
2870           (Fixes earlier patch.  Sorry, Neil.)
2872 2000-04-26  H.J. Lu <hjl@lucon.org>
2874         * configure.in (VERSION): Set to "0.1.7.1".
2875         * configure: Regenerated.
2876         * nfs-utils.spec: Updated.
2878 2000-04-26  H.J. Lu <hjl@lucon.org>
2880         * etc/redhat/nfslock.init: Check if lockd exits before killing
2881         it.
2883 2000-04-25  H.J. Lu <hjl@lucon.org>
2885         * README: Require util-linux-2.10f-mount-rpc.patch for mount.
2887 2000-03-21 Michael Weiser <michael@weiser.saale-net.de>
2889         * support/nfs/exports.c (parsesquash): Correctly set the
2890         return pointer.
2892 Tue Mar 21 11:38:48 EST 2000 NeilBrown <neilb@cse.unsw.edu.au>
2894         * support/include/nfs/nfs.h: Removed knowledge of internals of
2895              kernel filehandles (which can change) and defined nfs_fh_size
2896              which has variable size
2897         
2898         * support/nfs/getfh.c: defined getfh_size to use new syscall to
2899              get variable sized file handles, and change getfh{,old} to
2900              use nfs_fh_size        
2901         
2902         * utils/mountd/mountd.c: use nfd_fh_size and call getfh_size for
2903              NFSv3 file handles
2905         * tools/Makefile, tools/nlmtest/nlmtest.c
2906              nlmtest.c depended on internel format of file handles, so now
2907              doesn't work.
2909         
2910 2000-03-12  Chip Salzenberg  <chip@valinux.com>
2911             Neil Brown  <neilb@cse.unsw.edu.au>
2913         * support/nfs/rpcmisc.c (rpc_init): Share transports.
2915 2000-03-13 H.J. Lu <hjl@lucon.org>
2917         * etc/redhat/nfsd.init: Updated.
2919         * etc/redhat/nfslock.init: Updated.
2921         * nfs-utils.spec.in: Updated.
2923         * configure.in (VERSION): Set to "0.1.7".
2924         * configure: Regenerated.
2925         * nfs-utils.spec: Updated.
2927         * README: Updated.
2929 Wed Mar  8 09:42:43 2000 Neil Brown <neilb@cse.unsw.edu.au>
2931         * utils/exportfs/exportfs.c (dump): Included printing of
2932            nohide, no_subtree_check, and insecure_locks
2934 2000-02-26  Chip Salzenberg  <chip@valinux.com>
2936         * config.mk.in (INSTALLSUID): Strip ("-s").
2937         (INSTALLSCRIPT): Define.
2938         * utils/nhfsstone/Makefile: Use it.
2940 2000-02-26  Chip Salzenberg  <chip@valinux.com>
2942         * utils/lockd/lockd.man: Create.
2943         * utils/lockd/Makefile: Install it.
2944         * utils/nhfsstone/nhfs{run,nums,graph}.man: Create.
2945         * utils/nhfsstone/nhfsstone.man: Change suffix from ".1".
2946         * utils/nhfsstone/Makefile: Install the helper scripts and
2947           all four man pages.
2948         * utils/exportfs/exports.man: Fix typo.
2950 2000-02-26  Chip Salzenberg  <chip@valinux.com>
2952         * support/nfs/xio.c (xungetc): Decrement line number when
2953         character to unget is newline.  Make first parameter int, so
2954         it can distinguish EOF from \377.
2955         * support/include/xio.h (xungetc): Adjust prototype.
2957 Fri Feb  4 23:42:23 2000 Neil Brown <neilb@cse.unsw.edu.au>
2959         * support/include/nfs/export.h: added NFSEXP_NOAUTHNLM
2960         * support/nfs/exports.c: added handling for NFSEXP_NOAUTHNLM
2961         * utils/exportfs/exports.man: added documentation for no_auth_nlm.
2963         This is for supporting a new option introduced in 2.3.42
2965 Thu Feb  3 14:55:48 2000 H.J. Lu <hjl@lucon.org>
2967         * COPYING: Added. GPL.
2969 Thu Feb 03 14:40:40 2000 Cristian Gafton <gafton@redhat.com>
2971         * utils/rquotad/rquota_server.c (getquotainfo): Call statfs ()
2972         to get the block size.
2974 Tue Jan 25 11:04:17 2000 H.J. Lu <hjl@lucon.org>
2976         * nfs-utils.spec.in: Update ftp site.
2978 Mon Jan 17 11:48:18 2000 H.J. Lu <hjl@lucon.org>
2980         * README: Update hostnames.
2982 Tue Jan 11 10:06:22 2000 H.J. Lu <hjl@lucon.org>
2984         * configure.in (VERSION): Set to "0.1.6".
2985         * configure: Regenerated.
2986         * nfs-utils.spec: Updated.
2988         * README: Updated.
2990 Mon Jan 10 14:26:33 2000 H.J. Lu <hjl@lucon.org>
2992         * utils/mountd/auth.c (auth_authenticate_internal): Call
2993         xstrdup for hostname before passing it to gethostbyname.
2995         * utils/mountd/mountd.c (get_exportlist): Use xstrdup instead
2996         of strdup.
2998 Sun Dec 19 09:35:01 1999  H.J. Lu <hjl@lucon.org>
3000         * README: Update the mailing list address.
3002 Sun Dec 19 09:22:28 1999  H.J. Lu <hjl@lucon.org>
3004         * configure.in (VERSION): Set to "0.1.5".
3005         * configure: Regenerated.
3006         * nfs-utils.spec: Updated.
3008         * README: Updated.
3010 Mon Dec 13 13:40:20 1999  H.J. Lu <hjl@lucon.org>
3012         * utils/rquotad/hasquota.c (hasquota): Malloc one more char
3013         for '/'.
3015 Mon Dec  6 09:42:45 1999  H.J. Lu <hjl@lucon.org>
3017         * configure.in (VERSION): Set to "0.1.4".
3018         * configure: Regenerated.
3019         * nfs-utils.spec: Updated.
3021         * README: Updated.
3023 Mon Dec  6 09:28:07 1999  H.J. Lu <hjl@lucon.org>
3025         * nfs-utils.spec.in: New file.
3027         * config.mk.in (VERSION): Changed to "nfs-utils @VERSION@".
3029         * configure.in (nfs-utils.spec): Added to AC_OUTPUT.
3031 1999-12-04  Chip Salzenberg  <chip@valinux.com>
3033         * config.mk.in: Use $(CC) as set by configure.
3035 1999-12-04  Chip Salzenberg  <chip@valinux.com>
3037         * rules.mk: Call $(MAKE) with $(MFLAGS).
3039 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
3041         * tools/rpcgen/rpc_main.c (h_output): Generate IXDR_GET_INT32,
3042         IXDR_PUT_INT32, IXDR_GET_U_INT32 and IXDR_PUT_U_INT32.
3044 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
3046         * nfs-utils.spec (Version): Set to 0.1.3.
3048         * configure.in (VERSION): Set to "nfs-utils 0.1.3".
3049         * configure: Regenerated.
3051         * README: Updated.
3053 Mon Nov 29 11:15:47 1999  H.J. Lu <hjl@lucon.org>
3055         * utils/rquotad/rquota_server.c (nfsmount_to_devname): Removed.
3056         (_PATH_DEV_DSK): Likewise.
3057         (getquotainfo): Match the mounting point from /etc/mtab
3058         instead of calling nfsmount_to_devname ().
3060 1999-11-24  Chip Salzenberg  <chip@valinux.com>
3062         * utils/statd/monitor.c (sm_mon_1_svc): Accept lockd callbacks
3063         to the new port 24 as well as the historical port 100021.
3065 Tue Nov 23 10:21:34 1999 Neil Brown <neilb@cse.unsw.edu.au>
3067         * etc/redhat/nfsd.init (stop): moved exportfs -ua after
3068         stopping nfsd to stop spurious ESTALE on server shutdown.
3069         
3070 Tue Nov 23 10:13:39 1999  Neil Brown <neilb@cse.unsw.edu.au>
3072         * support/nfs/exports.c (parseopts): make copy of opt string
3073         before 'nul'ing out commas so that
3075         # exportfs -o option1,option2 hosta:/fs hostb:/fs
3077         applies both options to both exports.
3079 Thu Oct 28 12:55:42 1999  H.J. Lu <hjl@lucon.org>
3081         * README: Fix a few typos.
3083         * tools/rpcgen/rpc_cout.c (print_header): Use int32_t instead
3084         of long.
3085         * tools/rpcgen/rpc_hout.c (pdefine): Likewise.
3086         * tools/rpcgen/rpc_main.c (c_initialize): Likewise.
3087         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
3088         (unsigned_dec): Likewise.
3089         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
3090         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
3092         * tools/rpcgen/rpc_cout.c (emit_single_in_line): Use INT32
3093         instead of LONG.
3094         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
3095         (unsigned_dec): Likewise.
3096         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
3097         * tools/rpcgen/rpc_scan.h (tok_kind): Likewise.
3098         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
3100 Thu Oct 28 11:27:51 1999 Neil Brown <neilb@cse.unsw.edu.au>
3102         * support/include/nfs/export.h addedd NFSEXP_NOSUBTREECHECK
3103         * support/nfs/exports.c: added {no_,}subtree_check and changed
3104           crossmnt to nohide
3105         * utils/exportfs/exports.man: added no_subtree_check and nohide
3106           and removed irrelevant stuff from unfsd.
3107         * support/export/rmtab.c: rmtab_read didn't quite do the right
3108           thing if a pathname from rmtab was a subdirectory of an export-point
3110 Tue Oct 26 17:22:40 1999  H.J. Lu <hjl@lucon.org>
3112         * README: Updated ftp site.
3114 Mon Oct 25 18:12:45 1999  H.J. Lu <hjl@lucon.org>
3116         * nfs-utils.spec (Version): Set to 0.1.2.
3118         * configure.in (VERSION): Set to "nfs-utils 0.1.2".
3119         * configure: Regenerated.
3121         * README: Updated.
3123 Mon Oct 25 18:11:21 1999  H.J. Lu <hjl@lucon.org>
3125         * utils/mountd/auth.c (auth_error): Add "no_forward_dns".
3126         (auth_authenticate_internal): Check for NULL return on forward
3127         DNS lookup.
3128         (auth_authenticate): Handle "no_forward_dns".
3130 Thu Oct 21 16:22:06 1999  H.J. Lu <hjl@lucon.org>
3132         * Version 0.1.1 released.
3134         * nfs-utils.spec (Version): Set to 0.1.1.
3136         * configure.in (VERSION): Set to "nfs-utils 0.1.1".
3137         * configure: Regenerated.
3139         * README: Updated.
3141 Mon Oct 18 17:43:29 1999  H.J. Lu <hjl@lucon.org>
3143         * nfs-utils.spec (Obsoletes): Fixed a typo, change knfsd-client
3144         to knfsd-clients.
3145         (Provides): Likewise.
3147 Mon Oct 18 14:56:22 1999  H.J. Lu <hjl@lucon.org>
3149         * Initial version 0.1 released.
3151         * configure.in (VERSION): Set to "nfs-utils 0.1".
3152         * configure: Regenerated.
3154 Mon Oct 18 14:54:57 1999  H.J. Lu <hjl@lucon.org>
3156         * utils/mountd/mountd.c (get_exportlist): Cleanup.
3158         * utils/exportfs/exportfs.c (unexport_all): Unexport from
3159         kernel only if the entry is exported to kernel.
3160         (unexportfs): Likewise.
3162 Wed Sep 08 16:49:32 1999  Neil Brown <neilb@cse.unsw.edu.au>
3164 1/ utils/mountd/rmtab.c::mountlist_list
3166      This routine stats the rmtab file to see if it has changed.  It
3167      if has, it cleans up it's old copy of the data. But it still
3168      always re-read the file, thus returning multiple copies of the
3169      data on consecutive calls without intervening changes.
3170      "Showmount -a" didn't show this as it appears to sort/unique the
3171      data, but 'strace showmount -a' showed that the size of the
3172      datagram that it received grew.
3174      I moved the getrmtabent loop inside the mtime test.
3176 2/ utils/exportfs/exportfs.c
3177    
3178      Many routines used the m_path field of m_export instead of
3179      e_path.
3180      According to the comment in nfslib.h, m_path should only
3181      be used when processing a mount request (i.e. in mountd)
3182      where the mountpoint may be a subdirectory of the export point.
3184      I changed all occurances of m_path to e_path
3187 3/ utils/exportfs/exportfs.c:main
3189       extra arguments are not meaningful with -a or -r, but
3190       exportfs accepted them and then ignored the -a/-r, expect that
3191       -r would still unexport everything first.
3193       I generate an error if there are extra args and f_all
3195 4/ utils/exportfs/exportfs.c:main
3196      extract dump out as a special case.
3198 5/ utils/exportfs/exportfs.c
3199      made f_reexport a local variable.
3202 6/ utils/exportfs/exportfs.c:main,exportall
3204     support/export/rmtab.c
3205        only  mayexport on newly created entries, don't set xtabent at all
3207 7/ support/include/nfslib.h
3209       add #define _PATH_PROC_EXPORTS to be /proc/fs/nds/exports
3211 8/ support/export/xtab.c
3213       xtab_mount_read loads data from _PATH_PROC_EXPORTS if it exists,
3214       else from xtab
3217 9/ support/export/xtab.c
3219       xtab_mount_read now sets m_exported, and NOT
3220         xtabent and mayexport
3222       removed the append arguement from xtab_write as it was
3223         never used.
3225       added is_export flag to xtab_write similar to xtab_read
3226         if is_export, only write entries with m_xtabent or m_addxtab
3227         if !is_export, only write entries with m_exported
3228      
3229 10/ support/export/export.c::export_allowed_internal
3231       added test for exp->m_mayexport, as the export tree
3232         may have entries that are no longer allowed to be exported,
3233         and so shouldn't caused deduced exported by rmtab_read
3235 11/ utils/exportfs/exportfs.c::main
3236         error checking of flags.
3238 12/ utils/exportfs/exportfs.c
3240         total rewrite of export and unexport logic.
3241         We now:
3242         -  build an exportslist of valid exports, based on
3243            current etab file  and arguments,
3244         -  read rmtab to instantiate relevant wild card entries
3245         -  read etab to find out what is currently exported
3246         -  synchronise intention with reality
3247         -  write out etab and xtab
3249 13/  various
3250         discard the m_addxtab flag
3251         add m_changed flag so we know what to report in exportfs
3253 14/ utils/mountd/auth.c:auth_authenticate
3255         the value returned by gethostbyaddr was trusted.
3257         It now follows this with a call to gethostbyname
3258         and checks that the address is in the list.
3260 15/ support/export/nfsctl.c::cltsetup,expsetup
3262         force client names to lowercase as kernel is
3263         sensitive to case
3265 16/ quietened a few compiler warnings
3267 17/ support/export/client:client_lookup
3269      look for pre-existing client with same name before creating
3270         a new one.
3272 18/ support/include/exportfs.h
3274      The ordering of the MCL_* enum was:
3275         ANONYMOUS, FQDN, SUBNETWORK, WILDCARD, NETGROUP
3277      I moved ANONYMOUS to the end.
3279      The ordering is significant when an export entry is being searched for to 
3280         match a given address.  There are two problems with ANONYMOUS being first.
3282         1/ if a directory is exported rw to a couple of hosts and ro to everyone else,
3283            then the ro case will always be found first and the privileged hosts won't get
3284            their privilege
3285         2/ When mountd gets a request to mount an ANONYMOUSly exported tree, it creates a FQDN
3286            export entry for the specific host, and writes it to xtab.
3287            When another request comes from the same host, the ANONYMOUS entry is found again, 
3288            before the new FQDN entry, so it creates another FQDN entry and writes it to xtab
3289            again.  If causes bloat in xtab.
3291       Putting ANONYMOUS at the end reflects it's nature as a catch-all
3293 19/ utils/exportfs/exportfs.man
3294         many updates to the man page to reflect changes to the code
3296 -----------------------
3300 TODO:
3302 - allow exportfs to modify rmtab file
3303 - make sure kernel never gets two clients with same IP address
3304     - possible kernel should reject
3305     - needs to be some way to lookup client in kernel by IP address
3306 - maybe get kernel to do case-insensitive comparisons on client names
3307 - remove unused clients from kernel
3309 - change etab to xtab and xtab to xtab.active
3311 - timestamp and/or statd-stamp in rmtab for removing old entries.
3313 Mon Oct 18 11:48:07 1999  H.J. Lu <hjl@lucon.org>
3315         * linux-nfs: New directory.
3316         * linux-nfs/ChangeLog: Moved from ..
3317         * linux-nfs/INSTALL: Likewise.
3318         * linux-nfs/KNOWNBUGS: Likewise.
3319         * linux-nfs/NEW: Likewise.
3320         * linux-nfs/README: Likewise.
3321         * linux-nfs/THANKS: Likewise.
3322         * linux-nfs/TODO: Likewise.
3324         * Starting from knfsd 1.4.7.