From: Stefan Metzmacher Date: Mon, 5 Sep 2011 16:22:57 +0000 (+0200) Subject: s3:smb2cli: SMB2_QUERY_DIRECTORY needs one dyn byte to that the structure size check... X-Git-Url: http://git.samba.org/?p=metze%2Fsamba%2Fwip.git;a=commitdiff_plain;h=fbcba9fa8ff3d8b091016ed4e7d60a30703af50c s3:smb2cli: SMB2_QUERY_DIRECTORY needs one dyn byte to that the structure size check works. Windows generates NT_STATUS_INVALID_PARAMETER otherwise. metze --- diff --git a/source3/libsmb/smb2cli_query_directory.c b/source3/libsmb/smb2cli_query_directory.c index 3feaa07abb02..2286f2ce6f17 100644 --- a/source3/libsmb/smb2cli_query_directory.c +++ b/source3/libsmb/smb2cli_query_directory.c @@ -27,6 +27,7 @@ struct smb2cli_query_directory_state { uint8_t fixed[32]; + uint8_t dyn_pad[1]; struct iovec *recv_iov; uint8_t *data; uint32_t data_length; @@ -75,6 +76,11 @@ struct tevent_req *smb2cli_query_directory_send(TALLOC_CTX *mem_ctx, SSVAL(fixed, 26, dyn_len); SSVAL(fixed, 28, outbuf_len); + if (dyn_len == 0) { + dyn = state->dyn_pad; + dyn_len = sizeof(state->dyn_pad); + } + subreq = smb2cli_req_send(state, ev, cli, SMB2_OP_FIND, 0, 0, /* flags */ cli->smb2.pid,