aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2019-05-23 15:44:10 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2019-05-31 18:02:47 +0200
commit8e03707f118cd2f8dc993b01dd15e78da147a29e (patch)
tree83bb5a07ba2a7d820059cdb7d74a81f745c6a398
parentnetfilter: nf_tables: prefer skb_ensure_writable (diff)
downloadlinux-dev-8e03707f118cd2f8dc993b01dd15e78da147a29e.tar.xz
linux-dev-8e03707f118cd2f8dc993b01dd15e78da147a29e.zip
netfilter: xt_HL: prefer skb_ensure_writable
Also, make the argument to be only the needed size of the header we're altering, no need to pull in the full packet into linear area. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
-rw-r--r--net/netfilter/xt_HL.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/netfilter/xt_HL.c b/net/netfilter/xt_HL.c
index 4653b071bed4..a37b8824221f 100644
--- a/net/netfilter/xt_HL.c
+++ b/net/netfilter/xt_HL.c
@@ -32,7 +32,7 @@ ttl_tg(struct sk_buff *skb, const struct xt_action_param *par)
const struct ipt_TTL_info *info = par->targinfo;
int new_ttl;
- if (!skb_make_writable(skb, skb->len))
+ if (skb_ensure_writable(skb, sizeof(*iph)))
return NF_DROP;
iph = ip_hdr(skb);
@@ -72,7 +72,7 @@ hl_tg6(struct sk_buff *skb, const struct xt_action_param *par)
const struct ip6t_HL_info *info = par->targinfo;
int new_hl;
- if (!skb_make_writable(skb, skb->len))
+ if (skb_ensure_writable(skb, sizeof(*ip6h)))
return NF_DROP;
ip6h = ipv6_hdr(skb);