forked from luck/tmp_suning_uos_patched
net: Remove unused skb_shared_info member
ip6_frag_id was only used by UFO, which has been removed. ipv6_proxy_select_ident() only existed to set ip6_frag_id and has no in-tree callers. Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
973573c499
commit
39b1752110
|
@ -500,7 +500,6 @@ struct skb_shared_info {
|
||||||
struct skb_shared_hwtstamps hwtstamps;
|
struct skb_shared_hwtstamps hwtstamps;
|
||||||
unsigned int gso_type;
|
unsigned int gso_type;
|
||||||
u32 tskey;
|
u32 tskey;
|
||||||
__be32 ip6_frag_id;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Warning : all fields before dataref are cleared in __alloc_skb()
|
* Warning : all fields before dataref are cleared in __alloc_skb()
|
||||||
|
|
|
@ -767,7 +767,6 @@ static inline int ipv6_addr_diff(const struct in6_addr *a1, const struct in6_add
|
||||||
__be32 ipv6_select_ident(struct net *net,
|
__be32 ipv6_select_ident(struct net *net,
|
||||||
const struct in6_addr *daddr,
|
const struct in6_addr *daddr,
|
||||||
const struct in6_addr *saddr);
|
const struct in6_addr *saddr);
|
||||||
void ipv6_proxy_select_ident(struct net *net, struct sk_buff *skb);
|
|
||||||
|
|
||||||
int ip6_dst_hoplimit(struct dst_entry *dst);
|
int ip6_dst_hoplimit(struct dst_entry *dst);
|
||||||
|
|
||||||
|
|
|
@ -31,37 +31,6 @@ static u32 __ipv6_select_ident(struct net *net, u32 hashrnd,
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* This function exists only for tap drivers that must support broken
|
|
||||||
* clients requesting UFO without specifying an IPv6 fragment ID.
|
|
||||||
*
|
|
||||||
* This is similar to ipv6_select_ident() but we use an independent hash
|
|
||||||
* seed to limit information leakage.
|
|
||||||
*
|
|
||||||
* The network header must be set before calling this.
|
|
||||||
*/
|
|
||||||
void ipv6_proxy_select_ident(struct net *net, struct sk_buff *skb)
|
|
||||||
{
|
|
||||||
static u32 ip6_proxy_idents_hashrnd __read_mostly;
|
|
||||||
struct in6_addr buf[2];
|
|
||||||
struct in6_addr *addrs;
|
|
||||||
u32 id;
|
|
||||||
|
|
||||||
addrs = skb_header_pointer(skb,
|
|
||||||
skb_network_offset(skb) +
|
|
||||||
offsetof(struct ipv6hdr, saddr),
|
|
||||||
sizeof(buf), buf);
|
|
||||||
if (!addrs)
|
|
||||||
return;
|
|
||||||
|
|
||||||
net_get_random_once(&ip6_proxy_idents_hashrnd,
|
|
||||||
sizeof(ip6_proxy_idents_hashrnd));
|
|
||||||
|
|
||||||
id = __ipv6_select_ident(net, ip6_proxy_idents_hashrnd,
|
|
||||||
&addrs[1], &addrs[0]);
|
|
||||||
skb_shinfo(skb)->ip6_frag_id = htonl(id);
|
|
||||||
}
|
|
||||||
EXPORT_SYMBOL_GPL(ipv6_proxy_select_ident);
|
|
||||||
|
|
||||||
__be32 ipv6_select_ident(struct net *net,
|
__be32 ipv6_select_ident(struct net *net,
|
||||||
const struct in6_addr *daddr,
|
const struct in6_addr *daddr,
|
||||||
const struct in6_addr *saddr)
|
const struct in6_addr *saddr)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user