Commit 4c121fd6 authored by Johannes Berg's avatar Johannes Berg

mac80211: use offsetofend()

This was created using the following spatch:
    @find@
    type S;
    expression M, M2;
    position p;
    @@
    offsetof(S, M) + sizeof(M2)@p

    @script:python@
    m << find.M;
    m2 << find.M2;
    @@
    if not m2.endswith('-> ' + m):
            cocci.include_match(False)

    @change@
    type find.S;
    expression find.M, find.M2;
    position find.p;
    @@
    -offsetof(S, M) + sizeof(M2)@p
    +offsetofend(S, M)
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent 12811037
...@@ -675,8 +675,7 @@ ieee80211_mesh_build_beacon(struct ieee80211_if_mesh *ifmsh) ...@@ -675,8 +675,7 @@ ieee80211_mesh_build_beacon(struct ieee80211_if_mesh *ifmsh)
enum nl80211_band band; enum nl80211_band band;
u8 *pos; u8 *pos;
struct ieee80211_sub_if_data *sdata; struct ieee80211_sub_if_data *sdata;
int hdr_len = offsetof(struct ieee80211_mgmt, u.beacon) + int hdr_len = offsetofend(struct ieee80211_mgmt, u.beacon);
sizeof(mgmt->u.beacon);
sdata = container_of(ifmsh, struct ieee80211_sub_if_data, u.mesh); sdata = container_of(ifmsh, struct ieee80211_sub_if_data, u.mesh);
rcu_read_lock(); rcu_read_lock();
......
...@@ -111,8 +111,8 @@ static int mesh_path_sel_frame_tx(enum mpath_frame_type action, u8 flags, ...@@ -111,8 +111,8 @@ static int mesh_path_sel_frame_tx(enum mpath_frame_type action, u8 flags,
struct sk_buff *skb; struct sk_buff *skb;
struct ieee80211_mgmt *mgmt; struct ieee80211_mgmt *mgmt;
u8 *pos, ie_len; u8 *pos, ie_len;
int hdr_len = offsetof(struct ieee80211_mgmt, u.action.u.mesh_action) + int hdr_len = offsetofend(struct ieee80211_mgmt,
sizeof(mgmt->u.action.u.mesh_action); u.action.u.mesh_action);
skb = dev_alloc_skb(local->tx_headroom + skb = dev_alloc_skb(local->tx_headroom +
hdr_len + hdr_len +
...@@ -242,8 +242,8 @@ int mesh_path_error_tx(struct ieee80211_sub_if_data *sdata, ...@@ -242,8 +242,8 @@ int mesh_path_error_tx(struct ieee80211_sub_if_data *sdata,
struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
struct ieee80211_mgmt *mgmt; struct ieee80211_mgmt *mgmt;
u8 *pos, ie_len; u8 *pos, ie_len;
int hdr_len = offsetof(struct ieee80211_mgmt, u.action.u.mesh_action) + int hdr_len = offsetofend(struct ieee80211_mgmt,
sizeof(mgmt->u.action.u.mesh_action); u.action.u.mesh_action);
if (time_before(jiffies, ifmsh->next_perr)) if (time_before(jiffies, ifmsh->next_perr))
return -EAGAIN; return -EAGAIN;
......
...@@ -220,8 +220,7 @@ static int mesh_plink_frame_tx(struct ieee80211_sub_if_data *sdata, ...@@ -220,8 +220,7 @@ static int mesh_plink_frame_tx(struct ieee80211_sub_if_data *sdata,
bool include_plid = false; bool include_plid = false;
u16 peering_proto = 0; u16 peering_proto = 0;
u8 *pos, ie_len = 4; u8 *pos, ie_len = 4;
int hdr_len = offsetof(struct ieee80211_mgmt, u.action.u.self_prot) + int hdr_len = offsetofend(struct ieee80211_mgmt, u.action.u.self_prot);
sizeof(mgmt->u.action.u.self_prot);
int err = -ENOMEM; int err = -ENOMEM;
skb = dev_alloc_skb(local->tx_headroom + skb = dev_alloc_skb(local->tx_headroom +
......
...@@ -2977,8 +2977,8 @@ int ieee80211_send_action_csa(struct ieee80211_sub_if_data *sdata, ...@@ -2977,8 +2977,8 @@ int ieee80211_send_action_csa(struct ieee80211_sub_if_data *sdata,
struct ieee80211_mgmt *mgmt; struct ieee80211_mgmt *mgmt;
struct ieee80211_local *local = sdata->local; struct ieee80211_local *local = sdata->local;
int freq; int freq;
int hdr_len = offsetof(struct ieee80211_mgmt, u.action.u.chan_switch) + int hdr_len = offsetofend(struct ieee80211_mgmt,
sizeof(mgmt->u.action.u.chan_switch); u.action.u.chan_switch);
u8 *pos; u8 *pos;
if (sdata->vif.type != NL80211_IFTYPE_ADHOC && if (sdata->vif.type != NL80211_IFTYPE_ADHOC &&
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment