diff --git a/source4/rpc_server/dcerpc_server.c b/source4/rpc_server/dcerpc_server.c index e763b581f4d..a79a5694772 100644 --- a/source4/rpc_server/dcerpc_server.c +++ b/source4/rpc_server/dcerpc_server.c @@ -1107,7 +1107,7 @@ static NTSTATUS dcesrv_bind(struct dcesrv_call_state *call) DCERPC_BIND_TIME_KEEP_CONNECTION_ON_ORPHAN; } - call->conn->bind_time_features = a->reason.negotiate; + call->conn->assoc_group->bind_time_features = a->reason.negotiate; } /* diff --git a/source4/rpc_server/dcerpc_server.h b/source4/rpc_server/dcerpc_server.h index abfb5c0b894..557883090af 100644 --- a/source4/rpc_server/dcerpc_server.h +++ b/source4/rpc_server/dcerpc_server.h @@ -310,9 +310,6 @@ struct dcesrv_connection { */ const struct ndr_syntax_id *preferred_transfer; - /* the negotiated bind time features */ - uint16_t bind_time_features; - /* * This is used to block the connection during * pending authentication. @@ -359,6 +356,9 @@ struct dcesrv_assoc_group { /* parent context */ struct dcesrv_context *dce_ctx; + /* the negotiated bind time features */ + uint16_t bind_time_features; + /* Remote association group ID (if proxied) */ uint32_t proxied_id; };