IPVS: use ipv6_addr_copy()
authorSimon Horman <horms@verge.net.au>
Sun, 7 Sep 2008 23:34:46 +0000 (09:34 +1000)
committerSimon Horman <horms@verge.net.au>
Sun, 7 Sep 2008 23:34:46 +0000 (09:34 +1000)
It is standard to use ipv6_addr_copy() to fill in
the in6 element of a union nf_inet_addr snet.

Thanks to Julius Volz for pointing this out.

Cc: Brian Haley <brian.haley@hp.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Acked-by: Julius Volz <juliusv@google.com>
net/ipv4/ipvs/ip_vs_core.c

index 1f4f3b9..f5180ac 100644 (file)
@@ -847,7 +847,7 @@ static int ip_vs_out_icmp_v6(struct sk_buff *skb, int *related)
        if (!cp)
                return NF_ACCEPT;
 
-       snet.in6 = iph->saddr;
+       ipv6_addr_copy(&snet.in6, &iph->saddr);
        return handle_response_icmp(AF_INET6, skb, &snet, cih->nexthdr, cp,
                                    pp, offset, sizeof(struct ipv6hdr));
 }
@@ -1227,7 +1227,7 @@ ip_vs_in_icmp_v6(struct sk_buff *skb, int *related, unsigned int hooknum)
                /* The packet could also belong to a local client */
                cp = pp->conn_out_get(AF_INET6, skb, pp, &ciph, offset, 1);
                if (cp) {
-                       snet.in6 = iph->saddr;
+                       ipv6_addr_copy(&snet.in6, &iph->saddr);
                        return handle_response_icmp(AF_INET6, skb, &snet,
                                                    cih->nexthdr,
                                                    cp, pp, offset,