From: Stefan Metzmacher Date: Sat, 14 Sep 2024 12:20:46 +0000 (+0200) Subject: s4:pyrpc: make use of dcerpc_binding_handle_auth_session_key() X-Git-Tag: samba-4.21.7~63 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c1875485f4b32df3e40e164e26428090b1ae784f;p=thirdparty%2Fsamba.git s4:pyrpc: make use of dcerpc_binding_handle_auth_session_key() Signed-off-by: Stefan Metzmacher Reviewed-by: Ralph Boehme (cherry picked from commit 38874d28404f49a075bab71fb7357d266173791a) --- diff --git a/source4/librpc/rpc/pyrpc.c b/source4/librpc/rpc/pyrpc.c index b8e1ac0c35e..4f7f4cd1d96 100644 --- a/source4/librpc/rpc/pyrpc.c +++ b/source4/librpc/rpc/pyrpc.c @@ -161,30 +161,18 @@ static PyObject *py_iface_user_session_key(PyObject *obj, void *closure) dcerpc_InterfaceObject *iface = (dcerpc_InterfaceObject *)obj; TALLOC_CTX *mem_ctx; NTSTATUS status; - struct gensec_security *security = NULL; DATA_BLOB session_key = data_blob_null; static PyObject *session_key_obj = NULL; - if (iface->pipe == NULL) { - PyErr_SetNTSTATUS(NT_STATUS_NO_USER_SESSION_KEY); - return NULL; - } - - if (iface->pipe->conn == NULL) { - PyErr_SetNTSTATUS(NT_STATUS_NO_USER_SESSION_KEY); - return NULL; - } - - if (iface->pipe->conn->security_state.generic_state == NULL) { + if (iface->binding_handle == NULL) { PyErr_SetNTSTATUS(NT_STATUS_NO_USER_SESSION_KEY); return NULL; } - - security = iface->pipe->conn->security_state.generic_state; - mem_ctx = talloc_new(NULL); - status = gensec_session_key(security, mem_ctx, &session_key); + status = dcerpc_binding_handle_auth_session_key(iface->binding_handle, + mem_ctx, + &session_key); if (!NT_STATUS_IS_OK(status)) { talloc_free(mem_ctx); PyErr_SetNTSTATUS(status);