History log of /fs/cifs/netmisc.c
Revision Date Author Comments
2ae83bf93882d1ec0cd775c489bd1bee611f792e 15-Sep-2014 Steve French <smfrench@gmail.com> [CIFS] Fix setting time before epoch (negative time values)

xfstest generic/258 sets the time on a file to a negative value
(before 1970) which fails since do_div can not handle negative
numbers. In addition 'normal' division of 64 bit values does
not build on 32 bit arch so have to workaround this by special
casing negative values in cifs_NTtimeToUnix

Samba server also has a bug with this (see samba bugzilla 7771)
but it works to Windows server.

Signed-off-by: Steve French <smfrench@gmail.com>
179d61839bafa924ff6f1960436339abdc911650 13-May-2014 Fabian Frederick <fabf@skynet.be> fs/cifs/netmisc.c: convert printk to pr_foo()

Also fixes array checkpatch warning and converts it to static const
(suggested by Joe Perches).

Cc: Joe Perches <joe@perches.com>
Cc: Steve French <sfrench@samba.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Fabian Frederick <fabf@skynet.be>
Signed-off-by: Steve French <smfrench@gmail.com>
cce0244ab0af78f8f01ad826d2f9813a9580b105 07-Nov-2013 Jeff Layton <jlayton@redhat.com> cifs: change ERRnomem error mapping from ENOMEM to EREMOTEIO

Sometimes, the server will report an error that basically indicates
that it's running out of resources. These include these under SMB1:

NT_STATUS_NO_MEMORY
NT_STATUS_SECTION_TOO_BIG
NT_STATUS_TOO_MANY_PAGING_FILES

...and this one under SMB2:

STATUS_NO_MEMORY

Currently, this gets mapped to ENOMEM by the client, but that's
confusing as an ENOMEM error is typically an indicator that the
client is out of memory.

Change these errors to instead map to EREMOTEIO to indicate that
the problem is actually server-side and not on the client.

Reported-by: "ISHIKAWA,chiaki" <ishikawa@yk.rim.or.jp>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>
0c26606cbe4937f2228a27bb0c2cad19855be87a 13-Oct-2013 Tim Gardner <tim.gardner@canonical.com> cifs: ntstatus_to_dos_map[] is not terminated

Functions that walk the ntstatus_to_dos_map[] array could
run off the end. For example, ntstatus_to_dos() loops
while ntstatus_to_dos_map[].ntstatus is not 0. Granted,
this is mostly theoretical, but could be used as a DOS attack
if the error code in the SMB header is bogus.

[Might consider adding to stable, as this patch is low risk - Steve]

Reviewed-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Signed-off-by: Steve French <smfrench@gmail.com>
f96637be081141d6f8813429499f164260b49d70 05-May-2013 Joe Perches <joe@perches.com> [CIFS] cifs: Rename cERROR and cFYI to cifs_dbg

It's not obvious from reading the macro names that these macros
are for debugging. Convert the names to a single more typical
kernel style cifs_dbg macro.

cERROR(1, ...) -> cifs_dbg(VFS, ...)
cFYI(1, ...) -> cifs_dbg(FYI, ...)
cFYI(DBG2, ...) -> cifs_dbg(NOISY, ...)

Move the terminating format newline from the macro to the call site.

Add CONFIG_CIFS_DEBUG function cifs_vfs_err to emit the
"CIFS VFS: " prefix for VFS messages.

Size is reduced ~ 1% when CONFIG_CIFS_DEBUG is set (default y)

$ size fs/cifs/cifs.ko*
text data bss dec hex filename
265245 2525 132 267902 4167e fs/cifs/cifs.ko.new
268359 2525 132 271016 422a8 fs/cifs/cifs.ko.old

Other miscellaneous changes around these conversions:

o Miscellaneous typo fixes
o Add terminating \n's to almost all formats and remove them
from the macros to be more kernel style like. A few formats
previously had defective \n's
o Remove unnecessary OOM messages as kmalloc() calls dump_stack
o Coalesce formats to make grep easier,
added missing spaces when coalescing formats
o Use %s, __func__ instead of embedded function name
o Removed unnecessary "cifs: " prefixes
o Convert kzalloc with multiply to kcalloc
o Remove unused cifswarn macro

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>
47c78f4a70d791ff44cab3254b489605a52e3181 11-Mar-2013 Sachin Prabhu <sprabhu@redhat.com> cifs: map NT_STATUS_SHARING_VIOLATION to EBUSY instead of ETXTBSY

NT_SHARING_VIOLATION errors are mapped to ETXTBSY which is unexpected
for operations such as unlink where we can hit these errors.

The patch maps the error NT_SHARING_VIOLATION to EBUSY instead. The
patch also replaces all instances of ETXTBSY in
cifs_rename_pending_delete() with EBUSY.

Signed-off-by: Sachin Prabhu <sprabhu@redhat.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
b979aaa1777259330435c47f900833dabe9189e8 26-Nov-2012 Jeff Layton <jlayton@redhat.com> cifs: get rid of smb_vol->UNCip and smb_vol->port

Passing this around as a string is contorted and painful. Instead, just
convert these to a sockaddr as soon as possible, since that's how we're
going to work with it later anyway.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>
4f2b86aba87a2654a1258ffe09c22ce70ab69d60 24-Sep-2012 Jeff Layton <jlayton@redhat.com> cifs: change DOS/NT/POSIX mapping of ERRnoresource

ERRnoresource is an ERRSRV level (aka server-side) error and means "No
resources currently available for request". Currently that maps to POSIX
-ENOBUFS. No NT errors map to it currently.

NT_STATUS_INSUFFICIENT_RESOURCES and NT_STATUS_INSUFF_SERVER_RESOURCES
are also similar in meaning. Currently the client maps those to
ERRnomem, which maps to -ENOMEM in POSIX.

All of these mappings seem to be quite wrong to me and are confusing for
users. All of the above errors indicate problems on the server, not the
client. Reporting -ENOMEM or -ENOBUFS implies that the client is running
out of resources.

This patch changes those mappings. The NT_* errors are changed to map to
the SRV level ERRnoresource. That error is in turn changed to return
-EREMOTEIO which is the only POSIX error I could find that conveys that
something went wrong on the server. While we're at it, change the SMB2
equivalent error to return the same.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Acked-by: Suresh Jayaraman <sjayaraman@suse.com>
Signed-off-by: Steve French <smfrench@gmail.com>
92fc65a74a2be1388d774f7dbf82c9adea1745cf 19-Sep-2012 Pavel Shilovsky <pshilovsky@samba.org> CIFS: Move readdir code to ops struct

Signed-off-by: Pavel Shilovsky <pshilovsky@samba.org>
Signed-off-by: Steve French <smfrench@gmail.com>
2545e0720a5a4bf8ebccc6f793f97a246cf3f18d 01-Mar-2012 Dan Carpenter <dan.carpenter@oracle.com> cifs: writing past end of struct in cifs_convert_address()

"s6->sin6_scope_id" is an int bits but strict_strtoul() writes a long
so this can corrupt memory on 64 bit systems.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
5ffef7bf1dd582e93b15f8cc735328a556a1d2c4 23-Mar-2012 Pavel Shilovsky <piastry@etersoft.ru> CIFS: Separate protocol-specific code from cifs_readv_receive code

Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
2c8f981d93f830c167c811f046b5107cc24b6e1b 19-May-2011 Jeff Layton <jlayton@redhat.com> cifs: consolidate SendReceive response checks

Further consolidate the SendReceive code by moving the checks run over
the packet into a separate function that all the SendReceive variants
can call.

We can also eliminate the check for a receive_len that's too big or too
small. cifs_demultiplex_thread already checks that and disconnects the
socket if that occurs, while setting the midStatus to MALFORMED. It'll
never call this code if that's the case.

Finally do a little cleanup. Use "goto out" on errors so that the flow
of code in the normal case is more evident. Also switch the logErr
variable in map_smb_to_linux_error to a bool.

Reviewed-by: Pavel Shilovsky <piastry@etersoft.ru>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
820a803ffac3ef591e597bc107f8e289a823a29c 04-May-2011 Jeff Layton <jlayton@redhat.com> cifs: keep BCC in little-endian format

This is the same patch as originally posted, just with some merge
conflicts fixed up...

Currently, the ByteCount is usually converted to host-endian on receive.
This is confusing however, as we need to keep two sets of routines for
accessing it, and keep track of when to use each routine. Munging
received packets like this also limits when the signature can be
calulated.

Simplify the code by keeping the received ByteCount in little-endian
format. This allows us to eliminate a set of routines for accessing it
and we can now drop the *_le suffixes from the accessor functions since
that's now implied.

While we're at it, switch all of the places that read the ByteCount
directly to use the get_bcc inline which should also clean up some
unaligned accesses.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
9616125611ee47693186533d76e403856a36b3c8 16-Feb-2011 Jeff Layton <jlayton@redhat.com> cifs: fix handling of scopeid in cifs_convert_address

The code finds, the '%' sign in an ipv6 address and copies that to a
buffer allocated on the stack. It then ignores that buffer, and passes
'pct' to simple_strtoul(), which doesn't work right because we're
comparing 'endp' against a completely different string.

Fix it by passing the correct pointer. While we're at it, this is a
good candidate for conversion to strict_strtoul as well.

Cc: stable@kernel.org
Cc: David Howells <dhowells@redhat.com>
Reported-by: Björn JACKE <bj@sernet.de>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
690c522fa5a62825af880775e3ef1e55755667b2 20-Jan-2011 Jeff Layton <jlayton@redhat.com> cifs: use get/put_unaligned functions to access ByteCount

It's possible that when we access the ByteCount that the alignment
will be off. Most CPUs deal with that transparently, but there's
usually some performance impact. Some CPUs raise an exception on
unaligned accesses.

Fix this by accessing the byte count using the get_unaligned and
put_unaligned inlined functions. While we're at it, fix the types
of some of the variables that end up getting returns from these
functions.

Acked-by: Pavel Shilovsky <piastryyy@gmail.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
56c24305d1494a7e345c75669dc60e8b231b735b 11-Jan-2011 Jeff Layton <jlayton@redhat.com> cifs: cFYI the entire error code in map_smb_to_linux_error

We currently only print the DOS error part.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
32670396e7fc6e4f37451a69339968985461a374 03-Sep-2010 Jeff Layton <jlayton@redhat.com> cifs: prevent possible memory corruption in cifs_demultiplex_thread

cifs_demultiplex_thread sets the addr.sockAddr.sin_port without any
regard for the socket family. While it may be that the error in question
here never occurs on an IPv6 socket, it's probably best to be safe and
set the port properly if it ever does.

Break the port setting code out of cifs_fill_sockaddr and into a new
function, and call that from cifs_demultiplex_thread.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
67b7626a0512d12e34b38ff45e32c693cf9c79a1 22-Jul-2010 David Howells <dhowells@redhat.com> CIFS: Make cifs_convert_address() take a const src pointer and a length

Make cifs_convert_address() take a const src pointer and a length so that all
the strlen() calls in their can be cut out and to make it unnecessary to modify
the src string.

Also return the data length from dns_resolve_server_name_to_ip() so that a
strlen() can be cut out of cifs_compose_mount_options() too.

Acked-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
3572d2857f61f720082740cc17e2d99b45e7af7f 26-Jul-2010 Jeff Layton <jlayton@redhat.com> cifs: map NT_STATUS_ERROR_WRITE_PROTECTED to -EROFS

Seems like a more sensible mapping than -EIO.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
50d971602a6c4bf1abe1f3873686f431d7539dfe 07-Jul-2010 Jeff Layton <jlayton@redhat.com> cifs: set the port in sockaddr in a more clearly defined fashion

This patch should replace the patch I sent a couple of weeks ago to
set the port in cifs_convert_address.

Currently we set this in cifs_find_tcp_session, but that's more of a
side effect than anything. Add a new function called cifs_fill_sockaddr.
Have it call cifs_convert_address and then set the port.

This also allows us to skip passing in the port as a separate parm to
cifs_find_tcp_session.

Also, change cifs_convert_address take a struct sockaddr * rather than
void * to make it clearer how this function should be called.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
b6b38f704a8193daba520493ebdaf7e819962fc8 21-Apr-2010 Joe Perches <joe@perches.com> [CIFS] Neaten cERROR and cFYI macros, reduce text space

Neaten cERROR and cFYI macros, reduce text space
~2.5K

Convert '__FILE__ ": " fmt' to '"%s: " fmt', __FILE__' to save text space
Surround macros with do {} while
Add parentheses to macros
Make statement expression macro from macro with assign
Remove now unnecessary parentheses from cFYI and cERROR uses

defconfig with CIFS support old
$ size fs/cifs/built-in.o
text data bss dec hex filename
156012 1760 148 157920 268e0 fs/cifs/built-in.o

defconfig with CIFS support old
$ size fs/cifs/built-in.o
text data bss dec hex filename
153508 1760 148 155416 25f18 fs/cifs/built-in.o

allyesconfig old:
$ size fs/cifs/built-in.o
text data bss dec hex filename
309138 3864 74824 387826 5eaf2 fs/cifs/built-in.o

allyesconfig new
$ size fs/cifs/built-in.o
text data bss dec hex filename
305655 3864 74824 384343 5dd57 fs/cifs/built-in.o

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
681bf72e4893a187cf6b6b62c08fc193f81c8c2f 11-Jun-2009 Jeff Layton <jlayton@redhat.com> cifs: have cifs parse scope_id out of IPv6 addresses and use it

This patch has CIFS look for a '%' in an IPv6 address. If one is
present then it will try to treat that value as a numeric interface
index suitable for stuffing into the sin6_scope_id field.

This should allow people to mount servers on IPv6 link-local addresses.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Acked-by: David Holder <david@erion.co.uk>
Signed-off-by: Steve French <sfrench@us.ibm.com>
361ea1ae5451040cd254eee0b6df64581080b2cc 15-Jun-2009 Steve French <sfrench@us.ibm.com> [CIFS] Fix build break

Signed-off-by: Steve French <sfrench@us.ibm.com>
1e68b2b2756fc3488ecbade5ad5f13302b3aaafc 11-Jun-2009 Jeff Layton <jlayton@redhat.com> cifs: add new routine for converting AF_INET and AF_INET6 addrs

...to consolidate some logic used in more than one place.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
c4a2c08db7d976c2e23a97da5d69ec7c9701034d 27-May-2009 Jeff Layton <jlayton@redhat.com> cifs: make cnvrtDosUnixTm take a little-endian args and an offset

The callers primarily end up converting the args from le anyway. Also,
most of the callers end up needing to add an offset to the result. The
exception to these rules is cnvrtDosCifsTm, but there are no callers of
that function, so we might as well remove it.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Steve French <sfrench@us.ibm.com>
07119a4df8c8c77d888f2f46964ea9512ea84ff8 27-May-2009 Jeff Layton <jlayton@redhat.com> cifs: have cifs_NTtimeToUnix take a little-endian arg

...and just have the function call le64_to_cpu.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Steve French <sfrench@us.ibm.com>
9e39b0ae8af46c83b85dae7ff5251911a80fce5a 30-Apr-2009 Steve French <sfrench@us.ibm.com> [CIFS] Remove unneeded QuerySymlink call and fix mapping for unmapped status

Signed-off-by: Steve French <sfrench@us.ibm.com>
582d21e5e319d38c0485d8b9e92f6f2341f7c79b 13-May-2008 Steve French <sfrench@us.ibm.com> [CIFS] cleanup old checkpatch warnings

Signed-off-by: Steve French <sfrench@us.ibm.com>
7c5e628f95b440b69332b1ed3eb112648fc8f7ff 08-May-2008 Igor Mammedov <niallain@gmail.com> [CIFS] Fixed build warning in is_ip

Signed-off-by: Igor Mammedov <niallain@gmail.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
90c81e0b0eda214196cbe4340facbce8cc797ee7 12-Feb-2008 Steve French <sfrench@us.ibm.com> [CIFS] clean up some hard to read ifdefs

Christoph had noticed too many ifdefs in the CIFS code making it
hard to read. This patch removes about a quarter of them from
the C files in cifs by improving a few key ifdefs in the .h files.

Signed-off-by: Steve French <sfrench@us.ibm.com>
ad7a2926b9e53cfb3020d15bdfacacc54e2b63da 08-Feb-2008 Steve French <sfrench@us.ibm.com> [CIFS] reduce checkpatch warnings

Signed-off-by: Steve French <sfrench@us.ibm.com>
63d2583f5a1a0b72fea3f2171f23f0ca8fa556ec 05-Nov-2007 Steve French <sfrench@us.ibm.com> [CIFS] Fix walking out end of cifs dacl

Acked-by: Shirish Pargaonkar <shirishp@us.ibm.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
1fb64bfc45b9ee5092b72474a5df216b8a0c7ff9 01-Nov-2007 Steve French <sfrench@us.ibm.com> [CIFS] when mount helper missing fix slash wrong direction in share

Kernel bugzilla bug #9228

If mount helper (mount.cifs) missing, mounts with form like
//10.11.12.13/c$ would not work (only mounts with slash e.g.
//10.11.12.13\\c$ would work) due to problem with slash supposed
to be converted to backslash by the mount helper (which is not
there).

If we fail on converting an IPv4 address in in4_pton then
try to canonicalize the first slash (ie between sharename
and host ip address) if necessary. If we have to retry
to check for IPv6 address the slash is already converted
if necessary.

Signed-off-by: Steve French <sfrench@us.ibm.com>
630f3f0c45a80ab907d216191ef4a205c249fa1b 25-Oct-2007 Steve French <sfrench@us.ibm.com> [CIFS] acl support part 6

Acked-by: Shirish Pargaonkar <shirishp@us.ibm.com>
CC: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
a761ac579b89bc1f00212a42401398108deba65c 18-Oct-2007 Steve French <sfrench@us.ibm.com> [CIFS] log better errors on failed mounts

Also returns more accurate errors to mount for the cases of
account expired and password expired

Acked-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
d5d18501090179d557a4ca976d1c30bfaf5de091 17-Oct-2007 Steve French <sfrench@us.ibm.com> [CIFS] Fix minor problems noticed by scan

Coverity scan pointed out some minor possible errors.

Signed-off-by: Steve French <sfrench@us.ibm.com>
63135e088a604b955746c51964c195c8d3ebac11 17-Jul-2007 Steve French <sfrench@us.ibm.com> [CIFS] More whitespace/formatting fixes (noticed by checkpatch)

Signed-off-by: Steve French <sfrench@us.ibm.com>
4a379e6657ae2dd910f9f06d46bd7c05fbe9ed5c 15-Jul-2007 Steve French <sfrench@us.ibm.com> [CIFS] Fix build break - inet.h not included when experimental ifdef off

Signed-off-by: Steve French <sfrench@us.ibm.com>
50c2f75388727018c3c357454a247072915a9e3f 13-Jul-2007 Steve French <sfrench@us.ibm.com> [CIFS] whitespace/formatting fixes

This should be the last big batch of whitespace/formatting fixes.
checkpatch warnings for the cifs directory are down about 90% and
many of the remaining ones are harder to remove or make the code
harder to read.

Signed-off-by: Steve French <sfrench@us.ibm.com>
fb8c4b14d9259ba467241a7aaeb712caedce7ee8 10-Jul-2007 Steve French <sfrench@us.ibm.com> [CIFS] whitespace cleanup

More than halfway there

Signed-off-by: Steve French <sfrench@us.ibm.com>
3870253efb65e1960421ca74f5d336218c28fc5b 08-Jul-2007 Steve French <sfrench@us.ibm.com> [CIFS] more whitespace fixes

Signed-off-by: Steve French <sfrench@us.ibm.com>
790fe579f5006b72dfd2814f9263a73b0b455e81 07-Jul-2007 Steve French <sfrench@us.ibm.com> [CIFS] more whitespace cleanup

Signed-off-by: Steve French <sfrench@us.ibm.com>
d20acd09e3bf89aa23af034b8c2d0f5653577ea9 06-Jul-2007 Jeff <jlayton@redhat.com> [CIFS] ipv6 support no longer experimental

Signed-off-by: Steve French <sfrench@us.ibm.com>
5858ae44e289ac6c809af3fe81b9a6ed41914d41 25-Apr-2007 Steve French <sfrench@us.ibm.com> [CIFS] Add IPv6 support

IPv6 support was started a few years ago in the cifs client, but lacked a
kernel helper function for parsing the ascii form of the ipv6 address. Now
that that is added (and now IPv6 is the default that some OS use now) it
was fairly easy to finish the cifs ipv6 support. This requires that
CIFS_EXPERIMENTAL be enabled and (at least until the mount.cifs module is
modified to use a new ipv6 friendly call instead of gethostbyname) and the
ipv6 address be passed on the mount as "ip=" mount option.

Thanks

Signed-off-by: Steve French <sfrench@us.ibm.com>
533f90af6d90b9e4859a158565385d1d84a79f75 12-Oct-2006 Steve French <sfrench@us.ibm.com> [CIFS] Fix old DOS time conversion to handle timezone

Signed-off-by: Steve French <sfrench@us.ibm.com>
70903ca004fef17b0f6483714baefdb2f6ecceb0 11-Oct-2006 Steve French <sfrench@us.ibm.com> [CIFS] Do not need to adjust for Jan/Feb for leap day
calculation in 2100 (year divisible by 100)

Signed-off-by: Yehuda Sadeh Weinraub <Yehuda.Sadeh@expand.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
438dd926260f11ff01fc3441ac6dd4c412d20ea4 11-Oct-2006 Steve French <sfrench@us.ibm.com> [CIFS] Fix leaps year calculation for years after 2100

Signed-off-by: Steve French <sfrench@us.ibm.com>
268f3be177ce93791da38facc34126b5038cd851 06-Oct-2006 Steve French <sfrench@us.ibm.com> [CIFS] readdir (ffirst) enablement of accurate timestamps from legacy servers

Signed-off-by: Steve French <sfrench@us.ibm.com>
1bd5bbcb6531776a8f73e2cc6287fc4dd542e1c7 28-Sep-2006 Steve French <sfrench@us.ibm.com> [CIFS] Legacy time handling for Win9x and OS/2 part 1

Signed-off-by: Steve French <sfrench@us.ibm.com>
7ee1af765dfa3146aef958258003245e082284e5 02-Aug-2006 Jeremy Allison <jra@samba.com> [CIFS]

Allow Windows blocking locks to be cancelled via a
CANCEL_LOCK call. TODO - restrict this to servers
that support NT_STATUS codes (Win9x will probably
not support this call).

Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Steve French <sfrench@us.ibm.com>
(cherry picked from 570d4d2d895569825d0d017d4e76b51138f68864 commit)
43411d699e8cf3293674da558d31a02e0012aa9d 02-Jun-2006 Steve French <sfrench@us.ibm.com> [CIFS] Fix mapping of old SMB return code Invalid Net Name so it is
recognized on mount

the old mapping of this was to ENODEV (instead of ENXIO) - but
ENODEV is what mount returns when the cifs driver will not load
so change this to map to ENXIO (which was what the equivalent
condition returned for mapping errors from more modern servers)

Signed-off-by: Steve French <sfrench@us.ibm.com>
7c7b25bc8e392aea781324efa771bc191377b876 01-Jun-2006 Steve French <sfrench@us.ibm.com> [CIFS] Support for setting up SMB sessions to legacy lanman servers part 2
6ab16d249513a50bef3f1b275cea6aa8d3f51832 30-Nov-2005 Steve French <sfrench@us.ibm.com> [CIFS] Fix umount --force to wake up the pending response queue, not just
the request queue. Also periodically wakeup response_q so threads can
check if stuck requests have timed out. Workaround Windows server illegal smb
length on transact2 findfirst response.

Signed-off-by: Steve French <sfrench@us.ibm.com>
1047abc159b4eb4ba4a7342a0969e16e9d4b4c69 12-Oct-2005 Steve French <sfrench@us.ibm.com> [CIFS] CIFS Stats improvements

New cifs_writepages routine was not updated bytes written in cifs stats.
Also added ability to clear /proc/fs/cifs/Stats by writing (0 or 1) to it.
Signed-off-by: Steve French <sfrench@us.ibm.com>
70ca734a14366b634224a1e4586d43b36b65ab67 23-Sep-2005 Steve French <sfrench@us.ibm.com> [CIFS] Various minor bigendian fixes and sparse level 2 warning message fixes
Most important of these fixes mapchars on bigendian and a few statfs fields

Signed-off-by: Shaggy (shaggy@austin.ibm.com)
Signed-off-by: Steve French (sfrench@us.ibm.com)
2096243885ee34b78cb57ce835e07c8536a67d2a 22-Sep-2005 Steve French <sfrench@us.ibm.com> [CIFS] Add support for legacy servers part nine. statfs (df and du) is now
functional, and the length check is fixed so readdir does not throw a
warning message when windows me messes up the response to FindFirst
of an empty dir (with only . and ..).

Signed-off-by: Steve French (sfrench@us.ibm.com)
36358c21423d58dde90aedde2b8517192c4092f4 03-Jun-2005 Alexey Dobriyan <adobriyan@mail.ru> [CIFS] fs/cifs/netmisc.c: fix sparse warning

Signed-off-by: Steve French <sfrench@us.ibm.com>
Signed-off-by: Alexey Dobriyan <adobriyan@mail.ru>
Signed-off-by: Domen Puncer <domen@coderock.org>
11aa0149d0e49ee1791735ec4ae3079b27b9a68e 29-Apr-2005 Steve French <smfrench@austin.rr.com> [PATCH] cifs: Fix mapping of EMLINK case

Signed-off-by: Steve French (sfrench@us.ibm.com)
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
75cf6bdc52d86ca815f1129529e43f0d904b18d5 29-Apr-2005 Steve French <smfrench@austin.rr.com> [PATCH] cifs: Gracefully turn off serverino (when serverino is enabled on mount)

Old servers such as NT4 do not support this level of FindFirst (and
retry with a lower infolevel)

Signed-off-by: Steve French (sfrench@us.ibm.com)
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 17-Apr-2005 Linus Torvalds <torvalds@ppc970.osdl.org> Linux-2.6.12-rc2

Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.

Let it rip!