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 <laine(a)laine.org>
---
danpb suggested doing this in his response to my patch fixing virMacAddr:
https://www.redhat.com/archives/libvir-list/2018-February/msg00850.html
I decided to make it a separate patch from the virMacAddr fix.
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 */
--
2.14.3