mirror of
https://github.com/samba-team/samba.git
synced 2025-08-02 00:22:11 +03:00
gensec: clarify memory ownership for gensec_session_info() and gensec_session_key()
This is slightly less efficient, because we no longer keep a cache on the gensec structures, but much clearer in terms of memory ownership. Both gensec_session_info() and gensec_session_key() now take a mem_ctx and put the result only on that context. Some duplication of memory in the callers (who were rightly uncertain about who was the rightful owner of the returned memory) has been removed to compensate for the internal copy. Andrew Bartlett
This commit is contained in:
@ -200,10 +200,9 @@ static void request_handler(struct smbcli_request *req)
|
||||
c->status = NT_STATUS_INTERNAL_ERROR;
|
||||
break;
|
||||
}
|
||||
session_key_err = gensec_session_key(session->gensec, &session_key);
|
||||
session_key_err = gensec_session_key(session->gensec, session, &session->user_session_key);
|
||||
if (NT_STATUS_IS_OK(session_key_err)) {
|
||||
set_user_session_key(session, &session_key);
|
||||
smbcli_transport_simple_set_signing(session->transport, session_key, null_data_blob);
|
||||
smbcli_transport_simple_set_signing(session->transport, session->user_session_key, null_data_blob);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user