1*4882a593SmuzhiyunFrom 702dd20f43d9ca7e0bcb917e8acfec3f1acdcb5c Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Aaron Conole <aconole@redhat.com> 3*4882a593SmuzhiyunDate: Mon, 3 Aug 2020 15:14:50 -0400 4*4882a593SmuzhiyunSubject: [PATCH 3/9] lldp: add packed struct definition 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunSigned-off-by: Aaron Conole <aconole@redhat.com> 7*4882a593Smuzhiyun--- 8*4882a593Smuzhiyun include/lldp.h | 6 ++++++ 9*4882a593Smuzhiyun lldp/l2_packet.h | 5 ++--- 10*4882a593Smuzhiyun 2 files changed, 8 insertions(+), 3 deletions(-) 11*4882a593Smuzhiyun 12*4882a593Smuzhiyundiff --git a/include/lldp.h b/include/lldp.h 13*4882a593Smuzhiyunindex fb5ee93..de6a4ad 100644 14*4882a593Smuzhiyun--- a/include/lldp.h 15*4882a593Smuzhiyun+++ b/include/lldp.h 16*4882a593Smuzhiyun@@ -255,5 +255,11 @@ enum { 17*4882a593Smuzhiyun #define LLDP_EVB_DEFAULT_RTE 15 18*4882a593Smuzhiyun #define LLDP_EVB_DEFAULT_MAX_RTE 31 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun+#ifndef _MSC_VER 21*4882a593Smuzhiyun+#define STRUCT_PACKED(STRUCT) STRUCT __attribute__((__packed__)) 22*4882a593Smuzhiyun+#else 23*4882a593Smuzhiyun+#define STRUCT_PACKED(STRUCT) __pragma(pack(push, 1)) STRUCT __pragma(pack(pop)) 24*4882a593Smuzhiyun+#endif 25*4882a593Smuzhiyun+ 26*4882a593Smuzhiyun void somethingChangedLocal(const char *ifname, int type); 27*4882a593Smuzhiyun #endif /* _LLDP_H */ 28*4882a593Smuzhiyundiff --git a/lldp/l2_packet.h b/lldp/l2_packet.h 29*4882a593Smuzhiyunindex 607b8a3..831958c 100644 30*4882a593Smuzhiyun--- a/lldp/l2_packet.h 31*4882a593Smuzhiyun+++ b/lldp/l2_packet.h 32*4882a593Smuzhiyun@@ -58,12 +58,11 @@ 33*4882a593Smuzhiyun */ 34*4882a593Smuzhiyun struct l2_packet_data; 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun- 37*4882a593Smuzhiyun-struct l2_ethhdr { 38*4882a593Smuzhiyun+STRUCT_PACKED(struct l2_ethhdr { 39*4882a593Smuzhiyun u8 h_dest[ETH_ALEN]; 40*4882a593Smuzhiyun u8 h_source[ETH_ALEN]; 41*4882a593Smuzhiyun u16 h_proto; 42*4882a593Smuzhiyun-} STRUCT_PACKED; 43*4882a593Smuzhiyun+}); 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun /** 46*4882a593Smuzhiyun * l2_packet_init - Initialize l2_packet interface 47*4882a593Smuzhiyun-- 48*4882a593Smuzhiyun2.28.0 49*4882a593Smuzhiyun 50