1 2000-08-09 H.J. Lu <hjl@lucon.org>
3 * etc/redhat/nfs.init: Run /usr/sbin/exportfs first during
4 startup to ensure all existing clients work fine.
6 * support/export/xtab.c (xtab_mount_read): Pass 1 instead of 0
7 to xtab_read () for reading _PATH_XTAB.
9 2000-08-02 H.J. Lu <hjl@lucon.org>
11 * utils/mountd/auth.c (auth_authenticate_internal): Try to
12 avoid the reverse name lookup.
14 2000-07-04 H.J. Lu <hjl@lucon.org>
16 * utils/statd/log.c: Include <stdlib.h> for exit ().
18 * utils/statd/misc.c (xunlink): Add `{' and `}' to quiet the
21 2000-07-04 H.J. Lu <hjl@lucon.org>
23 * configure.in (VERSION): Set to "0.1.9.1".
24 * configure: Regenerated.
25 * nfs-utils.spec: Updated.
29 2000-07-04 Neil Brown <neilb@cse.unsw.edu.au>
31 * support/export/hostname.c (hostent_dup): Handle the NULL
34 2000-07-03 H.J. Lu <hjl@lucon.org>
36 * README: Update the util-linux requirement.
38 2000-07-03 H.J. Lu <hjl@lucon.org>
40 * configure.in (VERSION): Set to "0.1.9".
41 * configure: Regenerated.
42 * nfs-utils.spec: Updated.
46 2000-07-03 H.J. Lu <hjl@lucon.org>
48 * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
49 stop to ensure all clients can still access the server
50 before it is shutdown.
52 2000-06-30 Jeff Uphoff <juphoff@transmeta.com>
54 * tools/rpcgen/rpc_svcout.c (write_msg_out): Generate syslog()
55 calls with format string.
57 2000-06-28 Chip Salzenberg <chip@valinux.com>
59 * utils/statd/log.c (log): Call syslog with format string.
61 2000-06-27 H.J. Lu <hjl@lucon.org>
63 * utils/statd/statd.c (main): Use sysconf (_SC_OPEN_MAX)
66 2000-06-27 H.J. Lu <hjl@lucon.org>
70 2000-06-27 H.J. Lu <hjl@lucon.org>
72 * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
73 startup to ensure all existing clients are exported.
75 * configure.in (VERSION): Set to "0.1.8.2".
76 * configure: Regenerated.
77 * nfs-utils.spec: Updated.
79 2000-06-06 H.J. Lu <hjl@lucon.org>
81 * configure.in (VERSION): Set to "0.1.8.1".
82 * configure: Regenerated.
83 * nfs-utils.spec: Updated.
85 2000-06-06 H.J. Lu <hjl@lucon.org>
87 * utils/mountd/mountd.c (mount_dump_1_svc): Cast svc_getcaller
88 to "struct sockaddr_in *" for glibc 2.2.
89 (mount_umnt_1_svc): Likewise.
90 (mount_umntall_1_svc): Likewise.
91 (mount_export_1_svc): Likewise.
92 (mount_exportall_1_svc): Likewise.
93 (mount_pathconf_2_svc): Likewise.
94 (get_rootfh): Likewise.
96 2000-06-04 H.J. Lu <hjl@lucon.org>
98 * etc/redhat/nfs.init: Fix a typo in comment.
100 2000-05-31 H.J. Lu <hjl@lucon.org>
102 * configure.in (VERSION): Set to "0.1.8".
103 * configure: Regenerated.
104 * nfs-utils.spec: Updated.
108 2000-05-31 H.J. Lu <hjl@lucon.org>
110 * configure.in (VERSION): Set to "0.1.7.5".
111 * configure: Regenerated.
112 * nfs-utils.spec: Updated.
114 * support/include/nfslib.h (exportent): Add a new field,
115 r_count, to count the number of mounts from a client.
116 (getrmtabent): Take a new argument for position in file.
117 (putrmtabent): Likewise.
118 (fgetrmtabent): Likewise.
119 (fputrmtabent): Likewise.
120 * support/nfs/rmtab.c (getrmtabent): Handle the new argument
121 for position in file.
122 (fgetrmtabent): Likewise.
123 (putrmtabent): Likewise.
124 (fputrmtabent): Likewise.
126 * support/nfs/rmtab.c (fgetrmtabent): Get value for the new
129 * support/export/rmtab.c (rmtab_read): Pass NULL as the new
130 argument to getrmtabent (), fgetrmtabent (), putrmtabent ()
132 * utils/mountd/rmtab.c (mountlist_add): Likewise.
133 (mountlist_del): Likewise.
134 (mountlist_del_all): Likewise.
135 (mountlist_list): Likewise.
137 * utils/mountd/rmtab.c (mountlist_add): Increment "r_count"
138 for the existing entry and initialize "r_count" to 1.
139 (mountlist_del): Decrement "r_count".
141 2000-05-18 H.J. Lu <hjl@lucon.org>
143 * configure.in (VERSION): Set to "0.1.7.4".
144 * configure: Regenerated.
145 * nfs-utils.spec: Updated.
147 2000-05-18 H.J. Lu <hjl@lucon.org>
149 * etc/redhat/nfs.init (restart): Just do stop and start.
151 2000-05-09 Jay Weber <jweber@valinux.com>
153 * utils/rquotad/hasquota.c: added support for ext3 recognition
155 * utils/rquotad/mntent.h: Likewise.
157 2000-05-01 H.J. Lu <hjl@lucon.org>
159 * configure.in (VERSION): Set to "0.1.7.3".
160 * configure: Regenerated.
161 * nfs-utils.spec: Updated.
163 2000-05-01 H.J. Lu <hjl@lucon.org>
165 * utils/rquotad/rquota_server.c (getquotainfo): Skip bad
166 mounting poins in /etc/fstab.
168 2000-05-01 H.J. Lu <hjl@lucon.org>
170 * configure.in (VERSION): Set to "0.1.7.2".
171 * configure: Regenerated.
172 * nfs-utils.spec: Updated.
174 2000-05-01 H.J. Lu <hjl@lucon.org>
176 * utils/rquotad/rquota_server.c (getquotainfo): Call stat ()
177 to check for the mounting point.
179 2000-04-29 Chip Salzenberg <chip@valinux.com>
180 Neil Brown <neilb@cse.unsw.edu.au>
182 * Really re-use RPC ports.
183 (Fixes earlier patch. Sorry, Neil.)
185 2000-04-26 H.J. Lu <hjl@lucon.org>
187 * configure.in (VERSION): Set to "0.1.7.1".
188 * configure: Regenerated.
189 * nfs-utils.spec: Updated.
191 2000-04-26 H.J. Lu <hjl@lucon.org>
193 * etc/redhat/nfslock.init: Check if lockd exits before killing
196 2000-04-25 H.J. Lu <hjl@lucon.org>
198 * README: Require util-linux-2.10f-mount-rpc.patch for mount.
200 2000-03-21 Michael Weiser <michael@weiser.saale-net.de>
202 * support/nfs/exports.c (parsesquash): Correctly set the
205 Tue Mar 21 11:38:48 EST 2000 NeilBrown <neilb@cse.unsw.edu.au>
207 * support/include/nfs/nfs.h: Removed knowledge of internals of
208 kernel filehandles (which can change) and defined nfs_fh_size
209 which has variable size
211 * support/nfs/getfh.c: defined getfh_size to use new syscall to
212 get variable sized file handles, and change getfh{,old} to
215 * utils/mountd/mountd.c: use nfd_fh_size and call getfh_size for
218 * tools/Makefile, tools/nlmtest/nlmtest.c
219 nlmtest.c depended on internel format of file handles, so now
223 2000-03-12 Chip Salzenberg <chip@valinux.com>
224 Neil Brown <neilb@cse.unsw.edu.au>
226 * support/nfs/rpcmisc.c (rpc_init): Share transports.
228 2000-03-13 H.J. Lu <hjl@lucon.org>
230 * etc/redhat/nfsd.init: Updated.
232 * etc/redhat/nfslock.init: Updated.
234 * nfs-utils.spec.in: Updated.
236 * configure.in (VERSION): Set to "0.1.7".
237 * configure: Regenerated.
238 * nfs-utils.spec: Updated.
242 Wed Mar 8 09:42:43 2000 Neil Brown <neilb@cse.unsw.edu.au>
244 * utils/exportfs/exportfs.c (dump): Included printing of
245 nohide, no_subtree_check, and insecure_locks
247 2000-02-26 Chip Salzenberg <chip@valinux.com>
249 * config.mk.in (INSTALLSUID): Strip ("-s").
250 (INSTALLSCRIPT): Define.
251 * utils/nhfsstone/Makefile: Use it.
253 2000-02-26 Chip Salzenberg <chip@valinux.com>
255 * utils/lockd/lockd.man: Create.
256 * utils/lockd/Makefile: Install it.
257 * utils/nhfsstone/nhfs{run,nums,graph}.man: Create.
258 * utils/nhfsstone/nhfsstone.man: Change suffix from ".1".
259 * utils/nhfsstone/Makefile: Install the helper scripts and
261 * utils/exportfs/exports.man: Fix typo.
263 2000-02-26 Chip Salzenberg <chip@valinux.com>
265 * support/nfs/xio.c (xungetc): Decrement line number when
266 character to unget is newline. Make first parameter int, so
267 it can distinguish EOF from \377.
268 * support/include/xio.h (xungetc): Adjust prototype.
270 Fri Feb 4 23:42:23 2000 Neil Brown <neilb@cse.unsw.edu.au>
272 * support/include/nfs/export.h: added NFSEXP_NOAUTHNLM
273 * support/nfs/exports.c: added handling for NFSEXP_NOAUTHNLM
274 * utils/exportfs/exports.man: added documentation for no_auth_nlm.
276 This is for supporting a new option introduced in 2.3.42
278 Thu Feb 3 14:55:48 2000 H.J. Lu <hjl@lucon.org>
280 * COPYING: Added. GPL.
282 Thu Feb 03 14:40:40 2000 Cristian Gafton <gafton@redhat.com>
284 * utils/rquotad/rquota_server.c (getquotainfo): Call statfs ()
285 to get the block size.
287 Tue Jan 25 11:04:17 2000 H.J. Lu <hjl@lucon.org>
289 * nfs-utils.spec.in: Update ftp site.
291 Mon Jan 17 11:48:18 2000 H.J. Lu <hjl@lucon.org>
293 * README: Update hostnames.
295 Tue Jan 11 10:06:22 2000 H.J. Lu <hjl@lucon.org>
297 * configure.in (VERSION): Set to "0.1.6".
298 * configure: Regenerated.
299 * nfs-utils.spec: Updated.
303 Mon Jan 10 14:26:33 2000 H.J. Lu <hjl@lucon.org>
305 * utils/mountd/auth.c (auth_authenticate_internal): Call
306 xstrdup for hostname before passing it to gethostbyname.
308 * utils/mountd/mountd.c (get_exportlist): Use xstrdup instead
311 Sun Dec 19 09:35:01 1999 H.J. Lu <hjl@lucon.org>
313 * README: Update the mailing list address.
315 Sun Dec 19 09:22:28 1999 H.J. Lu <hjl@lucon.org>
317 * configure.in (VERSION): Set to "0.1.5".
318 * configure: Regenerated.
319 * nfs-utils.spec: Updated.
323 Mon Dec 13 13:40:20 1999 H.J. Lu <hjl@lucon.org>
325 * utils/rquotad/hasquota.c (hasquota): Malloc one more char
328 Mon Dec 6 09:42:45 1999 H.J. Lu <hjl@lucon.org>
330 * configure.in (VERSION): Set to "0.1.4".
331 * configure: Regenerated.
332 * nfs-utils.spec: Updated.
336 Mon Dec 6 09:28:07 1999 H.J. Lu <hjl@lucon.org>
338 * nfs-utils.spec.in: New file.
340 * config.mk.in (VERSION): Changed to "nfs-utils @VERSION@".
342 * configure.in (nfs-utils.spec): Added to AC_OUTPUT.
344 1999-12-04 Chip Salzenberg <chip@valinux.com>
346 * config.mk.in: Use $(CC) as set by configure.
348 1999-12-04 Chip Salzenberg <chip@valinux.com>
350 * rules.mk: Call $(MAKE) with $(MFLAGS).
352 Mon Nov 29 11:17:35 1999 H.J. Lu <hjl@lucon.org>
354 * tools/rpcgen/rpc_main.c (h_output): Generate IXDR_GET_INT32,
355 IXDR_PUT_INT32, IXDR_GET_U_INT32 and IXDR_PUT_U_INT32.
357 Mon Nov 29 11:17:35 1999 H.J. Lu <hjl@lucon.org>
359 * nfs-utils.spec (Version): Set to 0.1.3.
361 * configure.in (VERSION): Set to "nfs-utils 0.1.3".
362 * configure: Regenerated.
366 Mon Nov 29 11:15:47 1999 H.J. Lu <hjl@lucon.org>
368 * utils/rquotad/rquota_server.c (nfsmount_to_devname): Removed.
369 (_PATH_DEV_DSK): Likewise.
370 (getquotainfo): Match the mounting point from /etc/mtab
371 instead of calling nfsmount_to_devname ().
373 1999-11-24 Chip Salzenberg <chip@valinux.com>
375 * utils/statd/monitor.c (sm_mon_1_svc): Accept lockd callbacks
376 to the new port 24 as well as the historical port 100021.
378 Tue Nov 23 10:21:34 1999 Neil Brown <neilb@cse.unsw.edu.au>
380 * etc/redhat/nfsd.init (stop): moved exportfs -ua after
381 stopping nfsd to stop spurious ESTALE on server shutdown.
383 Tue Nov 23 10:13:39 1999 Neil Brown <neilb@cse.unsw.edu.au>
385 * support/nfs/exports.c (parseopts): make copy of opt string
386 before 'nul'ing out commas so that
388 # exportfs -o option1,option2 hosta:/fs hostb:/fs
390 applies both options to both exports.
392 Thu Oct 28 12:55:42 1999 H.J. Lu <hjl@lucon.org>
394 * README: Fix a few typos.
396 * tools/rpcgen/rpc_cout.c (print_header): Use int32_t instead
398 * tools/rpcgen/rpc_hout.c (pdefine): Likewise.
399 * tools/rpcgen/rpc_main.c (c_initialize): Likewise.
400 * tools/rpcgen/rpc_parse.c (get_type): Likewise.
401 (unsigned_dec): Likewise.
402 * tools/rpcgen/rpc_scan.c (symbols): Likewise.
403 * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
405 * tools/rpcgen/rpc_cout.c (emit_single_in_line): Use INT32
407 * tools/rpcgen/rpc_parse.c (get_type): Likewise.
408 (unsigned_dec): Likewise.
409 * tools/rpcgen/rpc_scan.c (symbols): Likewise.
410 * tools/rpcgen/rpc_scan.h (tok_kind): Likewise.
411 * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
413 Thu Oct 28 11:27:51 1999 Neil Brown <neilb@cse.unsw.edu.au>
415 * support/include/nfs/export.h addedd NFSEXP_NOSUBTREECHECK
416 * support/nfs/exports.c: added {no_,}subtree_check and changed
418 * utils/exportfs/exports.man: added no_subtree_check and nohide
419 and removed irrelevant stuff from unfsd.
420 * support/export/rmtab.c: rmtab_read didn't quite do the right
421 thing if a pathname from rmtab was a subdirectory of an export-point
423 Tue Oct 26 17:22:40 1999 H.J. Lu <hjl@lucon.org>
425 * README: Updated ftp site.
427 Mon Oct 25 18:12:45 1999 H.J. Lu <hjl@lucon.org>
429 * nfs-utils.spec (Version): Set to 0.1.2.
431 * configure.in (VERSION): Set to "nfs-utils 0.1.2".
432 * configure: Regenerated.
436 Mon Oct 25 18:11:21 1999 H.J. Lu <hjl@lucon.org>
438 * utils/mountd/auth.c (auth_error): Add "no_forward_dns".
439 (auth_authenticate_internal): Check for NULL return on forward
441 (auth_authenticate): Handle "no_forward_dns".
443 Thu Oct 21 16:22:06 1999 H.J. Lu <hjl@lucon.org>
445 * Version 0.1.1 released.
447 * nfs-utils.spec (Version): Set to 0.1.1.
449 * configure.in (VERSION): Set to "nfs-utils 0.1.1".
450 * configure: Regenerated.
454 Mon Oct 18 17:43:29 1999 H.J. Lu <hjl@lucon.org>
456 * nfs-utils.spec (Obsoletes): Fixed a typo, change knfsd-client
458 (Provides): Likewise.
460 Mon Oct 18 14:56:22 1999 H.J. Lu <hjl@lucon.org>
462 * Initial version 0.1 released.
464 * configure.in (VERSION): Set to "nfs-utils 0.1".
465 * configure: Regenerated.
467 Mon Oct 18 14:54:57 1999 H.J. Lu <hjl@lucon.org>
469 * utils/mountd/mountd.c (get_exportlist): Cleanup.
471 * utils/exportfs/exportfs.c (unexport_all): Unexport from
472 kernel only if the entry is exported to kernel.
473 (unexportfs): Likewise.
475 Wed Sep 08 16:49:32 1999 Neil Brown <neilb@cse.unsw.edu.au>
477 1/ utils/mountd/rmtab.c::mountlist_list
479 This routine stats the rmtab file to see if it has changed. It
480 if has, it cleans up it's old copy of the data. But it still
481 always re-read the file, thus returning multiple copies of the
482 data on consecutive calls without intervening changes.
483 "Showmount -a" didn't show this as it appears to sort/unique the
484 data, but 'strace showmount -a' showed that the size of the
485 datagram that it received grew.
487 I moved the getrmtabent loop inside the mtime test.
489 2/ utils/exportfs/exportfs.c
491 Many routines used the m_path field of m_export instead of
493 According to the comment in nfslib.h, m_path should only
494 be used when processing a mount request (i.e. in mountd)
495 where the mountpoint may be a subdirectory of the export point.
497 I changed all occurances of m_path to e_path
500 3/ utils/exportfs/exportfs.c:main
502 extra arguments are not meaningful with -a or -r, but
503 exportfs accepted them and then ignored the -a/-r, expect that
504 -r would still unexport everything first.
506 I generate an error if there are extra args and f_all
508 4/ utils/exportfs/exportfs.c:main
509 extract dump out as a special case.
511 5/ utils/exportfs/exportfs.c
512 made f_reexport a local variable.
515 6/ utils/exportfs/exportfs.c:main,exportall
517 support/export/rmtab.c
518 only mayexport on newly created entries, don't set xtabent at all
520 7/ support/include/nfslib.h
522 add #define _PATH_PROC_EXPORTS to be /proc/fs/nds/exports
524 8/ support/export/xtab.c
526 xtab_mount_read loads data from _PATH_PROC_EXPORTS if it exists,
530 9/ support/export/xtab.c
532 xtab_mount_read now sets m_exported, and NOT
533 xtabent and mayexport
535 removed the append arguement from xtab_write as it was
538 added is_export flag to xtab_write similar to xtab_read
539 if is_export, only write entries with m_xtabent or m_addxtab
540 if !is_export, only write entries with m_exported
542 10/ support/export/export.c::export_allowed_internal
544 added test for exp->m_mayexport, as the export tree
545 may have entries that are no longer allowed to be exported,
546 and so shouldn't caused deduced exported by rmtab_read
548 11/ utils/exportfs/exportfs.c::main
549 error checking of flags.
551 12/ utils/exportfs/exportfs.c
553 total rewrite of export and unexport logic.
555 - build an exportslist of valid exports, based on
556 current etab file and arguments,
557 - read rmtab to instantiate relevant wild card entries
558 - read etab to find out what is currently exported
559 - synchronise intention with reality
560 - write out etab and xtab
563 discard the m_addxtab flag
564 add m_changed flag so we know what to report in exportfs
566 14/ utils/mountd/auth.c:auth_authenticate
568 the value returned by gethostbyaddr was trusted.
570 It now follows this with a call to gethostbyname
571 and checks that the address is in the list.
573 15/ support/export/nfsctl.c::cltsetup,expsetup
575 force client names to lowercase as kernel is
578 16/ quietened a few compiler warnings
580 17/ support/export/client:client_lookup
582 look for pre-existing client with same name before creating
585 18/ support/include/exportfs.h
587 The ordering of the MCL_* enum was:
588 ANONYMOUS, FQDN, SUBNETWORK, WILDCARD, NETGROUP
590 I moved ANONYMOUS to the end.
592 The ordering is significant when an export entry is being searched for to
593 match a given address. There are two problems with ANONYMOUS being first.
595 1/ if a directory is exported rw to a couple of hosts and ro to everyone else,
596 then the ro case will always be found first and the privileged hosts won't get
598 2/ When mountd gets a request to mount an ANONYMOUSly exported tree, it creates a FQDN
599 export entry for the specific host, and writes it to xtab.
600 When another request comes from the same host, the ANONYMOUS entry is found again,
601 before the new FQDN entry, so it creates another FQDN entry and writes it to xtab
602 again. If causes bloat in xtab.
604 Putting ANONYMOUS at the end reflects it's nature as a catch-all
606 19/ utils/exportfs/exportfs.man
607 many updates to the man page to reflect changes to the code
609 -----------------------
615 - allow exportfs to modify rmtab file
616 - make sure kernel never gets two clients with same IP address
617 - possible kernel should reject
618 - needs to be some way to lookup client in kernel by IP address
619 - maybe get kernel to do case-insensitive comparisons on client names
620 - remove unused clients from kernel
622 - change etab to xtab and xtab to xtab.active
624 - timestamp and/or statd-stamp in rmtab for removing old entries.
626 Mon Oct 18 11:48:07 1999 H.J. Lu <hjl@lucon.org>
628 * linux-nfs: New directory.
629 * linux-nfs/ChangeLog: Moved from ..
630 * linux-nfs/INSTALL: Likewise.
631 * linux-nfs/KNOWNBUGS: Likewise.
632 * linux-nfs/NEW: Likewise.
633 * linux-nfs/README: Likewise.
634 * linux-nfs/THANKS: Likewise.
635 * linux-nfs/TODO: Likewise.
637 * Starting from knfsd 1.4.7.