]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
smbd: remove use of user_struct from reply_ulogoffX()
authorRalph Boehme <slow@samba.org>
Thu, 2 Jan 2020 15:26:03 +0000 (16:26 +0100)
committerJeremy Allison <jra@samba.org>
Mon, 13 Jan 2020 19:41:36 +0000 (19:41 +0000)
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
source3/smbd/reply.c

index 3c0c7dbb631d0697ecf026a2f8f9ecfc8e669426..40cd7483750785433124c9c306d0b297bf61498e 100644 (file)
@@ -2613,16 +2613,17 @@ void reply_open_and_X(struct smb_request *req)
 
 void reply_ulogoffX(struct smb_request *req)
 {
-       struct smbd_server_connection *sconn = req->sconn;
-       struct user_struct *vuser;
+       struct timeval now = timeval_current();
        struct smbXsrv_session *session = NULL;
        NTSTATUS status;
 
        START_PROFILE(SMBulogoffX);
 
-       vuser = get_valid_user_struct(sconn, req->vuid);
-
-       if(vuser == NULL) {
+       status = smb1srv_session_lookup(req->xconn,
+                                       req->vuid,
+                                       timeval_to_nttime(&now),
+                                       &session);
+       if (!NT_STATUS_IS_OK(status)) {
                DEBUG(3,("ulogoff, vuser id %llu does not map to user.\n",
                         (unsigned long long)req->vuid));
 
@@ -2632,9 +2633,6 @@ void reply_ulogoffX(struct smb_request *req)
                return;
        }
 
-       session = vuser->session;
-       vuser = NULL;
-
        /*
         * TODO: cancel all outstanding requests on the session
         */