Commit ec0974df authored by Florian Westphal's avatar Florian Westphal Committed by Pablo Neira Ayuso

netfilter: ipvs: prefer skb_ensure_writable

It does the same thing, use it instead so we can remove skb_make_writable.
Signed-off-by: default avatarFlorian Westphal <fw@strlen.de>
Acked-by: default avatarSimon Horman <horms@verge.net.au>
Signed-off-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
parent c1a83116
...@@ -363,7 +363,7 @@ static inline int app_tcp_pkt_out(struct ip_vs_conn *cp, struct sk_buff *skb, ...@@ -363,7 +363,7 @@ static inline int app_tcp_pkt_out(struct ip_vs_conn *cp, struct sk_buff *skb,
struct tcphdr *th; struct tcphdr *th;
__u32 seq; __u32 seq;
if (!skb_make_writable(skb, tcp_offset + sizeof(*th))) if (skb_ensure_writable(skb, tcp_offset + sizeof(*th)))
return 0; return 0;
th = (struct tcphdr *)(skb_network_header(skb) + tcp_offset); th = (struct tcphdr *)(skb_network_header(skb) + tcp_offset);
...@@ -440,7 +440,7 @@ static inline int app_tcp_pkt_in(struct ip_vs_conn *cp, struct sk_buff *skb, ...@@ -440,7 +440,7 @@ static inline int app_tcp_pkt_in(struct ip_vs_conn *cp, struct sk_buff *skb,
struct tcphdr *th; struct tcphdr *th;
__u32 seq; __u32 seq;
if (!skb_make_writable(skb, tcp_offset + sizeof(*th))) if (skb_ensure_writable(skb, tcp_offset + sizeof(*th)))
return 0; return 0;
th = (struct tcphdr *)(skb_network_header(skb) + tcp_offset); th = (struct tcphdr *)(skb_network_header(skb) + tcp_offset);
......
...@@ -898,7 +898,7 @@ static int handle_response_icmp(int af, struct sk_buff *skb, ...@@ -898,7 +898,7 @@ static int handle_response_icmp(int af, struct sk_buff *skb,
if (IPPROTO_TCP == protocol || IPPROTO_UDP == protocol || if (IPPROTO_TCP == protocol || IPPROTO_UDP == protocol ||
IPPROTO_SCTP == protocol) IPPROTO_SCTP == protocol)
offset += 2 * sizeof(__u16); offset += 2 * sizeof(__u16);
if (!skb_make_writable(skb, offset)) if (skb_ensure_writable(skb, offset))
goto out; goto out;
#ifdef CONFIG_IP_VS_IPV6 #ifdef CONFIG_IP_VS_IPV6
...@@ -1288,7 +1288,7 @@ handle_response(int af, struct sk_buff *skb, struct ip_vs_proto_data *pd, ...@@ -1288,7 +1288,7 @@ handle_response(int af, struct sk_buff *skb, struct ip_vs_proto_data *pd,
IP_VS_DBG_PKT(11, af, pp, skb, iph->off, "Outgoing packet"); IP_VS_DBG_PKT(11, af, pp, skb, iph->off, "Outgoing packet");
if (!skb_make_writable(skb, iph->len)) if (skb_ensure_writable(skb, iph->len))
goto drop; goto drop;
/* mangle the packet */ /* mangle the packet */
......
...@@ -273,7 +273,7 @@ static int ip_vs_ftp_out(struct ip_vs_app *app, struct ip_vs_conn *cp, ...@@ -273,7 +273,7 @@ static int ip_vs_ftp_out(struct ip_vs_app *app, struct ip_vs_conn *cp,
return 1; return 1;
/* Linear packets are much easier to deal with. */ /* Linear packets are much easier to deal with. */
if (!skb_make_writable(skb, skb->len)) if (skb_ensure_writable(skb, skb->len))
return 0; return 0;
if (cp->app_data == (void *) IP_VS_FTP_PASV) { if (cp->app_data == (void *) IP_VS_FTP_PASV) {
...@@ -439,7 +439,7 @@ static int ip_vs_ftp_in(struct ip_vs_app *app, struct ip_vs_conn *cp, ...@@ -439,7 +439,7 @@ static int ip_vs_ftp_in(struct ip_vs_app *app, struct ip_vs_conn *cp,
return 1; return 1;
/* Linear packets are much easier to deal with. */ /* Linear packets are much easier to deal with. */
if (!skb_make_writable(skb, skb->len)) if (skb_ensure_writable(skb, skb->len))
return 0; return 0;
data = data_start = ip_vs_ftp_data_ptr(skb, ipvsh); data = data_start = ip_vs_ftp_data_ptr(skb, ipvsh);
......
...@@ -101,7 +101,7 @@ sctp_snat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp, ...@@ -101,7 +101,7 @@ sctp_snat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp,
#endif #endif
/* csum_check requires unshared skb */ /* csum_check requires unshared skb */
if (!skb_make_writable(skb, sctphoff + sizeof(*sctph))) if (skb_ensure_writable(skb, sctphoff + sizeof(*sctph)))
return 0; return 0;
if (unlikely(cp->app != NULL)) { if (unlikely(cp->app != NULL)) {
...@@ -148,7 +148,7 @@ sctp_dnat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp, ...@@ -148,7 +148,7 @@ sctp_dnat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp,
#endif #endif
/* csum_check requires unshared skb */ /* csum_check requires unshared skb */
if (!skb_make_writable(skb, sctphoff + sizeof(*sctph))) if (skb_ensure_writable(skb, sctphoff + sizeof(*sctph)))
return 0; return 0;
if (unlikely(cp->app != NULL)) { if (unlikely(cp->app != NULL)) {
......
...@@ -163,7 +163,7 @@ tcp_snat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp, ...@@ -163,7 +163,7 @@ tcp_snat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp,
oldlen = skb->len - tcphoff; oldlen = skb->len - tcphoff;
/* csum_check requires unshared skb */ /* csum_check requires unshared skb */
if (!skb_make_writable(skb, tcphoff+sizeof(*tcph))) if (skb_ensure_writable(skb, tcphoff + sizeof(*tcph)))
return 0; return 0;
if (unlikely(cp->app != NULL)) { if (unlikely(cp->app != NULL)) {
...@@ -241,7 +241,7 @@ tcp_dnat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp, ...@@ -241,7 +241,7 @@ tcp_dnat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp,
oldlen = skb->len - tcphoff; oldlen = skb->len - tcphoff;
/* csum_check requires unshared skb */ /* csum_check requires unshared skb */
if (!skb_make_writable(skb, tcphoff+sizeof(*tcph))) if (skb_ensure_writable(skb, tcphoff + sizeof(*tcph)))
return 0; return 0;
if (unlikely(cp->app != NULL)) { if (unlikely(cp->app != NULL)) {
......
...@@ -153,7 +153,7 @@ udp_snat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp, ...@@ -153,7 +153,7 @@ udp_snat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp,
oldlen = skb->len - udphoff; oldlen = skb->len - udphoff;
/* csum_check requires unshared skb */ /* csum_check requires unshared skb */
if (!skb_make_writable(skb, udphoff+sizeof(*udph))) if (skb_ensure_writable(skb, udphoff + sizeof(*udph)))
return 0; return 0;
if (unlikely(cp->app != NULL)) { if (unlikely(cp->app != NULL)) {
...@@ -236,7 +236,7 @@ udp_dnat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp, ...@@ -236,7 +236,7 @@ udp_dnat_handler(struct sk_buff *skb, struct ip_vs_protocol *pp,
oldlen = skb->len - udphoff; oldlen = skb->len - udphoff;
/* csum_check requires unshared skb */ /* csum_check requires unshared skb */
if (!skb_make_writable(skb, udphoff+sizeof(*udph))) if (skb_ensure_writable(skb, udphoff + sizeof(*udph)))
return 0; return 0;
if (unlikely(cp->app != NULL)) { if (unlikely(cp->app != NULL)) {
......
...@@ -279,7 +279,7 @@ static inline bool decrement_ttl(struct netns_ipvs *ipvs, ...@@ -279,7 +279,7 @@ static inline bool decrement_ttl(struct netns_ipvs *ipvs,
} }
/* don't propagate ttl change to cloned packets */ /* don't propagate ttl change to cloned packets */
if (!skb_make_writable(skb, sizeof(struct ipv6hdr))) if (skb_ensure_writable(skb, sizeof(struct ipv6hdr)))
return false; return false;
ipv6_hdr(skb)->hop_limit--; ipv6_hdr(skb)->hop_limit--;
...@@ -294,7 +294,7 @@ static inline bool decrement_ttl(struct netns_ipvs *ipvs, ...@@ -294,7 +294,7 @@ static inline bool decrement_ttl(struct netns_ipvs *ipvs,
} }
/* don't propagate ttl change to cloned packets */ /* don't propagate ttl change to cloned packets */
if (!skb_make_writable(skb, sizeof(struct iphdr))) if (skb_ensure_writable(skb, sizeof(struct iphdr)))
return false; return false;
/* Decrease ttl */ /* Decrease ttl */
...@@ -796,7 +796,7 @@ ip_vs_nat_xmit(struct sk_buff *skb, struct ip_vs_conn *cp, ...@@ -796,7 +796,7 @@ ip_vs_nat_xmit(struct sk_buff *skb, struct ip_vs_conn *cp,
} }
/* copy-on-write the packet before mangling it */ /* copy-on-write the packet before mangling it */
if (!skb_make_writable(skb, sizeof(struct iphdr))) if (skb_ensure_writable(skb, sizeof(struct iphdr)))
goto tx_error; goto tx_error;
if (skb_cow(skb, rt->dst.dev->hard_header_len)) if (skb_cow(skb, rt->dst.dev->hard_header_len))
...@@ -885,7 +885,7 @@ ip_vs_nat_xmit_v6(struct sk_buff *skb, struct ip_vs_conn *cp, ...@@ -885,7 +885,7 @@ ip_vs_nat_xmit_v6(struct sk_buff *skb, struct ip_vs_conn *cp,
} }
/* copy-on-write the packet before mangling it */ /* copy-on-write the packet before mangling it */
if (!skb_make_writable(skb, sizeof(struct ipv6hdr))) if (skb_ensure_writable(skb, sizeof(struct ipv6hdr)))
goto tx_error; goto tx_error;
if (skb_cow(skb, rt->dst.dev->hard_header_len)) if (skb_cow(skb, rt->dst.dev->hard_header_len))
...@@ -1404,7 +1404,7 @@ ip_vs_icmp_xmit(struct sk_buff *skb, struct ip_vs_conn *cp, ...@@ -1404,7 +1404,7 @@ ip_vs_icmp_xmit(struct sk_buff *skb, struct ip_vs_conn *cp,
} }
/* copy-on-write the packet before mangling it */ /* copy-on-write the packet before mangling it */
if (!skb_make_writable(skb, offset)) if (skb_ensure_writable(skb, offset))
goto tx_error; goto tx_error;
if (skb_cow(skb, rt->dst.dev->hard_header_len)) if (skb_cow(skb, rt->dst.dev->hard_header_len))
...@@ -1493,7 +1493,7 @@ ip_vs_icmp_xmit_v6(struct sk_buff *skb, struct ip_vs_conn *cp, ...@@ -1493,7 +1493,7 @@ ip_vs_icmp_xmit_v6(struct sk_buff *skb, struct ip_vs_conn *cp,
} }
/* copy-on-write the packet before mangling it */ /* copy-on-write the packet before mangling it */
if (!skb_make_writable(skb, offset)) if (skb_ensure_writable(skb, offset))
goto tx_error; goto tx_error;
if (skb_cow(skb, rt->dst.dev->hard_header_len)) if (skb_cow(skb, rt->dst.dev->hard_header_len))
......
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