diff options
Diffstat (limited to 'net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c')
-rw-r--r-- | net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c index f813e02aab3..f8771e058b9 100644 --- a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c +++ b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c | |||
@@ -363,32 +363,32 @@ getorigdst(struct sock *sk, int optval, void __user *user, int *len) | |||
363 | static int ipv4_tuple_to_nfattr(struct sk_buff *skb, | 363 | static int ipv4_tuple_to_nfattr(struct sk_buff *skb, |
364 | const struct nf_conntrack_tuple *tuple) | 364 | const struct nf_conntrack_tuple *tuple) |
365 | { | 365 | { |
366 | NFA_PUT(skb, CTA_IP_V4_SRC, sizeof(u_int32_t), | 366 | NLA_PUT(skb, CTA_IP_V4_SRC, sizeof(u_int32_t), |
367 | &tuple->src.u3.ip); | 367 | &tuple->src.u3.ip); |
368 | NFA_PUT(skb, CTA_IP_V4_DST, sizeof(u_int32_t), | 368 | NLA_PUT(skb, CTA_IP_V4_DST, sizeof(u_int32_t), |
369 | &tuple->dst.u3.ip); | 369 | &tuple->dst.u3.ip); |
370 | return 0; | 370 | return 0; |
371 | 371 | ||
372 | nfattr_failure: | 372 | nla_put_failure: |
373 | return -1; | 373 | return -1; |
374 | } | 374 | } |
375 | 375 | ||
376 | static const size_t cta_min_ip[CTA_IP_MAX] = { | 376 | static const size_t cta_min_ip[CTA_IP_MAX+1] = { |
377 | [CTA_IP_V4_SRC-1] = sizeof(u_int32_t), | 377 | [CTA_IP_V4_SRC] = sizeof(u_int32_t), |
378 | [CTA_IP_V4_DST-1] = sizeof(u_int32_t), | 378 | [CTA_IP_V4_DST] = sizeof(u_int32_t), |
379 | }; | 379 | }; |
380 | 380 | ||
381 | static int ipv4_nfattr_to_tuple(struct nfattr *tb[], | 381 | static int ipv4_nfattr_to_tuple(struct nlattr *tb[], |
382 | struct nf_conntrack_tuple *t) | 382 | struct nf_conntrack_tuple *t) |
383 | { | 383 | { |
384 | if (!tb[CTA_IP_V4_SRC-1] || !tb[CTA_IP_V4_DST-1]) | 384 | if (!tb[CTA_IP_V4_SRC] || !tb[CTA_IP_V4_DST]) |
385 | return -EINVAL; | 385 | return -EINVAL; |
386 | 386 | ||
387 | if (nfattr_bad_size(tb, CTA_IP_MAX, cta_min_ip)) | 387 | if (nfattr_bad_size(tb, CTA_IP_MAX, cta_min_ip)) |
388 | return -EINVAL; | 388 | return -EINVAL; |
389 | 389 | ||
390 | t->src.u3.ip = *(__be32 *)NFA_DATA(tb[CTA_IP_V4_SRC-1]); | 390 | t->src.u3.ip = *(__be32 *)nla_data(tb[CTA_IP_V4_SRC]); |
391 | t->dst.u3.ip = *(__be32 *)NFA_DATA(tb[CTA_IP_V4_DST-1]); | 391 | t->dst.u3.ip = *(__be32 *)nla_data(tb[CTA_IP_V4_DST]); |
392 | 392 | ||
393 | return 0; | 393 | return 0; |
394 | } | 394 | } |