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