return NULL;
}
- if (smb2req->session->compat->vuid != fsp->vuid) {
+ if (smb2req->session->global->session_wire_id != fsp->vuid) {
return NULL;
}
usp=sconn->users;
for (;usp;usp=usp->next,count++) {
- if (vuid == usp->vuid) {
+ if (vuid == usp->session->global->session_wire_id) {
switch (server_allocated) {
case SERVER_ALLOCATED_REQUIRED_YES:
if (usp->session_info == NULL) {
goto err_root_exit;
}
- conn->vuid = vuser->vuid;
+ conn->vuid = session->global->session_wire_id;
{
char *s = talloc_sub_full(talloc_tos(),
if (!session_claim(session)) {
DEBUG(1, ("smb1: Failed to claim session for vuid=%llu\n",
- (unsigned long long)session->compat->vuid));
+ (unsigned long long)session->global->session_wire_id));
data_blob_free(&out_blob);
TALLOC_FREE(session);
reply_nterror(req, NT_STATUS_LOGON_FAILURE);
status = smbXsrv_session_update(session);
if (!NT_STATUS_IS_OK(status)) {
DEBUG(0, ("smb1: Failed to update session for vuid=%llu - %s\n",
- (unsigned long long)session->compat->vuid,
+ (unsigned long long)session->global->session_wire_id,
nt_errstr(status)));
data_blob_free(&out_blob);
TALLOC_FREE(session);
status = smbXsrv_session_update(session);
if (!NT_STATUS_IS_OK(status)) {
DEBUG(0, ("smb1: Failed to update session for vuid=%llu - %s\n",
- (unsigned long long)session->compat->vuid,
+ (unsigned long long)session->global->session_wire_id,
nt_errstr(status)));
data_blob_free(&out_blob);
TALLOC_FREE(session);
return;
}
- conn_clear_vuid_caches(sconn, session->compat->vuid);
+ conn_clear_vuid_caches(sconn, session->global->session_wire_id);
/* current_user_info is changed on new vuid */
reload_services(sconn, conn_snum_used, true);
nt_status = smbXsrv_session_update(session);
if (!NT_STATUS_IS_OK(nt_status)) {
DEBUG(0, ("smb1: Failed to update session for vuid=%llu - %s\n",
- (unsigned long long)session->compat->vuid,
+ (unsigned long long)session->global->session_wire_id,
nt_errstr(nt_status)));
TALLOC_FREE(session);
reply_nterror(req, nt_status_squash(nt_status));
if (!session_claim(session)) {
DEBUG(1, ("smb1: Failed to claim session for vuid=%llu\n",
- (unsigned long long)session->compat->vuid));
+ (unsigned long long)session->global->session_wire_id));
TALLOC_FREE(session);
reply_nterror(req, NT_STATUS_LOGON_FAILURE);
END_PROFILE(SMBsesssetupX);
}
smbreq->request_time = req->request_time;
- smbreq->vuid = req->session->compat->vuid;
+ smbreq->vuid = req->session->global->session_wire_id;
smbreq->tid = req->tcon->compat->cnum;
smbreq->conn = req->tcon->compat;
smbreq->sconn = req->sconn;
return status;
}
- if (!change_to_user_and_service(tcon->compat, req->session->compat->vuid)) {
+ if (!change_to_user_and_service(
+ tcon->compat,
+ req->session->global->session_wire_id))
+ {
return NT_STATUS_ACCESS_DENIED;
}
if (!session_claim(session)) {
DEBUG(1, ("smb2: Failed to claim session "
"for vuid=%llu\n",
- (unsigned long long)session->compat->vuid));
+ (unsigned long long)session->global->session_wire_id));
return NT_STATUS_LOGON_FAILURE;
}
status = smbXsrv_session_update(session);
if (!NT_STATUS_IS_OK(status)) {
DEBUG(0, ("smb2: Failed to update session for vuid=%llu - %s\n",
- (unsigned long long)session->compat->vuid,
+ (unsigned long long)session->global->session_wire_id,
nt_errstr(status)));
return NT_STATUS_LOGON_FAILURE;
}
status = smbXsrv_session_update(session);
if (!NT_STATUS_IS_OK(status)) {
DEBUG(0, ("smb2: Failed to update session for vuid=%llu - %s\n",
- (unsigned long long)session->compat->vuid,
+ (unsigned long long)session->global->session_wire_id,
nt_errstr(status)));
return NT_STATUS_LOGON_FAILURE;
}
- conn_clear_vuid_caches(xconn->client->sconn, session->compat->vuid);
+ conn_clear_vuid_caches(xconn->client->sconn,
+ session->global->session_wire_id);
*out_session_id = session->global->session_wire_id;
status = smbXsrv_session_update(session);
if (!NT_STATUS_IS_OK(status)) {
DEBUG(0, ("smb2: Failed to update session for vuid=%llu - %s\n",
- (unsigned long long)session->compat->vuid,
+ (unsigned long long)session->global->session_wire_id,
nt_errstr(status)));
return NT_STATUS_LOGON_FAILURE;
}
/*
* Make sure we run as the user again
*/
- ok = change_to_user_and_service(state->smb2req->tcon->compat,
- state->smb2req->session->compat->vuid);
+ ok = change_to_user_and_service(
+ state->smb2req->tcon->compat,
+ state->smb2req->session->global->session_wire_id);
if (!ok) {
tevent_req_nterror(state->req, NT_STATUS_ACCESS_DENIED);
return;
* smbXsrv_tcon_disconnect() -> close_cnum() ->
* file_close_conn().
*/
- file_close_user(sconn, session->compat->vuid);
+ file_close_user(sconn, session->global->session_wire_id);
}
if (session->tcon_table != NULL) {
}
if (session->compat) {
- invalidate_vuid(sconn, session->compat->vuid);
+ invalidate_vuid(sconn, session->global->session_wire_id);
session->compat = NULL;
}
NTSTATUS smb2srv_tcon_disconnect_all(struct smbXsrv_session *session)
{
- uint64_t vuid;
-
- if (session->compat) {
- vuid = session->compat->vuid;
- } else {
- vuid = 0;
- }
+ uint64_t vuid = session->global->session_wire_id;
return smbXsrv_tcon_disconnect_all(session->tcon_table, vuid);
}