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