diff options
author | Stefan Metzmacher <metze@samba.org> | 2017-06-14 23:24:10 +0200 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2017-06-17 16:48:11 +0200 |
commit | 068817a9143ca405d1dc6ff80b47c42489c49c9a (patch) | |
tree | 8609aeff3a18e8ef6596f39cd3b010f8609f8126 /source4 | |
parent | 4b88f6a88c3f35a54c59102bc4595427ae3a2a65 (diff) | |
download | samba-068817a9143ca405d1dc6ff80b47c42489c49c9a.tar.gz |
s4:libcli/smb_composite: move chosen_oid to state->chosen_oid
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4')
-rw-r--r-- | source4/libcli/smb_composite/sesssetup.c | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/source4/libcli/smb_composite/sesssetup.c b/source4/libcli/smb_composite/sesssetup.c index 7f748c177b2..256d12b18bd 100644 --- a/source4/libcli/smb_composite/sesssetup.c +++ b/source4/libcli/smb_composite/sesssetup.c @@ -35,6 +35,7 @@ struct sesssetup_state { union smb_sesssetup setup; + const char *chosen_oid; NTSTATUS remote_status; NTSTATUS gensec_status; struct smb_composite_sesssetup *io; @@ -522,28 +523,36 @@ static NTSTATUS session_setup_spnego(struct composite_context *c, state->setup.spnego.out.secblob = session->transport->negotiate.secblob; if (session->transport->negotiate.secblob.length) { - chosen_oid = GENSEC_OID_SPNEGO; - status = gensec_start_mech_by_oid(session->gensec, chosen_oid); + state->chosen_oid = GENSEC_OID_SPNEGO; + status = gensec_start_mech_by_oid(session->gensec, + state->chosen_oid); if (!NT_STATUS_IS_OK(status)) { DEBUG(1, ("Failed to start set GENSEC client mechanism %s: %s\n", - gensec_get_name_by_oid(session->gensec, chosen_oid), nt_errstr(status))); + gensec_get_name_by_oid(session->gensec, + state->chosen_oid), + nt_errstr(status))); state->setup.spnego.out.secblob = data_blob_null; - chosen_oid = GENSEC_OID_NTLMSSP; - status = gensec_start_mech_by_oid(session->gensec, chosen_oid); + state->chosen_oid = GENSEC_OID_NTLMSSP; + status = gensec_start_mech_by_oid(session->gensec, + state->chosen_oid); if (!NT_STATUS_IS_OK(status)) { DEBUG(1, ("Failed to start set (fallback) GENSEC client mechanism %s: %s\n", - gensec_get_name_by_oid(session->gensec, chosen_oid), + gensec_get_name_by_oid(session->gensec, + state->chosen_oid), nt_errstr(status))); return status; } } } else { /* without a sec blob, means raw NTLMSSP */ - chosen_oid = GENSEC_OID_NTLMSSP; - status = gensec_start_mech_by_oid(session->gensec, chosen_oid); + state->chosen_oid = GENSEC_OID_NTLMSSP; + status = gensec_start_mech_by_oid(session->gensec, + state->chosen_oid); if (!NT_STATUS_IS_OK(status)) { DEBUG(1, ("Failed to start set GENSEC client mechanism %s: %s\n", - gensec_get_name_by_oid(session->gensec, chosen_oid), nt_errstr(status))); + gensec_get_name_by_oid(session->gensec, + state->chosen_oid), + nt_errstr(status))); } } @@ -555,7 +564,8 @@ static NTSTATUS session_setup_spnego(struct composite_context *c, if (!NT_STATUS_EQUAL(status, NT_STATUS_MORE_PROCESSING_REQUIRED) && !NT_STATUS_IS_OK(status)) { DEBUG(1, ("Failed initial gensec_update with mechanism %s: %s\n", - gensec_get_name_by_oid(session->gensec, chosen_oid), + gensec_get_name_by_oid(session->gensec, + state->chosen_oid), nt_errstr(status))); return status; } |