Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ca663046 authored by Antonio Quartulli's avatar Antonio Quartulli
Browse files

batman-adv: fix alignment for batadv_tvlv_tt_change



Make struct batadv_tvlv_tt_change a multiple 4 bytes long
to avoid padding on any architecture.

Signed-off-by: default avatarAntonio Quartulli <antonio@meshcoding.com>
Signed-off-by: default avatarMarek Lindner <mareklindner@neomailbox.ch>
parent 2f7a3182
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -484,13 +484,13 @@ struct batadv_tvlv_tt_vlan_data {
 * struct batadv_tvlv_tt_change - translation table diff data
 * @flags: status indicators concerning the non-mesh client (see
 *  batadv_tt_client_flags)
 * @reserved: reserved field
 * @reserved: reserved field - useful for alignment purposes only
 * @addr: mac address of non-mesh client that triggered this tt change
 * @vid: VLAN identifier
 */
struct batadv_tvlv_tt_change {
	uint8_t flags;
	uint8_t reserved;
	uint8_t reserved[3];
	uint8_t addr[ETH_ALEN];
	__be16 vid;
};
+4 −2
Original line number Diff line number Diff line
@@ -333,7 +333,8 @@ static void batadv_tt_local_event(struct batadv_priv *bat_priv,
		return;

	tt_change_node->change.flags = flags;
	tt_change_node->change.reserved = 0;
	memset(tt_change_node->change.reserved, 0,
	       sizeof(tt_change_node->change.reserved));
	memcpy(tt_change_node->change.addr, common->addr, ETH_ALEN);
	tt_change_node->change.vid = htons(common->vid);

@@ -2221,7 +2222,8 @@ static void batadv_tt_tvlv_generate(struct batadv_priv *bat_priv,
			       ETH_ALEN);
			tt_change->flags = tt_common_entry->flags;
			tt_change->vid = htons(tt_common_entry->vid);
			tt_change->reserved = 0;
			memset(tt_change->reserved, 0,
			       sizeof(tt_change->reserved));

			tt_num_entries++;
			tt_change++;