diff options
author | Stefan Metzmacher <metze@samba.org> | 2011-08-25 23:33:41 +0200 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2011-08-31 19:49:31 +0200 |
commit | 0d450d166bab952daf37d922e5c2e5cac16f1cc3 (patch) | |
tree | 74fe4ade53a6ec46ba72df15aaf04701a77cd348 | |
parent | fe6c56524075e1ca8e95d531dc1945c0ff6fa783 (diff) | |
download | samba-0d450d166bab952daf37d922e5c2e5cac16f1cc3.tar.gz samba-0d450d166bab952daf37d922e5c2e5cac16f1cc3.tar.bz2 samba-0d450d166bab952daf37d922e5c2e5cac16f1cc3.zip |
s3:smb2_server: keep compound_related on struct smbd_smb2_request
metze
(cherry picked from commit cda93f04eb4e7e975b192a5fd33275ec638140ac)
-rw-r--r-- | source3/smbd/globals.h | 1 | ||||
-rw-r--r-- | source3/smbd/smb2_server.c | 7 |
2 files changed, 4 insertions, 4 deletions
diff --git a/source3/smbd/globals.h b/source3/smbd/globals.h index b9bd21215c..0baf159dd9 100644 --- a/source3/smbd/globals.h +++ b/source3/smbd/globals.h @@ -355,6 +355,7 @@ struct smbd_smb2_request { bool do_signing; bool async; bool cancelled; + bool compound_related; /* fake smb1 request. */ struct smb_request *smb1req; diff --git a/source3/smbd/smb2_server.c b/source3/smbd/smb2_server.c index 6fc4b5d702..0310cb1baa 100644 --- a/source3/smbd/smb2_server.c +++ b/source3/smbd/smb2_server.c @@ -360,7 +360,6 @@ static NTSTATUS smbd_smb2_request_validate(struct smbd_smb2_request *req) { int count; int idx; - bool compound_related = false; count = req->in.vector_count; @@ -408,7 +407,7 @@ static NTSTATUS smbd_smb2_request_validate(struct smbd_smb2_request *req) * compounded requests */ if (flags & SMB2_HDR_FLAG_CHAINED) { - compound_related = true; + req->compound_related = true; } } else if (idx > 4) { #if 0 @@ -421,13 +420,13 @@ static NTSTATUS smbd_smb2_request_validate(struct smbd_smb2_request *req) * all other requests should match the 2nd one */ if (flags & SMB2_HDR_FLAG_CHAINED) { - if (!compound_related) { + if (!req->compound_related) { req->next_status = NT_STATUS_INVALID_PARAMETER; return NT_STATUS_OK; } } else { - if (compound_related) { + if (req->compound_related) { req->next_status = NT_STATUS_INVALID_PARAMETER; return NT_STATUS_OK; |