diff options
Diffstat (limited to 'source3/librpc/crypto/spnego.h')
-rw-r--r-- | source3/librpc/crypto/spnego.h | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/source3/librpc/crypto/spnego.h b/source3/librpc/crypto/spnego.h index e2a00b6ef6..9512ed6324 100644 --- a/source3/librpc/crypto/spnego.h +++ b/source3/librpc/crypto/spnego.h @@ -20,14 +20,31 @@ #ifndef _CLI_SPNEGO_H_ #define _CLI_SPENGO_H_ -struct spnego_context; - enum spnego_mech { SPNEGO_NONE = 0, SPNEGO_KRB5, SPNEGO_NTLMSSP }; +struct spnego_context { + enum spnego_mech mech; + + union { + struct auth_ntlmssp_state *ntlmssp_state; + struct gse_context *gssapi_state; + } mech_ctx; + + enum { + SPNEGO_CONV_INIT = 0, + SPNEGO_CONV_AUTH_MORE, + SPNEGO_CONV_AUTH_CONFIRM, + SPNEGO_CONV_AUTH_DONE + } state; + + bool do_sign; + bool do_seal; +}; + NTSTATUS spnego_gssapi_init_client(TALLOC_CTX *mem_ctx, bool do_sign, bool do_seal, bool is_dcerpc, |