auth/gensec: only require GENSEC_FEATURE_SIGN for DCERPC_AUTH_LEVEL_INTEGRITY as...
authorStefan Metzmacher <metze@samba.org>
Thu, 1 Sep 2016 09:00:54 +0000 (11:00 +0200)
committerAndreas Schneider <asn@cryptomilk.org>
Wed, 26 Oct 2016 09:20:12 +0000 (11:20 +0200)
On the server this check is deferred to the first request.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
auth/gensec/gensec_start.c

index 1e616277dad41c9d1c9f28af1974a05061b779b1..89a7a9b1ea5ef8e3b70dfbfb437c21afb90f3c7a 100644 (file)
@@ -742,7 +742,9 @@ _PUBLIC_ NTSTATUS gensec_start_mech_by_authtype(struct gensec_security *gensec_s
        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) {
-               gensec_want_feature(gensec_security, GENSEC_FEATURE_SIGN);
+               if (gensec_security->gensec_role == GENSEC_CLIENT) {
+                       gensec_want_feature(gensec_security, GENSEC_FEATURE_SIGN);
+               }
        } else if (auth_level == DCERPC_AUTH_LEVEL_PRIVACY) {
                gensec_want_feature(gensec_security, GENSEC_FEATURE_SIGN);
                gensec_want_feature(gensec_security, GENSEC_FEATURE_SEAL);