Commit 84c868f6 authored by Eric Blake's avatar Eric Blake Committed by Paolo Bonzini

dump: Fix build with newer gcc

gcc 8 on rawhide is picky enough to complain:

/home/dummy/qemu/dump.c: In function 'create_header32':
/home/dummy/qemu/dump.c:817:5: error: 'strncpy' output truncated before terminating nul copying 8 bytes from a string of the same length [-Werror=stringop-truncation]
     strncpy(dh->signature, KDUMP_SIGNATURE, strlen(KDUMP_SIGNATURE));
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

But we already have SIG_LEN defined as the right length without needing
to do a strlen(), and memcpy() is better than strncpy() when we know
we do not want a trailing NUL byte.
Signed-off-by: 's avatarEric Blake <eblake@redhat.com>
Signed-off-by: 's avatarPaolo Bonzini <pbonzini@redhat.com>
parent 01366ef9
...@@ -814,7 +814,7 @@ static void create_header32(DumpState *s, Error **errp) ...@@ -814,7 +814,7 @@ static void create_header32(DumpState *s, Error **errp)
size = sizeof(DiskDumpHeader32); size = sizeof(DiskDumpHeader32);
dh = g_malloc0(size); dh = g_malloc0(size);
strncpy(dh->signature, KDUMP_SIGNATURE, strlen(KDUMP_SIGNATURE)); memcpy(dh->signature, KDUMP_SIGNATURE, SIG_LEN);
dh->header_version = cpu_to_dump32(s, 6); dh->header_version = cpu_to_dump32(s, 6);
block_size = s->dump_info.page_size; block_size = s->dump_info.page_size;
dh->block_size = cpu_to_dump32(s, block_size); dh->block_size = cpu_to_dump32(s, block_size);
...@@ -926,7 +926,7 @@ static void create_header64(DumpState *s, Error **errp) ...@@ -926,7 +926,7 @@ static void create_header64(DumpState *s, Error **errp)
size = sizeof(DiskDumpHeader64); size = sizeof(DiskDumpHeader64);
dh = g_malloc0(size); dh = g_malloc0(size);
strncpy(dh->signature, KDUMP_SIGNATURE, strlen(KDUMP_SIGNATURE)); memcpy(dh->signature, KDUMP_SIGNATURE, SIG_LEN);
dh->header_version = cpu_to_dump32(s, 6); dh->header_version = cpu_to_dump32(s, 6);
block_size = s->dump_info.page_size; block_size = s->dump_info.page_size;
dh->block_size = cpu_to_dump32(s, block_size); dh->block_size = cpu_to_dump32(s, block_size);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment