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