[B.A.T.M.A.N.] [PATCH] batman-adv: Force packed placment of tt_change

Sven Eckelmann
2011-06-12T09:10:38Z

Every data structure which is used to send data over the wire must be
fixed in layout to prevent incompatibility between different
architectures. Those incompatibilities could be generated by extra bytes
between members and at the end of the structure.

tt_changes_fill_buffer and tt_len use that structure to copy the correct
amount of data from an internal structure to the actual packet. We must
ensure that this packet buffer only has data which can be interpreted by
any architecture.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
---
packet.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/packet.h b/packet.h
index 0c3e44d..ef7476f 100644
--- a/packet.h
+++ b/packet.h
@@ -202,6 +202,6 @@ struct roam_adv_packet {
struct tt_change {
uint8_t flags;
uint8_t addr[ETH_ALEN];
-};
+} __packed;

#endif /* _NET_BATMAN_ADV_PACKET_H_ */
--
1.7.5.4