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