diff options
author | Jeremy Allison <jra@samba.org> | 2003-07-18 00:53:34 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2003-07-18 00:53:34 +0000 |
commit | 814e987c6241601fb03335b2ba9a633d65cc5e23 (patch) | |
tree | 946b50c4cc4a8a6ebd4c4fb604413d8ce31fc828 /source3/smbd/negprot.c | |
parent | 5b4a2dfd2b7fdc5006452126f3b1b8b4f1bc7fe2 (diff) | |
download | samba-814e987c6241601fb03335b2ba9a633d65cc5e23.tar.gz samba-814e987c6241601fb03335b2ba9a633d65cc5e23.tar.bz2 samba-814e987c6241601fb03335b2ba9a633d65cc5e23.zip |
Signing so far... the client code fails on a SMBtrans2 secondary transaction
I think (my changes haven't affected this I believe). Initial support on the
server side for smbclient. Still doesn't work for w2k clients I think...
Work in progress..... (don't change).
Jeremy.
(This used to be commit e5714edc233424c2f74edb6d658f32f8e0ec9275)
Diffstat (limited to 'source3/smbd/negprot.c')
-rw-r--r-- | source3/smbd/negprot.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/source3/smbd/negprot.c b/source3/smbd/negprot.c index 0b58eb3eb2..28e3cf97d1 100644 --- a/source3/smbd/negprot.c +++ b/source3/smbd/negprot.c @@ -278,11 +278,19 @@ static int reply_nt1(char *inbuf, char *outbuf) secword |= NEGOTIATE_SECURITY_CHALLENGE_RESPONSE; if (lp_server_signing()) { - secword |= NEGOTIATE_SECURITY_SIGNATURES_ENABLED; - /* No raw mode with smb signing. */ - capabilities &= ~CAP_RAW_MODE; - if (lp_server_signing() == Required) - secword |=NEGOTIATE_SECURITY_SIGNATURES_REQUIRED; + if (lp_security() >= SEC_USER) { + secword |= NEGOTIATE_SECURITY_SIGNATURES_ENABLED; + /* No raw mode with smb signing. */ + capabilities &= ~CAP_RAW_MODE; + if (lp_server_signing() == Required) + secword |=NEGOTIATE_SECURITY_SIGNATURES_REQUIRED; + srv_set_signing_negotiated(); + } else { + DEBUG(0,("reply_nt1: smb signing is incompatible with share level security !\n")); + if (lp_server_signing() == Required) { + exit_server("reply_nt1: smb signing required and share level security selected."); + } + } } set_message(outbuf,17,0,True); |