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