]> git.decadent.org.uk Git - nfs-utils.git/blob - ChangeLog
2000-09-27 H.J. Lu <hjl@lucon.org>
[nfs-utils.git] / ChangeLog
1 2000-09-27  H.J. Lu <hjl@lucon.org>
2
3         * nfs-utils.spec.in: Updated to use rpm macros and support
4         RedHat 7.0.
5
6 2000-09-25  H.J. Lu <hjl@lucon.org>
7
8         * configure.in (VERSION): Set to "0.2.1".
9         * configure: Regenerated.
10         * nfs-utils.spec: Updated.
11
12 2000-09-25  H.J. Lu <hjl@lucon.org>
13
14         * utils/mountd/auth.c (auth_authenticate_internal): Make sure a
15         non-NULL hostent is always returned.
16
17 2000-09-11  Ion Badulescu  <ionut@moisil.dev.hydraweb.com>
18
19         * etc/redhat/nfslock.init: don't kill lockd processes that do not
20         have an executable (i.e. kernel threads)
21
22 2000-09-01  H.J. Lu <hjl@lucon.org>
23
24         * README: Updated for 0.2.
25
26 2000-09-01  Jay Weber <jweber@valinux.com>
27
28         * etc/redhat/nfs.init: Added ability for rpc.mountd to default to
29         supporting version 3 of nfs if available, else it will fall back to
30         version 2 support only.
31
32 2000-08-30  H.J. Lu <hjl@lucon.org>
33
34         * configure.in (VERSION): Set to "0.2".
35         * configure: Regenerated.
36         * nfs-utils.spec: Updated.
37
38 2000-08-25  H.J. Lu <hjl@lucon.org>
39
40         * support/misc/tcpwrapper.c (logit): Modify the log output.
41
42 2000-08-25  Ion Badulescu  <ionut@cs.columbia.edu>
43
44         * utils/rquotad/rquotad.man, utils/statd/statd.man,
45         utils/mountd/mountd.man: updated
46         
47         * utils/mountd/Makefile (LIBS): added -lmisc $(LIBWRAP) $(LIBNSL)
48         * utils/rquotad/Makefile: fix comment
49
50         * support/misc/tcpwrapper.c (logit): added comment about waiting
51         for the children after fork()
52         
53         * utils/mountd/mountd.c (main): ignore SIGCHLD to prevent leaving
54         zombies behind (from logit()'s fork)
55         * utils/rquotad/rquota_svc.c (main): ditto
56         * utils/statd/statd.c (main): ditto
57
58         * utils/rquotad/rquota_svc.c (rquotaprog_1): pass RQUOTAPROG
59         to check_default instead of 0, for prognum
60
61         * utils/statd/statd.c (sm_prog_1_wrapper): pass SM_PROG
62         to check_default instead of 0, for prognum
63
64         * utils/mountd/mount_dispatch.c: Include "tcpwrapper.h" if
65         HAVE_TCP_WRAPPER is defined.
66         (mount_dispatch): Call check_default () if HAVE_TCP_WRAPPER is
67         defined. Reject an RPC call if check_default () fails.
68
69 2000-08-25  H.J. Lu <hjl@lucon.org>
70
71         * support/include/tcpwrapper.h: New for the tcp wrapper
72         support.
73         * support/misc/Makefile: Likewise.
74         * support/misc/from_local.c: Likewise.
75         * support/misc/tcpwrapper.c: Likewise.
76
77         * aclocal.m4 (AC_TCP_WRAPPER): New.
78         * configure.in: Use it. Substitute LIBWRAP.
79         * configure: Rebuilt.
80
81         * config.mk.in (LIBNSL): New.
82         (LIBWRAP): Likewise.
83
84         * support/Makefile (SUBDIRS): Add misc.
85
86         * support/lib/Makefile (LIBS): Add libmisc.a.
87
88         * utils/rquotad/Makefile (LIBS): Add
89         
90                 -lmisc $(LIBWRAP) $(LIBNSL)
91
92         * utils/statd/Makefile (LIBS): Likewise.
93
94         * utils/rquotad/rquota_svc.c: Include "tcpwrapper.h" if
95         HAVE_TCP_WRAPPER is defined.
96         (rquotaprog_1): Call check_default () if HAVE_TCP_WRAPPER is
97         defined. Reject an RPC call if check_default () fails.
98
99         * utils/statd/statd.c: Include "tcpwrapper.h" if
100         HAVE_TCP_WRAPPER is defined.
101         (sm_prog_1_wrapper): New. A wrapper for sm_prog_1. Call
102         check_default () before calling sm_prog_1 (). Define it as
103         sm_prog_1_wrapper if HAVE_TCP_WRAPPER is defined.
104
105 2000-08-25  Chip Salzenberg  <chip@valinux.com>
106
107         * debian/*: Complete Debian build support.
108         * etc/debian/*: Remove.
109
110 2000-08-24  Neil Brown <neilb@cse.unsw.edu.au>
111
112         * support/export/client.c(client_check): removed the "dot+1" as a
113           ypdomain argument to innetgr as this is entirely bogus.
114           It should always be NULL.
115         
116 2000-08-23  Neil Brown <neilb@cse.unsw.edu.au>
117
118         * support/export/xtab.c(xtab_read): introduce new mode for
119            reading xtab. i.e. a list of exports that might be known to the
120            kernel, or might not.  These are flagged as m_exported == -1
121         * support/export/xtab.c(xtab_mount_read):  call xtab_read with new
122            value "2" for xtab, meaning don't trust this too much.
123         * support/include/exportfs.h(struct mexport): changed m_exported
124            from one bit to an int so that it can hold new value
125         * utils/exportfs/exportfs.c(exportfs_ipdate): add an export to the
126            kernel if it is uncertain whether the kernel knows (m_exported == -1)
127         * utils/mountd/mountd.c(get_rootfh): similarly export to kernel if
128            status is uncertain
129
130         * support/nfs/xio.c(xflock): added O_CREAT when getting
131            a write lock so that missing files aren't fatal.
132
133         * etc/debian/nfs-common: new file from "potato"
134         * etc/debian/nfs-kernel-server: new file from "potato" plus fixes.
135          
136 2000-08-09  H.J. Lu <hjl@lucon.org>
137
138         * etc/redhat/nfs.init: Run /usr/sbin/exportfs first during
139         startup to ensure all existing clients work fine.
140
141         * support/export/xtab.c (xtab_mount_read): Pass 1 instead of 0
142         to xtab_read () for reading _PATH_XTAB.
143
144 2000-08-02  H.J. Lu <hjl@lucon.org>
145
146         * utils/mountd/auth.c (auth_authenticate_internal): Try to
147         avoid the reverse name lookup.
148
149 2000-07-04  H.J. Lu <hjl@lucon.org>
150
151         * utils/statd/log.c: Include <stdlib.h> for exit ().
152
153         * utils/statd/misc.c (xunlink): Add `{' and `}' to quiet the
154         gcc warning.
155
156 2000-07-04  H.J. Lu <hjl@lucon.org>
157
158         * configure.in (VERSION): Set to "0.1.9.1".
159         * configure: Regenerated.
160         * nfs-utils.spec: Updated.
161
162         * README: Updated.
163
164 2000-07-04  Neil Brown  <neilb@cse.unsw.edu.au>
165
166         * support/export/hostname.c (hostent_dup): Handle the NULL
167         h_aliases field.
168
169 2000-07-03  H.J. Lu <hjl@lucon.org>
170
171         * README: Update the util-linux requirement.
172
173 2000-07-03  H.J. Lu <hjl@lucon.org>
174
175         * configure.in (VERSION): Set to "0.1.9".
176         * configure: Regenerated.
177         * nfs-utils.spec: Updated.
178
179         * README: Updated.
180
181 2000-07-03  H.J. Lu <hjl@lucon.org>
182
183         * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
184         stop to ensure all clients can still access the server
185         before it is shutdown.
186
187 2000-06-30  Jeff Uphoff <juphoff@transmeta.com>
188
189         * tools/rpcgen/rpc_svcout.c (write_msg_out): Generate syslog()
190         calls with format string.
191         
192 2000-06-28  Chip Salzenberg  <chip@valinux.com>
193
194         * utils/statd/log.c (log): Call syslog with format string.
195
196 2000-06-27  H.J. Lu <hjl@lucon.org>
197
198         * utils/statd/statd.c (main): Use sysconf (_SC_OPEN_MAX)
199         instead of OPEN_MAX.
200
201 2000-06-27  H.J. Lu <hjl@lucon.org>
202
203         * README: Updated.
204
205 2000-06-27  H.J. Lu <hjl@lucon.org>
206
207         * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
208         startup to ensure all existing clients are exported.
209
210         * configure.in (VERSION): Set to "0.1.8.2".
211         * configure: Regenerated.
212         * nfs-utils.spec: Updated.
213
214 2000-06-06  H.J. Lu <hjl@lucon.org>
215
216         * configure.in (VERSION): Set to "0.1.8.1".
217         * configure: Regenerated.
218         * nfs-utils.spec: Updated.
219
220 2000-06-06  H.J. Lu <hjl@lucon.org>
221
222         * utils/mountd/mountd.c (mount_dump_1_svc): Cast svc_getcaller
223         to "struct sockaddr_in *" for glibc 2.2.
224         (mount_umnt_1_svc): Likewise.
225         (mount_umntall_1_svc): Likewise.
226         (mount_export_1_svc): Likewise.
227         (mount_exportall_1_svc): Likewise.
228         (mount_pathconf_2_svc): Likewise.
229         (get_rootfh): Likewise.
230
231 2000-06-04  H.J. Lu <hjl@lucon.org>
232
233         * etc/redhat/nfs.init: Fix a typo in comment.
234
235 2000-05-31  H.J. Lu <hjl@lucon.org>
236
237         * configure.in (VERSION): Set to "0.1.8".
238         * configure: Regenerated.
239         * nfs-utils.spec: Updated.
240
241         * README: Updated.
242
243 2000-05-31  H.J. Lu <hjl@lucon.org>
244
245         * configure.in (VERSION): Set to "0.1.7.5".
246         * configure: Regenerated.
247         * nfs-utils.spec: Updated.
248
249         * support/include/nfslib.h (exportent): Add a new field,
250         r_count, to count the number of mounts from a client.
251         (getrmtabent): Take a new argument for position in file.
252         (putrmtabent): Likewise.
253         (fgetrmtabent): Likewise.
254         (fputrmtabent): Likewise.
255         * support/nfs/rmtab.c (getrmtabent): Handle the new argument
256         for position in file.
257         (fgetrmtabent): Likewise.
258         (putrmtabent): Likewise.
259         (fputrmtabent): Likewise.
260
261         * support/nfs/rmtab.c (fgetrmtabent): Get value for the new
262         field, r_count.
263
264         * support/export/rmtab.c (rmtab_read): Pass NULL as the new
265         argument to getrmtabent (), fgetrmtabent (), putrmtabent ()
266         and fputrmtabent ().
267         * utils/mountd/rmtab.c (mountlist_add): Likewise.
268         (mountlist_del): Likewise.
269         (mountlist_del_all): Likewise.
270         (mountlist_list): Likewise.
271
272         * utils/mountd/rmtab.c (mountlist_add): Increment "r_count"
273         for the existing entry and initialize "r_count" to 1.
274         (mountlist_del): Decrement "r_count".
275
276 2000-05-18  H.J. Lu <hjl@lucon.org>
277
278         * configure.in (VERSION): Set to "0.1.7.4".
279         * configure: Regenerated.
280         * nfs-utils.spec: Updated.
281
282 2000-05-18  H.J. Lu <hjl@lucon.org>
283
284         * etc/redhat/nfs.init (restart): Just do stop and start.
285
286 2000-05-09  Jay Weber <jweber@valinux.com>
287
288         * utils/rquotad/hasquota.c: added support for ext3 recognition
289         in rquotad.
290         * utils/rquotad/mntent.h: Likewise.
291
292 2000-05-01  H.J. Lu <hjl@lucon.org>
293
294         * configure.in (VERSION): Set to "0.1.7.3".
295         * configure: Regenerated.
296         * nfs-utils.spec: Updated.
297
298 2000-05-01  H.J. Lu <hjl@lucon.org>
299
300         * utils/rquotad/rquota_server.c (getquotainfo): Skip bad
301         mounting poins in /etc/fstab.
302
303 2000-05-01  H.J. Lu <hjl@lucon.org>
304
305         * configure.in (VERSION): Set to "0.1.7.2".
306         * configure: Regenerated.
307         * nfs-utils.spec: Updated.
308
309 2000-05-01  H.J. Lu <hjl@lucon.org>
310
311         * utils/rquotad/rquota_server.c (getquotainfo): Call stat ()
312         to check for the mounting point.
313
314 2000-04-29  Chip Salzenberg  <chip@valinux.com>
315             Neil Brown  <neilb@cse.unsw.edu.au>
316
317         * Really re-use RPC ports.
318           (Fixes earlier patch.  Sorry, Neil.)
319
320 2000-04-26  H.J. Lu <hjl@lucon.org>
321
322         * configure.in (VERSION): Set to "0.1.7.1".
323         * configure: Regenerated.
324         * nfs-utils.spec: Updated.
325
326 2000-04-26  H.J. Lu <hjl@lucon.org>
327
328         * etc/redhat/nfslock.init: Check if lockd exits before killing
329         it.
330
331 2000-04-25  H.J. Lu <hjl@lucon.org>
332
333         * README: Require util-linux-2.10f-mount-rpc.patch for mount.
334
335 2000-03-21 Michael Weiser <michael@weiser.saale-net.de>
336
337         * support/nfs/exports.c (parsesquash): Correctly set the
338         return pointer.
339
340 Tue Mar 21 11:38:48 EST 2000 NeilBrown <neilb@cse.unsw.edu.au>
341
342         * support/include/nfs/nfs.h: Removed knowledge of internals of
343              kernel filehandles (which can change) and defined nfs_fh_size
344              which has variable size
345         
346         * support/nfs/getfh.c: defined getfh_size to use new syscall to
347              get variable sized file handles, and change getfh{,old} to
348              use nfs_fh_size        
349         
350         * utils/mountd/mountd.c: use nfd_fh_size and call getfh_size for
351              NFSv3 file handles
352
353         * tools/Makefile, tools/nlmtest/nlmtest.c
354              nlmtest.c depended on internel format of file handles, so now
355              doesn't work.
356
357         
358 2000-03-12  Chip Salzenberg  <chip@valinux.com>
359             Neil Brown  <neilb@cse.unsw.edu.au>
360
361         * support/nfs/rpcmisc.c (rpc_init): Share transports.
362
363 2000-03-13 H.J. Lu <hjl@lucon.org>
364
365         * etc/redhat/nfsd.init: Updated.
366
367         * etc/redhat/nfslock.init: Updated.
368
369         * nfs-utils.spec.in: Updated.
370
371         * configure.in (VERSION): Set to "0.1.7".
372         * configure: Regenerated.
373         * nfs-utils.spec: Updated.
374
375         * README: Updated.
376
377 Wed Mar  8 09:42:43 2000 Neil Brown <neilb@cse.unsw.edu.au>
378
379         * utils/exportfs/exportfs.c (dump): Included printing of
380            nohide, no_subtree_check, and insecure_locks
381
382 2000-02-26  Chip Salzenberg  <chip@valinux.com>
383
384         * config.mk.in (INSTALLSUID): Strip ("-s").
385         (INSTALLSCRIPT): Define.
386         * utils/nhfsstone/Makefile: Use it.
387
388 2000-02-26  Chip Salzenberg  <chip@valinux.com>
389
390         * utils/lockd/lockd.man: Create.
391         * utils/lockd/Makefile: Install it.
392         * utils/nhfsstone/nhfs{run,nums,graph}.man: Create.
393         * utils/nhfsstone/nhfsstone.man: Change suffix from ".1".
394         * utils/nhfsstone/Makefile: Install the helper scripts and
395           all four man pages.
396         * utils/exportfs/exports.man: Fix typo.
397
398 2000-02-26  Chip Salzenberg  <chip@valinux.com>
399
400         * support/nfs/xio.c (xungetc): Decrement line number when
401         character to unget is newline.  Make first parameter int, so
402         it can distinguish EOF from \377.
403         * support/include/xio.h (xungetc): Adjust prototype.
404
405 Fri Feb  4 23:42:23 2000 Neil Brown <neilb@cse.unsw.edu.au>
406
407         * support/include/nfs/export.h: added NFSEXP_NOAUTHNLM
408         * support/nfs/exports.c: added handling for NFSEXP_NOAUTHNLM
409         * utils/exportfs/exports.man: added documentation for no_auth_nlm.
410
411         This is for supporting a new option introduced in 2.3.42
412
413 Thu Feb  3 14:55:48 2000 H.J. Lu <hjl@lucon.org>
414
415         * COPYING: Added. GPL.
416
417 Thu Feb 03 14:40:40 2000 Cristian Gafton <gafton@redhat.com>
418
419         * utils/rquotad/rquota_server.c (getquotainfo): Call statfs ()
420         to get the block size.
421
422 Tue Jan 25 11:04:17 2000 H.J. Lu <hjl@lucon.org>
423
424         * nfs-utils.spec.in: Update ftp site.
425
426 Mon Jan 17 11:48:18 2000 H.J. Lu <hjl@lucon.org>
427
428         * README: Update hostnames.
429
430 Tue Jan 11 10:06:22 2000 H.J. Lu <hjl@lucon.org>
431
432         * configure.in (VERSION): Set to "0.1.6".
433         * configure: Regenerated.
434         * nfs-utils.spec: Updated.
435
436         * README: Updated.
437
438 Mon Jan 10 14:26:33 2000 H.J. Lu <hjl@lucon.org>
439
440         * utils/mountd/auth.c (auth_authenticate_internal): Call
441         xstrdup for hostname before passing it to gethostbyname.
442
443         * utils/mountd/mountd.c (get_exportlist): Use xstrdup instead
444         of strdup.
445
446 Sun Dec 19 09:35:01 1999  H.J. Lu <hjl@lucon.org>
447
448         * README: Update the mailing list address.
449
450 Sun Dec 19 09:22:28 1999  H.J. Lu <hjl@lucon.org>
451
452         * configure.in (VERSION): Set to "0.1.5".
453         * configure: Regenerated.
454         * nfs-utils.spec: Updated.
455
456         * README: Updated.
457
458 Mon Dec 13 13:40:20 1999  H.J. Lu <hjl@lucon.org>
459
460         * utils/rquotad/hasquota.c (hasquota): Malloc one more char
461         for '/'.
462
463 Mon Dec  6 09:42:45 1999  H.J. Lu <hjl@lucon.org>
464
465         * configure.in (VERSION): Set to "0.1.4".
466         * configure: Regenerated.
467         * nfs-utils.spec: Updated.
468
469         * README: Updated.
470
471 Mon Dec  6 09:28:07 1999  H.J. Lu <hjl@lucon.org>
472
473         * nfs-utils.spec.in: New file.
474
475         * config.mk.in (VERSION): Changed to "nfs-utils @VERSION@".
476
477         * configure.in (nfs-utils.spec): Added to AC_OUTPUT.
478
479 1999-12-04  Chip Salzenberg  <chip@valinux.com>
480
481         * config.mk.in: Use $(CC) as set by configure.
482
483 1999-12-04  Chip Salzenberg  <chip@valinux.com>
484
485         * rules.mk: Call $(MAKE) with $(MFLAGS).
486
487 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
488
489         * tools/rpcgen/rpc_main.c (h_output): Generate IXDR_GET_INT32,
490         IXDR_PUT_INT32, IXDR_GET_U_INT32 and IXDR_PUT_U_INT32.
491
492 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
493
494         * nfs-utils.spec (Version): Set to 0.1.3.
495
496         * configure.in (VERSION): Set to "nfs-utils 0.1.3".
497         * configure: Regenerated.
498
499         * README: Updated.
500
501 Mon Nov 29 11:15:47 1999  H.J. Lu <hjl@lucon.org>
502
503         * utils/rquotad/rquota_server.c (nfsmount_to_devname): Removed.
504         (_PATH_DEV_DSK): Likewise.
505         (getquotainfo): Match the mounting point from /etc/mtab
506         instead of calling nfsmount_to_devname ().
507
508 1999-11-24  Chip Salzenberg  <chip@valinux.com>
509
510         * utils/statd/monitor.c (sm_mon_1_svc): Accept lockd callbacks
511         to the new port 24 as well as the historical port 100021.
512
513 Tue Nov 23 10:21:34 1999 Neil Brown <neilb@cse.unsw.edu.au>
514
515         * etc/redhat/nfsd.init (stop): moved exportfs -ua after
516         stopping nfsd to stop spurious ESTALE on server shutdown.
517         
518 Tue Nov 23 10:13:39 1999  Neil Brown <neilb@cse.unsw.edu.au>
519
520         * support/nfs/exports.c (parseopts): make copy of opt string
521         before 'nul'ing out commas so that
522
523         # exportfs -o option1,option2 hosta:/fs hostb:/fs
524
525         applies both options to both exports.
526
527 Thu Oct 28 12:55:42 1999  H.J. Lu <hjl@lucon.org>
528
529         * README: Fix a few typos.
530
531         * tools/rpcgen/rpc_cout.c (print_header): Use int32_t instead
532         of long.
533         * tools/rpcgen/rpc_hout.c (pdefine): Likewise.
534         * tools/rpcgen/rpc_main.c (c_initialize): Likewise.
535         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
536         (unsigned_dec): Likewise.
537         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
538         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
539
540         * tools/rpcgen/rpc_cout.c (emit_single_in_line): Use INT32
541         instead of LONG.
542         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
543         (unsigned_dec): Likewise.
544         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
545         * tools/rpcgen/rpc_scan.h (tok_kind): Likewise.
546         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
547
548 Thu Oct 28 11:27:51 1999 Neil Brown <neilb@cse.unsw.edu.au>
549
550         * support/include/nfs/export.h addedd NFSEXP_NOSUBTREECHECK
551         * support/nfs/exports.c: added {no_,}subtree_check and changed
552           crossmnt to nohide
553         * utils/exportfs/exports.man: added no_subtree_check and nohide
554           and removed irrelevant stuff from unfsd.
555         * support/export/rmtab.c: rmtab_read didn't quite do the right
556           thing if a pathname from rmtab was a subdirectory of an export-point
557
558 Tue Oct 26 17:22:40 1999  H.J. Lu <hjl@lucon.org>
559
560         * README: Updated ftp site.
561
562 Mon Oct 25 18:12:45 1999  H.J. Lu <hjl@lucon.org>
563
564         * nfs-utils.spec (Version): Set to 0.1.2.
565
566         * configure.in (VERSION): Set to "nfs-utils 0.1.2".
567         * configure: Regenerated.
568
569         * README: Updated.
570
571 Mon Oct 25 18:11:21 1999  H.J. Lu <hjl@lucon.org>
572
573         * utils/mountd/auth.c (auth_error): Add "no_forward_dns".
574         (auth_authenticate_internal): Check for NULL return on forward
575         DNS lookup.
576         (auth_authenticate): Handle "no_forward_dns".
577
578 Thu Oct 21 16:22:06 1999  H.J. Lu <hjl@lucon.org>
579
580         * Version 0.1.1 released.
581
582         * nfs-utils.spec (Version): Set to 0.1.1.
583
584         * configure.in (VERSION): Set to "nfs-utils 0.1.1".
585         * configure: Regenerated.
586
587         * README: Updated.
588
589 Mon Oct 18 17:43:29 1999  H.J. Lu <hjl@lucon.org>
590
591         * nfs-utils.spec (Obsoletes): Fixed a typo, change knfsd-client
592         to knfsd-clients.
593         (Provides): Likewise.
594
595 Mon Oct 18 14:56:22 1999  H.J. Lu <hjl@lucon.org>
596
597         * Initial version 0.1 released.
598
599         * configure.in (VERSION): Set to "nfs-utils 0.1".
600         * configure: Regenerated.
601
602 Mon Oct 18 14:54:57 1999  H.J. Lu <hjl@lucon.org>
603
604         * utils/mountd/mountd.c (get_exportlist): Cleanup.
605
606         * utils/exportfs/exportfs.c (unexport_all): Unexport from
607         kernel only if the entry is exported to kernel.
608         (unexportfs): Likewise.
609
610 Wed Sep 08 16:49:32 1999  Neil Brown <neilb@cse.unsw.edu.au>
611
612 1/ utils/mountd/rmtab.c::mountlist_list
613
614      This routine stats the rmtab file to see if it has changed.  It
615      if has, it cleans up it's old copy of the data. But it still
616      always re-read the file, thus returning multiple copies of the
617      data on consecutive calls without intervening changes.
618      "Showmount -a" didn't show this as it appears to sort/unique the
619      data, but 'strace showmount -a' showed that the size of the
620      datagram that it received grew.
621
622      I moved the getrmtabent loop inside the mtime test.
623
624 2/ utils/exportfs/exportfs.c
625    
626      Many routines used the m_path field of m_export instead of
627      e_path.
628      According to the comment in nfslib.h, m_path should only
629      be used when processing a mount request (i.e. in mountd)
630      where the mountpoint may be a subdirectory of the export point.
631
632      I changed all occurances of m_path to e_path
633
634
635 3/ utils/exportfs/exportfs.c:main
636
637       extra arguments are not meaningful with -a or -r, but
638       exportfs accepted them and then ignored the -a/-r, expect that
639       -r would still unexport everything first.
640
641       I generate an error if there are extra args and f_all
642
643 4/ utils/exportfs/exportfs.c:main
644      extract dump out as a special case.
645
646 5/ utils/exportfs/exportfs.c
647      made f_reexport a local variable.
648
649
650 6/ utils/exportfs/exportfs.c:main,exportall
651
652     support/export/rmtab.c
653        only  mayexport on newly created entries, don't set xtabent at all
654
655 7/ support/include/nfslib.h
656
657       add #define _PATH_PROC_EXPORTS to be /proc/fs/nds/exports
658
659 8/ support/export/xtab.c
660
661       xtab_mount_read loads data from _PATH_PROC_EXPORTS if it exists,
662       else from xtab
663
664
665 9/ support/export/xtab.c
666
667       xtab_mount_read now sets m_exported, and NOT
668         xtabent and mayexport
669
670       removed the append arguement from xtab_write as it was
671         never used.
672
673       added is_export flag to xtab_write similar to xtab_read
674         if is_export, only write entries with m_xtabent or m_addxtab
675         if !is_export, only write entries with m_exported
676      
677 10/ support/export/export.c::export_allowed_internal
678
679       added test for exp->m_mayexport, as the export tree
680         may have entries that are no longer allowed to be exported,
681         and so shouldn't caused deduced exported by rmtab_read
682
683 11/ utils/exportfs/exportfs.c::main
684         error checking of flags.
685
686 12/ utils/exportfs/exportfs.c
687
688         total rewrite of export and unexport logic.
689         We now:
690         -  build an exportslist of valid exports, based on
691            current etab file  and arguments,
692         -  read rmtab to instantiate relevant wild card entries
693         -  read etab to find out what is currently exported
694         -  synchronise intention with reality
695         -  write out etab and xtab
696
697 13/  various
698         discard the m_addxtab flag
699         add m_changed flag so we know what to report in exportfs
700
701 14/ utils/mountd/auth.c:auth_authenticate
702
703         the value returned by gethostbyaddr was trusted.
704
705         It now follows this with a call to gethostbyname
706         and checks that the address is in the list.
707
708 15/ support/export/nfsctl.c::cltsetup,expsetup
709
710         force client names to lowercase as kernel is
711         sensitive to case
712
713 16/ quietened a few compiler warnings
714
715 17/ support/export/client:client_lookup
716
717      look for pre-existing client with same name before creating
718         a new one.
719
720 18/ support/include/exportfs.h
721
722      The ordering of the MCL_* enum was:
723         ANONYMOUS, FQDN, SUBNETWORK, WILDCARD, NETGROUP
724
725      I moved ANONYMOUS to the end.
726
727      The ordering is significant when an export entry is being searched for to 
728         match a given address.  There are two problems with ANONYMOUS being first.
729
730         1/ if a directory is exported rw to a couple of hosts and ro to everyone else,
731            then the ro case will always be found first and the privileged hosts won't get
732            their privilege
733         2/ When mountd gets a request to mount an ANONYMOUSly exported tree, it creates a FQDN
734            export entry for the specific host, and writes it to xtab.
735            When another request comes from the same host, the ANONYMOUS entry is found again, 
736            before the new FQDN entry, so it creates another FQDN entry and writes it to xtab
737            again.  If causes bloat in xtab.
738
739       Putting ANONYMOUS at the end reflects it's nature as a catch-all
740
741 19/ utils/exportfs/exportfs.man
742         many updates to the man page to reflect changes to the code
743
744 -----------------------
745
746
747
748 TODO:
749
750 - allow exportfs to modify rmtab file
751 - make sure kernel never gets two clients with same IP address
752     - possible kernel should reject
753     - needs to be some way to lookup client in kernel by IP address
754 - maybe get kernel to do case-insensitive comparisons on client names
755 - remove unused clients from kernel
756
757 - change etab to xtab and xtab to xtab.active
758
759 - timestamp and/or statd-stamp in rmtab for removing old entries.
760
761 Mon Oct 18 11:48:07 1999  H.J. Lu <hjl@lucon.org>
762
763         * linux-nfs: New directory.
764         * linux-nfs/ChangeLog: Moved from ..
765         * linux-nfs/INSTALL: Likewise.
766         * linux-nfs/KNOWNBUGS: Likewise.
767         * linux-nfs/NEW: Likewise.
768         * linux-nfs/README: Likewise.
769         * linux-nfs/THANKS: Likewise.
770         * linux-nfs/TODO: Likewise.
771
772         * Starting from knfsd 1.4.7.