summaryrefslogtreecommitdiff
path: root/source4/libcli/cliconnect.c
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2012-08-02 08:51:13 +0200
committerStefan Metzmacher <metze@samba.org>2012-08-04 09:10:22 +0200
commit67767de4e9e4a3a2cac1f28b590398bd587467da (patch)
tree5b62594a54335936715f9114f2271023d5e7054b /source4/libcli/cliconnect.c
parentc32120b4e93a565c12534b7614becdf573672586 (diff)
downloadsamba-67767de4e9e4a3a2cac1f28b590398bd587467da.tar.gz
samba-67767de4e9e4a3a2cac1f28b590398bd587467da.tar.bz2
samba-67767de4e9e4a3a2cac1f28b590398bd587467da.zip
s4:libcli: add support for SMB_EXTENDED_SIGNATURES during SMBtconX
metze
Diffstat (limited to 'source4/libcli/cliconnect.c')
-rw-r--r--source4/libcli/cliconnect.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/source4/libcli/cliconnect.c b/source4/libcli/cliconnect.c
index d680a7e121..17151923d5 100644
--- a/source4/libcli/cliconnect.c
+++ b/source4/libcli/cliconnect.c
@@ -26,6 +26,7 @@
#include "libcli/raw/raw_proto.h"
#include "libcli/auth/libcli_auth.h"
#include "libcli/smb_composite/smb_composite.h"
+#include "libcli/smb/smbXcli_base.h"
/*
wrapper around smbcli_sock_connect()
@@ -125,6 +126,7 @@ NTSTATUS smbcli_tconX(struct smbcli_state *cli, const char *sharename,
/* setup a tree connect */
tcon.generic.level = RAW_TCON_TCONX;
tcon.tconx.in.flags = TCONX_FLAG_EXTENDED_RESPONSE;
+ tcon.tconx.in.flags |= TCONX_FLAG_EXTENDED_SIGNATURES;
if (cli->transport->negotiate.sec_mode & NEGOTIATE_SECURITY_USER_LEVEL) {
tcon.tconx.in.password = data_blob(NULL, 0);
} else if (cli->transport->negotiate.sec_mode & NEGOTIATE_SECURITY_CHALLENGE_RESPONSE) {
@@ -143,6 +145,10 @@ NTSTATUS smbcli_tconX(struct smbcli_state *cli, const char *sharename,
cli->tree->tid = tcon.tconx.out.tid;
+ if (tcon.tconx.out.options & SMB_EXTENDED_SIGNATURES) {
+ smb1cli_session_protect_session_key(cli->tree->session->smbXcli);
+ }
+
talloc_free(mem_ctx);
return status;