]> xenbits.xensource.com Git - libvirt.git/commitdiff
nwfilter: assure virNWFilterSnoop(Eth|Dhcp)Hdr structs don't change size
authorLaine Stump <laine@laine.org>
Mon, 19 Feb 2018 17:56:11 +0000 (12:56 -0500)
committerLaine Stump <laine@laine.org>
Tue, 20 Feb 2018 18:43:21 +0000 (13:43 -0500)
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@laine.org>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
src/nwfilter/nwfilter_dhcpsnoop.c

index 743136277dc5c291ebc81334f52c651a671d4400..8e955150fabfd12c360246d891a7d22a2514e398 100644 (file)
@@ -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 */