static NTSTATUS dcerpc_winreg_bind(struct dcesrv_call_state *dce_call,
const struct dcesrv_interface *iface)
{
+ struct auth_session_info *session_info =
+ dcesrv_call_session_info(dce_call);
struct registry_context *ctx;
WERROR err;
err = reg_open_samba(dce_call->context,
&ctx, dce_call->event_ctx, dce_call->conn->dce_ctx->lp_ctx,
- dce_call->conn->auth_state.session_info,
+ session_info,
NULL);
if (!W_ERROR_IS_OK(err)) {
TALLOC_CTX *mem_ctx,
struct winreg_CreateKey *r)
{
+ struct auth_session_info *session_info =
+ dcesrv_call_session_info(dce_call);
struct dcesrv_handle *h, *newh;
struct security_descriptor sd;
struct registry_key *key;
newh = dcesrv_handle_new(dce_call->context, HTYPE_REGKEY);
- switch (security_session_user_level(dce_call->conn->auth_state.session_info, NULL))
+ switch (security_session_user_level(session_info, NULL))
{
case SECURITY_SYSTEM:
case SECURITY_ADMINISTRATOR:
TALLOC_CTX *mem_ctx,
struct winreg_DeleteKey *r)
{
+ struct auth_session_info *session_info =
+ dcesrv_call_session_info(dce_call);
struct dcesrv_handle *h;
struct registry_key *key;
WERROR result;
DCESRV_PULL_HANDLE_FAULT(h, r->in.handle, HTYPE_REGKEY);
key = h->data;
- switch (security_session_user_level(dce_call->conn->auth_state.session_info, NULL))
+ switch (security_session_user_level(session_info, NULL))
{
case SECURITY_SYSTEM:
case SECURITY_ADMINISTRATOR:
TALLOC_CTX *mem_ctx,
struct winreg_DeleteValue *r)
{
+ struct auth_session_info *session_info =
+ dcesrv_call_session_info(dce_call);
struct dcesrv_handle *h;
struct registry_key *key;
DCESRV_PULL_HANDLE_FAULT(h, r->in.handle, HTYPE_REGKEY);
key = h->data;
- switch (security_session_user_level(dce_call->conn->auth_state.session_info, NULL))
+ switch (security_session_user_level(session_info, NULL))
{
case SECURITY_SYSTEM:
case SECURITY_ADMINISTRATOR:
TALLOC_CTX *mem_ctx,
struct winreg_FlushKey *r)
{
+ struct auth_session_info *session_info =
+ dcesrv_call_session_info(dce_call);
struct dcesrv_handle *h;
struct registry_key *key;
DCESRV_PULL_HANDLE_FAULT(h, r->in.handle, HTYPE_REGKEY);
key = h->data;
- switch (security_session_user_level(dce_call->conn->auth_state.session_info, NULL))
+ switch (security_session_user_level(session_info, NULL))
{
case SECURITY_SYSTEM:
case SECURITY_ADMINISTRATOR:
TALLOC_CTX *mem_ctx,
struct winreg_OpenKey *r)
{
+ struct auth_session_info *session_info =
+ dcesrv_call_session_info(dce_call);
struct dcesrv_handle *h, *newh;
struct registry_key *key;
WERROR result;
DCESRV_PULL_HANDLE_FAULT(h, r->in.parent_handle, HTYPE_REGKEY);
key = h->data;
- switch (security_session_user_level(dce_call->conn->auth_state.session_info, NULL))
+ switch (security_session_user_level(session_info, NULL))
{
case SECURITY_SYSTEM:
case SECURITY_ADMINISTRATOR:
TALLOC_CTX *mem_ctx,
struct winreg_QueryInfoKey *r)
{
+ struct auth_session_info *session_info =
+ dcesrv_call_session_info(dce_call);
struct dcesrv_handle *h;
struct registry_key *key;
const char *classname = NULL;
DCESRV_PULL_HANDLE_FAULT(h, r->in.handle, HTYPE_REGKEY);
key = h->data;
- switch (security_session_user_level(dce_call->conn->auth_state.session_info, NULL))
+ switch (security_session_user_level(session_info, NULL))
{
case SECURITY_SYSTEM:
case SECURITY_ADMINISTRATOR:
TALLOC_CTX *mem_ctx,
struct winreg_QueryValue *r)
{
+ struct auth_session_info *session_info =
+ dcesrv_call_session_info(dce_call);
struct dcesrv_handle *h;
struct registry_key *key;
uint32_t value_type;
DCESRV_PULL_HANDLE_FAULT(h, r->in.handle, HTYPE_REGKEY);
key = h->data;
- switch (security_session_user_level(dce_call->conn->auth_state.session_info, NULL))
+ switch (security_session_user_level(session_info, NULL))
{
case SECURITY_SYSTEM:
case SECURITY_ADMINISTRATOR:
TALLOC_CTX *mem_ctx,
struct winreg_SetValue *r)
{
+ struct auth_session_info *session_info =
+ dcesrv_call_session_info(dce_call);
struct dcesrv_handle *h;
struct registry_key *key;
DATA_BLOB data;
DCESRV_PULL_HANDLE_FAULT(h, r->in.handle, HTYPE_REGKEY);
key = h->data;
- switch (security_session_user_level(dce_call->conn->auth_state.session_info, NULL))
+ switch (security_session_user_level(session_info, NULL))
{
case SECURITY_SYSTEM:
case SECURITY_ADMINISTRATOR: