123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864 |
- Verison 1.48
- ------------
- Fix mtime bouncing around from local idea of last write times to remote time.
- Fix hang (in i_size_read) when simultaneous size update of same remote file
- on smp system corrupts sequence number. Do not reread unnecessarily partial page
- (which we are about to overwrite anyway) when writing out file opened rw.
- When DOS attribute of file on non-Unix server's file changes on the server side
- from read-only back to read-write, reflect this change in default file mode
- (we had been leaving a file's mode read-only until the inode were reloaded).
- Allow setting of attribute back to ATTR_NORMAL (removing readonly dos attribute
- when archive dos attribute not set and we are changing mode back to writeable
- on server which does not support the Unix Extensions).
- Version 1.47
- ------------
- Fix oops in list_del during mount caused by unaligned string.
- Fix file corruption which could occur on some large file
- copies caused by writepages page i/o completion bug.
- Seek to SEEK_END forces check for update of file size for non-cached
- files. Allow file size to be updated on remote extend of locally open,
- non-cached file. Fix reconnect to newer Samba servers (or other servers
- which support the CIFS Unix/POSIX extensions) so that we again tell the
- server the Unix/POSIX cifs capabilities which we support (SetFSInfo).
- Add experimental support for new POSIX Open/Mkdir (which returns
- stat information on the open, and allows setting the mode).
- Version 1.46
- ------------
- Support deep tree mounts. Better support OS/2, Win9x (DOS) time stamps.
- Allow null user to be specified on mount ("username="). Do not return
- EINVAL on readdir when filldir fails due to overwritten blocksize
- (fixes FC problem). Return error in rename 2nd attempt retry (ie report
- if rename by handle also fails, after rename by path fails, we were
- not reporting whether the retry worked or not). Fix NTLMv2 to
- work to Windows servers (mount with option "sec=ntlmv2").
- Version 1.45
- ------------
- Do not time out lockw calls when using posix extensions. Do not
- time out requests if server still responding reasonably fast
- on requests on other threads. Improve POSIX locking emulation,
- (lock cancel now works, and unlock of merged range works even
- to Windows servers now). Fix oops on mount to lanman servers
- (win9x, os/2 etc.) when null password. Do not send listxattr
- (SMB to query all EAs) if nouser_xattr specified. Fix SE Linux
- problem (instantiate inodes/dentries in right order for readdir).
- Version 1.44
- ------------
- Rewritten sessionsetup support, including support for legacy SMB
- session setup needed for OS/2 and older servers such as Windows 95 and 98.
- Fix oops on ls to OS/2 servers. Add support for level 1 FindFirst
- so we can do search (ls etc.) to OS/2. Do not send NTCreateX
- or recent levels of FindFirst unless server says it supports NT SMBs
- (instead use legacy equivalents from LANMAN dialect). Fix to allow
- NTLMv2 authentication support (now can use stronger password hashing
- on mount if corresponding /proc/fs/cifs/SecurityFlags is set (0x4004).
- Allow override of global cifs security flags on mount via "sec=" option(s).
- Version 1.43
- ------------
- POSIX locking to servers which support CIFS POSIX Extensions
- (disabled by default controlled by proc/fs/cifs/Experimental).
- Handle conversion of long share names (especially Asian languages)
- to Unicode during mount. Fix memory leak in sess struct on reconnect.
- Fix rare oops after acpi suspend. Fix O_TRUNC opens to overwrite on
- cifs open which helps rare case when setpathinfo fails or server does
- not support it.
- Version 1.42
- ------------
- Fix slow oplock break when mounted to different servers at the same time and
- the tids match and we try to find matching fid on wrong server. Fix read
- looping when signing required by server (2.6.16 kernel only). Fix readdir
- vs. rename race which could cause each to hang. Return . and .. even
- if server does not. Allow searches to skip first three entries and
- begin at any location. Fix oops in find_writeable_file.
- Version 1.41
- ------------
- Fix NTLMv2 security (can be enabled in /proc/fs/cifs) so customers can
- configure stronger authentication. Fix sfu symlinks so they can
- be followed (not just recognized). Fix wraparound of bcc on
- read responses when buffer size over 64K and also fix wrap of
- max smb buffer size when CIFSMaxBufSize over 64K. Fix oops in
- cifs_user_read and cifs_readpages (when EAGAIN on send of smb
- on socket is returned over and over). Add POSIX (advisory) byte range
- locking support (requires server with newest CIFS UNIX Extensions
- to the protocol implemented). Slow down negprot slightly in port 139
- RFC1001 case to give session_init time on buggy servers.
- Version 1.40
- ------------
- Use fsuid (fsgid) more consistently instead of uid (gid). Improve performance
- of readpages by eliminating one extra memcpy. Allow update of file size
- from remote server even if file is open for write as long as mount is
- directio. Recognize share mode security and send NTLM encrypted password
- on tree connect if share mode negotiated.
- Version 1.39
- ------------
- Defer close of a file handle slightly if pending writes depend on that handle
- (this reduces the EBADF bad file handle errors that can be logged under heavy
- stress on writes). Modify cifs Kconfig options to expose CONFIG_CIFS_STATS2
- Fix SFU style symlinks and mknod needed for servers which do not support the
- CIFS Unix Extensions. Fix setfacl/getfacl on bigendian. Timeout negative
- dentries so files that the client sees as deleted but that later get created
- on the server will be recognized. Add client side permission check on setattr.
- Timeout stuck requests better (where server has never responded or sent corrupt
- responses)
- Version 1.38
- ------------
- Fix tcp socket retransmission timeouts (e.g. on ENOSPACE from the socket)
- to be smaller at first (but increasing) so large write performance performance
- over GigE is better. Do not hang thread on illegal byte range lock response
- from Windows (Windows can send an RFC1001 size which does not match smb size) by
- allowing an SMBs TCP length to be up to a few bytes longer than it should be.
- wsize and rsize can now be larger than negotiated buffer size if server
- supports large readx/writex, even when directio mount flag not specified.
- Write size will in many cases now be 16K instead of 4K which greatly helps
- file copy performance on lightly loaded networks. Fix oops in dnotify
- when experimental config flag enabled. Make cifsFYI more granular.
- Version 1.37
- ------------
- Fix readdir caching when unlink removes file in current search buffer,
- and this is followed by a rewind search to just before the deleted entry.
- Do not attempt to set ctime unless atime and/or mtime change requested
- (most servers throw it away anyway). Fix length check of received smbs
- to be more accurate. Fix big endian problem with mapchars mount option,
- and with a field returned by statfs.
- Version 1.36
- ------------
- Add support for mounting to older pre-CIFS servers such as Windows9x and ME.
- For these older servers, add option for passing netbios name of server in
- on mount (servernetbiosname). Add suspend support for power management, to
- avoid cifsd thread preventing software suspend from working.
- Add mount option for disabling the default behavior of sending byte range lock
- requests to the server (necessary for certain applications which break with
- mandatory lock behavior such as Evolution), and also mount option for
- requesting case insensitive matching for path based requests (requesting
- case sensitive is the default).
- Version 1.35
- ------------
- Add writepage performance improvements. Fix path name conversions
- for long filenames on mounts which were done with "mapchars" mount option
- specified. Ensure multiplex ids do not collide. Fix case in which
- rmmod can oops if done soon after last unmount. Fix truncated
- search (readdir) output when resume filename was a long filename.
- Fix filename conversion when mapchars mount option was specified and
- filename was a long filename.
- Version 1.34
- ------------
- Fix error mapping of the TOO_MANY_LINKS (hardlinks) case.
- Do not oops if root user kills cifs oplock kernel thread or
- kills the cifsd thread (NB: killing the cifs kernel threads is not
- recommended, unmount and rmmod cifs will kill them when they are
- no longer needed). Fix readdir to ASCII servers (ie older servers
- which do not support Unicode) and also require asterisk.
- Fix out of memory case in which data could be written one page
- off in the page cache.
- Version 1.33
- ------------
- Fix caching problem, in which readdir of directory containing a file
- which was cached could cause the file's time stamp to be updated
- without invalidating the readahead data (so we could get stale
- file data on the client for that file even as the server copy changed).
- Cleanup response processing so cifsd can not loop when abnormally
- terminated.
- Version 1.32
- ------------
- Fix oops in ls when Transact2 FindFirst (or FindNext) returns more than one
- transact response for an SMB request and search entry split across two frames.
- Add support for lsattr (getting ext2/ext3/reiserfs attr flags from the server)
- as new protocol extensions. Do not send Get/Set calls for POSIX ACLs
- unless server explicitly claims to support them in CIFS Unix extensions
- POSIX ACL capability bit. Fix packet signing when multiuser mounting with
- different users from the same client to the same server. Fix oops in
- cifs_close. Add mount option for remapping reserved characters in
- filenames (also allow recognizing files with created by SFU which have any
- of these seven reserved characters, except backslash, to be recognized).
- Fix invalid transact2 message (we were sometimes trying to interpret
- oplock breaks as SMB responses). Add ioctl for checking that the
- current uid matches the uid of the mounter (needed by umount.cifs).
- Reduce the number of large buffer allocations in cifs response processing
- (significantly reduces memory pressure under heavy stress with multiple
- processes accessing the same server at the same time).
- Version 1.31
- ------------
- Fix updates of DOS attributes and time fields so that files on NT4 servers
- do not get marked delete on close. Display sizes of cifs buffer pools in
- cifs stats. Fix oops in unmount when cifsd thread being killed by
- shutdown. Add generic readv/writev and aio support. Report inode numbers
- consistently in readdir and lookup (when serverino mount option is
- specified use the inode number that the server reports - for both lookup
- and readdir, otherwise by default the locally generated inode number is used
- for inodes created in either path since servers are not always able to
- provide unique inode numbers when exporting multiple volumes from under one
- sharename).
- Version 1.30
- ------------
- Allow new nouser_xattr mount parm to disable xattr support for user namespace.
- Do not flag user_xattr mount parm in dmesg. Retry failures setting file time
- (mostly affects NT4 servers) by retry with handle based network operation.
- Add new POSIX Query FS Info for returning statfs info more accurately.
- Handle passwords with multiple commas in them.
- Version 1.29
- ------------
- Fix default mode in sysfs of cifs module parms. Remove old readdir routine.
- Fix capabilities flags for large readx so as to allow reads larger than 64K.
- Version 1.28
- ------------
- Add module init parm for large SMB buffer size (to allow it to be changed
- from its default of 16K) which is especially useful for large file copy
- when mounting with the directio mount option. Fix oops after
- returning from mount when experimental ExtendedSecurity enabled and
- SpnegoNegotiated returning invalid error. Fix case to retry better when
- peek returns from 1 to 3 bytes on socket which should have more data.
- Fixed path based calls (such as cifs lookup) to handle path names
- longer than 530 (now can handle PATH_MAX). Fix pass through authentication
- from Samba server to DC (Samba required dummy LM password).
- Version 1.27
- ------------
- Turn off DNOTIFY (directory change notification support) by default
- (unless built with the experimental flag) to fix hang with KDE
- file browser. Fix DNOTIFY flag mappings. Fix hang (in wait_event
- waiting on an SMB response) in SendReceive when session dies but
- reconnects quickly from another task. Add module init parms for
- minimum number of large and small network buffers in the buffer pools,
- and for the maximum number of simultaneous requests.
- Version 1.26
- ------------
- Add setfacl support to allow setting of ACLs remotely to Samba 3.10 and later
- and other POSIX CIFS compliant servers. Fix error mapping for getfacl
- to EOPNOTSUPP when server does not support posix acls on the wire. Fix
- improperly zeroed buffer in CIFS Unix extensions set times call.
- Version 1.25
- ------------
- Fix internationalization problem in cifs readdir with filenames that map to
- longer UTF-8 strings than the string on the wire was in Unicode. Add workaround
- for readdir to netapp servers. Fix search rewind (seek into readdir to return
- non-consecutive entries). Do not do readdir when server negotiates
- buffer size to small to fit filename. Add support for reading POSIX ACLs from
- the server (add also acl and noacl mount options).
- Version 1.24
- ------------
- Optionally allow using server side inode numbers, rather than client generated
- ones by specifying mount option "serverino" - this is required for some apps
- to work which double check hardlinked files and have persistent inode numbers.
- Version 1.23
- ------------
- Multiple bigendian fixes. On little endian systems (for reconnect after
- network failure) fix tcp session reconnect code so we do not try first
- to reconnect on reverse of port 445. Treat reparse points (NTFS junctions)
- as directories rather than symlinks because we can do follow link on them.
- Version 1.22
- ------------
- Add config option to enable XATTR (extended attribute) support, mapping
- xattr names in the "user." namespace space to SMB/CIFS EAs. Lots of
- minor fixes pointed out by the Stanford SWAT checker (mostly missing
- or out of order NULL pointer checks in little used error paths).
- Version 1.21
- ------------
- Add new mount parm to control whether mode check (generic_permission) is done
- on the client. If Unix extensions are enabled and the uids on the client
- and server do not match, client permission checks are meaningless on
- server uids that do not exist on the client (this does not affect the
- normal ACL check which occurs on the server). Fix default uid
- on mknod to match create and mkdir. Add optional mount parm to allow
- override of the default uid behavior (in which the server sets the uid
- and gid of newly created files). Normally for network filesystem mounts
- user want the server to set the uid/gid on newly created files (rather than
- using uid of the client processes you would in a local filesystem).
- Version 1.20
- ------------
- Make transaction counts more consistent. Merge /proc/fs/cifs/SimultaneousOps
- info into /proc/fs/cifs/DebugData. Fix oops in rare oops in readdir
- (in build_wildcard_path_from_dentry). Fix mknod to pass type field
- (block/char/fifo) properly. Remove spurious mount warning log entry when
- credentials passed as mount argument. Set major/minor device number in
- inode for block and char devices when unix extensions enabled.
- Version 1.19
- ------------
- Fix /proc/fs/cifs/Stats and DebugData display to handle larger
- amounts of return data. Properly limit requests to MAX_REQ (50
- is the usual maximum active multiplex SMB/CIFS requests per server).
- Do not kill cifsd (and thus hurt the other SMB session) when more than one
- session to the same server (but with different userids) exists and one
- of the two user's smb sessions is being removed while leaving the other.
- Do not loop reconnecting in cifsd demultiplex thread when admin
- kills the thread without going through unmount.
- Version 1.18
- ------------
- Do not rename hardlinked files (since that should be a noop). Flush
- cached write behind data when reopening a file after session abend,
- except when already in write. Grab per socket sem during reconnect
- to avoid oops in sendmsg if overlapping with reconnect. Do not
- reset cached inode file size on readdir for files open for write on
- client.
- Version 1.17
- ------------
- Update number of blocks in file so du command is happier (in Linux a fake
- blocksize of 512 is required for calculating number of blocks in inode).
- Fix prepare write of partial pages to read in data from server if possible.
- Fix race on tcpStatus field between unmount and reconnection code, causing
- cifsd process sometimes to hang around forever. Improve out of memory
- checks in cifs_filldir
- Version 1.16
- ------------
- Fix incorrect file size in file handle based setattr on big endian hardware.
- Fix oops in build_path_from_dentry when out of memory. Add checks for invalid
- and closing file structs in writepage/partialpagewrite. Add statistics
- for each mounted share (new menuconfig option). Fix endianness problem in
- volume information displayed in /proc/fs/cifs/DebugData (only affects
- affects big endian architectures). Prevent renames while constructing
- path names for open, mkdir and rmdir.
- Version 1.15
- ------------
- Change to mempools for alloc smb request buffers and multiplex structs
- to better handle low memory problems (and potential deadlocks).
- Version 1.14
- ------------
- Fix incomplete listings of large directories on Samba servers when Unix
- extensions enabled. Fix oops when smb_buffer can not be allocated. Fix
- rename deadlock when writing out dirty pages at same time.
- Version 1.13
- ------------
- Fix open of files in which O_CREATE can cause the mode to change in
- some cases. Fix case in which retry of write overlaps file close.
- Fix PPC64 build error. Reduce excessive stack usage in smb password
- hashing. Fix overwrite of Linux user's view of file mode to Windows servers.
- Version 1.12
- ------------
- Fixes for large file copy, signal handling, socket retry, buffer
- allocation and low memory situations.
- Version 1.11
- ------------
- Better port 139 support to Windows servers (RFC1001/RFC1002 Session_Initialize)
- also now allowing support for specifying client netbiosname. NT4 support added.
- Version 1.10
- ------------
- Fix reconnection (and certain failed mounts) to properly wake up the
- blocked users thread so it does not seem hung (in some cases was blocked
- until the cifs receive timeout expired). Fix spurious error logging
- to kernel log when application with open network files killed.
- Version 1.09
- ------------
- Fix /proc/fs module unload warning message (that could be logged
- to the kernel log). Fix intermittent failure in connectathon
- test7 (hardlink count not immediately refreshed in case in which
- inode metadata can be incorrectly kept cached when time near zero)
- Version 1.08
- ------------
- Allow file_mode and dir_mode (specified at mount time) to be enforced
- locally (the server already enforced its own ACLs too) for servers
- that do not report the correct mode (do not support the
- CIFS Unix Extensions).
- Version 1.07
- ------------
- Fix some small memory leaks in some unmount error paths. Fix major leak
- of cache pages in readpages causing multiple read oriented stress
- testcases (including fsx, and even large file copy) to fail over time.
- Version 1.06
- ------------
- Send NTCreateX with ATTR_POSIX if Linux/Unix extensions negotiated with server.
- This allows files that differ only in case and improves performance of file
- creation and file open to such servers. Fix semaphore conflict which causes
- slow delete of open file to Samba (which unfortunately can cause an oplock
- break to self while vfs_unlink held i_sem) which can hang for 20 seconds.
- Version 1.05
- ------------
- fixes to cifs_readpages for fsx test case
- Version 1.04
- ------------
- Fix caching data integrity bug when extending file size especially when no
- oplock on file. Fix spurious logging of valid already parsed mount options
- that are parsed outside of the cifs vfs such as nosuid.
- Version 1.03
- ------------
- Connect to server when port number override not specified, and tcp port
- unitialized. Reset search to restart at correct file when kernel routine
- filldir returns error during large directory searches (readdir).
- Version 1.02
- ------------
- Fix caching problem when files opened by multiple clients in which
- page cache could contain stale data, and write through did
- not occur often enough while file was still open when read ahead
- (read oplock) not allowed. Treat "sep=" when first mount option
- as an override of comma as the default separator between mount
- options.
- Version 1.01
- ------------
- Allow passwords longer than 16 bytes. Allow null password string.
- Version 1.00
- ------------
- Gracefully clean up failed mounts when attempting to mount to servers such as
- Windows 98 that terminate tcp sessions during protocol negotiation. Handle
- embedded commas in mount parsing of passwords.
- Version 0.99
- ------------
- Invalidate local inode cached pages on oplock break and when last file
- instance is closed so that the client does not continue using stale local
- copy rather than later modified server copy of file. Do not reconnect
- when server drops the tcp session prematurely before negotiate
- protocol response. Fix oops in reopen_file when dentry freed. Allow
- the support for CIFS Unix Extensions to be disabled via proc interface.
- Version 0.98
- ------------
- Fix hang in commit_write during reconnection of open files under heavy load.
- Fix unload_nls oops in a mount failure path. Serialize writes to same socket
- which also fixes any possible races when cifs signatures are enabled in SMBs
- being sent out of signature sequence number order.
- Version 0.97
- ------------
- Fix byte range locking bug (endian problem) causing bad offset and
- length.
- Version 0.96
- ------------
- Fix oops (in send_sig) caused by CIFS unmount code trying to
- wake up the demultiplex thread after it had exited. Do not log
- error on harmless oplock release of closed handle.
- Version 0.95
- ------------
- Fix unsafe global variable usage and password hash failure on gcc 3.3.1
- Fix problem reconnecting secondary mounts to same server after session
- failure. Fix invalid dentry - race in mkdir when directory gets created
- by another client between the lookup and mkdir.
-
- Version 0.94
- ------------
- Fix to list processing in reopen_files. Fix reconnection when server hung
- but tcpip session still alive. Set proper timeout on socket read.
- Version 0.93
- ------------
- Add missing mount options including iocharset. SMP fixes in write and open.
- Fix errors in reconnecting after TCP session failure. Fix module unloading
- of default nls codepage
- Version 0.92
- ------------
- Active smb transactions should never go negative (fix double FreeXid). Fix
- list processing in file routines. Check return code on kmalloc in open.
- Fix spinlock usage for SMP.
- Version 0.91
- ------------
- Fix oops in reopen_files when invalid dentry. drop dentry on server rename
- and on revalidate errors. Fix cases where pid is now tgid. Fix return code
- on create hard link when server does not support them.
- Version 0.90
- ------------
- Fix scheduling while atomic error in getting inode info on newly created file.
- Fix truncate of existing files opened with O_CREAT but not O_TRUNC set.
- Version 0.89
- ------------
- Fix oops on write to dead tcp session. Remove error log write for case when file open
- O_CREAT but not O_EXCL
- Version 0.88
- ------------
- Fix non-POSIX behavior on rename of open file and delete of open file by taking
- advantage of trans2 SetFileInfo rename facility if available on target server.
- Retry on ENOSPC and EAGAIN socket errors.
- Version 0.87
- ------------
- Fix oops on big endian readdir. Set blksize to be even power of two (2**blkbits) to fix
- allocation size miscalculation. After oplock token lost do not read through
- cache.
- Version 0.86
- ------------
- Fix oops on empty file readahead. Fix for file size handling for locally cached files.
- Version 0.85
- ------------
- Fix oops in mkdir when server fails to return inode info. Fix oops in reopen_files
- during auto reconnection to server after server recovered from failure.
- Version 0.84
- ------------
- Finish support for Linux 2.5 open/create changes, which removes the
- redundant NTCreate/QPathInfo/close that was sent during file create.
- Enable oplock by default. Enable packet signing by default (needed to
- access many recent Windows servers)
- Version 0.83
- ------------
- Fix oops when mounting to long server names caused by inverted parms to kmalloc.
- Fix MultiuserMount (/proc/fs/cifs configuration setting) so that when enabled
- we will choose a cifs user session (smb uid) that better matches the local
- uid if a) the mount uid does not match the current uid and b) we have another
- session to the same server (ip address) for a different mount which
- matches the current local uid.
- Version 0.82
- ------------
- Add support for mknod of block or character devices. Fix oplock
- code (distributed caching) to properly send response to oplock
- break from server.
- Version 0.81
- ------------
- Finish up CIFS packet digital signing for the default
- NTLM security case. This should help Windows 2003
- network interoperability since it is common for
- packet signing to be required now. Fix statfs (stat -f)
- which recently started returning errors due to
- invalid value (-1 instead of 0) being set in the
- struct kstatfs f_ffiles field.
- Version 0.80
- -----------
- Fix oops on stopping oplock thread when removing cifs when
- built as module.
- Version 0.79
- ------------
- Fix mount options for ro (readonly), uid, gid and file and directory mode.
- Version 0.78
- ------------
- Fix errors displayed on failed mounts to be more understandable.
- Fixed various incorrect or misleading smb to posix error code mappings.
- Version 0.77
- ------------
- Fix display of NTFS DFS junctions to display as symlinks.
- They are the network equivalent. Fix oops in
- cifs_partialpagewrite caused by missing spinlock protection
- of openfile linked list. Allow writebehind caching errors to
- be returned to the application at file close.
- Version 0.76
- ------------
- Clean up options displayed in /proc/mounts by show_options to
- be more consistent with other filesystems.
- Version 0.75
- ------------
- Fix delete of readonly file to Windows servers. Reflect
- presence or absence of read only dos attribute in mode
- bits for servers that do not support CIFS Unix extensions.
- Fix shortened results on readdir of large directories to
- servers supporting CIFS Unix extensions (caused by
- incorrect resume key).
- Version 0.74
- ------------
- Fix truncate bug (set file size) that could cause hangs e.g. running fsx
- Version 0.73
- ------------
- unload nls if mount fails.
- Version 0.72
- ------------
- Add resume key support to search (readdir) code to workaround
- Windows bug. Add /proc/fs/cifs/LookupCacheEnable which
- allows disabling caching of attribute information for
- lookups.
- Version 0.71
- ------------
- Add more oplock handling (distributed caching code). Remove
- dead code. Remove excessive stack space utilization from
- symlink routines.
- Version 0.70
- ------------
- Fix oops in get dfs referral (triggered when null path sent in to
- mount). Add support for overriding rsize at mount time.
- Version 0.69
- ------------
- Fix buffer overrun in readdir which caused intermittent kernel oopses.
- Fix writepage code to release kmap on write data. Allow "-ip=" new
- mount option to be passed in on parameter distinct from the first part
- (server name portion of) the UNC name. Allow override of the
- tcp port of the target server via new mount option "-port="
- Version 0.68
- ------------
- Fix search handle leak on rewind. Fix setuid and gid so that they are
- reflected in the local inode immediately. Cleanup of whitespace
- to make 2.4 and 2.5 versions more consistent.
- Version 0.67
- ------------
- Fix signal sending so that captive thread (cifsd) exits on umount
- (which was causing the warning in kmem_cache_free of the request buffers
- at rmmod time). This had broken as a sideeffect of the recent global
- kernel change to daemonize. Fix memory leak in readdir code which
- showed up in "ls -R" (and applications that did search rewinding).
- Version 0.66
- ------------
- Reconnect tids and fids after session reconnection (still do not
- reconnect byte range locks though). Fix problem caching
- lookup information for directory inodes, improving performance,
- especially in deep directory trees. Fix various build warnings.
- Version 0.65
- ------------
- Finish fixes to commit write for caching/readahead consistency. fsx
- now works to Samba servers. Fix oops caused when readahead
- was interrupted by a signal.
- Version 0.64
- ------------
- Fix data corruption (in partial page after truncate) that caused fsx to
- fail to Windows servers. Cleaned up some extraneous error logging in
- common error paths. Add generic sendfile support.
- Version 0.63
- ------------
- Fix memory leak in AllocMidQEntry.
- Finish reconnection logic, so connection with server can be dropped
- (or server rebooted) and the cifs client will reconnect.
- Version 0.62
- ------------
- Fix temporary socket leak when bad userid or password specified
- (or other SMBSessSetup failure). Increase maximum buffer size to slightly
- over 16K to allow negotiation of up to Samba and Windows server default read
- sizes. Add support for readpages
- Version 0.61
- ------------
- Fix oops when username not passed in on mount. Extensive fixes and improvements
- to error logging (strip redundant newlines, change debug macros to ensure newline
- passed in and to be more consistent). Fix writepage wrong file handle problem,
- a readonly file handle could be incorrectly used to attempt to write out
- file updates through the page cache to multiply open files. This could cause
- the iozone benchmark to fail on the fwrite test. Fix bug mounting two different
- shares to the same Windows server when using different usernames
- (doing this to Samba servers worked but Windows was rejecting it) - now it is
- possible to use different userids when connecting to the same server from a
- Linux client. Fix oops when treeDisconnect called during unmount on
- previously freed socket.
- Version 0.60
- ------------
- Fix oops in readpages caused by not setting address space operations in inode in
- rare code path.
- Version 0.59
- ------------
- Includes support for deleting of open files and renaming over existing files (per POSIX
- requirement). Add readlink support for Windows junction points (directory symlinks).
- Version 0.58
- ------------
- Changed read and write to go through pagecache. Added additional address space operations.
- Memory mapped operations now working.
- Version 0.57
- ------------
- Added writepage code for additional memory mapping support. Fixed leak in xids causing
- the simultaneous operations counter (/proc/fs/cifs/SimultaneousOps) to increase on
- every stat call. Additional formatting cleanup.
- Version 0.56
- ------------
- Fix bigendian bug in order of time conversion. Merge 2.5 to 2.4 version. Formatting cleanup.
- Version 0.55
- ------------
- Fixes from Zwane Mwaikambo for adding missing return code checking in a few places.
- Also included a modified version of his fix to protect global list manipulation of
- the smb session and tree connection and mid related global variables.
- Version 0.54
- ------------
- Fix problem with captive thread hanging around at unmount time. Adjust to 2.5.42-pre
- changes to superblock layout. Remove wasteful allocation of smb buffers (now the send
- buffer is reused for responses). Add more oplock handling. Additional minor cleanup.
- Version 0.53
- ------------
- More stylistic updates to better match kernel style. Add additional statistics
- for filesystem which can be viewed via /proc/fs/cifs. Add more pieces of NTLMv2
- and CIFS Packet Signing enablement.
- Version 0.52
- ------------
- Replace call to sleep_on with safer wait_on_event.
- Make stylistic changes to better match kernel style recommendations.
- Remove most typedef usage (except for the PDUs themselves).
- Version 0.51
- ------------
- Update mount so the -unc mount option is no longer required (the ip address can be specified
- in a UNC style device name. Implementation of readpage/writepage started.
- Version 0.50
- ------------
- Fix intermittent problem with incorrect smb header checking on badly
- fragmented tcp responses
- Version 0.49
- ------------
- Fixes to setting of allocation size and file size.
- Version 0.48
- ------------
- Various 2.5.38 fixes. Now works on 2.5.38
- Version 0.47
- ------------
- Prepare for 2.5 kernel merge. Remove ifdefs.
- Version 0.46
- ------------
- Socket buffer management fixes. Fix dual free.
- Version 0.45
- ------------
- Various big endian fixes for hardlinks and symlinks and also for dfs.
- Version 0.44
- ------------
- Various big endian fixes for servers with Unix extensions such as Samba
- Version 0.43
- ------------
- Various FindNext fixes for incorrect filenames on large directory searches on big endian
- clients. basic posix file i/o tests now work on big endian machines, not just le
- Version 0.42
- ------------
- SessionSetup and NegotiateProtocol now work from Big Endian machines.
- Various Big Endian fixes found during testing on the Linux on 390. Various fixes for compatibility with older
- versions of 2.4 kernel (now builds and works again on kernels at least as early as 2.4.7).
- Version 0.41
- ------------
- Various minor fixes for Connectathon Posix "basic" file i/o test suite. Directory caching fixed so hardlinked
- files now return the correct number of links on fstat as they are repeatedly linked and unlinked.
- Version 0.40
- ------------
- Implemented "Raw" (i.e. not encapsulated in SPNEGO) NTLMSSP (i.e. the Security Provider Interface used to negotiate
- session advanced session authentication). Raw NTLMSSP is preferred by Windows 2000 Professional and Windows XP.
- Began implementing support for SPNEGO encapsulation of NTLMSSP based session authentication blobs
- (which is the mechanism preferred by Windows 2000 server in the absence of Kerberos).
- Version 0.38
- ------------
- Introduced optional mount helper utility mount.cifs and made coreq changes to cifs vfs to enable
- it. Fixed a few bugs in the DFS code (e.g. bcc two bytes too short and incorrect uid in PDU).
- Version 0.37
- ------------
- Rewrote much of connection and mount/unmount logic to handle bugs with
- multiple uses to same share, multiple users to same server etc.
- Version 0.36
- ------------
- Fixed major problem with dentry corruption (missing call to dput)
- Version 0.35
- ------------
- Rewrite of readdir code to fix bug. Various fixes for bigendian machines.
- Begin adding oplock support. Multiusermount and oplockEnabled flags added to /proc/fs/cifs
- although corresponding function not fully implemented in the vfs yet
- Version 0.34
- ------------
- Fixed dentry caching bug, misc. cleanup
- Version 0.33
- ------------
- Fixed 2.5 support to handle build and configure changes as well as misc. 2.5 changes. Now can build
- on current 2.5 beta version (2.5.24) of the Linux kernel as well as on 2.4 Linux kernels.
- Support for STATUS codes (newer 32 bit NT error codes) added. DFS support begun to be added.
- Version 0.32
- ------------
- Unix extensions (symlink, readlink, hardlink, chmod and some chgrp and chown) implemented
- and tested against Samba 2.2.5
- Version 0.31
- ------------
- 1) Fixed lockrange to be correct (it was one byte too short)
- 2) Fixed GETLK (i.e. the fcntl call to test a range of bytes in a file to see if locked) to correctly
- show range as locked when there is a conflict with an existing lock.
- 3) default file perms are now 2767 (indicating support for mandatory locks) instead of 777 for directories
- in most cases. Eventually will offer optional ability to query server for the correct perms.
- 3) Fixed eventual trap when mounting twice to different shares on the same server when the first succeeded
- but the second one was invalid and failed (the second one was incorrectly disconnecting the tcp and smb
- session)
- 4) Fixed error logging of valid mount options
- 5) Removed logging of password field.
- 6) Moved negotiate, treeDisconnect and uloggoffX (only tConx and SessSetup remain in connect.c) to cifssmb.c
- and cleaned them up and made them more consistent with other cifs functions.
- 7) Server support for Unix extensions is now fully detected and FindFirst is implemented both ways
- (with or without Unix extensions) but FindNext and QueryPathInfo with the Unix extensions are not completed,
- nor is the symlink support using the Unix extensions
- 8) Started adding the readlink and follow_link code
- Version 0.3
- -----------
- Initial drop
|