Commit | Line | Data |
---|---|---|
b609f06a SF |
1 | Version 1.50 |
2 | ------------ | |
7521a3c5 | 3 | Fix NTLMv2 signing. NFS server mounted over cifs works (if cifs mount is |
2d785a50 SF |
4 | done with "serverino" mount option). Add support for POSIX Unlink |
5 | (helps with certain sharing violation cases when server such as | |
6 | Samba supports newer POSIX CIFS Protocol Extensions). | |
b609f06a | 7 | |
5858ae44 SF |
8 | Version 1.49 |
9 | ------------ | |
10 | IPv6 support. Enable ipv6 addresses to be passed on mount (put the ipv6 | |
11 | address after the "ip=" mount option, at least until mount.cifs is fixed to | |
4523cc30 SF |
12 | handle DNS host to ipv6 name translation). Accept override of uid or gid |
13 | on mount even when Unix Extensions are negotiated (it used to be ignored | |
14 | when Unix Extensions were ignored). This allows users to override the | |
15 | default uid and gid for files when they are certain that the uids or | |
8426c39c JL |
16 | gids on the server do not match those of the client. Make "sec=none" |
17 | mount override username (so that null user connection is attempted) | |
75865f8c SF |
18 | to match what documentation said. Support for very large reads, over 127K, |
19 | available to some newer servers (such as Samba 3.0.26 and later but | |
20 | note that it also requires setting CIFSMaxBufSize at module install | |
21 | time to a larger value which may hurt performance in some cases). | |
38c10a1d | 22 | Make sign option force signing (or fail if server does not support it). |
5858ae44 SF |
23 | |
24 | Version 1.48 | |
3677db10 SF |
25 | ------------ |
26 | Fix mtime bouncing around from local idea of last write times to remote time. | |
27 | Fix hang (in i_size_read) when simultaneous size update of same remote file | |
8a236264 SF |
28 | on smp system corrupts sequence number. Do not reread unnecessarily partial page |
29 | (which we are about to overwrite anyway) when writing out file opened rw. | |
f5c1e2ea AT |
30 | When DOS attribute of file on non-Unix server's file changes on the server side |
31 | from read-only back to read-write, reflect this change in default file mode | |
066fcb06 SF |
32 | (we had been leaving a file's mode read-only until the inode were reloaded). |
33 | Allow setting of attribute back to ATTR_NORMAL (removing readonly dos attribute | |
34 | when archive dos attribute not set and we are changing mode back to writeable | |
5268df2e SF |
35 | on server which does not support the Unix Extensions). Remove read only dos |
36 | attribute on chmod when adding any write permission (ie on any of | |
37 | user/group/other (not all of user/group/other ie 0222) when | |
2dd29d31 SF |
38 | mounted to windows. Add support for POSIX MkDir (slight performance |
39 | enhancement and eliminates the network race between the mkdir and set | |
40 | path info of the mode). | |
41 | ||
8a236264 | 42 | |
405c514f SF |
43 | Version 1.47 |
44 | ------------ | |
45 | Fix oops in list_del during mount caused by unaligned string. | |
595dcfec SF |
46 | Fix file corruption which could occur on some large file |
47 | copies caused by writepages page i/o completion bug. | |
a850790f | 48 | Seek to SEEK_END forces check for update of file size for non-cached |
8af18971 SF |
49 | files. Allow file size to be updated on remote extend of locally open, |
50 | non-cached file. Fix reconnect to newer Samba servers (or other servers | |
51 | which support the CIFS Unix/POSIX extensions) so that we again tell the | |
52 | server the Unix/POSIX cifs capabilities which we support (SetFSInfo). | |
53 | Add experimental support for new POSIX Open/Mkdir (which returns | |
54 | stat information on the open, and allows setting the mode). | |
405c514f | 55 | |
2fe87f02 SF |
56 | Version 1.46 |
57 | ------------ | |
58 | Support deep tree mounts. Better support OS/2, Win9x (DOS) time stamps. | |
4b952a9b SF |
59 | Allow null user to be specified on mount ("username="). Do not return |
60 | EINVAL on readdir when filldir fails due to overwritten blocksize | |
8e87d4dc SF |
61 | (fixes FC problem). Return error in rename 2nd attempt retry (ie report |
62 | if rename by handle also fails, after rename by path fails, we were | |
33ec32fa SF |
63 | not reporting whether the retry worked or not). Fix NTLMv2 to |
64 | work to Windows servers (mount with option "sec=ntlmv2"). | |
2fe87f02 | 65 | |
3a5ff61c SF |
66 | Version 1.45 |
67 | ------------ | |
68 | Do not time out lockw calls when using posix extensions. Do not | |
69 | time out requests if server still responding reasonably fast | |
e466e487 SF |
70 | on requests on other threads. Improve POSIX locking emulation, |
71 | (lock cancel now works, and unlock of merged range works even | |
72 | to Windows servers now). Fix oops on mount to lanman servers | |
ea4c07d7 | 73 | (win9x, os/2 etc.) when null password. Do not send listxattr |
2fe87f02 SF |
74 | (SMB to query all EAs) if nouser_xattr specified. Fix SE Linux |
75 | problem (instantiate inodes/dentries in right order for readdir). | |
3a5ff61c | 76 | |
3979877e SF |
77 | Version 1.44 |
78 | ------------ | |
79 | Rewritten sessionsetup support, including support for legacy SMB | |
80 | session setup needed for OS/2 and older servers such as Windows 95 and 98. | |
5bafd765 SF |
81 | Fix oops on ls to OS/2 servers. Add support for level 1 FindFirst |
82 | so we can do search (ls etc.) to OS/2. Do not send NTCreateX | |
83 | or recent levels of FindFirst unless server says it supports NT SMBs | |
1717ffc5 SF |
84 | (instead use legacy equivalents from LANMAN dialect). Fix to allow |
85 | NTLMv2 authentication support (now can use stronger password hashing | |
750d1151 SF |
86 | on mount if corresponding /proc/fs/cifs/SecurityFlags is set (0x4004). |
87 | Allow override of global cifs security flags on mount via "sec=" option(s). | |
3979877e | 88 | |
fc94cdb9 SF |
89 | Version 1.43 |
90 | ------------ | |
91 | POSIX locking to servers which support CIFS POSIX Extensions | |
a878fb22 SF |
92 | (disabled by default controlled by proc/fs/cifs/Experimental). |
93 | Handle conversion of long share names (especially Asian languages) | |
26a21b98 SF |
94 | to Unicode during mount. Fix memory leak in sess struct on reconnect. |
95 | Fix rare oops after acpi suspend. Fix O_TRUNC opens to overwrite on | |
96 | cifs open which helps rare case when setpathinfo fails or server does | |
97 | not support it. | |
fc94cdb9 | 98 | |
13298def SF |
99 | Version 1.42 |
100 | ------------ | |
101 | Fix slow oplock break when mounted to different servers at the same time and | |
60808233 SF |
102 | the tids match and we try to find matching fid on wrong server. Fix read |
103 | looping when signing required by server (2.6.16 kernel only). Fix readdir | |
104 | vs. rename race which could cause each to hang. Return . and .. even | |
105 | if server does not. Allow searches to skip first three entries and | |
106 | begin at any location. Fix oops in find_writeable_file. | |
13298def | 107 | |
12b3b8ff SF |
108 | Version 1.41 |
109 | ------------ | |
110 | Fix NTLMv2 security (can be enabled in /proc/fs/cifs) so customers can | |
111 | configure stronger authentication. Fix sfu symlinks so they can | |
184ed211 SF |
112 | be followed (not just recognized). Fix wraparound of bcc on |
113 | read responses when buffer size over 64K and also fix wrap of | |
114 | max smb buffer size when CIFSMaxBufSize over 64K. Fix oops in | |
115 | cifs_user_read and cifs_readpages (when EAGAIN on send of smb | |
08547b03 SF |
116 | on socket is returned over and over). Add POSIX (advisory) byte range |
117 | locking support (requires server with newest CIFS UNIX Extensions | |
083d3a2c SF |
118 | to the protocol implemented). Slow down negprot slightly in port 139 |
119 | RFC1001 case to give session_init time on buggy servers. | |
12b3b8ff | 120 | |
83451879 SF |
121 | Version 1.40 |
122 | ------------ | |
84afc29b | 123 | Use fsuid (fsgid) more consistently instead of uid (gid). Improve performance |
0a4b92c0 SF |
124 | of readpages by eliminating one extra memcpy. Allow update of file size |
125 | from remote server even if file is open for write as long as mount is | |
eeac8047 SF |
126 | directio. Recognize share mode security and send NTLM encrypted password |
127 | on tree connect if share mode negotiated. | |
83451879 | 128 | |
23e7dd7d SF |
129 | Version 1.39 |
130 | ------------ | |
3abb9272 | 131 | Defer close of a file handle slightly if pending writes depend on that handle |
23e7dd7d | 132 | (this reduces the EBADF bad file handle errors that can be logged under heavy |
3c50c618 | 133 | stress on writes). Modify cifs Kconfig options to expose CONFIG_CIFS_STATS2 |
3abb9272 SF |
134 | Fix SFU style symlinks and mknod needed for servers which do not support the |
135 | CIFS Unix Extensions. Fix setfacl/getfacl on bigendian. Timeout negative | |
136 | dentries so files that the client sees as deleted but that later get created | |
6473a559 | 137 | on the server will be recognized. Add client side permission check on setattr. |
83451879 SF |
138 | Timeout stuck requests better (where server has never responded or sent corrupt |
139 | responses) | |
23e7dd7d | 140 | |
190fdeb8 SF |
141 | Version 1.38 |
142 | ------------ | |
143 | Fix tcp socket retransmission timeouts (e.g. on ENOSPACE from the socket) | |
144 | to be smaller at first (but increasing) so large write performance performance | |
145 | over GigE is better. Do not hang thread on illegal byte range lock response | |
146 | from Windows (Windows can send an RFC1001 size which does not match smb size) by | |
147 | allowing an SMBs TCP length to be up to a few bytes longer than it should be. | |
148 | wsize and rsize can now be larger than negotiated buffer size if server | |
149 | supports large readx/writex, even when directio mount flag not specified. | |
150 | Write size will in many cases now be 16K instead of 4K which greatly helps | |
4ca9c190 | 151 | file copy performance on lightly loaded networks. Fix oops in dnotify |
1047abc1 | 152 | when experimental config flag enabled. Make cifsFYI more granular. |
190fdeb8 | 153 | |
eafe8701 SF |
154 | Version 1.37 |
155 | ------------ | |
156 | Fix readdir caching when unlink removes file in current search buffer, | |
157 | and this is followed by a rewind search to just before the deleted entry. | |
e30dcf3a | 158 | Do not attempt to set ctime unless atime and/or mtime change requested |
20962438 | 159 | (most servers throw it away anyway). Fix length check of received smbs |
70ca734a SF |
160 | to be more accurate. Fix big endian problem with mapchars mount option, |
161 | and with a field returned by statfs. | |
eafe8701 | 162 | |
c46fa8ac SF |
163 | Version 1.36 |
164 | ------------ | |
c0c3e8ed | 165 | Add support for mounting to older pre-CIFS servers such as Windows9x and ME. |
6b8edfe0 | 166 | For these older servers, add option for passing netbios name of server in |
16abbecd SF |
167 | on mount (servernetbiosname). Add suspend support for power management, to |
168 | avoid cifsd thread preventing software suspend from working. | |
c46fa8ac SF |
169 | Add mount option for disabling the default behavior of sending byte range lock |
170 | requests to the server (necessary for certain applications which break with | |
171 | mandatory lock behavior such as Evolution), and also mount option for | |
172 | requesting case insensitive matching for path based requests (requesting | |
173 | case sensitive is the default). | |
174 | ||
f4cfd69c SF |
175 | Version 1.35 |
176 | ------------ | |
177 | Add writepage performance improvements. Fix path name conversions | |
178 | for long filenames on mounts which were done with "mapchars" mount option | |
a10faeb2 SF |
179 | specified. Ensure multiplex ids do not collide. Fix case in which |
180 | rmmod can oops if done soon after last unmount. Fix truncated | |
181 | search (readdir) output when resume filename was a long filename. | |
182 | Fix filename conversion when mapchars mount option was specified and | |
183 | filename was a long filename. | |
f4cfd69c | 184 | |
11aa0149 SF |
185 | Version 1.34 |
186 | ------------ | |
187 | Fix error mapping of the TOO_MANY_LINKS (hardlinks) case. | |
31ca3bc3 SF |
188 | Do not oops if root user kills cifs oplock kernel thread or |
189 | kills the cifsd thread (NB: killing the cifs kernel threads is not | |
190 | recommended, unmount and rmmod cifs will kill them when they are | |
68575476 | 191 | no longer needed). Fix readdir to ASCII servers (ie older servers |
c0c3e8ed | 192 | which do not support Unicode) and also require asterisk. |
3079ca62 SF |
193 | Fix out of memory case in which data could be written one page |
194 | off in the page cache. | |
11aa0149 | 195 | |
966ca923 SF |
196 | Version 1.33 |
197 | ------------ | |
198 | Fix caching problem, in which readdir of directory containing a file | |
199 | which was cached could cause the file's time stamp to be updated | |
200 | without invalidating the readahead data (so we could get stale | |
201 | file data on the client for that file even as the server copy changed). | |
cd63499c SF |
202 | Cleanup response processing so cifsd can not loop when abnormally |
203 | terminated. | |
966ca923 SF |
204 | |
205 | ||
f654bac2 | 206 | Version 1.32 |
1da177e4 LT |
207 | ------------ |
208 | Fix oops in ls when Transact2 FindFirst (or FindNext) returns more than one | |
209 | transact response for an SMB request and search entry split across two frames. | |
f654bac2 SF |
210 | Add support for lsattr (getting ext2/ext3/reiserfs attr flags from the server) |
211 | as new protocol extensions. Do not send Get/Set calls for POSIX ACLs | |
212 | unless server explicitly claims to support them in CIFS Unix extensions | |
ad009ac9 | 213 | POSIX ACL capability bit. Fix packet signing when multiuser mounting with |
cbe0476f | 214 | different users from the same client to the same server. Fix oops in |
6a0b4824 SF |
215 | cifs_close. Add mount option for remapping reserved characters in |
216 | filenames (also allow recognizing files with created by SFU which have any | |
737b758c | 217 | of these seven reserved characters, except backslash, to be recognized). |
848f3fce | 218 | Fix invalid transact2 message (we were sometimes trying to interpret |
099a58f6 SF |
219 | oplock breaks as SMB responses). Add ioctl for checking that the |
220 | current uid matches the uid of the mounter (needed by umount.cifs). | |
221 | Reduce the number of large buffer allocations in cifs response processing | |
222 | (significantly reduces memory pressure under heavy stress with multiple | |
223 | processes accessing the same server at the same time). | |
f654bac2 SF |
224 | |
225 | Version 1.31 | |
226 | ------------ | |
1da177e4 LT |
227 | Fix updates of DOS attributes and time fields so that files on NT4 servers |
228 | do not get marked delete on close. Display sizes of cifs buffer pools in | |
229 | cifs stats. Fix oops in unmount when cifsd thread being killed by | |
230 | shutdown. Add generic readv/writev and aio support. Report inode numbers | |
231 | consistently in readdir and lookup (when serverino mount option is | |
232 | specified use the inode number that the server reports - for both lookup | |
233 | and readdir, otherwise by default the locally generated inode number is used | |
234 | for inodes created in either path since servers are not always able to | |
235 | provide unique inode numbers when exporting multiple volumes from under one | |
236 | sharename). | |
237 | ||
238 | Version 1.30 | |
239 | ------------ | |
240 | Allow new nouser_xattr mount parm to disable xattr support for user namespace. | |
241 | Do not flag user_xattr mount parm in dmesg. Retry failures setting file time | |
242 | (mostly affects NT4 servers) by retry with handle based network operation. | |
243 | Add new POSIX Query FS Info for returning statfs info more accurately. | |
244 | Handle passwords with multiple commas in them. | |
245 | ||
246 | Version 1.29 | |
247 | ------------ | |
248 | Fix default mode in sysfs of cifs module parms. Remove old readdir routine. | |
249 | Fix capabilities flags for large readx so as to allow reads larger than 64K. | |
250 | ||
251 | Version 1.28 | |
252 | ------------ | |
253 | Add module init parm for large SMB buffer size (to allow it to be changed | |
254 | from its default of 16K) which is especially useful for large file copy | |
255 | when mounting with the directio mount option. Fix oops after | |
256 | returning from mount when experimental ExtendedSecurity enabled and | |
257 | SpnegoNegotiated returning invalid error. Fix case to retry better when | |
258 | peek returns from 1 to 3 bytes on socket which should have more data. | |
259 | Fixed path based calls (such as cifs lookup) to handle path names | |
260 | longer than 530 (now can handle PATH_MAX). Fix pass through authentication | |
261 | from Samba server to DC (Samba required dummy LM password). | |
262 | ||
263 | Version 1.27 | |
264 | ------------ | |
265 | Turn off DNOTIFY (directory change notification support) by default | |
266 | (unless built with the experimental flag) to fix hang with KDE | |
267 | file browser. Fix DNOTIFY flag mappings. Fix hang (in wait_event | |
268 | waiting on an SMB response) in SendReceive when session dies but | |
269 | reconnects quickly from another task. Add module init parms for | |
270 | minimum number of large and small network buffers in the buffer pools, | |
271 | and for the maximum number of simultaneous requests. | |
272 | ||
273 | Version 1.26 | |
274 | ------------ | |
275 | Add setfacl support to allow setting of ACLs remotely to Samba 3.10 and later | |
276 | and other POSIX CIFS compliant servers. Fix error mapping for getfacl | |
277 | to EOPNOTSUPP when server does not support posix acls on the wire. Fix | |
278 | improperly zeroed buffer in CIFS Unix extensions set times call. | |
279 | ||
280 | Version 1.25 | |
281 | ------------ | |
c0c3e8ed | 282 | Fix internationalization problem in cifs readdir with filenames that map to |
4de151d8 | 283 | longer UTF-8 strings than the string on the wire was in Unicode. Add workaround |
1da177e4 LT |
284 | for readdir to netapp servers. Fix search rewind (seek into readdir to return |
285 | non-consecutive entries). Do not do readdir when server negotiates | |
286 | buffer size to small to fit filename. Add support for reading POSIX ACLs from | |
287 | the server (add also acl and noacl mount options). | |
288 | ||
289 | Version 1.24 | |
290 | ------------ | |
291 | Optionally allow using server side inode numbers, rather than client generated | |
292 | ones by specifying mount option "serverino" - this is required for some apps | |
293 | to work which double check hardlinked files and have persistent inode numbers. | |
294 | ||
295 | Version 1.23 | |
296 | ------------ | |
297 | Multiple bigendian fixes. On little endian systems (for reconnect after | |
298 | network failure) fix tcp session reconnect code so we do not try first | |
299 | to reconnect on reverse of port 445. Treat reparse points (NTFS junctions) | |
300 | as directories rather than symlinks because we can do follow link on them. | |
301 | ||
302 | Version 1.22 | |
303 | ------------ | |
304 | Add config option to enable XATTR (extended attribute) support, mapping | |
305 | xattr names in the "user." namespace space to SMB/CIFS EAs. Lots of | |
306 | minor fixes pointed out by the Stanford SWAT checker (mostly missing | |
307 | or out of order NULL pointer checks in little used error paths). | |
308 | ||
309 | Version 1.21 | |
310 | ------------ | |
311 | Add new mount parm to control whether mode check (generic_permission) is done | |
312 | on the client. If Unix extensions are enabled and the uids on the client | |
313 | and server do not match, client permission checks are meaningless on | |
314 | server uids that do not exist on the client (this does not affect the | |
315 | normal ACL check which occurs on the server). Fix default uid | |
316 | on mknod to match create and mkdir. Add optional mount parm to allow | |
317 | override of the default uid behavior (in which the server sets the uid | |
318 | and gid of newly created files). Normally for network filesystem mounts | |
319 | user want the server to set the uid/gid on newly created files (rather than | |
320 | using uid of the client processes you would in a local filesystem). | |
321 | ||
322 | Version 1.20 | |
323 | ------------ | |
324 | Make transaction counts more consistent. Merge /proc/fs/cifs/SimultaneousOps | |
325 | info into /proc/fs/cifs/DebugData. Fix oops in rare oops in readdir | |
326 | (in build_wildcard_path_from_dentry). Fix mknod to pass type field | |
327 | (block/char/fifo) properly. Remove spurious mount warning log entry when | |
328 | credentials passed as mount argument. Set major/minor device number in | |
329 | inode for block and char devices when unix extensions enabled. | |
330 | ||
331 | Version 1.19 | |
332 | ------------ | |
333 | Fix /proc/fs/cifs/Stats and DebugData display to handle larger | |
334 | amounts of return data. Properly limit requests to MAX_REQ (50 | |
335 | is the usual maximum active multiplex SMB/CIFS requests per server). | |
336 | Do not kill cifsd (and thus hurt the other SMB session) when more than one | |
337 | session to the same server (but with different userids) exists and one | |
338 | of the two user's smb sessions is being removed while leaving the other. | |
339 | Do not loop reconnecting in cifsd demultiplex thread when admin | |
340 | kills the thread without going through unmount. | |
341 | ||
342 | Version 1.18 | |
343 | ------------ | |
344 | Do not rename hardlinked files (since that should be a noop). Flush | |
345 | cached write behind data when reopening a file after session abend, | |
346 | except when already in write. Grab per socket sem during reconnect | |
347 | to avoid oops in sendmsg if overlapping with reconnect. Do not | |
348 | reset cached inode file size on readdir for files open for write on | |
349 | client. | |
350 | ||
351 | ||
352 | Version 1.17 | |
353 | ------------ | |
354 | Update number of blocks in file so du command is happier (in Linux a fake | |
355 | blocksize of 512 is required for calculating number of blocks in inode). | |
356 | Fix prepare write of partial pages to read in data from server if possible. | |
357 | Fix race on tcpStatus field between unmount and reconnection code, causing | |
358 | cifsd process sometimes to hang around forever. Improve out of memory | |
359 | checks in cifs_filldir | |
360 | ||
361 | Version 1.16 | |
362 | ------------ | |
363 | Fix incorrect file size in file handle based setattr on big endian hardware. | |
364 | Fix oops in build_path_from_dentry when out of memory. Add checks for invalid | |
365 | and closing file structs in writepage/partialpagewrite. Add statistics | |
366 | for each mounted share (new menuconfig option). Fix endianness problem in | |
367 | volume information displayed in /proc/fs/cifs/DebugData (only affects | |
368 | affects big endian architectures). Prevent renames while constructing | |
369 | path names for open, mkdir and rmdir. | |
370 | ||
371 | Version 1.15 | |
372 | ------------ | |
373 | Change to mempools for alloc smb request buffers and multiplex structs | |
374 | to better handle low memory problems (and potential deadlocks). | |
375 | ||
376 | Version 1.14 | |
377 | ------------ | |
378 | Fix incomplete listings of large directories on Samba servers when Unix | |
379 | extensions enabled. Fix oops when smb_buffer can not be allocated. Fix | |
380 | rename deadlock when writing out dirty pages at same time. | |
381 | ||
382 | Version 1.13 | |
383 | ------------ | |
384 | Fix open of files in which O_CREATE can cause the mode to change in | |
385 | some cases. Fix case in which retry of write overlaps file close. | |
386 | Fix PPC64 build error. Reduce excessive stack usage in smb password | |
387 | hashing. Fix overwrite of Linux user's view of file mode to Windows servers. | |
388 | ||
389 | Version 1.12 | |
390 | ------------ | |
391 | Fixes for large file copy, signal handling, socket retry, buffer | |
392 | allocation and low memory situations. | |
393 | ||
394 | Version 1.11 | |
395 | ------------ | |
396 | Better port 139 support to Windows servers (RFC1001/RFC1002 Session_Initialize) | |
397 | also now allowing support for specifying client netbiosname. NT4 support added. | |
398 | ||
399 | Version 1.10 | |
400 | ------------ | |
401 | Fix reconnection (and certain failed mounts) to properly wake up the | |
402 | blocked users thread so it does not seem hung (in some cases was blocked | |
403 | until the cifs receive timeout expired). Fix spurious error logging | |
404 | to kernel log when application with open network files killed. | |
405 | ||
406 | Version 1.09 | |
407 | ------------ | |
408 | Fix /proc/fs module unload warning message (that could be logged | |
409 | to the kernel log). Fix intermittent failure in connectathon | |
410 | test7 (hardlink count not immediately refreshed in case in which | |
411 | inode metadata can be incorrectly kept cached when time near zero) | |
412 | ||
413 | Version 1.08 | |
414 | ------------ | |
415 | Allow file_mode and dir_mode (specified at mount time) to be enforced | |
416 | locally (the server already enforced its own ACLs too) for servers | |
417 | that do not report the correct mode (do not support the | |
418 | CIFS Unix Extensions). | |
419 | ||
420 | Version 1.07 | |
421 | ------------ | |
422 | Fix some small memory leaks in some unmount error paths. Fix major leak | |
423 | of cache pages in readpages causing multiple read oriented stress | |
424 | testcases (including fsx, and even large file copy) to fail over time. | |
425 | ||
426 | Version 1.06 | |
427 | ------------ | |
428 | Send NTCreateX with ATTR_POSIX if Linux/Unix extensions negotiated with server. | |
429 | This allows files that differ only in case and improves performance of file | |
430 | creation and file open to such servers. Fix semaphore conflict which causes | |
431 | slow delete of open file to Samba (which unfortunately can cause an oplock | |
432 | break to self while vfs_unlink held i_sem) which can hang for 20 seconds. | |
433 | ||
434 | Version 1.05 | |
435 | ------------ | |
436 | fixes to cifs_readpages for fsx test case | |
437 | ||
438 | Version 1.04 | |
439 | ------------ | |
440 | Fix caching data integrity bug when extending file size especially when no | |
441 | oplock on file. Fix spurious logging of valid already parsed mount options | |
442 | that are parsed outside of the cifs vfs such as nosuid. | |
443 | ||
444 | ||
445 | Version 1.03 | |
446 | ------------ | |
447 | Connect to server when port number override not specified, and tcp port | |
448 | unitialized. Reset search to restart at correct file when kernel routine | |
449 | filldir returns error during large directory searches (readdir). | |
450 | ||
451 | Version 1.02 | |
452 | ------------ | |
453 | Fix caching problem when files opened by multiple clients in which | |
454 | page cache could contain stale data, and write through did | |
455 | not occur often enough while file was still open when read ahead | |
456 | (read oplock) not allowed. Treat "sep=" when first mount option | |
c0c3e8ed | 457 | as an override of comma as the default separator between mount |
1da177e4 LT |
458 | options. |
459 | ||
460 | Version 1.01 | |
461 | ------------ | |
462 | Allow passwords longer than 16 bytes. Allow null password string. | |
463 | ||
464 | Version 1.00 | |
465 | ------------ | |
466 | Gracefully clean up failed mounts when attempting to mount to servers such as | |
c0c3e8ed | 467 | Windows 98 that terminate tcp sessions during protocol negotiation. Handle |
1da177e4 LT |
468 | embedded commas in mount parsing of passwords. |
469 | ||
470 | Version 0.99 | |
471 | ------------ | |
472 | Invalidate local inode cached pages on oplock break and when last file | |
473 | instance is closed so that the client does not continue using stale local | |
474 | copy rather than later modified server copy of file. Do not reconnect | |
475 | when server drops the tcp session prematurely before negotiate | |
c0c3e8ed | 476 | protocol response. Fix oops in reopen_file when dentry freed. Allow |
1da177e4 LT |
477 | the support for CIFS Unix Extensions to be disabled via proc interface. |
478 | ||
479 | Version 0.98 | |
480 | ------------ | |
481 | Fix hang in commit_write during reconnection of open files under heavy load. | |
482 | Fix unload_nls oops in a mount failure path. Serialize writes to same socket | |
483 | which also fixes any possible races when cifs signatures are enabled in SMBs | |
484 | being sent out of signature sequence number order. | |
485 | ||
486 | Version 0.97 | |
487 | ------------ | |
488 | Fix byte range locking bug (endian problem) causing bad offset and | |
489 | length. | |
490 | ||
491 | Version 0.96 | |
492 | ------------ | |
493 | Fix oops (in send_sig) caused by CIFS unmount code trying to | |
494 | wake up the demultiplex thread after it had exited. Do not log | |
495 | error on harmless oplock release of closed handle. | |
496 | ||
497 | Version 0.95 | |
498 | ------------ | |
499 | Fix unsafe global variable usage and password hash failure on gcc 3.3.1 | |
500 | Fix problem reconnecting secondary mounts to same server after session | |
501 | failure. Fix invalid dentry - race in mkdir when directory gets created | |
502 | by another client between the lookup and mkdir. | |
503 | ||
504 | Version 0.94 | |
505 | ------------ | |
506 | Fix to list processing in reopen_files. Fix reconnection when server hung | |
507 | but tcpip session still alive. Set proper timeout on socket read. | |
508 | ||
509 | Version 0.93 | |
510 | ------------ | |
511 | Add missing mount options including iocharset. SMP fixes in write and open. | |
512 | Fix errors in reconnecting after TCP session failure. Fix module unloading | |
513 | of default nls codepage | |
514 | ||
515 | Version 0.92 | |
516 | ------------ | |
517 | Active smb transactions should never go negative (fix double FreeXid). Fix | |
518 | list processing in file routines. Check return code on kmalloc in open. | |
519 | Fix spinlock usage for SMP. | |
520 | ||
521 | Version 0.91 | |
522 | ------------ | |
523 | Fix oops in reopen_files when invalid dentry. drop dentry on server rename | |
524 | and on revalidate errors. Fix cases where pid is now tgid. Fix return code | |
525 | on create hard link when server does not support them. | |
526 | ||
527 | Version 0.90 | |
528 | ------------ | |
529 | Fix scheduling while atomic error in getting inode info on newly created file. | |
530 | Fix truncate of existing files opened with O_CREAT but not O_TRUNC set. | |
531 | ||
532 | Version 0.89 | |
533 | ------------ | |
534 | Fix oops on write to dead tcp session. Remove error log write for case when file open | |
535 | O_CREAT but not O_EXCL | |
536 | ||
537 | Version 0.88 | |
538 | ------------ | |
539 | Fix non-POSIX behavior on rename of open file and delete of open file by taking | |
540 | advantage of trans2 SetFileInfo rename facility if available on target server. | |
541 | Retry on ENOSPC and EAGAIN socket errors. | |
542 | ||
543 | Version 0.87 | |
544 | ------------ | |
545 | Fix oops on big endian readdir. Set blksize to be even power of two (2**blkbits) to fix | |
546 | allocation size miscalculation. After oplock token lost do not read through | |
547 | cache. | |
548 | ||
549 | Version 0.86 | |
550 | ------------ | |
551 | Fix oops on empty file readahead. Fix for file size handling for locally cached files. | |
552 | ||
553 | Version 0.85 | |
554 | ------------ | |
555 | Fix oops in mkdir when server fails to return inode info. Fix oops in reopen_files | |
556 | during auto reconnection to server after server recovered from failure. | |
557 | ||
558 | Version 0.84 | |
559 | ------------ | |
560 | Finish support for Linux 2.5 open/create changes, which removes the | |
561 | redundant NTCreate/QPathInfo/close that was sent during file create. | |
562 | Enable oplock by default. Enable packet signing by default (needed to | |
563 | access many recent Windows servers) | |
564 | ||
565 | Version 0.83 | |
566 | ------------ | |
567 | Fix oops when mounting to long server names caused by inverted parms to kmalloc. | |
568 | Fix MultiuserMount (/proc/fs/cifs configuration setting) so that when enabled | |
569 | we will choose a cifs user session (smb uid) that better matches the local | |
570 | uid if a) the mount uid does not match the current uid and b) we have another | |
571 | session to the same server (ip address) for a different mount which | |
572 | matches the current local uid. | |
573 | ||
574 | Version 0.82 | |
575 | ------------ | |
576 | Add support for mknod of block or character devices. Fix oplock | |
577 | code (distributed caching) to properly send response to oplock | |
578 | break from server. | |
579 | ||
580 | Version 0.81 | |
581 | ------------ | |
582 | Finish up CIFS packet digital signing for the default | |
583 | NTLM security case. This should help Windows 2003 | |
584 | network interoperability since it is common for | |
585 | packet signing to be required now. Fix statfs (stat -f) | |
586 | which recently started returning errors due to | |
587 | invalid value (-1 instead of 0) being set in the | |
588 | struct kstatfs f_ffiles field. | |
589 | ||
590 | Version 0.80 | |
591 | ----------- | |
592 | Fix oops on stopping oplock thread when removing cifs when | |
593 | built as module. | |
594 | ||
595 | Version 0.79 | |
596 | ------------ | |
597 | Fix mount options for ro (readonly), uid, gid and file and directory mode. | |
598 | ||
599 | Version 0.78 | |
600 | ------------ | |
601 | Fix errors displayed on failed mounts to be more understandable. | |
602 | Fixed various incorrect or misleading smb to posix error code mappings. | |
603 | ||
604 | Version 0.77 | |
605 | ------------ | |
606 | Fix display of NTFS DFS junctions to display as symlinks. | |
607 | They are the network equivalent. Fix oops in | |
608 | cifs_partialpagewrite caused by missing spinlock protection | |
609 | of openfile linked list. Allow writebehind caching errors to | |
610 | be returned to the application at file close. | |
611 | ||
612 | Version 0.76 | |
613 | ------------ | |
614 | Clean up options displayed in /proc/mounts by show_options to | |
615 | be more consistent with other filesystems. | |
616 | ||
617 | Version 0.75 | |
618 | ------------ | |
619 | Fix delete of readonly file to Windows servers. Reflect | |
620 | presence or absence of read only dos attribute in mode | |
621 | bits for servers that do not support CIFS Unix extensions. | |
622 | Fix shortened results on readdir of large directories to | |
623 | servers supporting CIFS Unix extensions (caused by | |
624 | incorrect resume key). | |
625 | ||
626 | Version 0.74 | |
627 | ------------ | |
628 | Fix truncate bug (set file size) that could cause hangs e.g. running fsx | |
629 | ||
630 | Version 0.73 | |
631 | ------------ | |
632 | unload nls if mount fails. | |
633 | ||
634 | Version 0.72 | |
635 | ------------ | |
636 | Add resume key support to search (readdir) code to workaround | |
637 | Windows bug. Add /proc/fs/cifs/LookupCacheEnable which | |
638 | allows disabling caching of attribute information for | |
639 | lookups. | |
640 | ||
641 | Version 0.71 | |
642 | ------------ | |
643 | Add more oplock handling (distributed caching code). Remove | |
644 | dead code. Remove excessive stack space utilization from | |
645 | symlink routines. | |
646 | ||
647 | Version 0.70 | |
648 | ------------ | |
649 | Fix oops in get dfs referral (triggered when null path sent in to | |
650 | mount). Add support for overriding rsize at mount time. | |
651 | ||
652 | Version 0.69 | |
653 | ------------ | |
654 | Fix buffer overrun in readdir which caused intermittent kernel oopses. | |
655 | Fix writepage code to release kmap on write data. Allow "-ip=" new | |
656 | mount option to be passed in on parameter distinct from the first part | |
657 | (server name portion of) the UNC name. Allow override of the | |
658 | tcp port of the target server via new mount option "-port=" | |
659 | ||
660 | Version 0.68 | |
661 | ------------ | |
662 | Fix search handle leak on rewind. Fix setuid and gid so that they are | |
663 | reflected in the local inode immediately. Cleanup of whitespace | |
664 | to make 2.4 and 2.5 versions more consistent. | |
665 | ||
666 | ||
667 | Version 0.67 | |
668 | ------------ | |
669 | Fix signal sending so that captive thread (cifsd) exits on umount | |
670 | (which was causing the warning in kmem_cache_free of the request buffers | |
671 | at rmmod time). This had broken as a sideeffect of the recent global | |
672 | kernel change to daemonize. Fix memory leak in readdir code which | |
673 | showed up in "ls -R" (and applications that did search rewinding). | |
674 | ||
675 | Version 0.66 | |
676 | ------------ | |
677 | Reconnect tids and fids after session reconnection (still do not | |
678 | reconnect byte range locks though). Fix problem caching | |
679 | lookup information for directory inodes, improving performance, | |
680 | especially in deep directory trees. Fix various build warnings. | |
681 | ||
682 | Version 0.65 | |
683 | ------------ | |
684 | Finish fixes to commit write for caching/readahead consistency. fsx | |
685 | now works to Samba servers. Fix oops caused when readahead | |
686 | was interrupted by a signal. | |
687 | ||
688 | Version 0.64 | |
689 | ------------ | |
690 | Fix data corruption (in partial page after truncate) that caused fsx to | |
691 | fail to Windows servers. Cleaned up some extraneous error logging in | |
692 | common error paths. Add generic sendfile support. | |
693 | ||
694 | Version 0.63 | |
695 | ------------ | |
696 | Fix memory leak in AllocMidQEntry. | |
697 | Finish reconnection logic, so connection with server can be dropped | |
698 | (or server rebooted) and the cifs client will reconnect. | |
699 | ||
700 | Version 0.62 | |
701 | ------------ | |
702 | Fix temporary socket leak when bad userid or password specified | |
703 | (or other SMBSessSetup failure). Increase maximum buffer size to slightly | |
704 | over 16K to allow negotiation of up to Samba and Windows server default read | |
705 | sizes. Add support for readpages | |
706 | ||
707 | Version 0.61 | |
708 | ------------ | |
709 | Fix oops when username not passed in on mount. Extensive fixes and improvements | |
710 | to error logging (strip redundant newlines, change debug macros to ensure newline | |
711 | passed in and to be more consistent). Fix writepage wrong file handle problem, | |
712 | a readonly file handle could be incorrectly used to attempt to write out | |
713 | file updates through the page cache to multiply open files. This could cause | |
714 | the iozone benchmark to fail on the fwrite test. Fix bug mounting two different | |
715 | shares to the same Windows server when using different usernames | |
716 | (doing this to Samba servers worked but Windows was rejecting it) - now it is | |
717 | possible to use different userids when connecting to the same server from a | |
718 | Linux client. Fix oops when treeDisconnect called during unmount on | |
719 | previously freed socket. | |
720 | ||
721 | Version 0.60 | |
722 | ------------ | |
723 | Fix oops in readpages caused by not setting address space operations in inode in | |
724 | rare code path. | |
725 | ||
726 | Version 0.59 | |
727 | ------------ | |
728 | Includes support for deleting of open files and renaming over existing files (per POSIX | |
729 | requirement). Add readlink support for Windows junction points (directory symlinks). | |
730 | ||
731 | Version 0.58 | |
732 | ------------ | |
733 | Changed read and write to go through pagecache. Added additional address space operations. | |
734 | Memory mapped operations now working. | |
735 | ||
736 | Version 0.57 | |
737 | ------------ | |
738 | Added writepage code for additional memory mapping support. Fixed leak in xids causing | |
739 | the simultaneous operations counter (/proc/fs/cifs/SimultaneousOps) to increase on | |
740 | every stat call. Additional formatting cleanup. | |
741 | ||
742 | Version 0.56 | |
743 | ------------ | |
744 | Fix bigendian bug in order of time conversion. Merge 2.5 to 2.4 version. Formatting cleanup. | |
745 | ||
746 | Version 0.55 | |
747 | ------------ | |
748 | Fixes from Zwane Mwaikambo for adding missing return code checking in a few places. | |
749 | Also included a modified version of his fix to protect global list manipulation of | |
750 | the smb session and tree connection and mid related global variables. | |
751 | ||
752 | Version 0.54 | |
753 | ------------ | |
754 | Fix problem with captive thread hanging around at unmount time. Adjust to 2.5.42-pre | |
755 | changes to superblock layout. Remove wasteful allocation of smb buffers (now the send | |
756 | buffer is reused for responses). Add more oplock handling. Additional minor cleanup. | |
757 | ||
758 | Version 0.53 | |
759 | ------------ | |
760 | More stylistic updates to better match kernel style. Add additional statistics | |
761 | for filesystem which can be viewed via /proc/fs/cifs. Add more pieces of NTLMv2 | |
762 | and CIFS Packet Signing enablement. | |
763 | ||
764 | Version 0.52 | |
765 | ------------ | |
766 | Replace call to sleep_on with safer wait_on_event. | |
767 | Make stylistic changes to better match kernel style recommendations. | |
768 | Remove most typedef usage (except for the PDUs themselves). | |
769 | ||
770 | Version 0.51 | |
771 | ------------ | |
772 | Update mount so the -unc mount option is no longer required (the ip address can be specified | |
773 | in a UNC style device name. Implementation of readpage/writepage started. | |
774 | ||
775 | Version 0.50 | |
776 | ------------ | |
777 | Fix intermittent problem with incorrect smb header checking on badly | |
778 | fragmented tcp responses | |
779 | ||
780 | Version 0.49 | |
781 | ------------ | |
782 | Fixes to setting of allocation size and file size. | |
783 | ||
784 | Version 0.48 | |
785 | ------------ | |
786 | Various 2.5.38 fixes. Now works on 2.5.38 | |
787 | ||
788 | Version 0.47 | |
789 | ------------ | |
790 | Prepare for 2.5 kernel merge. Remove ifdefs. | |
791 | ||
792 | Version 0.46 | |
793 | ------------ | |
794 | Socket buffer management fixes. Fix dual free. | |
795 | ||
796 | Version 0.45 | |
797 | ------------ | |
798 | Various big endian fixes for hardlinks and symlinks and also for dfs. | |
799 | ||
800 | Version 0.44 | |
801 | ------------ | |
802 | Various big endian fixes for servers with Unix extensions such as Samba | |
803 | ||
804 | Version 0.43 | |
805 | ------------ | |
806 | Various FindNext fixes for incorrect filenames on large directory searches on big endian | |
807 | clients. basic posix file i/o tests now work on big endian machines, not just le | |
808 | ||
809 | Version 0.42 | |
810 | ------------ | |
811 | SessionSetup and NegotiateProtocol now work from Big Endian machines. | |
812 | Various Big Endian fixes found during testing on the Linux on 390. Various fixes for compatibility with older | |
813 | versions of 2.4 kernel (now builds and works again on kernels at least as early as 2.4.7). | |
814 | ||
815 | Version 0.41 | |
816 | ------------ | |
817 | Various minor fixes for Connectathon Posix "basic" file i/o test suite. Directory caching fixed so hardlinked | |
c0c3e8ed | 818 | files now return the correct number of links on fstat as they are repeatedly linked and unlinked. |
1da177e4 LT |
819 | |
820 | Version 0.40 | |
821 | ------------ | |
822 | Implemented "Raw" (i.e. not encapsulated in SPNEGO) NTLMSSP (i.e. the Security Provider Interface used to negotiate | |
823 | session advanced session authentication). Raw NTLMSSP is preferred by Windows 2000 Professional and Windows XP. | |
824 | Began implementing support for SPNEGO encapsulation of NTLMSSP based session authentication blobs | |
825 | (which is the mechanism preferred by Windows 2000 server in the absence of Kerberos). | |
826 | ||
827 | Version 0.38 | |
828 | ------------ | |
829 | Introduced optional mount helper utility mount.cifs and made coreq changes to cifs vfs to enable | |
830 | it. Fixed a few bugs in the DFS code (e.g. bcc two bytes too short and incorrect uid in PDU). | |
831 | ||
832 | Version 0.37 | |
833 | ------------ | |
834 | Rewrote much of connection and mount/unmount logic to handle bugs with | |
835 | multiple uses to same share, multiple users to same server etc. | |
836 | ||
837 | Version 0.36 | |
838 | ------------ | |
839 | Fixed major problem with dentry corruption (missing call to dput) | |
840 | ||
841 | Version 0.35 | |
842 | ------------ | |
843 | Rewrite of readdir code to fix bug. Various fixes for bigendian machines. | |
844 | Begin adding oplock support. Multiusermount and oplockEnabled flags added to /proc/fs/cifs | |
845 | although corresponding function not fully implemented in the vfs yet | |
846 | ||
847 | Version 0.34 | |
848 | ------------ | |
849 | Fixed dentry caching bug, misc. cleanup | |
850 | ||
851 | Version 0.33 | |
852 | ------------ | |
853 | Fixed 2.5 support to handle build and configure changes as well as misc. 2.5 changes. Now can build | |
854 | on current 2.5 beta version (2.5.24) of the Linux kernel as well as on 2.4 Linux kernels. | |
855 | Support for STATUS codes (newer 32 bit NT error codes) added. DFS support begun to be added. | |
856 | ||
857 | Version 0.32 | |
858 | ------------ | |
859 | Unix extensions (symlink, readlink, hardlink, chmod and some chgrp and chown) implemented | |
860 | and tested against Samba 2.2.5 | |
861 | ||
862 | ||
863 | Version 0.31 | |
864 | ------------ | |
865 | 1) Fixed lockrange to be correct (it was one byte too short) | |
866 | ||
867 | 2) Fixed GETLK (i.e. the fcntl call to test a range of bytes in a file to see if locked) to correctly | |
868 | show range as locked when there is a conflict with an existing lock. | |
869 | ||
870 | 3) default file perms are now 2767 (indicating support for mandatory locks) instead of 777 for directories | |
871 | in most cases. Eventually will offer optional ability to query server for the correct perms. | |
872 | ||
873 | 3) Fixed eventual trap when mounting twice to different shares on the same server when the first succeeded | |
874 | but the second one was invalid and failed (the second one was incorrectly disconnecting the tcp and smb | |
875 | session) | |
876 | ||
877 | 4) Fixed error logging of valid mount options | |
878 | ||
879 | 5) Removed logging of password field. | |
880 | ||
881 | 6) Moved negotiate, treeDisconnect and uloggoffX (only tConx and SessSetup remain in connect.c) to cifssmb.c | |
882 | and cleaned them up and made them more consistent with other cifs functions. | |
883 | ||
884 | 7) Server support for Unix extensions is now fully detected and FindFirst is implemented both ways | |
c0c3e8ed | 885 | (with or without Unix extensions) but FindNext and QueryPathInfo with the Unix extensions are not completed, |
1da177e4 LT |
886 | nor is the symlink support using the Unix extensions |
887 | ||
888 | 8) Started adding the readlink and follow_link code | |
889 | ||
890 | Version 0.3 | |
891 | ----------- | |
892 | Initial drop | |
893 |