diff options
Diffstat (limited to 'source4/smb_server')
-rw-r--r-- | source4/smb_server/reply.c | 2 | ||||
-rw-r--r-- | source4/smb_server/smb_server.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/source4/smb_server/reply.c b/source4/smb_server/reply.c index 4526d6f7f3..75c5772bf7 100644 --- a/source4/smb_server/reply.c +++ b/source4/smb_server/reply.c @@ -2174,7 +2174,7 @@ void reply_ulogoffX(struct smbsrv_request *req) struct smbsrv_tcon *tcon; NTSTATUS status; - if (!req->session) { + if (!req->session || !req->session->finished_sesssetup) { req_reply_error(req, NT_STATUS_DOS(ERRSRV, ERRbaduid)); return; } diff --git a/source4/smb_server/smb_server.c b/source4/smb_server/smb_server.c index 340674b8df..7e1e8a8f4e 100644 --- a/source4/smb_server/smb_server.c +++ b/source4/smb_server/smb_server.c @@ -504,7 +504,7 @@ static void switch_message(int type, struct smbsrv_request *req) } /* see if the vuid is valid */ - if ((flags & AS_USER) && !req->session) { + if ((flags & AS_USER) && (!req->session || !req->session->finished_sesssetup)) { /* amazingly, the error code depends on the command */ switch (type) { case SMBntcreateX: |