diff options
Diffstat (limited to 'net/xfrm/xfrm_state.c')
| -rw-r--r-- | net/xfrm/xfrm_state.c | 12 | 
1 files changed, 4 insertions, 8 deletions
diff --git a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c index 9414b9c5b1e..5b228f97d4b 100644 --- a/net/xfrm/xfrm_state.c +++ b/net/xfrm/xfrm_state.c @@ -1035,16 +1035,12 @@ static struct xfrm_state *__find_acq_core(struct net *net, struct xfrm_mark *m,  			break;  		case AF_INET6: -			ipv6_addr_copy((struct in6_addr *)x->sel.daddr.a6, -				       (const struct in6_addr *)daddr); -			ipv6_addr_copy((struct in6_addr *)x->sel.saddr.a6, -				       (const struct in6_addr *)saddr); +			*(struct in6_addr *)x->sel.daddr.a6 = *(struct in6_addr *)daddr; +			*(struct in6_addr *)x->sel.saddr.a6 = *(struct in6_addr *)saddr;  			x->sel.prefixlen_d = 128;  			x->sel.prefixlen_s = 128; -			ipv6_addr_copy((struct in6_addr *)x->props.saddr.a6, -				       (const struct in6_addr *)saddr); -			ipv6_addr_copy((struct in6_addr *)x->id.daddr.a6, -				       (const struct in6_addr *)daddr); +			*(struct in6_addr *)x->props.saddr.a6 = *(struct in6_addr *)saddr; +			*(struct in6_addr *)x->id.daddr.a6 = *(struct in6_addr *)daddr;  			break;  		}  |