diff options
author | Andrew Tridgell <tridge@samba.org> | 2005-01-10 12:39:42 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:08:38 -0500 |
commit | 34f6485dda4a48e7a70f11e7975c589981d27ca1 (patch) | |
tree | 04d07307381c6b123dbdbb3ec09fbe1691e91ff3 /source4/rpc_server/dcesrv_auth.c | |
parent | e8c06b9221d9818042ea8a08efccfc88f17a9e3e (diff) | |
download | samba-34f6485dda4a48e7a70f11e7975c589981d27ca1.tar.gz samba-34f6485dda4a48e7a70f11e7975c589981d27ca1.tar.bz2 samba-34f6485dda4a48e7a70f11e7975c589981d27ca1.zip |
r4642: added support for alter_context in the server for adding new interfaces to an existing pipe
(This used to be commit b6af57c86829aadc261cd7b79091cef17c15b967)
Diffstat (limited to 'source4/rpc_server/dcesrv_auth.c')
-rw-r--r-- | source4/rpc_server/dcesrv_auth.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/source4/rpc_server/dcesrv_auth.c b/source4/rpc_server/dcesrv_auth.c index 71332b557d..91b579b9e4 100644 --- a/source4/rpc_server/dcesrv_auth.c +++ b/source4/rpc_server/dcesrv_auth.c @@ -204,9 +204,13 @@ BOOL dcesrv_auth_alter(struct dcesrv_call_state *call) struct dcesrv_connection *dce_conn = call->conn; NTSTATUS status; - /* We can't work without an existing gensec state, and an new blob to feed it */ - if (!dce_conn->auth_state.gensec_security || - pkt->u.alter.auth_info.length == 0) { + /* on a pure interface change there is no auth blob */ + if (pkt->u.alter.auth_info.length == 0) { + return True; + } + + /* We can't work without an existing gensec state */ + if (!dce_conn->auth_state.gensec_security) { return False; } @@ -235,6 +239,11 @@ BOOL dcesrv_auth_alter_ack(struct dcesrv_call_state *call, struct dcerpc_packet struct dcesrv_connection *dce_conn = call->conn; NTSTATUS status; + /* on a pure interface change there is no auth blob */ + if (pkt->u.alter.auth_info.length == 0) { + return True; + } + if (!call->conn->auth_state.gensec_security) { return False; } |