From 100fc94b47c5875c36ba560493280c31ee92430d Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Fri, 18 Nov 2011 08:40:18 +0100 Subject: [PATCH] s3:libsmb: only align unicode pipe_name (bug #8586) metze (cherry picked from commit 48bcb8c846532ccd5489ef705182fb81c5278b04) --- source3/libsmb/clitrans.c | 18 +++++++++++------- 1 files changed, 11 insertions(+), 7 deletions(-) diff --git a/source3/libsmb/clitrans.c b/source3/libsmb/clitrans.c index 2f2801e..844ad2b 100644 --- a/source3/libsmb/clitrans.c +++ b/source3/libsmb/clitrans.c @@ -208,14 +208,18 @@ static void cli_trans_format(struct cli_trans_state *state, uint8_t *pwct, switch (cmd) { case SMBtrans: - pad[0] = 0; - iov[0].iov_base = (void *)pad; - iov[0].iov_len = 1; - iov[1].iov_base = (void *)state->pipe_name_conv; - iov[1].iov_len = state->pipe_name_conv_len; + if (cli_ucs2(state->cli)) { + pad[0] = 0; + iov[0].iov_base = (void *)pad; + iov[0].iov_len = 1; + param_offset += 1; + iov += 1; + } + iov[0].iov_base = (void *)state->pipe_name_conv; + iov[0].iov_len = state->pipe_name_conv_len; wct = 14 + state->num_setup; - param_offset += iov[0].iov_len + iov[1].iov_len; - iov += 2; + param_offset += iov[0].iov_len; + iov += 1; break; case SMBtrans2: pad[0] = 0; -- 1.7.4.1