summaryrefslogtreecommitdiff
path: root/source3/smbd/smb2_sesssetup.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2012-10-02 14:10:21 -0700
committerJeremy Allison <jra@samba.org>2012-10-03 00:59:42 +0200
commitdfd3c31a3f9eea96854b2d22574856368e86b245 (patch)
treef2e4cfa649eca5dffb635728a5c29a98ae1146d5 /source3/smbd/smb2_sesssetup.c
parentc251a6b0442abc13bc8be4ff8de324c1d7706a78 (diff)
downloadsamba-dfd3c31a3f9eea96854b2d22574856368e86b245.tar.gz
samba-dfd3c31a3f9eea96854b2d22574856368e86b245.tar.bz2
samba-dfd3c31a3f9eea96854b2d22574856368e86b245.zip
Fix bug #9222 - smbd ignores the "server signing = no" setting for SMB2.
Still sign if client request is signed, just don't negotiate it in negprot or sessionsetup. Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Wed Oct 3 00:59:42 CEST 2012 on sn-devel-104
Diffstat (limited to 'source3/smbd/smb2_sesssetup.c')
-rw-r--r--source3/smbd/smb2_sesssetup.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/source3/smbd/smb2_sesssetup.c b/source3/smbd/smb2_sesssetup.c
index 2599d2a63d..8bdfd49644 100644
--- a/source3/smbd/smb2_sesssetup.c
+++ b/source3/smbd/smb2_sesssetup.c
@@ -185,6 +185,12 @@ static NTSTATUS smbd_smb2_auth_generic_return(struct smbXsrv_session *session,
struct smbXsrv_session *x = session;
struct smbXsrv_connection *conn = session->connection;
+ if ((lp_server_signing() == SMB_SIGNING_OFF) &&
+ (in_security_mode & SMB2_NEGOTIATE_SIGNING_REQUIRED)) {
+ DEBUG(0,("SMB2 signing required and we have disabled it.\n"));
+ return NT_STATUS_ACCESS_DENIED;
+ }
+
if ((in_security_mode & SMB2_NEGOTIATE_SIGNING_REQUIRED) ||
lp_server_signing() == SMB_SIGNING_REQUIRED) {
x->global->signing_required = true;