mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-31 12:10:52 -04:00
[SK_BUFF]: Introduce skb_copy_from_linear_data{_offset}
To clearly state the intent of copying from linear sk_buffs, _offset being a overly long variant but interesting for the sake of saving some bytes. Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
This commit is contained in:
parent
2a123b86e2
commit
d626f62b11
133 changed files with 321 additions and 230 deletions
|
|
@ -152,7 +152,7 @@ static int prism2_wep_encrypt(struct sk_buff *skb, int hdr_len, void *priv)
|
|||
return -1;
|
||||
|
||||
/* Copy the IV into the first 3 bytes of the key */
|
||||
memcpy(key, skb->data + hdr_len, 3);
|
||||
skb_copy_from_linear_data_offset(skb, hdr_len, key, 3);
|
||||
|
||||
/* Copy rest of the WEP key (the secret part) */
|
||||
memcpy(key + 3, wep->key, wep->key_len);
|
||||
|
|
|
|||
|
|
@ -606,12 +606,12 @@ int ieee80211_rx(struct ieee80211_device *ieee, struct sk_buff *skb,
|
|||
if (frag == 0) {
|
||||
/* copy first fragment (including full headers) into
|
||||
* beginning of the fragment cache skb */
|
||||
memcpy(skb_put(frag_skb, flen), skb->data, flen);
|
||||
skb_copy_from_linear_data(skb, skb_put(frag_skb, flen), flen);
|
||||
} else {
|
||||
/* append frame payload to the end of the fragment
|
||||
* cache skb */
|
||||
memcpy(skb_put(frag_skb, flen), skb->data + hdrlen,
|
||||
flen);
|
||||
skb_copy_from_linear_data_offset(skb, hdrlen,
|
||||
skb_put(frag_skb, flen), flen);
|
||||
}
|
||||
dev_kfree_skb_any(skb);
|
||||
skb = NULL;
|
||||
|
|
|
|||
|
|
@ -309,8 +309,8 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||
}
|
||||
|
||||
/* Save source and destination addresses */
|
||||
memcpy(dest, skb->data, ETH_ALEN);
|
||||
memcpy(src, skb->data + ETH_ALEN, ETH_ALEN);
|
||||
skb_copy_from_linear_data(skb, dest, ETH_ALEN);
|
||||
skb_copy_from_linear_data_offset(skb, ETH_ALEN, src, ETH_ALEN);
|
||||
|
||||
if (host_encrypt || host_build_iv)
|
||||
fc = IEEE80211_FTYPE_DATA | IEEE80211_STYPE_DATA |
|
||||
|
|
@ -363,7 +363,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||
snapped = 1;
|
||||
ieee80211_copy_snap(skb_put(skb_new, SNAP_SIZE + sizeof(u16)),
|
||||
ether_type);
|
||||
memcpy(skb_put(skb_new, skb->len), skb->data, skb->len);
|
||||
skb_copy_from_linear_data(skb, skb_put(skb_new, skb->len), skb->len);
|
||||
res = crypt->ops->encrypt_msdu(skb_new, hdr_len, crypt->priv);
|
||||
if (res < 0) {
|
||||
IEEE80211_ERROR("msdu encryption failed\n");
|
||||
|
|
@ -492,7 +492,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||
bytes -= SNAP_SIZE + sizeof(u16);
|
||||
}
|
||||
|
||||
memcpy(skb_put(skb_frag, bytes), skb->data, bytes);
|
||||
skb_copy_from_linear_data(skb, skb_put(skb_frag, bytes), bytes);
|
||||
|
||||
/* Advance the SKB... */
|
||||
skb_pull(skb, bytes);
|
||||
|
|
|
|||
Loading…
Reference in a new issue