1 2000-07-04 Neil Brown <neilb@cse.unsw.edu.au>
3 * support/export/hostname.c (hostent_dup): Handle the NULL
6 2000-07-03 H.J. Lu <hjl@lucon.org>
8 * README: Update the util-linux requirement.
10 2000-07-03 H.J. Lu <hjl@lucon.org>
12 * configure.in (VERSION): Set to "0.1.9".
13 * configure: Regenerated.
14 * nfs-utils.spec: Updated.
18 2000-07-03 H.J. Lu <hjl@lucon.org>
20 * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
21 stop to ensure all clients can still access the server
22 before it is shutdown.
24 2000-06-30 Jeff Uphoff <juphoff@transmeta.com>
26 * tools/rpcgen/rpc_svcout.c (write_msg_out): Generate syslog()
27 calls with format string.
29 2000-06-28 Chip Salzenberg <chip@valinux.com>
31 * utils/statd/log.c (log): Call syslog with format string.
33 2000-06-27 H.J. Lu <hjl@lucon.org>
35 * utils/statd/statd.c (main): Use sysconf (_SC_OPEN_MAX)
38 2000-06-27 H.J. Lu <hjl@lucon.org>
42 2000-06-27 H.J. Lu <hjl@lucon.org>
44 * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
45 startup to ensure all existing clients are exported.
47 * configure.in (VERSION): Set to "0.1.8.2".
48 * configure: Regenerated.
49 * nfs-utils.spec: Updated.
51 2000-06-06 H.J. Lu <hjl@lucon.org>
53 * configure.in (VERSION): Set to "0.1.8.1".
54 * configure: Regenerated.
55 * nfs-utils.spec: Updated.
57 2000-06-06 H.J. Lu <hjl@lucon.org>
59 * utils/mountd/mountd.c (mount_dump_1_svc): Cast svc_getcaller
60 to "struct sockaddr_in *" for glibc 2.2.
61 (mount_umnt_1_svc): Likewise.
62 (mount_umntall_1_svc): Likewise.
63 (mount_export_1_svc): Likewise.
64 (mount_exportall_1_svc): Likewise.
65 (mount_pathconf_2_svc): Likewise.
66 (get_rootfh): Likewise.
68 2000-06-04 H.J. Lu <hjl@lucon.org>
70 * etc/redhat/nfs.init: Fix a typo in comment.
72 2000-05-31 H.J. Lu <hjl@lucon.org>
74 * configure.in (VERSION): Set to "0.1.8".
75 * configure: Regenerated.
76 * nfs-utils.spec: Updated.
80 2000-05-31 H.J. Lu <hjl@lucon.org>
82 * configure.in (VERSION): Set to "0.1.7.5".
83 * configure: Regenerated.
84 * nfs-utils.spec: Updated.
86 * support/include/nfslib.h (exportent): Add a new field,
87 r_count, to count the number of mounts from a client.
88 (getrmtabent): Take a new argument for position in file.
89 (putrmtabent): Likewise.
90 (fgetrmtabent): Likewise.
91 (fputrmtabent): Likewise.
92 * support/nfs/rmtab.c (getrmtabent): Handle the new argument
94 (fgetrmtabent): Likewise.
95 (putrmtabent): Likewise.
96 (fputrmtabent): Likewise.
98 * support/nfs/rmtab.c (fgetrmtabent): Get value for the new
101 * support/export/rmtab.c (rmtab_read): Pass NULL as the new
102 argument to getrmtabent (), fgetrmtabent (), putrmtabent ()
104 * utils/mountd/rmtab.c (mountlist_add): Likewise.
105 (mountlist_del): Likewise.
106 (mountlist_del_all): Likewise.
107 (mountlist_list): Likewise.
109 * utils/mountd/rmtab.c (mountlist_add): Increment "r_count"
110 for the existing entry and initialize "r_count" to 1.
111 (mountlist_del): Decrement "r_count".
113 2000-05-18 H.J. Lu <hjl@lucon.org>
115 * configure.in (VERSION): Set to "0.1.7.4".
116 * configure: Regenerated.
117 * nfs-utils.spec: Updated.
119 2000-05-18 H.J. Lu <hjl@lucon.org>
121 * etc/redhat/nfs.init (restart): Just do stop and start.
123 2000-05-09 Jay Weber <jweber@valinux.com>
125 * utils/rquotad/hasquota.c: added support for ext3 recognition
127 * utils/rquotad/mntent.h: Likewise.
129 2000-05-01 H.J. Lu <hjl@lucon.org>
131 * configure.in (VERSION): Set to "0.1.7.3".
132 * configure: Regenerated.
133 * nfs-utils.spec: Updated.
135 2000-05-01 H.J. Lu <hjl@lucon.org>
137 * utils/rquotad/rquota_server.c (getquotainfo): Skip bad
138 mounting poins in /etc/fstab.
140 2000-05-01 H.J. Lu <hjl@lucon.org>
142 * configure.in (VERSION): Set to "0.1.7.2".
143 * configure: Regenerated.
144 * nfs-utils.spec: Updated.
146 2000-05-01 H.J. Lu <hjl@lucon.org>
148 * utils/rquotad/rquota_server.c (getquotainfo): Call stat ()
149 to check for the mounting point.
151 2000-04-29 Chip Salzenberg <chip@valinux.com>
152 Neil Brown <neilb@cse.unsw.edu.au>
154 * Really re-use RPC ports.
155 (Fixes earlier patch. Sorry, Neil.)
157 2000-04-26 H.J. Lu <hjl@lucon.org>
159 * configure.in (VERSION): Set to "0.1.7.1".
160 * configure: Regenerated.
161 * nfs-utils.spec: Updated.
163 2000-04-26 H.J. Lu <hjl@lucon.org>
165 * etc/redhat/nfslock.init: Check if lockd exits before killing
168 2000-04-25 H.J. Lu <hjl@lucon.org>
170 * README: Require util-linux-2.10f-mount-rpc.patch for mount.
172 2000-03-21 Michael Weiser <michael@weiser.saale-net.de>
174 * support/nfs/exports.c (parsesquash): Correctly set the
177 Tue Mar 21 11:38:48 EST 2000 NeilBrown <neilb@cse.unsw.edu.au>
179 * support/include/nfs/nfs.h: Removed knowledge of internals of
180 kernel filehandles (which can change) and defined nfs_fh_size
181 which has variable size
183 * support/nfs/getfh.c: defined getfh_size to use new syscall to
184 get variable sized file handles, and change getfh{,old} to
187 * utils/mountd/mountd.c: use nfd_fh_size and call getfh_size for
190 * tools/Makefile, tools/nlmtest/nlmtest.c
191 nlmtest.c depended on internel format of file handles, so now
195 2000-03-12 Chip Salzenberg <chip@valinux.com>
196 Neil Brown <neilb@cse.unsw.edu.au>
198 * support/nfs/rpcmisc.c (rpc_init): Share transports.
200 2000-03-13 H.J. Lu <hjl@lucon.org>
202 * etc/redhat/nfsd.init: Updated.
204 * etc/redhat/nfslock.init: Updated.
206 * nfs-utils.spec.in: Updated.
208 * configure.in (VERSION): Set to "0.1.7".
209 * configure: Regenerated.
210 * nfs-utils.spec: Updated.
214 Wed Mar 8 09:42:43 2000 Neil Brown <neilb@cse.unsw.edu.au>
216 * utils/exportfs/exportfs.c (dump): Included printing of
217 nohide, no_subtree_check, and insecure_locks
219 2000-02-26 Chip Salzenberg <chip@valinux.com>
221 * config.mk.in (INSTALLSUID): Strip ("-s").
222 (INSTALLSCRIPT): Define.
223 * utils/nhfsstone/Makefile: Use it.
225 2000-02-26 Chip Salzenberg <chip@valinux.com>
227 * utils/lockd/lockd.man: Create.
228 * utils/lockd/Makefile: Install it.
229 * utils/nhfsstone/nhfs{run,nums,graph}.man: Create.
230 * utils/nhfsstone/nhfsstone.man: Change suffix from ".1".
231 * utils/nhfsstone/Makefile: Install the helper scripts and
233 * utils/exportfs/exports.man: Fix typo.
235 2000-02-26 Chip Salzenberg <chip@valinux.com>
237 * support/nfs/xio.c (xungetc): Decrement line number when
238 character to unget is newline. Make first parameter int, so
239 it can distinguish EOF from \377.
240 * support/include/xio.h (xungetc): Adjust prototype.
242 Fri Feb 4 23:42:23 2000 Neil Brown <neilb@cse.unsw.edu.au>
244 * support/include/nfs/export.h: added NFSEXP_NOAUTHNLM
245 * support/nfs/exports.c: added handling for NFSEXP_NOAUTHNLM
246 * utils/exportfs/exports.man: added documentation for no_auth_nlm.
248 This is for supporting a new option introduced in 2.3.42
250 Thu Feb 3 14:55:48 2000 H.J. Lu <hjl@lucon.org>
252 * COPYING: Added. GPL.
254 Thu Feb 03 14:40:40 2000 Cristian Gafton <gafton@redhat.com>
256 * utils/rquotad/rquota_server.c (getquotainfo): Call statfs ()
257 to get the block size.
259 Tue Jan 25 11:04:17 2000 H.J. Lu <hjl@lucon.org>
261 * nfs-utils.spec.in: Update ftp site.
263 Mon Jan 17 11:48:18 2000 H.J. Lu <hjl@lucon.org>
265 * README: Update hostnames.
267 Tue Jan 11 10:06:22 2000 H.J. Lu <hjl@lucon.org>
269 * configure.in (VERSION): Set to "0.1.6".
270 * configure: Regenerated.
271 * nfs-utils.spec: Updated.
275 Mon Jan 10 14:26:33 2000 H.J. Lu <hjl@lucon.org>
277 * utils/mountd/auth.c (auth_authenticate_internal): Call
278 xstrdup for hostname before passing it to gethostbyname.
280 * utils/mountd/mountd.c (get_exportlist): Use xstrdup instead
283 Sun Dec 19 09:35:01 1999 H.J. Lu <hjl@lucon.org>
285 * README: Update the mailing list address.
287 Sun Dec 19 09:22:28 1999 H.J. Lu <hjl@lucon.org>
289 * configure.in (VERSION): Set to "0.1.5".
290 * configure: Regenerated.
291 * nfs-utils.spec: Updated.
295 Mon Dec 13 13:40:20 1999 H.J. Lu <hjl@lucon.org>
297 * utils/rquotad/hasquota.c (hasquota): Malloc one more char
300 Mon Dec 6 09:42:45 1999 H.J. Lu <hjl@lucon.org>
302 * configure.in (VERSION): Set to "0.1.4".
303 * configure: Regenerated.
304 * nfs-utils.spec: Updated.
308 Mon Dec 6 09:28:07 1999 H.J. Lu <hjl@lucon.org>
310 * nfs-utils.spec.in: New file.
312 * config.mk.in (VERSION): Changed to "nfs-utils @VERSION@".
314 * configure.in (nfs-utils.spec): Added to AC_OUTPUT.
316 1999-12-04 Chip Salzenberg <chip@valinux.com>
318 * config.mk.in: Use $(CC) as set by configure.
320 1999-12-04 Chip Salzenberg <chip@valinux.com>
322 * rules.mk: Call $(MAKE) with $(MFLAGS).
324 Mon Nov 29 11:17:35 1999 H.J. Lu <hjl@lucon.org>
326 * tools/rpcgen/rpc_main.c (h_output): Generate IXDR_GET_INT32,
327 IXDR_PUT_INT32, IXDR_GET_U_INT32 and IXDR_PUT_U_INT32.
329 Mon Nov 29 11:17:35 1999 H.J. Lu <hjl@lucon.org>
331 * nfs-utils.spec (Version): Set to 0.1.3.
333 * configure.in (VERSION): Set to "nfs-utils 0.1.3".
334 * configure: Regenerated.
338 Mon Nov 29 11:15:47 1999 H.J. Lu <hjl@lucon.org>
340 * utils/rquotad/rquota_server.c (nfsmount_to_devname): Removed.
341 (_PATH_DEV_DSK): Likewise.
342 (getquotainfo): Match the mounting point from /etc/mtab
343 instead of calling nfsmount_to_devname ().
345 1999-11-24 Chip Salzenberg <chip@valinux.com>
347 * utils/statd/monitor.c (sm_mon_1_svc): Accept lockd callbacks
348 to the new port 24 as well as the historical port 100021.
350 Tue Nov 23 10:21:34 1999 Neil Brown <neilb@cse.unsw.edu.au>
352 * etc/redhat/nfsd.init (stop): moved exportfs -ua after
353 stopping nfsd to stop spurious ESTALE on server shutdown.
355 Tue Nov 23 10:13:39 1999 Neil Brown <neilb@cse.unsw.edu.au>
357 * support/nfs/exports.c (parseopts): make copy of opt string
358 before 'nul'ing out commas so that
360 # exportfs -o option1,option2 hosta:/fs hostb:/fs
362 applies both options to both exports.
364 Thu Oct 28 12:55:42 1999 H.J. Lu <hjl@lucon.org>
366 * README: Fix a few typos.
368 * tools/rpcgen/rpc_cout.c (print_header): Use int32_t instead
370 * tools/rpcgen/rpc_hout.c (pdefine): Likewise.
371 * tools/rpcgen/rpc_main.c (c_initialize): Likewise.
372 * tools/rpcgen/rpc_parse.c (get_type): Likewise.
373 (unsigned_dec): Likewise.
374 * tools/rpcgen/rpc_scan.c (symbols): Likewise.
375 * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
377 * tools/rpcgen/rpc_cout.c (emit_single_in_line): Use INT32
379 * tools/rpcgen/rpc_parse.c (get_type): Likewise.
380 (unsigned_dec): Likewise.
381 * tools/rpcgen/rpc_scan.c (symbols): Likewise.
382 * tools/rpcgen/rpc_scan.h (tok_kind): Likewise.
383 * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
385 Thu Oct 28 11:27:51 1999 Neil Brown <neilb@cse.unsw.edu.au>
387 * support/include/nfs/export.h addedd NFSEXP_NOSUBTREECHECK
388 * support/nfs/exports.c: added {no_,}subtree_check and changed
390 * utils/exportfs/exports.man: added no_subtree_check and nohide
391 and removed irrelevant stuff from unfsd.
392 * support/export/rmtab.c: rmtab_read didn't quite do the right
393 thing if a pathname from rmtab was a subdirectory of an export-point
395 Tue Oct 26 17:22:40 1999 H.J. Lu <hjl@lucon.org>
397 * README: Updated ftp site.
399 Mon Oct 25 18:12:45 1999 H.J. Lu <hjl@lucon.org>
401 * nfs-utils.spec (Version): Set to 0.1.2.
403 * configure.in (VERSION): Set to "nfs-utils 0.1.2".
404 * configure: Regenerated.
408 Mon Oct 25 18:11:21 1999 H.J. Lu <hjl@lucon.org>
410 * utils/mountd/auth.c (auth_error): Add "no_forward_dns".
411 (auth_authenticate_internal): Check for NULL return on forward
413 (auth_authenticate): Handle "no_forward_dns".
415 Thu Oct 21 16:22:06 1999 H.J. Lu <hjl@lucon.org>
417 * Version 0.1.1 released.
419 * nfs-utils.spec (Version): Set to 0.1.1.
421 * configure.in (VERSION): Set to "nfs-utils 0.1.1".
422 * configure: Regenerated.
426 Mon Oct 18 17:43:29 1999 H.J. Lu <hjl@lucon.org>
428 * nfs-utils.spec (Obsoletes): Fixed a typo, change knfsd-client
430 (Provides): Likewise.
432 Mon Oct 18 14:56:22 1999 H.J. Lu <hjl@lucon.org>
434 * Initial version 0.1 released.
436 * configure.in (VERSION): Set to "nfs-utils 0.1".
437 * configure: Regenerated.
439 Mon Oct 18 14:54:57 1999 H.J. Lu <hjl@lucon.org>
441 * utils/mountd/mountd.c (get_exportlist): Cleanup.
443 * utils/exportfs/exportfs.c (unexport_all): Unexport from
444 kernel only if the entry is exported to kernel.
445 (unexportfs): Likewise.
447 Wed Sep 08 16:49:32 1999 Neil Brown <neilb@cse.unsw.edu.au>
449 1/ utils/mountd/rmtab.c::mountlist_list
451 This routine stats the rmtab file to see if it has changed. It
452 if has, it cleans up it's old copy of the data. But it still
453 always re-read the file, thus returning multiple copies of the
454 data on consecutive calls without intervening changes.
455 "Showmount -a" didn't show this as it appears to sort/unique the
456 data, but 'strace showmount -a' showed that the size of the
457 datagram that it received grew.
459 I moved the getrmtabent loop inside the mtime test.
461 2/ utils/exportfs/exportfs.c
463 Many routines used the m_path field of m_export instead of
465 According to the comment in nfslib.h, m_path should only
466 be used when processing a mount request (i.e. in mountd)
467 where the mountpoint may be a subdirectory of the export point.
469 I changed all occurances of m_path to e_path
472 3/ utils/exportfs/exportfs.c:main
474 extra arguments are not meaningful with -a or -r, but
475 exportfs accepted them and then ignored the -a/-r, expect that
476 -r would still unexport everything first.
478 I generate an error if there are extra args and f_all
480 4/ utils/exportfs/exportfs.c:main
481 extract dump out as a special case.
483 5/ utils/exportfs/exportfs.c
484 made f_reexport a local variable.
487 6/ utils/exportfs/exportfs.c:main,exportall
489 support/export/rmtab.c
490 only mayexport on newly created entries, don't set xtabent at all
492 7/ support/include/nfslib.h
494 add #define _PATH_PROC_EXPORTS to be /proc/fs/nds/exports
496 8/ support/export/xtab.c
498 xtab_mount_read loads data from _PATH_PROC_EXPORTS if it exists,
502 9/ support/export/xtab.c
504 xtab_mount_read now sets m_exported, and NOT
505 xtabent and mayexport
507 removed the append arguement from xtab_write as it was
510 added is_export flag to xtab_write similar to xtab_read
511 if is_export, only write entries with m_xtabent or m_addxtab
512 if !is_export, only write entries with m_exported
514 10/ support/export/export.c::export_allowed_internal
516 added test for exp->m_mayexport, as the export tree
517 may have entries that are no longer allowed to be exported,
518 and so shouldn't caused deduced exported by rmtab_read
520 11/ utils/exportfs/exportfs.c::main
521 error checking of flags.
523 12/ utils/exportfs/exportfs.c
525 total rewrite of export and unexport logic.
527 - build an exportslist of valid exports, based on
528 current etab file and arguments,
529 - read rmtab to instantiate relevant wild card entries
530 - read etab to find out what is currently exported
531 - synchronise intention with reality
532 - write out etab and xtab
535 discard the m_addxtab flag
536 add m_changed flag so we know what to report in exportfs
538 14/ utils/mountd/auth.c:auth_authenticate
540 the value returned by gethostbyaddr was trusted.
542 It now follows this with a call to gethostbyname
543 and checks that the address is in the list.
545 15/ support/export/nfsctl.c::cltsetup,expsetup
547 force client names to lowercase as kernel is
550 16/ quietened a few compiler warnings
552 17/ support/export/client:client_lookup
554 look for pre-existing client with same name before creating
557 18/ support/include/exportfs.h
559 The ordering of the MCL_* enum was:
560 ANONYMOUS, FQDN, SUBNETWORK, WILDCARD, NETGROUP
562 I moved ANONYMOUS to the end.
564 The ordering is significant when an export entry is being searched for to
565 match a given address. There are two problems with ANONYMOUS being first.
567 1/ if a directory is exported rw to a couple of hosts and ro to everyone else,
568 then the ro case will always be found first and the privileged hosts won't get
570 2/ When mountd gets a request to mount an ANONYMOUSly exported tree, it creates a FQDN
571 export entry for the specific host, and writes it to xtab.
572 When another request comes from the same host, the ANONYMOUS entry is found again,
573 before the new FQDN entry, so it creates another FQDN entry and writes it to xtab
574 again. If causes bloat in xtab.
576 Putting ANONYMOUS at the end reflects it's nature as a catch-all
578 19/ utils/exportfs/exportfs.man
579 many updates to the man page to reflect changes to the code
581 -----------------------
587 - allow exportfs to modify rmtab file
588 - make sure kernel never gets two clients with same IP address
589 - possible kernel should reject
590 - needs to be some way to lookup client in kernel by IP address
591 - maybe get kernel to do case-insensitive comparisons on client names
592 - remove unused clients from kernel
594 - change etab to xtab and xtab to xtab.active
596 - timestamp and/or statd-stamp in rmtab for removing old entries.
598 Mon Oct 18 11:48:07 1999 H.J. Lu <hjl@lucon.org>
600 * linux-nfs: New directory.
601 * linux-nfs/ChangeLog: Moved from ..
602 * linux-nfs/INSTALL: Likewise.
603 * linux-nfs/KNOWNBUGS: Likewise.
604 * linux-nfs/NEW: Likewise.
605 * linux-nfs/README: Likewise.
606 * linux-nfs/THANKS: Likewise.
607 * linux-nfs/TODO: Likewise.
609 * Starting from knfsd 1.4.7.