summaryrefslogtreecommitdiff
path: root/source3/smbd/smb2_server.c
AgeCommit message (Collapse)AuthorFilesLines
2010-04-18Final fix for #7331 - Compound async SMB 2 requests don't work right.Jeremy Allison1-4/+13
Don't free the cancelled SMB2 req early, let the cancelation function take care of it. Return a NT_STATUS_CANCELLED when we find and cancel a request. Fix our SMB2 error returns to correctly set the structuresize to 9, and add the expected zero byte (see section 2.2.2 in the SMB2 spec.). This causes Samba to pass the test program in this bug report that W2K8R2 fails (heh heh :-). This is because we always cause compound requests to get to a cancelation point before dealing with a cancel request. Jeremy.
2010-04-17Second part of fix for bug #7331 - Compound async SMB 2 requests don't work ↵Jeremy Allison1-58/+158
right. Cause us to match W2K8R2 by sending an interim compound reply followed by a async reply. Jeremy.
2010-04-17First part of fix for bug #7331 - Compound async SMB 2 requests don't work ↵Jeremy Allison1-86/+320
right. Gets us handling SMB2 compound async requests similar to W2K8R2 (and triggers the same client bug in the Win7 redirector). Great thanks to Ira Cooper <samba@ira.wakeful.net> for helping with this and to Metze for the wonderful async framework. The one thing I need to fix to make us identical to W2K8R2 is that when a compound request goes async at the end W2K8R2 splits the replies up into a compound non-async reply followed by a separate async reply. Currently we're doing the whole thing in a compound reply. Jeremy.
2010-04-07Don't forget to initialize *p_creds_requested.Jeremy Allison1-0/+1
Jeremy.
2010-04-06Ensure we total up the correct number of creds requested in a compound request.Jeremy Allison1-1/+7
2010-03-31Make smbd_lock_socket/smbd_unlock_socket recursive with a ref_count.Jeremy Allison1-1/+1
As these always call exit_server, make that part of the function. Use _internal functions for the echo client. Metze please check ! Jeremy.
2010-02-24Change the credential handling so that we start with maxmux creds,Jeremy Allison1-7/+10
and then return to the client the number of credits per operation that they asked for. This is a more sensible algorithm than just blindly returning "20" on every reply, although we will probably still need more changes to this going forward. Jeremy.
2009-08-17s3:smbd: implement SMB2 Cancel correctly.Stefan Metzmacher1-4/+13
metze
2009-08-14s3:smbd: allow SMB2 Cancel to have the async flag setStefan Metzmacher1-6/+8
metze
2009-08-14s3:smbd: fix parsing of the SMB2 bodyStefan Metzmacher1-5/+7
Maybe there's no dynamic part on the wire. metze
2009-08-12libcli: move some common SMB and SMB2 stuff into libcli/smb/Stefan Metzmacher1-1/+1
This will hold code that's shared between source3 and source4. metze
2009-08-08s3:smbd: rename conn => sconn for smbd_server_connection structsStefan Metzmacher1-56/+56
This should avoid confusion between smbd_server_connection and connection_struct variables. metze
2009-07-24Fix a few uninitialized variable warningsVolker Lendecke1-1/+1
I know those warnings are bogus, but both Coverity and gcc don't get it.
2009-07-10s3:smbd: fix parsing of invalid SMB2 requests.Stefan Metzmacher1-2/+2
Because of 0 - 2 => 0xFFFFFFFE, we got EMSGSIZE from the tstream layer. And terminate the transport connection. Instead we should let the caller deal with the invalid parameter, when checking the body size. So the caller always gets at least a 2 byte body. metze
2009-07-02s3:smbd: add marshalling layer for SMB2 Lock supportStefan Metzmacher1-1/+1
metze
2009-07-02s3:smbd: add marshalling layer for SMB2 Find (QueryDirectory) supportStefan Metzmacher1-1/+1
metze
2009-07-02s3:smbd: add marshalling layer for SMB2 Break support (SMB 2.002 only)Stefan Metzmacher1-1/+1
metze
2009-07-02s3:smbd: add marshalling layer for SMB2 SetInfo supportStefan Metzmacher1-1/+1
metze
2009-07-02s3:smbd: add marshalling layer for SMB2 GetInfo supportStefan Metzmacher1-1/+1
metze
2009-07-02s3:smbd: add support for SMB2 NotifyStefan Metzmacher1-1/+1
metze
2009-06-24s3:smbd: add support for async interim SMB2 responses and prepare SMB2 cancelStefan Metzmacher1-1/+155
metze
2009-06-24s3:smbd: keep a list of outstanding SMB2 requestsStefan Metzmacher1-28/+65
metze
2009-06-24s3:smbd: add smbd_smb2_send_oplock_break()Stefan Metzmacher1-0/+88
metze
2009-06-24s3:smbd: the SMB2-COMPOUND test shows that the related vs. unrelated flags ↵Stefan Metzmacher1-0/+7
isn't checked first metze
2009-06-09s3:smbd: only check the next_status for related requestsStefan Metzmacher1-11/+12
metze
2009-06-09s3:smbd: response with the same SMB2 flags as given by the clientStefan Metzmacher1-1/+4
...but also add the response flag. metze
2009-06-09s3:smbd: only pass the chained file handle for related compounded SMB2 requestsStefan Metzmacher1-0/+4
metze
2009-06-09s3:smbd: make sure we pad compounded SMB2 responses to 8 bytesStefan Metzmacher1-2/+47
metze
2009-06-09s3:smbd: more validation of the incoming SMB2 requestsStefan Metzmacher1-4/+94
metze
2009-06-09s3:smbd: for now ignore all non NBT Session Message requests for SMB2Stefan Metzmacher1-0/+9
metze
2009-06-09s3:smbd: don't include 1 byte padding for the dynamic buffer of SMB2 responsesStefan Metzmacher1-21/+9
It seems that Windows 2008 and Windows 7 doesn't do this anymore. metze
2009-06-05s3:smbd: fix the logic for compounded requestsStefan Metzmacher1-1/+1
metze
2009-06-05s3:smbd: only setup the dyn iovec if a a dyn blob is givenStefan Metzmacher1-2/+1
Otherwise leave the default in there, which takes care of padding for compounded requests. metze
2009-06-05s3:smbd: add support for SMB2 IoctlStefan Metzmacher1-1/+1
We don't implement any level yet. metze
2009-06-05s3:smbd: make smbd_server_connection_terminate() a macroStefan Metzmacher1-3/+5
metze
2009-06-05s3:smbd: implement smbd_smb2_request_error/done() as macros on top of the ↵Stefan Metzmacher1-20/+11
_ex() function metze
2009-06-04Change smbd_smb2_request_error() to add a __location__.Jeremy Allison1-6/+7
This allows quick identification of smb2 parsing errors. Jeremy.
2009-06-04Add NTLMSSP SPNEGO to smb2 auth. Tested with Win7.Jeremy Allison1-1/+2
Jeremy.
2009-06-03s3:smbd: implement SMB2 WriteStefan Metzmacher1-1/+1
This only works on file shares. metze
2009-06-03s3:smbd: implement SMB2 ReadStefan Metzmacher1-1/+1
This only works works on file shares. metze
2009-06-03s3:smbd: implement SMB2 FlushStefan Metzmacher1-1/+1
This works only on file shares yet. metze
2009-06-03s3:smbd: implement SMB2 CloseStefan Metzmacher1-1/+1
metze
2009-06-03s3:smbd: implement a simple version of SMB2 CreateStefan Metzmacher1-1/+1
It only work on file shares and just ignores any additional Create Context Values. metze
2009-06-03s3:smbd: create a user_struct for compat in SMB2 Session SetupStefan Metzmacher1-1/+1
metze
2009-06-03s3:smbd: remove old comment, we support SMB2 signing nowStefan Metzmacher1-2/+0
metze
2009-05-26s3:smbd: move SMB1 specific stuff into a substructure of smbd_server_connectionStefan Metzmacher1-1/+1
metze
2009-05-26s3:smbd: add support for SMB2 signingStefan Metzmacher1-42/+72
metze
2009-05-22s3:smbd: implement SMB2 Tree DisconnectStefan Metzmacher1-1/+1
metze
2009-05-22s3:smbd: implement SMB2 Tree ConnectStefan Metzmacher1-1/+53
For now this only checks if the share is present or not. metze
2009-05-22s3:smbd: SMB2 session ids are 64bit...Stefan Metzmacher1-1/+1
We only grand ids up to 0x0000000000FFFFFF, because that's what our idtree implementation can handle. But also 16777215 sessions on one tcp connection should be enough:-) metze