From f565321b26dfb78c1dc2d6cf5456b9b80f04c7f3 Mon Sep 17 00:00:00 2001 From: Laine Stump Date: Mon, 19 Feb 2018 12:56:11 -0500 Subject: [PATCH] nwfilter: assure virNWFilterSnoop(Eth|Dhcp)Hdr structs don't change size MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These two objects are used to access fields in actual ethernet packets captures with libpcap, so it's essential that they don't change size for any reason. This patch uses gnulib's verify() macro to make sure their sizes don't change. Signed-off-by: Laine Stump Reviewed-by: Daniel P. Berrangé --- src/nwfilter/nwfilter_dhcpsnoop.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/nwfilter/nwfilter_dhcpsnoop.c b/src/nwfilter/nwfilter_dhcpsnoop.c index 743136277d..8e955150fa 100644 --- a/src/nwfilter/nwfilter_dhcpsnoop.c +++ b/src/nwfilter/nwfilter_dhcpsnoop.c @@ -195,6 +195,7 @@ struct _virNWFilterSnoopEthHdr { uint16_t eh_type; uint8_t eh_data[]; } ATTRIBUTE_PACKED; +verify(sizeof(struct _virNWFilterSnoopEthHdr) == 14); typedef struct _virNWFilterSnoopDHCPHdr virNWFilterSnoopDHCPHdr; typedef virNWFilterSnoopDHCPHdr *virNWFilterSnoopDHCPHdrPtr; @@ -216,6 +217,7 @@ struct _virNWFilterSnoopDHCPHdr { char d_file[128]; uint8_t d_opts[]; } ATTRIBUTE_PACKED; +verify(sizeof(struct _virNWFilterSnoopDHCPHdr) == 236); /* DHCP options */