.wrap_packets = gensec_sasl_wrap_packets,
.unwrap_packets = gensec_sasl_unwrap_packets,
.have_feature = gensec_sasl_have_feature,
- .enabled = False,
+ .enabled = True,
+ .order = GENSEC_SASL
};
int gensec_sasl_log(void *context,
#define GENSEC_OID_KERBEROS5_OLD "1 2 840 48018 1 2 2"
#define GENSEC_OID_KERBEROS5_USER2USER "1 2 840 113554 1 2 2 3"
+enum gensec_order {
+ GENSEC_SPNEGO,
+ GENSEC_GSSAPI,
+ GENSEC_KRB5,
+ GENSEC_SCHANNEL,
+ GENSEC_NTLMSSP,
+ GENSEC_SASL,
+ GENSEC_OTHER
+};
+
struct gensec_security;
struct gensec_target {
const char *principal;
uint32_t feature);
BOOL enabled;
BOOL kerberos;
+ enum gensec_order order;
};
struct gensec_security_ops_wrapper {
.session_info = gensec_krb5_session_info,
.have_feature = gensec_krb5_have_feature,
.enabled = False,
- .kerberos = True
+ .kerberos = True,
+ .order = GENSEC_KRB5
};
static const struct gensec_security_ops gensec_krb5_security_ops = {
.wrap = gensec_krb5_wrap,
.unwrap = gensec_krb5_unwrap,
.enabled = True,
- .kerberos = True
+ .kerberos = True,
+ .order = GENSEC_KRB5
};
NTSTATUS gensec_krb5_init(void)
.session_info = schannel_session_info,
.sig_size = schannel_sig_size,
.have_feature = schannel_have_feature,
- .enabled = True
+ .enabled = True,
+ .order = GENSEC_SCHANNEL
};
NTSTATUS gensec_schannel_init(void)
.session_info = gensec_spnego_session_info,
.have_feature = gensec_spnego_have_feature,
.enabled = True,
+ .order = GENSEC_SPNEGO
};
NTSTATUS gensec_spnego_init(void)
.session_key = gensec_ntlmssp_session_key,
.session_info = gensec_ntlmssp_session_info,
.have_feature = gensec_ntlmssp_have_feature,
- .enabled = True
+ .enabled = True,
+ .order = GENSEC_NTLMSSP
};