1. Fix some typos in README.
[nfs-utils.git] / ChangeLog
1 Thu Oct 28 12:55:42 1999  H.J. Lu <hjl@lucon.org>
2
3         * README: Fix a few typos.
4
5         * tools/rpcgen/rpc_cout.c (print_header): Use int32_t instead
6         of long.
7         * tools/rpcgen/rpc_hout.c (pdefine): Likewise.
8         * tools/rpcgen/rpc_main.c (c_initialize): Likewise.
9         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
10         (unsigned_dec): Likewise.
11         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
12         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
13
14         * tools/rpcgen/rpc_cout.c (emit_single_in_line): Use INT32
15         instead of LONG.
16         * tools/rpcgen/rpc_parse.c (get_type): Likewise.
17         (unsigned_dec): Likewise.
18         * tools/rpcgen/rpc_scan.c (symbols): Likewise.
19         * tools/rpcgen/rpc_scan.h (tok_kind): Likewise.
20         * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
21
22 Thu Oct 28 11:27:51 EST 1999 Neil Brown <neilb@cse.unsw.edu.au>
23
24         * support/include/nfs/export.h addedd NFSEXP_NOSUBTREECHECK
25         * support/nfs/exports.c: added {no_,}subtree_check and changed
26           crossmnt to nohide
27         * utils/exportfs/exports.man: added no_subtree_check and nohide
28           and removed irrelevant stuff from unfsd.
29         * support/export/rmtab.c: rmtab_read didn't quite do the right
30           thing if a pathname from rmtab was a subdirectory of an export-point
31
32 Tue Oct 26 17:22:40 1999  H.J. Lu <hjl@lucon.org>
33
34         * README: Updated ftp site.
35
36 Mon Oct 25 18:12:45 1999  H.J. Lu <hjl@lucon.org>
37
38         * nfs-utils.spec (Version): Set to 0.1.2.
39
40         * configure.in (VERSION): Set to "nfs-utils 0.1.2".
41         * configure: Regenerated.
42
43         * README: Updated.
44
45 Mon Oct 25 18:11:21 1999  H.J. Lu <hjl@lucon.org>
46
47         * utils/mountd/auth.c (auth_error): Add "no_forward_dns".
48         (auth_authenticate_internal): Check for NULL return on forward
49         DNS lookup.
50         (auth_authenticate): Handle "no_forward_dns".
51
52 Thu Oct 21 16:22:06 1999  H.J. Lu <hjl@lucon.org>
53
54         * Version 0.1.1 released.
55
56         * nfs-utils.spec (Version): Set to 0.1.1.
57
58         * configure.in (VERSION): Set to "nfs-utils 0.1.1".
59         * configure: Regenerated.
60
61         * README: Updated.
62
63 Mon Oct 18 17:43:29 1999  H.J. Lu <hjl@lucon.org>
64
65         * nfs-utils.spec (Obsoletes): Fixed a typo, change knfsd-client
66         to knfsd-clients.
67         (Provides): Likewise.
68
69 Mon Oct 18 14:56:22 1999  H.J. Lu <hjl@lucon.org>
70
71         * Initial version 0.1 released.
72
73         * configure.in (VERSION): Set to "nfs-utils 0.1".
74         * configure: Regenerated.
75
76 Mon Oct 18 14:54:57 1999  H.J. Lu <hjl@lucon.org>
77
78         * utils/mountd/mountd.c (get_exportlist): Cleanup.
79
80         * utils/exportfs/exportfs.c (unexport_all): Unexport from
81         kernel only if the entry is exported to kernel.
82         (unexportfs): Likewise.
83
84 Wed Sep 08 16:49:32 1999  Neil Brown <neilb@cse.unsw.edu.au>
85
86 1/ utils/mountd/rmtab.c::mountlist_list
87
88      This routine stats the rmtab file to see if it has changed.  It
89      if has, it cleans up it's old copy of the data. But it still
90      always re-read the file, thus returning multiple copies of the
91      data on consecutive calls without intervening changes.
92      "Showmount -a" didn't show this as it appears to sort/unique the
93      data, but 'strace showmount -a' showed that the size of the
94      datagram that it received grew.
95
96      I moved the getrmtabent loop inside the mtime test.
97
98 2/ utils/exportfs/exportfs.c
99    
100      Many routines used the m_path field of m_export instead of
101      e_path.
102      According to the comment in nfslib.h, m_path should only
103      be used when processing a mount request (i.e. in mountd)
104      where the mountpoint may be a subdirectory of the export point.
105
106      I changed all occurances of m_path to e_path
107
108
109 3/ utils/exportfs/exportfs.c:main
110
111       extra arguments are not meaningful with -a or -r, but
112       exportfs accepted them and then ignored the -a/-r, expect that
113       -r would still unexport everything first.
114
115       I generate an error if there are extra args and f_all
116
117 4/ utils/exportfs/exportfs.c:main
118      extract dump out as a special case.
119
120 5/ utils/exportfs/exportfs.c
121      made f_reexport a local variable.
122
123
124 6/ utils/exportfs/exportfs.c:main,exportall
125
126     support/export/rmtab.c
127        only  mayexport on newly created entries, don't set xtabent at all
128
129 7/ support/include/nfslib.h
130
131       add #define _PATH_PROC_EXPORTS to be /proc/fs/nds/exports
132
133 8/ support/export/xtab.c
134
135       xtab_mount_read loads data from _PATH_PROC_EXPORTS if it exists,
136       else from xtab
137
138
139 9/ support/export/xtab.c
140
141       xtab_mount_read now sets m_exported, and NOT
142         xtabent and mayexport
143
144       removed the append arguement from xtab_write as it was
145         never used.
146
147       added is_export flag to xtab_write similar to xtab_read
148         if is_export, only write entries with m_xtabent or m_addxtab
149         if !is_export, only write entries with m_exported
150      
151 10/ support/export/export.c::export_allowed_internal
152
153       added test for exp->m_mayexport, as the export tree
154         may have entries that are no longer allowed to be exported,
155         and so shouldn't caused deduced exported by rmtab_read
156
157 11/ utils/exportfs/exportfs.c::main
158         error checking of flags.
159
160 12/ utils/exportfs/exportfs.c
161
162         total rewrite of export and unexport logic.
163         We now:
164         -  build an exportslist of valid exports, based on
165            current etab file  and arguments,
166         -  read rmtab to instantiate relevant wild card entries
167         -  read etab to find out what is currently exported
168         -  synchronise intention with reality
169         -  write out etab and xtab
170
171 13/  various
172         discard the m_addxtab flag
173         add m_changed flag so we know what to report in exportfs
174
175 14/ utils/mountd/auth.c:auth_authenticate
176
177         the value returned by gethostbyaddr was trusted.
178
179         It now follows this with a call to gethostbyname
180         and checks that the address is in the list.
181
182 15/ support/export/nfsctl.c::cltsetup,expsetup
183
184         force client names to lowercase as kernel is
185         sensitive to case
186
187 16/ quietened a few compiler warnings
188
189 17/ support/export/client:client_lookup
190
191      look for pre-existing client with same name before creating
192         a new one.
193
194 18/ support/include/exportfs.h
195
196      The ordering of the MCL_* enum was:
197         ANONYMOUS, FQDN, SUBNETWORK, WILDCARD, NETGROUP
198
199      I moved ANONYMOUS to the end.
200
201      The ordering is significant when an export entry is being searched for to 
202         match a given address.  There are two problems with ANONYMOUS being first.
203
204         1/ if a directory is exported rw to a couple of hosts and ro to everyone else,
205            then the ro case will always be found first and the privileged hosts won't get
206            their privilege
207         2/ When mountd gets a request to mount an ANONYMOUSly exported tree, it creates a FQDN
208            export entry for the specific host, and writes it to xtab.
209            When another request comes from the same host, the ANONYMOUS entry is found again, 
210            before the new FQDN entry, so it creates another FQDN entry and writes it to xtab
211            again.  If causes bloat in xtab.
212
213       Putting ANONYMOUS at the end reflects it's nature as a catch-all
214
215 19/ utils/exportfs/exportfs.man
216         many updates to the man page to reflect changes to the code
217
218 -----------------------
219
220
221
222 TODO:
223
224 - allow exportfs to modify rmtab file
225 - make sure kernel never gets two clients with same IP address
226     - possible kernel should reject
227     - needs to be some way to lookup client in kernel by IP address
228 - maybe get kernel to do case-insensitive comparisons on client names
229 - remove unused clients from kernel
230
231 - change etab to xtab and xtab to xtab.active
232
233 - timestamp and/or statd-stamp in rmtab for removing old entries.
234
235 Mon Oct 18 11:48:07 1999  H.J. Lu <hjl@lucon.org>
236
237         * linux-nfs: New directory.
238         * linux-nfs/ChangeLog: Moved from ..
239         * linux-nfs/INSTALL: Likewise.
240         * linux-nfs/KNOWNBUGS: Likewise.
241         * linux-nfs/NEW: Likewise.
242         * linux-nfs/README: Likewise.
243         * linux-nfs/THANKS: Likewise.
244         * linux-nfs/TODO: Likewise.
245
246         * Starting from knfsd 1.4.7.