aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv6/fib6_rules.c
diff options
context:
space:
mode:
authorJiri Benc <jbenc@redhat.com>2015-03-29 10:59:25 -0400
committerDavid S. Miller <davem@davemloft.net>2015-03-31 13:58:35 -0400
commit930345ea630405aa6e6f42efcb149c3f360a6b67 (patch)
treec88d0858785c246038fddac3ca51571b371416b0 /net/ipv6/fib6_rules.c
parent15e318bdc6dfb82914c82fb7ad00badaa8387d8e (diff)
netlink: implement nla_put_in_addr and nla_put_in6_addr
IP addresses are often stored in netlink attributes. Add generic functions to do that. For nla_put_in_addr, it would be nicer to pass struct in_addr but this is not used universally throughout the kernel, in way too many places __be32 is used to store IPv4 address. Signed-off-by: Jiri Benc <jbenc@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/fib6_rules.c')
-rw-r--r--net/ipv6/fib6_rules.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/net/ipv6/fib6_rules.c b/net/ipv6/fib6_rules.c
index 273eb26cd6d4..d313bfd88512 100644
--- a/net/ipv6/fib6_rules.c
+++ b/net/ipv6/fib6_rules.c
@@ -250,11 +250,9 @@ static int fib6_rule_fill(struct fib_rule *rule, struct sk_buff *skb,
250 frh->tos = rule6->tclass; 250 frh->tos = rule6->tclass;
251 251
252 if ((rule6->dst.plen && 252 if ((rule6->dst.plen &&
253 nla_put(skb, FRA_DST, sizeof(struct in6_addr), 253 nla_put_in6_addr(skb, FRA_DST, &rule6->dst.addr)) ||
254 &rule6->dst.addr)) ||
255 (rule6->src.plen && 254 (rule6->src.plen &&
256 nla_put(skb, FRA_SRC, sizeof(struct in6_addr), 255 nla_put_in6_addr(skb, FRA_SRC, &rule6->src.addr)))
257 &rule6->src.addr)))
258 goto nla_put_failure; 256 goto nla_put_failure;
259 return 0; 257 return 0;
260 258