2000-06-27 H.J. Lu <hjl@lucon.org>
[nfs-utils.git] / ChangeLog
1 2000-06-27  H.J. Lu <hjl@lucon.org>
2
3         * README: Updated.
4
5 2000-06-27  H.J. Lu <hjl@lucon.org>
6
7         * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
8         startup to ensure all exiting clients are exported.
9
10         * configure.in (VERSION): Set to "0.1.8.2".
11         * configure: Regenerated.
12         * nfs-utils.spec: Updated.
13
14 2000-06-06  H.J. Lu <hjl@lucon.org>
15
16         * configure.in (VERSION): Set to "0.1.8.1".
17         * configure: Regenerated.
18         * nfs-utils.spec: Updated.
19
20 2000-06-06  H.J. Lu <hjl@lucon.org>
21
22         * utils/mountd/mountd.c (mount_dump_1_svc): Cast svc_getcaller
23         to "struct sockaddr_in *" for glibc 2.2.
24         (mount_umnt_1_svc): Likewise.
25         (mount_umntall_1_svc): Likewise.
26         (mount_export_1_svc): Likewise.
27         (mount_exportall_1_svc): Likewise.
28         (mount_pathconf_2_svc): Likewise.
29         (get_rootfh): Likewise.
30
31 2000-06-04  H.J. Lu <hjl@lucon.org>
32
33         * etc/redhat/nfs.init: Fix a typo in comment.
34
35 2000-05-31  H.J. Lu <hjl@lucon.org>
36
37         * configure.in (VERSION): Set to "0.1.8".
38         * configure: Regenerated.
39         * nfs-utils.spec: Updated.
40
41         * README: Updated.
42
43 2000-05-31  H.J. Lu <hjl@lucon.org>
44
45         * configure.in (VERSION): Set to "0.1.7.5".
46         * configure: Regenerated.
47         * nfs-utils.spec: Updated.
48
49         * support/include/nfslib.h (exportent): Add a new field,
50         r_count, to count the number of mounts from a client.
51         (getrmtabent): Take a new argument for position in file.
52         (putrmtabent): Likewise.
53         (fgetrmtabent): Likewise.
54         (fputrmtabent): Likewise.
55         * support/nfs/rmtab.c (getrmtabent): Handle the new argument
56         for position in file.
57         (fgetrmtabent): Likewise.
58         (putrmtabent): Likewise.
59         (fputrmtabent): Likewise.
60
61         * support/nfs/rmtab.c (fgetrmtabent): Get value for the new
62         field, r_count.
63
64         * support/export/rmtab.c (rmtab_read): Pass NULL as the new
65         argument to getrmtabent (), fgetrmtabent (), putrmtabent ()
66         and fputrmtabent ().
67         * utils/mountd/rmtab.c (mountlist_add): Likewise.
68         (mountlist_del): Likewise.
69         (mountlist_del_all): Likewise.
70         (mountlist_list): Likewise.
71
72         * utils/mountd/rmtab.c (mountlist_add): Increment "r_count"
73         for the existing entry and initialize "r_count" to 1.
74         (mountlist_del): Decrement "r_count".
75
76 2000-05-18  H.J. Lu <hjl@lucon.org>
77
78         * configure.in (VERSION): Set to "0.1.7.4".
79         * configure: Regenerated.
80         * nfs-utils.spec: Updated.
81
82 2000-05-18  H.J. Lu <hjl@lucon.org>
83
84         * etc/redhat/nfs.init (restart): Just do stop and start.
85
86 2000-05-09  Jay Weber <jweber@valinux.com>
87
88         * utils/rquotad/hasquota.c: added support for ext3 recognition
89         in rquotad.
90         * utils/rquotad/mntent.h: Likewise.
91
92 2000-05-01  H.J. Lu <hjl@lucon.org>
93
94         * configure.in (VERSION): Set to "0.1.7.3".
95         * configure: Regenerated.
96         * nfs-utils.spec: Updated.
97
98 2000-05-01  H.J. Lu <hjl@lucon.org>
99
100         * utils/rquotad/rquota_server.c (getquotainfo): Skip bad
101         mounting poins in /etc/fstab.
102
103 2000-05-01  H.J. Lu <hjl@lucon.org>
104
105         * configure.in (VERSION): Set to "0.1.7.2".
106         * configure: Regenerated.
107         * nfs-utils.spec: Updated.
108
109 2000-05-01  H.J. Lu <hjl@lucon.org>
110
111         * utils/rquotad/rquota_server.c (getquotainfo): Call stat ()
112         to check for the mounting point.
113
114 2000-04-29  Chip Salzenberg  <chip@valinux.com>
115             Neil Brown  <neilb@cse.unsw.edu.au>
116
117         * Really re-use RPC ports.
118           (Fixes earlier patch.  Sorry, Neil.)
119
120 2000-04-26  H.J. Lu <hjl@lucon.org>
121
122         * configure.in (VERSION): Set to "0.1.7.1".
123         * configure: Regenerated.
124         * nfs-utils.spec: Updated.
125
126 2000-04-26  H.J. Lu <hjl@lucon.org>
127
128         * etc/redhat/nfslock.init: Check if lockd exits before killing
129         it.
130
131 2000-04-25  H.J. Lu <hjl@lucon.org>
132
133         * README: Require util-linux-2.10f-mount-rpc.patch for mount.
134
135 2000-03-21 Michael Weiser <michael@weiser.saale-net.de>
136
137         * support/nfs/exports.c (parsesquash): Correctly set the
138         return pointer.
139
140 Tue Mar 21 11:38:48 EST 2000 NeilBrown <neilb@cse.unsw.edu.au>
141
142         * support/include/nfs/nfs.h: Removed knowledge of internals of
143              kernel filehandles (which can change) and defined nfs_fh_size
144              which has variable size
145         
146         * support/nfs/getfh.c: defined getfh_size to use new syscall to
147              get variable sized file handles, and change getfh{,old} to
148              use nfs_fh_size        
149         
150         * utils/mountd/mountd.c: use nfd_fh_size and call getfh_size for
151              NFSv3 file handles
152
153         * tools/Makefile, tools/nlmtest/nlmtest.c
154              nlmtest.c depended on internel format of file handles, so now
155              doesn't work.
156
157         
158 2000-03-12  Chip Salzenberg  <chip@valinux.com>
159             Neil Brown  <neilb@cse.unsw.edu.au>
160
161         * support/nfs/rpcmisc.c (rpc_init): Share transports.
162
163 2000-03-13 H.J. Lu <hjl@lucon.org>
164
165         * etc/redhat/nfsd.init: Updated.
166
167         * etc/redhat/nfslock.init: Updated.
168
169         * nfs-utils.spec.in: Updated.
170
171         * configure.in (VERSION): Set to "0.1.7".
172         * configure: Regenerated.
173         * nfs-utils.spec: Updated.
174
175         * README: Updated.
176
177 Wed Mar  8 09:42:43 2000 Neil Brown <neilb@cse.unsw.edu.au>
178
179         * utils/exportfs/exportfs.c (dump): Included printing of
180            nohide, no_subtree_check, and insecure_locks
181
182 2000-02-26  Chip Salzenberg  <chip@valinux.com>
183
184         * config.mk.in (INSTALLSUID): Strip ("-s").
185         (INSTALLSCRIPT): Define.
186         * utils/nhfsstone/Makefile: Use it.
187
188 2000-02-26  Chip Salzenberg  <chip@valinux.com>
189
190         * utils/lockd/lockd.man: Create.
191         * utils/lockd/Makefile: Install it.
192         * utils/nhfsstone/nhfs{run,nums,graph}.man: Create.
193         * utils/nhfsstone/nhfsstone.man: Change suffix from ".1".
194         * utils/nhfsstone/Makefile: Install the helper scripts and
195           all four man pages.
196         * utils/exportfs/exports.man: Fix typo.
197
198 2000-02-26  Chip Salzenberg  <chip@valinux.com>
199
200         * support/nfs/xio.c (xungetc): Decrement line number when
201         character to unget is newline.  Make first parameter int, so
202         it can distinguish EOF from \377.
203         * support/include/xio.h (xungetc): Adjust prototype.
204
205 Fri Feb  4 23:42:23 2000 Neil Brown <neilb@cse.unsw.edu.au>
206
207         * support/include/nfs/export.h: added NFSEXP_NOAUTHNLM
208         * support/nfs/exports.c: added handling for NFSEXP_NOAUTHNLM
209         * utils/exportfs/exports.man: added documentation for no_auth_nlm.
210
211         This is for supporting a new option introduced in 2.3.42
212
213 Thu Feb  3 14:55:48 2000 H.J. Lu <hjl@lucon.org>
214
215         * COPYING: Added. GPL.
216
217 Thu Feb 03 14:40:40 2000 Cristian Gafton <gafton@redhat.com>
218
219         * utils/rquotad/rquota_server.c (getquotainfo): Call statfs ()
220         to get the block size.
221
222 Tue Jan 25 11:04:17 2000 H.J. Lu <hjl@lucon.org>
223
224         * nfs-utils.spec.in: Update ftp site.
225
226 Mon Jan 17 11:48:18 2000 H.J. Lu <hjl@lucon.org>
227
228         * README: Update hostnames.
229
230 Tue Jan 11 10:06:22 2000 H.J. Lu <hjl@lucon.org>
231
232         * configure.in (VERSION): Set to "0.1.6".
233         * configure: Regenerated.
234         * nfs-utils.spec: Updated.
235
236         * README: Updated.
237
238 Mon Jan 10 14:26:33 2000 H.J. Lu <hjl@lucon.org>
239
240         * utils/mountd/auth.c (auth_authenticate_internal): Call
241         xstrdup for hostname before passing it to gethostbyname.
242
243         * utils/mountd/mountd.c (get_exportlist): Use xstrdup instead
244         of strdup.
245
246 Sun Dec 19 09:35:01 1999  H.J. Lu <hjl@lucon.org>
247
248         * README: Update the mailing list address.
249
250 Sun Dec 19 09:22:28 1999  H.J. Lu <hjl@lucon.org>
251
252         * configure.in (VERSION): Set to "0.1.5".
253         * configure: Regenerated.
254         * nfs-utils.spec: Updated.
255
256         * README: Updated.
257
258 Mon Dec 13 13:40:20 1999  H.J. Lu <hjl@lucon.org>
259
260         * utils/rquotad/hasquota.c (hasquota): Malloc one more char
261         for '/'.
262
263 Mon Dec  6 09:42:45 1999  H.J. Lu <hjl@lucon.org>
264
265         * configure.in (VERSION): Set to "0.1.4".
266         * configure: Regenerated.
267         * nfs-utils.spec: Updated.
268
269         * README: Updated.
270
271 Mon Dec  6 09:28:07 1999  H.J. Lu <hjl@lucon.org>
272
273         * nfs-utils.spec.in: New file.
274
275         * config.mk.in (VERSION): Changed to "nfs-utils @VERSION@".
276
277         * configure.in (nfs-utils.spec): Added to AC_OUTPUT.
278
279 1999-12-04  Chip Salzenberg  <chip@valinux.com>
280
281         * config.mk.in: Use $(CC) as set by configure.
282
283 1999-12-04  Chip Salzenberg  <chip@valinux.com>
284
285         * rules.mk: Call $(MAKE) with $(MFLAGS).
286
287 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
288
289         * tools/rpcgen/rpc_main.c (h_output): Generate IXDR_GET_INT32,
290         IXDR_PUT_INT32, IXDR_GET_U_INT32 and IXDR_PUT_U_INT32.
291
292 Mon Nov 29 11:17:35 1999  H.J. Lu <hjl@lucon.org>
293
294         * nfs-utils.spec (Version): Set to 0.1.3.
295
296         * configure.in (VERSION): Set to "nfs-utils 0.1.3".
297         * configure: Regenerated.
298
299         * README: Updated.
300
301 Mon Nov 29 11:15:47 1999  H.J. Lu <hjl@lucon.org>
302
303         * utils/rquotad/rquota_server.c (nfsmount_to_devname): Removed.
304         (_PATH_DEV_DSK): Likewise.
305         (getquotainfo): Match the mounting point from /etc/mtab
306         instead of calling nfsmount_to_devname ().
307
308 1999-11-24  Chip Salzenberg  <chip@valinux.com>
309
310         * utils/statd/monitor.c (sm_mon_1_svc): Accept lockd callbacks
311         to the new port 24 as well as the historical port 100021.
312
313 Tue Nov 23 10:21:34 1999 Neil Brown <neilb@cse.unsw.edu.au>
314
315         * etc/redhat/nfsd.init (stop): moved exportfs -ua after
316         stopping nfsd to stop spurious ESTALE on server shutdown.
317         
318 Tue Nov 23 10:13:39 1999  Neil Brown <neilb@cse.unsw.edu.au>
319
320         * support/nfs/exports.c (parseopts): make copy of opt string
321         before 'nul'ing out commas so that
322
323         # exportfs -o option1,option2 hosta:/fs hostb:/fs
324
325         applies both options to both exports.
326
327 Thu Oct 28 12:55:42 1999  H.J. Lu <hjl@lucon.org>
328
329         * README: Fix a few typos.
330
331         * tools/rpcgen/rpc_cout.c (print_header): Use int32_t instead
332         of long.
333         * tools/rpcgen/rpc_hout.c (pdefine): Likewise.
334         * tools/rpcgen/rpc_main.c (c_initialize): Likewise.
335         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
336         (unsigned_dec): Likewise.
337         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
338         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
339
340         * tools/rpcgen/rpc_cout.c (emit_single_in_line): Use INT32
341         instead of LONG.
342         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
343         (unsigned_dec): Likewise.
344         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
345         * tools/rpcgen/rpc_scan.h (tok_kind): Likewise.
346         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
347
348 Thu Oct 28 11:27:51 1999 Neil Brown <neilb@cse.unsw.edu.au>
349
350         * support/include/nfs/export.h addedd NFSEXP_NOSUBTREECHECK
351         * support/nfs/exports.c: added {no_,}subtree_check and changed
352           crossmnt to nohide
353         * utils/exportfs/exports.man: added no_subtree_check and nohide
354           and removed irrelevant stuff from unfsd.
355         * support/export/rmtab.c: rmtab_read didn't quite do the right
356           thing if a pathname from rmtab was a subdirectory of an export-point
357
358 Tue Oct 26 17:22:40 1999  H.J. Lu <hjl@lucon.org>
359
360         * README: Updated ftp site.
361
362 Mon Oct 25 18:12:45 1999  H.J. Lu <hjl@lucon.org>
363
364         * nfs-utils.spec (Version): Set to 0.1.2.
365
366         * configure.in (VERSION): Set to "nfs-utils 0.1.2".
367         * configure: Regenerated.
368
369         * README: Updated.
370
371 Mon Oct 25 18:11:21 1999  H.J. Lu <hjl@lucon.org>
372
373         * utils/mountd/auth.c (auth_error): Add "no_forward_dns".
374         (auth_authenticate_internal): Check for NULL return on forward
375         DNS lookup.
376         (auth_authenticate): Handle "no_forward_dns".
377
378 Thu Oct 21 16:22:06 1999  H.J. Lu <hjl@lucon.org>
379
380         * Version 0.1.1 released.
381
382         * nfs-utils.spec (Version): Set to 0.1.1.
383
384         * configure.in (VERSION): Set to "nfs-utils 0.1.1".
385         * configure: Regenerated.
386
387         * README: Updated.
388
389 Mon Oct 18 17:43:29 1999  H.J. Lu <hjl@lucon.org>
390
391         * nfs-utils.spec (Obsoletes): Fixed a typo, change knfsd-client
392         to knfsd-clients.
393         (Provides): Likewise.
394
395 Mon Oct 18 14:56:22 1999  H.J. Lu <hjl@lucon.org>
396
397         * Initial version 0.1 released.
398
399         * configure.in (VERSION): Set to "nfs-utils 0.1".
400         * configure: Regenerated.
401
402 Mon Oct 18 14:54:57 1999  H.J. Lu <hjl@lucon.org>
403
404         * utils/mountd/mountd.c (get_exportlist): Cleanup.
405
406         * utils/exportfs/exportfs.c (unexport_all): Unexport from
407         kernel only if the entry is exported to kernel.
408         (unexportfs): Likewise.
409
410 Wed Sep 08 16:49:32 1999  Neil Brown <neilb@cse.unsw.edu.au>
411
412 1/ utils/mountd/rmtab.c::mountlist_list
413
414      This routine stats the rmtab file to see if it has changed.  It
415      if has, it cleans up it's old copy of the data. But it still
416      always re-read the file, thus returning multiple copies of the
417      data on consecutive calls without intervening changes.
418      "Showmount -a" didn't show this as it appears to sort/unique the
419      data, but 'strace showmount -a' showed that the size of the
420      datagram that it received grew.
421
422      I moved the getrmtabent loop inside the mtime test.
423
424 2/ utils/exportfs/exportfs.c
425    
426      Many routines used the m_path field of m_export instead of
427      e_path.
428      According to the comment in nfslib.h, m_path should only
429      be used when processing a mount request (i.e. in mountd)
430      where the mountpoint may be a subdirectory of the export point.
431
432      I changed all occurances of m_path to e_path
433
434
435 3/ utils/exportfs/exportfs.c:main
436
437       extra arguments are not meaningful with -a or -r, but
438       exportfs accepted them and then ignored the -a/-r, expect that
439       -r would still unexport everything first.
440
441       I generate an error if there are extra args and f_all
442
443 4/ utils/exportfs/exportfs.c:main
444      extract dump out as a special case.
445
446 5/ utils/exportfs/exportfs.c
447      made f_reexport a local variable.
448
449
450 6/ utils/exportfs/exportfs.c:main,exportall
451
452     support/export/rmtab.c
453        only  mayexport on newly created entries, don't set xtabent at all
454
455 7/ support/include/nfslib.h
456
457       add #define _PATH_PROC_EXPORTS to be /proc/fs/nds/exports
458
459 8/ support/export/xtab.c
460
461       xtab_mount_read loads data from _PATH_PROC_EXPORTS if it exists,
462       else from xtab
463
464
465 9/ support/export/xtab.c
466
467       xtab_mount_read now sets m_exported, and NOT
468         xtabent and mayexport
469
470       removed the append arguement from xtab_write as it was
471         never used.
472
473       added is_export flag to xtab_write similar to xtab_read
474         if is_export, only write entries with m_xtabent or m_addxtab
475         if !is_export, only write entries with m_exported
476      
477 10/ support/export/export.c::export_allowed_internal
478
479       added test for exp->m_mayexport, as the export tree
480         may have entries that are no longer allowed to be exported,
481         and so shouldn't caused deduced exported by rmtab_read
482
483 11/ utils/exportfs/exportfs.c::main
484         error checking of flags.
485
486 12/ utils/exportfs/exportfs.c
487
488         total rewrite of export and unexport logic.
489         We now:
490         -  build an exportslist of valid exports, based on
491            current etab file  and arguments,
492         -  read rmtab to instantiate relevant wild card entries
493         -  read etab to find out what is currently exported
494         -  synchronise intention with reality
495         -  write out etab and xtab
496
497 13/  various
498         discard the m_addxtab flag
499         add m_changed flag so we know what to report in exportfs
500
501 14/ utils/mountd/auth.c:auth_authenticate
502
503         the value returned by gethostbyaddr was trusted.
504
505         It now follows this with a call to gethostbyname
506         and checks that the address is in the list.
507
508 15/ support/export/nfsctl.c::cltsetup,expsetup
509
510         force client names to lowercase as kernel is
511         sensitive to case
512
513 16/ quietened a few compiler warnings
514
515 17/ support/export/client:client_lookup
516
517      look for pre-existing client with same name before creating
518         a new one.
519
520 18/ support/include/exportfs.h
521
522      The ordering of the MCL_* enum was:
523         ANONYMOUS, FQDN, SUBNETWORK, WILDCARD, NETGROUP
524
525      I moved ANONYMOUS to the end.
526
527      The ordering is significant when an export entry is being searched for to 
528         match a given address.  There are two problems with ANONYMOUS being first.
529
530         1/ if a directory is exported rw to a couple of hosts and ro to everyone else,
531            then the ro case will always be found first and the privileged hosts won't get
532            their privilege
533         2/ When mountd gets a request to mount an ANONYMOUSly exported tree, it creates a FQDN
534            export entry for the specific host, and writes it to xtab.
535            When another request comes from the same host, the ANONYMOUS entry is found again, 
536            before the new FQDN entry, so it creates another FQDN entry and writes it to xtab
537            again.  If causes bloat in xtab.
538
539       Putting ANONYMOUS at the end reflects it's nature as a catch-all
540
541 19/ utils/exportfs/exportfs.man
542         many updates to the man page to reflect changes to the code
543
544 -----------------------
545
546
547
548 TODO:
549
550 - allow exportfs to modify rmtab file
551 - make sure kernel never gets two clients with same IP address
552     - possible kernel should reject
553     - needs to be some way to lookup client in kernel by IP address
554 - maybe get kernel to do case-insensitive comparisons on client names
555 - remove unused clients from kernel
556
557 - change etab to xtab and xtab to xtab.active
558
559 - timestamp and/or statd-stamp in rmtab for removing old entries.
560
561 Mon Oct 18 11:48:07 1999  H.J. Lu <hjl@lucon.org>
562
563         * linux-nfs: New directory.
564         * linux-nfs/ChangeLog: Moved from ..
565         * linux-nfs/INSTALL: Likewise.
566         * linux-nfs/KNOWNBUGS: Likewise.
567         * linux-nfs/NEW: Likewise.
568         * linux-nfs/README: Likewise.
569         * linux-nfs/THANKS: Likewise.
570         * linux-nfs/TODO: Likewise.
571
572         * Starting from knfsd 1.4.7.