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