mirror of
https://github.com/samba-team/samba.git
synced 2025-02-28 01:58:17 +03:00
auth/gensec: make sure gensec_start_mech_by_authtype() resets SIGN/SEAL before starting
We want to set GENSEC_FEATURE_SIGN and GENSEC_FEATURE_SEAL based on the given auth_level and should not have GENSEC_FEATURE_SEAL if DCERPC_AUTH_LEVEL_INTEGRITY is desired. BUG: https://bugzilla.samba.org/show_bug.cgi?id=11061 Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
This commit is contained in:
parent
3542d33314
commit
756508c8c3
@ -724,6 +724,12 @@ _PUBLIC_ NTSTATUS gensec_start_mech_by_authtype(struct gensec_security *gensec_s
|
||||
return NT_STATUS_INVALID_PARAMETER;
|
||||
}
|
||||
gensec_security->dcerpc_auth_level = auth_level;
|
||||
/*
|
||||
* We need to reset sign/seal in order to reset it.
|
||||
* We may got some default features inherited by the credentials
|
||||
*/
|
||||
gensec_security->want_features &= ~GENSEC_FEATURE_SIGN;
|
||||
gensec_security->want_features &= ~GENSEC_FEATURE_SEAL;
|
||||
gensec_want_feature(gensec_security, GENSEC_FEATURE_DCE_STYLE);
|
||||
gensec_want_feature(gensec_security, GENSEC_FEATURE_ASYNC_REPLIES);
|
||||
if (auth_level == DCERPC_AUTH_LEVEL_INTEGRITY) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user