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