]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
MKA: Mark frame structs packed
authorJouni Malinen <j@w1.fi>
Tue, 25 Dec 2018 14:31:46 +0000 (16:31 +0200)
committerJouni Malinen <j@w1.fi>
Tue, 25 Dec 2018 15:29:15 +0000 (17:29 +0200)
Mark the data structures used in construction/parsing frames packed to
prevent compiler from being able to pad them.

Signed-off-by: Jouni Malinen <j@w1.fi>
src/pae/ieee802_1x_kay.h
src/pae/ieee802_1x_kay_i.h

index b2650596cae3ca2ddeb6b631d9b8ec9ab3b1f144..6b4572fe082e5f5b70c1c872163adf81fa2fa999 100644 (file)
@@ -38,7 +38,7 @@ struct ieee802_1x_mka_ki {
 struct ieee802_1x_mka_sci {
        u8 addr[ETH_ALEN];
        be16 port;
-};
+} STRUCT_PACKED;
 
 struct mka_key {
        u8 key[MAX_KEY_LEN];
index bc522d89852bf6c77a025ce80680fb3d0e3befbd..f21d6c8e440fbda31bb8f7b47452942c459a635c 100644 (file)
@@ -165,7 +165,7 @@ struct ieee802_1x_mka_hdr {
 #endif
        /* octet 4 */
        u8 length1;
-};
+} STRUCT_PACKED;
 
 #define MKA_HDR_LEN sizeof(struct ieee802_1x_mka_hdr)
 
@@ -210,9 +210,9 @@ struct ieee802_1x_mka_basic_body {
        be32 actor_mn;
        u8 algo_agility[4];
 
-       /* followed by CAK Name*/
+       /* followed by CAK Name */
        u8 ckn[0];
-};
+} STRUCT_PACKED;
 
 /**
  * struct ieee802_1x_mka_peer_body - Live Peer List and Potential Peer List
@@ -238,9 +238,9 @@ struct ieee802_1x_mka_peer_body {
        /* octet 4 */
        u8 length1;
 
-       u8 peer[0];
        /* followed by Peers */
-};
+       u8 peer[0];
+} STRUCT_PACKED;
 
 /**
  * struct ieee802_1x_mka_sak_use_body - MACsec SAK Use parameter set (Figure
@@ -315,7 +315,7 @@ struct ieee802_1x_mka_sak_use_body {
        be32 okn;
        /* octet 41 - 44 */
        be32 olpn;
-};
+} STRUCT_PACKED;
 
 /**
  * struct ieee802_1x_mka_dist_sak_body - Distributed SAK parameter set
@@ -362,7 +362,7 @@ struct ieee802_1x_mka_dist_sak_body {
         * for other cipher suite: octet 9-16: cipher suite id, octet 17-: SAK
         */
        u8 sak[0];
-};
+} STRUCT_PACKED;
 
 /**
  * struct ieee802_1x_mka_dist_cak_body - Distributed CAK parameter set (Figure
@@ -398,7 +398,7 @@ struct ieee802_1x_mka_dist_cak_body {
 
        /* followed by CAK Name, 29- */
        u8 ckn[0];
-};
+} STRUCT_PACKED;
 
 struct ieee802_1x_mka_icv_body {
        /* octet 1 */
@@ -418,6 +418,6 @@ struct ieee802_1x_mka_icv_body {
 
        /* octet 5 - */
        u8 icv[0];
-};
+} STRUCT_PACKED;
 
 #endif /* IEEE802_1X_KAY_I_H */