diff options
author | Stefan Metzmacher <metze@samba.org> | 2009-06-09 19:48:08 +0200 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2009-06-09 19:51:03 +0200 |
commit | a18341dab955dc0ffce6e787de1798f8665c1d92 (patch) | |
tree | 4ac4e358d433832c636ef395b72fcfbc49981f2b /source3/smbd | |
parent | 66acfbffeb60cff811e32ddc54f44f63d96bf890 (diff) | |
download | samba-a18341dab955dc0ffce6e787de1798f8665c1d92.tar.gz samba-a18341dab955dc0ffce6e787de1798f8665c1d92.tar.bz2 samba-a18341dab955dc0ffce6e787de1798f8665c1d92.zip |
s3:smbd: only check the next_status for related requests
metze
Diffstat (limited to 'source3/smbd')
-rw-r--r-- | source3/smbd/smb2_server.c | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/source3/smbd/smb2_server.c b/source3/smbd/smb2_server.c index 35ecd3a893..101ccc951a 100644 --- a/source3/smbd/smb2_server.c +++ b/source3/smbd/smb2_server.c @@ -399,17 +399,18 @@ static NTSTATUS smbd_smb2_request_dispatch(struct smbd_smb2_request *req) return smbd_smb2_request_error(req, NT_STATUS_ACCESS_DENIED); } - /* - * This check is mostly for giving the correct error code - * for compounded requests. - * - * TODO: we may need to move this after the session and tcon checks. - */ - if (!NT_STATUS_IS_OK(req->next_status)) { - return smbd_smb2_request_error(req, req->next_status); - } - - if ((flags & SMB2_HDR_FLAG_CHAINED) == 0) { + if (flags & SMB2_HDR_FLAG_CHAINED) { + /* + * This check is mostly for giving the correct error code + * for compounded requests. + * + * TODO: we may need to move this after the session + * and tcon checks. + */ + if (!NT_STATUS_IS_OK(req->next_status)) { + return smbd_smb2_request_error(req, req->next_status); + } + } else { req->compat_chain_fsp = NULL; } |