1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
|
2000-12-02 Marcus Brinkmann <marcus@gnu.org>
* ops.c (op_readlink): Before returning, check if the buffer
pointed to by transp is ours. If not, munmap it.
(op_read): Likewise for bp.
(op_readdir): Don't alloca a buffer here. Instead initialize
BUF and BUFSIZE to 0 and let the server (eh, MiG) do it.
munmap BUF before returning.
2000-12-01 Marcus Brinkmann <marcus@gnu.org>
* cache.c (scan_creds): Move I inside for-statement.
Replace inner for-loop with a while-loop. New variable
NEXT_I set to I->NEXT, because we might free I.
Set I to NEXT_I at end of while block.
Move update of leastidlastuse inside if block, because
otherwise we will constantly prevent ourself from scanning.
(scan_fhs): Very much the same.
(scan_replies): Likewise. Also free CR.
(check_cached_reply): Make HASH value absolute (as XID can be
negative, and thus the modulus).
Initialize REFERENCES to 1.
2000-03-17 Thomas Bushnell, BSG <tb@mit.edu>
* cache.c (create_cached_handle): Add comment.
1999-07-10 Roland McGrath <roland@baalperazim.frob.com>
* cache.c: Add #include <sys/mman.h> for munmap decl.
1999-07-03 Thomas Bushnell, BSG <tb@mit.edu>
* cache.c (create_cached_handle): Use munmap instead of
vm_deallocate.
1998-12-20 Roland McGrath <roland@baalperazim.frob.com>
* loop.c (server_loop): Cosmetic.
* nfsd.h: Include <rpc/types.h>.
(bool_t, enum_t): Remove typedefs.
1998-10-20 Roland McGrath <roland@baalperazim.frob.com>
* cache.c (scan_creds): Add braces to silence gcc warning.
(scan_fhs): Likewise.
(scan_replies): Likewise.
Thu Sep 26 14:09:20 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* nfsd.h (enum_t): New type.
* cache.c: Don't inclide <rpc/auth_unix.h>.
Thu Sep 12 16:52:13 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* Makefile (HURDLIBS): New variable.
(nfsd): Delete special depedency.
Tue Sep 3 14:15:50 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* loop.c: Include "../nfs/mount.h" instead of
"../nfs/rpcsvc/mount.h".
* ops.c: Likewise.
* nfsd.h: Include "../nfs/nfs-spec.h" instead of
"../nfs/rpcsvc/nfs_prot.h".
Wed Aug 14 13:46:45 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* ops.c (nfstable): Renamed to nfs2table.
* nfsd.h (nfstable): Likewise.
* loop.c (server_loop): Reference nfs2table instead of nfstable.
* nfsd.h, cache.c, ops.c, xdr.c: Use new names for things that
have just been changed in ../nfs/rpcsvc/nfs_prot.h.
* xdr.c (hurd_mode_to_nfs_type): New parm VERSION; all callers
changed.
(encode_fattr): New parm VERSION; all callers changed.
* nfsd.h (encode_fattr): New parm VERSION.
Tue Aug 13 14:38:36 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* ops.c (op_create): Sun's NFS client implementation actually
bombs if do do what RFC 1094 says to do in section 2.2.10. So
don't pass O_EXCL, but do pass O_TRUNC. That's what NetBSD does.
* ops.c (op_setattr): Fill in an fattr in reply.
Mon Aug 12 11:15:15 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* Makefile (installationdir): Include quotes in variable expansion
here.
* main.c: Build index_file better.
* xdr.c (nfs_error_trans): New errors for IO and XDEV don't have
prefixed E.
* main.c (main): Cast second cthread_fork args.
* nfsd.h (nfs_error_trans): Add new arg to prototype.
Thu Aug 8 19:20:31 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* xdr.c (nfs_error_trans): New parm `version'. All callers
changed. If we are version 3, then return one of the new v3 error
codes if appropriate.
Wed Aug 7 11:39:31 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* main.c (index_file): New var.
(index_file_name): Initialize from index_file.
(main): Don't initialize index_file_name here.
* ops.c (op_null, op_getattr, op_setattr, op_lookup, op_readlink,
count_read_buffersize, op_read, op_write, op_create, op_remove,
op_rename, op_link, op_symlink, op_mkdir, op_rmdir,
count_readdir_buffersize, op_statfs, op_mnt, op_getport): Add new
parm `version'.
* loop.c (server_loop): Supply VERSION to PROC->alloc_reply and
PROC->func.
* nfsd.h (struct procedure): Add new parm to `func' and
`alloc_reply' members to specify protocol version.
* ops.c (mounttable): Use op_null for MOUNTPROC_UMNT and
MOUNTPROC_UMNTALL.
* ops.c (op_create): Ignore most of setattr structure given.
(op_mkdir): Likewise.
(complete_setattr): Clean up and be less active when possible.
* ops.c (op_readdir): Correctly end list of directory entries.
* nfsd.h (authserver): New variable.
n * main.c: Include <hurd.h>.
(main): Initialize AUTHSERVER.
* cache.c: Include <hurd/io.h> and <hurd/auth.h>.
(create_cached_handle): Reauthenticate port before calling
file_getfh.
* fsys.c (init_filesystems): When setting NFSYS, it needs to be at
least as big as INDEX + 1, and install the control port into the
correct slot.
(init_filesystems): When allocating or reallocating FSYSTABLE,
make sure the new entries are zeroed.
(enter_filesystem): Likewise.
Tue Aug 6 13:18:40 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* cache.c (create_cached_handle): Always call fsys_getfile when
creating a new cached handle instead of relying upon the passed in
port.
* xdr.c (hurd_mode_to_nfs_mode): Specify octal number in octal
notation.
(encode_fattr): Bother filling in all the fields.
* loop.c (server_loop): Don't attempt to call cache_handle_rele if
C is null.
* cache.c (fh_hash): Mod-ulize HASH before returning it.
* cache.c (process_cred): Arrange to skip VERF field for
non-AUTH_UNIX creds too.
* loop.c (server_loop): Don't call skip_cred for the VERF here;
process_cred does it for us.
* xdr.c (skip_cred): Delete function.
* nfsd.h (skip_cred): Delete decl.
* cache.c (process_cred): After processing gid list, set P after
it. Start gid processing loop at 0.
* main.c (main): Detach one thread for pmap_udp_socket,
and NTHREADS threads for main_udp_socket.
* loop.c (server_loop): New parm `fd'; don't do select.
Ignore errors that we get from recvfrom instead of processing the
last message again.
* nfsd.h (server_loop): New parm.
* main.c (main): Stringify LOCALSTATEDIR; but for now just pound
in /var. Call asprintf correctly.
|