summaryrefslogtreecommitdiff
path: root/source4/libcli/smb2/session.c
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2011-10-17 09:22:33 +0200
committerAndrew Bartlett <abartlet@samba.org>2011-10-18 13:13:33 +1100
commite7d5f0a357c42593a015b80390dedf920117a7e2 (patch)
treea4fa1a53f0294607b4abeb6f389ce719502fe849 /source4/libcli/smb2/session.c
parent0f2b27e7d428e75b8e6079ee5f36a0cccd4d1785 (diff)
downloadsamba-e7d5f0a357c42593a015b80390dedf920117a7e2.tar.gz
samba-e7d5f0a357c42593a015b80390dedf920117a7e2.tar.bz2
samba-e7d5f0a357c42593a015b80390dedf920117a7e2.zip
gensec: move event context from gensec_*_init() to gensec_update()
This avoids keeping the event context around on a the gensec_security context structure long term. In the Samba3 server, the event context we either supply is a NULL pointer as no server-side modules currently use the event context. Andrew Bartlett Signed-off-by: Stefan Metzmacher <metze@samba.org>
Diffstat (limited to 'source4/libcli/smb2/session.c')
-rw-r--r--source4/libcli/smb2/session.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/source4/libcli/smb2/session.c b/source4/libcli/smb2/session.c
index 0f749a0b6c..f30152329e 100644
--- a/source4/libcli/smb2/session.c
+++ b/source4/libcli/smb2/session.c
@@ -53,7 +53,6 @@ struct smb2_session *smb2_session_init(struct smb2_transport *transport,
/* prepare a gensec context for later use */
status = gensec_client_start(session, &session->gensec,
- session->transport->socket->event.ctx,
settings);
if (!NT_STATUS_IS_OK(status)) {
talloc_free(session);
@@ -203,6 +202,7 @@ struct tevent_req *smb2_session_setup_spnego_send(TALLOC_CTX *mem_ctx,
}
status = gensec_update(session->gensec, state,
+ session->transport->socket->event.ctx,
session->transport->negotiate.secblob,
&state->io.in.secblob);
if (!NT_STATUS_EQUAL(status, NT_STATUS_MORE_PROCESSING_REQUIRED)) {
@@ -242,6 +242,7 @@ static void smb2_session_setup_spnego_handler(struct smb2_request *subreq)
(NT_STATUS_IS_OK(peer_status) &&
NT_STATUS_EQUAL(state->gensec_status, NT_STATUS_MORE_PROCESSING_REQUIRED))) {
status = gensec_update(session->gensec, state,
+ session->transport->socket->event.ctx,
state->io.out.secblob,
&state->io.in.secblob);
state->gensec_status = status;