summaryrefslogtreecommitdiff
path: root/source3/smbd
AgeCommit message (Collapse)AuthorFilesLines
2012-09-25Fix bug #9189 - SMB2 Create doesn't return correct MAX ACCESS access mask in ↵Jeremy Allison1-0/+7
blob. If we aren't already granted DELETE access, check if we have DELETE_CHILD in the containing directory.
2012-09-23s3:printing only do printing_subsystem_update when printing is enabledChristian Ambach1-1/+4
no point in calling this if printing was disabled and no spoolss service was started this hurts CTDB clusters as the smbds on the cluster nodes will fight for the single record in the TDB This fixes Bug 9197 - Disabling printing still makes smbd create and access printer_list.tdb
2012-09-22s3:smbd:smb2: initialize variable in vfs_default_durable_reconnect()Michael Adam1-1/+1
Found by Ambi's state-of-the-art compiler!
2012-09-22s3:smbd: remove struct member smbd_smb2_request.cancelled - it was only writtenMichael Adam6-8/+0
2012-09-22s3:smb2_lock: let smbd_smb2_create_cancel() trigger NT_STATUS_CANCELEDStefan Metzmacher1-14/+2
Instead of violating the tevent_req layers. metze
2012-09-22s3:smb2_lock: smbd_smb2_notify_recv() can already return NT_STATUS_CANCELEDStefan Metzmacher1-18/+0
That's why we can remove the code that violates the tevent_req layers. metze
2012-09-22s3:smb2_notify: make use of tevent_req_defer_callback() instead of custom ↵Stefan Metzmacher1-34/+1
tevent_immediate metze
2012-09-22s3:smb2_notify: don't call tevent_req_done() from smbd_smb2_notify_cancel()Stefan Metzmacher1-2/+1
smbd_notify_cancel_by_smbreq() will already trigger this via smbd_smb2_notify_reply() and smbd_smb2_notify_reply_trigger(). metze
2012-09-22s3:smb2_lock: let smbd_smb2_lock_cancel() trigger NT_STATUS_CANCELEDStefan Metzmacher1-26/+3
Instead of violating the tevent_req layers. metze
2012-09-22s3:smb2_server: avoid segfault in smbd_smb2_request_pending_queue()Stefan Metzmacher1-2/+6
Because we should not call smbd_smb2_request_error() on an request that is still running. If the subreq implementes a cancel function, this should take care of triggering smbd_smb2_request_error. metze Signed-off-by: Michael Adam <obnox@samba.org>
2012-09-22s3:smbd:smb2: simplify smbd_smb2_request_validate() and ↵Michael Adam2-51/+3
smbd_smb2_request_dispatch() removes unnneccary checks/assignments for compound_related and next_status and duplicate setting of error status. And remove (now) unused next_status from struct smbd_smb2_request. Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-09-22s3:smbd:smb2: add check for session_status for compound requestsMichael Adam1-3/+3
2012-09-22s3:smb2_server: do the req->next_status check before the signing checksStefan Metzmacher1-15/+15
Windows 2012 returns NT_STATUS_INVALID_PARAMETER to the smb2.compound.invalid1 test if that uses signing (instead of NT_STATUS_ACCESS_DENIED). metze
2012-09-22s3:smb2_server: reset req->last_session_id and req->last_tid after using itStefan Metzmacher1-0/+4
If we can find a valid session or tcon we'll set it after the lookup, but it need to make sure to reset it if we don't find the session. This fixes a problem where a compound unrelated request between related requests doesn't reset the session. If we have 3 requests in a compound chain, request 3 should never use the id's cached from request 1. It should only every inherit handles from request 2. metze
2012-09-22s3: Compound requests should continue processing.Ira Cooper1-3/+2
This patch addresses #9173. Signed-off-by: Michael Adam <obnox@samba.org>
2012-09-21s3:smbd: release the share mode lock before calling exit_server() (bug #9191)Stefan Metzmacher1-0/+2
metze Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Fri Sep 21 22:36:57 CEST 2012 on sn-devel-104
2012-09-20s3:smb2_server: fix usage of invalid memory in smb2_signing_check_pdu()Stefan Metzmacher1-1/+1
metze Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Thu Sep 20 07:18:31 CEST 2012 on sn-devel-104
2012-09-15Add 'bool use_privs' to smbd_calculate_access_mask().Jeremy Allison4-5/+10
Replaces blanket root allow if set. Set to 'false' for all current callers. Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Sat Sep 15 00:37:49 CEST 2012 on sn-devel-104
2012-09-14Fix bad string in debug message (remove it).Jeremy Allison1-4/+2
2012-09-14Add bool use_privs parameter to smbd_check_access_rights()Jeremy Allison5-4/+18
If this is set we should use it in preference to blindly assuming root can do anything. Currently set to 'false' in (most) callers.
2012-09-14Add "backup_intent" bool.Jeremy Allison1-1/+2
2012-09-14Don't call can_write_to_file() if we already have 'fsp->can_write' set.Jeremy Allison1-0/+2
2012-09-13Sigh :-(. Removing optimization prematurely is the root of all evil :-(.Jeremy Allison3-0/+15
Sorry for the mistake, but the LastDir singleton cache in vfs_ChDir() actually plays an important role. When we're processing a stream of SMB1/SMB2/SMB3 requests we don't want to add a chdir()/getcwd() system call pair on every request if they're all on the same connection and dealing with the same base path. I did some testing with a program that times 1,000,000 chdir() requests vs. 1,000,000 strcmp requests and it's a penalty of 10x doing the system calls. Just because it's old code, doesn't mean it's bad :-(. Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Thu Sep 13 21:31:42 CEST 2012 on sn-devel-104
2012-09-12Move cached cwd onto conn struct.Jeremy Allison2-1/+15
This enables us to make VFS modules safe for use in root called code when we've changed directory under conn->connectpath.
2012-09-12Remove ancient "optimization" global LastDir.Jeremy Allison3-18/+3
2012-09-12s3: remove unneeded noquota.c fileBjörn Jacke1-38/+0
Autobuild-User(master): Björn Jacke <bj@sernet.de> Autobuild-Date(master): Wed Sep 12 16:50:50 CEST 2012 on sn-devel-104
2012-09-12s3-rap: Open printers with the right access mask.Andreas Schneider1-3/+3
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org> Autobuild-Date(master): Wed Sep 12 14:05:42 CEST 2012 on sn-devel-104
2012-09-12smbd: Add extra VFS hooks to get the posix ACL as a blobAndrew Bartlett1-0/+21
This will allow us to hash this, rather than the NT ACL it maps to. This will in turn allow us to know if the NT ACL is valid even if we have to change the mapping code. Andrew Bartlett Autobuild-User(master): Andrew Bartlett <abartlet@samba.org> Autobuild-Date(master): Wed Sep 12 07:06:01 CEST 2012 on sn-devel-104
2012-09-12smbd: Remove pre-allocation of ACL array in sys_acl_init()Andrew Bartlett2-4/+4
Instead, this is just handled with realloc in sys_acl_create_entry() This allows us to remove the size element from the SMB_ACL_T. Andrew Bartlett
2012-09-12Make metze happy and the code clearer :-).Jeremy Allison1-0/+6
Ensure we know after the destructor fires we're never going to look at this again. Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Wed Sep 12 03:00:21 CEST 2012 on sn-devel-104
2012-09-11quota: move function again to its belonging ifdef blockBjörn Jacke1-11/+9
Autobuild-User(master): Björn Jacke <bj@sernet.de> Autobuild-Date(master): Tue Sep 11 04:44:28 CEST 2012 on sn-devel-104
2012-09-11s3:proto.h: remove duplicate disk_quotas prototypesBjörn Jacke1-10/+0
2012-09-10s3: delete requests are not specialVolker Lendecke1-16/+0
The only difference between batch and exclusive oplocks is the time of the check: Batch is checked before the share mode check, exclusive after. Signed-off-by: Jeremy Allison <jra@samba.org>
2012-09-10Fix talloc memory heirarchy bug. If there's an SMB2 sessionsetup in flight ↵Jeremy Allison1-5/+36
when we're shut down, we end up freeing the struct smbXsrv_session *session pointer twice. Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Mon Sep 10 23:34:06 CEST 2012 on sn-devel-104
2012-09-10uid_t is a synonym for int on osXMatthieu Patou1-1/+1
This function is clearly osX oriented so we adapt the modifier to the target
2012-09-08s3:vfs_default: add basic support for durable handle request and reconnectMichael Adam2-0/+586
We only grant durable handles for CIFS/SMB2 only access, that means "kernel oplocks", "kernel share modes" and "posix locking" need to be set to "no". For now we also don't grant durable handles if delete on close is active on the handle. Pair-Programmed-With: Stefan Metzmacher <metze@samba.org> Pair-Programmed-With: Volker Lendecke <vl@samba.org>
2012-09-08s3:smbd: make fd_open() publicMichael Adam2-4/+6
2012-09-08s3:smbd: don't set kernel flock if "kernel share modes = no"Michael Adam1-1/+1
Signed-off-by: Stefan Metzmacher <metze@samba.org> Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Sat Sep 8 13:05:05 CEST 2012 on sn-devel-104
2012-09-08s3:smbd: add basic support for durable handle v2 request and reconnectMichael Adam1-2/+129
This does not yet cover persistent handle support which is also negotiated through these create request blobs. Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-09-08s3:smbd: add basic support for durable handle request and reconnectMichael Adam1-46/+203
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org> Pair-Programmed-With: Volker Lendecke <vl@samba.org>
2012-09-08s3:smbd: initial durable handle support: special treatment of durable ↵Michael Adam1-0/+44
handles in close Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-09-08s3:vfs: add durable VFS operationsMichael Adam1-0/+34
This allows a VFS module to implement durable handles in different ways. Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-09-08s3:smbd: add disconnected checks to the open code.Stefan Metzmacher1-0/+31
(delay_for_batch_oplocks, open_mode_check, and delay_for_exclusive_oplocks) Pair-Programmed-With: Michael Adam <obnox@samba.org>
2012-09-08s3:smbd: also close durable file handles in a tdisMichael Adam1-2/+9
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-09-08s3:smbXsrv_open: add smb2srv_open_recreate() to support durable handlesStefan Metzmacher2-1/+210
metze
2012-09-08s3: Fix a panic when shutting downVolker Lendecke1-10/+32
When a client disconnects while we have aio open, there is no close request that cleans up. We can't send out the replies anymore, so just drop the aio requests that are pending. Found using the new python lib writing multiple files simultaneously TODO: check tdis and logoff Signed-off-by: Stefan Metzmacher <metze@samba.org> Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Sat Sep 8 01:27:34 CEST 2012 on sn-devel-104
2012-09-07s3-smbd: Remove OSF1 support from old (pre-sysquotas) codeBjörn Jacke1-65/+0
"recent" Tru64 releases had QUOTACTL_4B support
2012-09-06s3:quota: don't force the block size to 512Björn Jacke1-3/+0
there is no point in forcing the block size to 512 when curblocks is 1. This will only lead to false quota reporting. See bug #3272
2012-09-06s3-smbd: Remove remaining references to removed OS support in old-style ↵Andrew Bartlett1-6/+6
quota code Signed-off-by: Björn Jacke <bj@sernet.de> Autobuild-User(master): Björn Jacke <bj@sernet.de> Autobuild-Date(master): Thu Sep 6 10:47:18 CEST 2012 on sn-devel-104
2012-09-06s3-smbd: Remove IRIX support from old (pre-sysquotas) codeAndrew Bartlett1-129/+0
This should be essentially dead code, as while it is possible to disable sysquotas, the sysquotas has since 2003 supported the 4A varient used on IRIX. Andrew Bartlett Signed-off-by: Björn Jacke <bj@sernet.de>