test-tool: Initialize parameter buffers

This patch avoids that Valgrind reports that an uninitialized buffer
is passed to writev():

Syscall param writev(vector[...]) points to uninitialised byte(s)
   at 0x5557D07: writev (in /lib64/libc-2.19.so)
   by 0x5269BFD: iscsi_iovector_readv_writev (socket.c:509)
   by 0x526A7A9: iscsi_write_to_socket (socket.c:727)
   by 0x526AE47: iscsi_service (socket.c:888)
   by 0x526B632: event_loop (sync.c:67)
   by 0x526D925: iscsi_scsi_command_sync (sync.c:1223)
   by 0x405970: send_scsi_command (iscsi-support.c:276)
   by 0x40B190: extendedcopy (iscsi-support.c:2673)
   by 0x40E9FE: test_extendedcopy_param (test_extendedcopy_param.c:63)
   by 0x503E260: ??? (in /usr/lib64/libcunit.so.1.0.1)
   by 0x503E56E: ??? (in /usr/lib64/libcunit.so.1.0.1)
   by 0x503E8A5: CU_run_all_tests (in /usr/lib64/libcunit.so.1.0.1)
 Address 0xffefff864 is on thread 1's stack
 in frame #8, created by test_extendedcopy_param (test_extendedcopy_param.c:31)

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
This commit is contained in:
Bart Van Assche
2015-10-06 16:18:13 -07:00
committed by Ronnie Sahlberg
parent 7b8363827b
commit cacc144a29
10 changed files with 14 additions and 3 deletions

View File

@@ -29,7 +29,8 @@ void
test_writeatomic16_beyond_eol(void)
{
int align, i, gran, ret;
unsigned char *buf = alloca(256 * 2 * block_size);
const size_t bufsz = 256 * 2 * block_size;
unsigned char *buf = alloca(bufsz);
CHECK_FOR_DATALOSS;
@@ -42,6 +43,7 @@ test_writeatomic16_beyond_eol(void)
logging(LOG_VERBOSE, LOG_BLANK_LINE);
memset(buf, 0xa6, bufsz);
align = inq_bl->atomic_align ? inq_bl->atomic_align : 1;
gran = inq_bl->atomic_gran ? inq_bl->atomic_gran : 1;
ret = writeatomic16(sd, 0,
@@ -56,7 +58,6 @@ test_writeatomic16_beyond_eol(void)
CU_ASSERT_EQUAL(ret, 0);
logging(LOG_VERBOSE, "Test WRITEATOMIC16 1-256 blocks <granularity> blocks beyond the end");
memset(buf, 0xa6, 256 * block_size);
for (i = gran; i <= 256; i += gran) {
if (maximum_transfer_length && maximum_transfer_length < i) {
break;