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