[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULLv2 01/12] slirp: Fix build with gcc 9
From: |
Samuel Thibault |
Subject: |
[Qemu-devel] [PULLv2 01/12] slirp: Fix build with gcc 9 |
Date: |
Thu, 7 Mar 2019 12:51:31 +0100 |
From: Greg Kurz <address@hidden>
Build fails with gcc 9:
CC slirp/ndp_table.o
slirp/ndp_table.c: In function ‘ndp_table_add’:
slirp/ndp_table.c:31:23: error: taking address of packed member of ‘struct
ndpentry’ may result in an unaligned pointer value
[-Werror=address-of-packed-member]
31 | if (in6_equal(&ndp_table->table[i].ip_addr, &ip_addr)) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
slirp/ndp_table.c: In function ‘ndp_table_search’:
slirp/ndp_table.c:75:23: error: taking address of packed member of ‘struct
ndpentry’ may result in an unaligned pointer value
[-Werror=address-of-packed-member]
75 | if (in6_equal(&ndp_table->table[i].ip_addr, &ip_addr)) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
The ndpentry structure isn't used to model on-the-wire data or anything
else that would care for the struct layout. It doesn't need to be packed
actually. Just drop SLIRP_PACKED.
Signed-off-by: Greg Kurz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Samuel Thibault <address@hidden>
---
slirp/slirp.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/slirp/slirp.h b/slirp/slirp.h
index 752a4cd8c8..8068ba1d1e 100644
--- a/slirp/slirp.h
+++ b/slirp/slirp.h
@@ -106,7 +106,7 @@ bool arp_table_search(Slirp *slirp, uint32_t ip_addr,
struct ndpentry {
unsigned char eth_addr[ETH_ALEN]; /* sender hardware address */
struct in6_addr ip_addr; /* sender IP address */
-} SLIRP_PACKED;
+};
#define NDP_TABLE_SIZE 16
--
2.20.1
- [Qemu-devel] [PULLv2 00/12] slirp updates, Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 02/12] slirp: check for ioctlsocket error and 0-length udp payload., Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 03/12] slirp: check sscanf result when emulating ident, Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 05/12] slirp: Mark pieces missing IPv6 support, Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 08/12] slirp: use "slirp_" prefix for inet_aton() win32 implementation, Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 04/12] slirp: fix big/little endian conversion in ident protocol, Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 01/12] slirp: Fix build with gcc 9,
Samuel Thibault <=
- [Qemu-devel] [PULLv2 07/12] slirp: use libslirp migration code, Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 1/1] slirp: remove QEMU Makefile.objs, Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 12/12] slirp: remove QEMU Makefile.objs, Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 09/12] slirp: move sources to src/ subdirectory, Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 10/12] slirp: add a standalone Makefile, Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 11/12] build-sys: link with slirp as an external project, Samuel Thibault, 2019/03/07
- [Qemu-devel] [PULLv2 06/12] slirp: adapt a subset of QEMU vmstate code, Samuel Thibault, 2019/03/07
- Re: [Qemu-devel] [PULLv2 00/12] slirp updates, Peter Maydell, 2019/03/08