return;
}
- session_yield(vuser);
+ session_yield(vuser->session);
DLIST_REMOVE(sconn->users, vuser);
SMB_ASSERT(sconn->num_users > 0);
/* The following definitions come from smbd/session.c */
struct sessionid;
+struct smbXsrv_session;
bool session_init(void);
-bool session_claim(struct smbd_server_connection *sconn, struct user_struct *vuser);
-void session_yield(struct user_struct *vuser);
+bool session_claim(struct smbd_server_connection *sconn, struct smbXsrv_session *session);
+void session_yield(struct smbXsrv_session *session);
int list_sessions(TALLOC_CTX *mem_ctx, struct sessionid **session_list);
/* The following definitions come from smbd/sesssetup.c */
called when a session is created
********************************************************************/
-bool session_claim(struct smbd_server_connection *sconn, struct user_struct *vuser)
+bool session_claim(struct smbd_server_connection *sconn, struct smbXsrv_session *session)
{
+ struct user_struct *vuser = session->compat;
struct server_id pid = messaging_server_id(sconn->msg_ctx);
TDB_DATA data;
int i = 0;
called when a session is destroyed
********************************************************************/
-void session_yield(struct user_struct *vuser)
+void session_yield(struct smbXsrv_session *session)
{
+ struct user_struct *vuser = session->compat;
struct sessionid sessionid;
struct db_record *rec;
TDB_DATA value;
register_homes_share(session_info->unix_info->unix_name);
}
- if (!session_claim(sconn, session->compat)) {
+ if (!session_claim(sconn, session)) {
DEBUG(1, ("smb1: Failed to claim session for vuid=%llu\n",
(unsigned long long)session->compat->vuid));
data_blob_free(&out_blob);
register_homes_share(session_info->unix_info->unix_name);
}
- if (!session_claim(sconn, session->compat)) {
+ if (!session_claim(sconn, session)) {
DEBUG(1, ("smb1: Failed to claim session for vuid=%llu\n",
(unsigned long long)session->compat->vuid));
data_blob_free(&nt_resp);
register_homes_share(session_info->unix_info->unix_name);
}
- if (!session_claim(smb2req->sconn, session->compat)) {
+ if (!session_claim(smb2req->sconn, session)) {
DEBUG(1, ("smb2: Failed to claim session "
"for vuid=%llu\n",
(unsigned long long)session->compat->vuid));