struct frame802154_t: make sure dest_addr and src_addr are aligned

This commit is contained in:
Simon Duquennoy 2014-11-10 14:23:42 +01:00
parent 6ca95ebc0c
commit df6a435d42

View file

@ -169,12 +169,15 @@ typedef struct {
* specification for details.
*/
typedef struct {
/* The fields dest_addr and src_addr must come first to ensure they are aligned to the
* CPU word size. Needed as they are accessed directly as linkaddr_t*. Note we cannot use
* the type linkaddr_t directly here, as we always need 8 bytes, not LINKADDR_SIZE bytes. */
uint8_t dest_addr[8]; /**< Destination address */
uint8_t src_addr[8]; /**< Source address */
frame802154_fcf_t fcf; /**< Frame control field */
uint8_t seq; /**< Sequence number */
uint16_t dest_pid; /**< Destination PAN ID */
uint8_t dest_addr[8]; /**< Destination address */
uint16_t src_pid; /**< Source PAN ID */
uint8_t src_addr[8]; /**< Source address */
frame802154_aux_hdr_t aux_hdr; /**< Aux security header */
uint8_t *payload; /**< Pointer to 802.15.4 payload */
int payload_len; /**< Length of payload field */