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