diff options
author | Alexey Dobriyan <adobriyan@gmail.com> | 2011-11-20 22:39:03 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-11-22 16:43:32 -0500 |
commit | 4e3fd7a06dc20b2d8ec6892233ad2012968fe7b6 (patch) | |
tree | da3fbec7672ac6b967dfa31cec6c88f468a57fa2 /net/ipv6/tcp_ipv6.c | |
parent | 40ba84993d66469d336099c5af74c3da5b73e28d (diff) |
net: remove ipv6_addr_copy()
C assignment can handle struct in6_addr copying.
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/tcp_ipv6.c')
-rw-r--r-- | net/ipv6/tcp_ipv6.c | 46 |
1 files changed, 22 insertions, 24 deletions
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c index 36131d122a6f..fd98dd010fcb 100644 --- a/net/ipv6/tcp_ipv6.c +++ b/net/ipv6/tcp_ipv6.c | |||
@@ -153,7 +153,7 @@ static int tcp_v6_connect(struct sock *sk, struct sockaddr *uaddr, | |||
153 | flowlabel = fl6_sock_lookup(sk, fl6.flowlabel); | 153 | flowlabel = fl6_sock_lookup(sk, fl6.flowlabel); |
154 | if (flowlabel == NULL) | 154 | if (flowlabel == NULL) |
155 | return -EINVAL; | 155 | return -EINVAL; |
156 | ipv6_addr_copy(&usin->sin6_addr, &flowlabel->dst); | 156 | usin->sin6_addr = flowlabel->dst; |
157 | fl6_sock_release(flowlabel); | 157 | fl6_sock_release(flowlabel); |
158 | } | 158 | } |
159 | } | 159 | } |
@@ -195,7 +195,7 @@ static int tcp_v6_connect(struct sock *sk, struct sockaddr *uaddr, | |||
195 | tp->write_seq = 0; | 195 | tp->write_seq = 0; |
196 | } | 196 | } |
197 | 197 | ||
198 | ipv6_addr_copy(&np->daddr, &usin->sin6_addr); | 198 | np->daddr = usin->sin6_addr; |
199 | np->flow_label = fl6.flowlabel; | 199 | np->flow_label = fl6.flowlabel; |
200 | 200 | ||
201 | /* | 201 | /* |
@@ -244,9 +244,8 @@ static int tcp_v6_connect(struct sock *sk, struct sockaddr *uaddr, | |||
244 | saddr = &np->rcv_saddr; | 244 | saddr = &np->rcv_saddr; |
245 | 245 | ||
246 | fl6.flowi6_proto = IPPROTO_TCP; | 246 | fl6.flowi6_proto = IPPROTO_TCP; |
247 | ipv6_addr_copy(&fl6.daddr, &np->daddr); | 247 | fl6.daddr = np->daddr; |
248 | ipv6_addr_copy(&fl6.saddr, | 248 | fl6.saddr = saddr ? *saddr : np->saddr; |
249 | (saddr ? saddr : &np->saddr)); | ||
250 | fl6.flowi6_oif = sk->sk_bound_dev_if; | 249 | fl6.flowi6_oif = sk->sk_bound_dev_if; |
251 | fl6.flowi6_mark = sk->sk_mark; | 250 | fl6.flowi6_mark = sk->sk_mark; |
252 | fl6.fl6_dport = usin->sin6_port; | 251 | fl6.fl6_dport = usin->sin6_port; |
@@ -264,11 +263,11 @@ static int tcp_v6_connect(struct sock *sk, struct sockaddr *uaddr, | |||
264 | 263 | ||
265 | if (saddr == NULL) { | 264 | if (saddr == NULL) { |
266 | saddr = &fl6.saddr; | 265 | saddr = &fl6.saddr; |
267 | ipv6_addr_copy(&np->rcv_saddr, saddr); | 266 | np->rcv_saddr = *saddr; |
268 | } | 267 | } |
269 | 268 | ||
270 | /* set the source address */ | 269 | /* set the source address */ |
271 | ipv6_addr_copy(&np->saddr, saddr); | 270 | np->saddr = *saddr; |
272 | inet->inet_rcv_saddr = LOOPBACK4_IPV6; | 271 | inet->inet_rcv_saddr = LOOPBACK4_IPV6; |
273 | 272 | ||
274 | sk->sk_gso_type = SKB_GSO_TCPV6; | 273 | sk->sk_gso_type = SKB_GSO_TCPV6; |
@@ -398,8 +397,8 @@ static void tcp_v6_err(struct sk_buff *skb, struct inet6_skb_parm *opt, | |||
398 | */ | 397 | */ |
399 | memset(&fl6, 0, sizeof(fl6)); | 398 | memset(&fl6, 0, sizeof(fl6)); |
400 | fl6.flowi6_proto = IPPROTO_TCP; | 399 | fl6.flowi6_proto = IPPROTO_TCP; |
401 | ipv6_addr_copy(&fl6.daddr, &np->daddr); | 400 | fl6.daddr = np->daddr; |
402 | ipv6_addr_copy(&fl6.saddr, &np->saddr); | 401 | fl6.saddr = np->saddr; |
403 | fl6.flowi6_oif = sk->sk_bound_dev_if; | 402 | fl6.flowi6_oif = sk->sk_bound_dev_if; |
404 | fl6.flowi6_mark = sk->sk_mark; | 403 | fl6.flowi6_mark = sk->sk_mark; |
405 | fl6.fl6_dport = inet->inet_dport; | 404 | fl6.fl6_dport = inet->inet_dport; |
@@ -489,8 +488,8 @@ static int tcp_v6_send_synack(struct sock *sk, struct request_sock *req, | |||
489 | 488 | ||
490 | memset(&fl6, 0, sizeof(fl6)); | 489 | memset(&fl6, 0, sizeof(fl6)); |
491 | fl6.flowi6_proto = IPPROTO_TCP; | 490 | fl6.flowi6_proto = IPPROTO_TCP; |
492 | ipv6_addr_copy(&fl6.daddr, &treq->rmt_addr); | 491 | fl6.daddr = treq->rmt_addr; |
493 | ipv6_addr_copy(&fl6.saddr, &treq->loc_addr); | 492 | fl6.saddr = treq->loc_addr; |
494 | fl6.flowlabel = 0; | 493 | fl6.flowlabel = 0; |
495 | fl6.flowi6_oif = treq->iif; | 494 | fl6.flowi6_oif = treq->iif; |
496 | fl6.flowi6_mark = sk->sk_mark; | 495 | fl6.flowi6_mark = sk->sk_mark; |
@@ -512,7 +511,7 @@ static int tcp_v6_send_synack(struct sock *sk, struct request_sock *req, | |||
512 | if (skb) { | 511 | if (skb) { |
513 | __tcp_v6_send_check(skb, &treq->loc_addr, &treq->rmt_addr); | 512 | __tcp_v6_send_check(skb, &treq->loc_addr, &treq->rmt_addr); |
514 | 513 | ||
515 | ipv6_addr_copy(&fl6.daddr, &treq->rmt_addr); | 514 | fl6.daddr = treq->rmt_addr; |
516 | err = ip6_xmit(sk, skb, &fl6, opt, np->tclass); | 515 | err = ip6_xmit(sk, skb, &fl6, opt, np->tclass); |
517 | err = net_xmit_eval(err); | 516 | err = net_xmit_eval(err); |
518 | } | 517 | } |
@@ -617,8 +616,7 @@ static int tcp_v6_md5_do_add(struct sock *sk, const struct in6_addr *peer, | |||
617 | tp->md5sig_info->alloced6++; | 616 | tp->md5sig_info->alloced6++; |
618 | } | 617 | } |
619 | 618 | ||
620 | ipv6_addr_copy(&tp->md5sig_info->keys6[tp->md5sig_info->entries6].addr, | 619 | tp->md5sig_info->keys6[tp->md5sig_info->entries6].addr = *peer; |
621 | peer); | ||
622 | tp->md5sig_info->keys6[tp->md5sig_info->entries6].base.key = newkey; | 620 | tp->md5sig_info->keys6[tp->md5sig_info->entries6].base.key = newkey; |
623 | tp->md5sig_info->keys6[tp->md5sig_info->entries6].base.keylen = newkeylen; | 621 | tp->md5sig_info->keys6[tp->md5sig_info->entries6].base.keylen = newkeylen; |
624 | 622 | ||
@@ -750,8 +748,8 @@ static int tcp_v6_md5_hash_pseudoheader(struct tcp_md5sig_pool *hp, | |||
750 | 748 | ||
751 | bp = &hp->md5_blk.ip6; | 749 | bp = &hp->md5_blk.ip6; |
752 | /* 1. TCP pseudo-header (RFC2460) */ | 750 | /* 1. TCP pseudo-header (RFC2460) */ |
753 | ipv6_addr_copy(&bp->saddr, saddr); | 751 | bp->saddr = *saddr; |
754 | ipv6_addr_copy(&bp->daddr, daddr); | 752 | bp->daddr = *daddr; |
755 | bp->protocol = cpu_to_be32(IPPROTO_TCP); | 753 | bp->protocol = cpu_to_be32(IPPROTO_TCP); |
756 | bp->len = cpu_to_be32(nbytes); | 754 | bp->len = cpu_to_be32(nbytes); |
757 | 755 | ||
@@ -1039,8 +1037,8 @@ static void tcp_v6_send_response(struct sk_buff *skb, u32 seq, u32 ack, u32 win, | |||
1039 | #endif | 1037 | #endif |
1040 | 1038 | ||
1041 | memset(&fl6, 0, sizeof(fl6)); | 1039 | memset(&fl6, 0, sizeof(fl6)); |
1042 | ipv6_addr_copy(&fl6.daddr, &ipv6_hdr(skb)->saddr); | 1040 | fl6.daddr = ipv6_hdr(skb)->saddr; |
1043 | ipv6_addr_copy(&fl6.saddr, &ipv6_hdr(skb)->daddr); | 1041 | fl6.saddr = ipv6_hdr(skb)->daddr; |
1044 | 1042 | ||
1045 | buff->ip_summed = CHECKSUM_PARTIAL; | 1043 | buff->ip_summed = CHECKSUM_PARTIAL; |
1046 | buff->csum = 0; | 1044 | buff->csum = 0; |
@@ -1250,8 +1248,8 @@ static int tcp_v6_conn_request(struct sock *sk, struct sk_buff *skb) | |||
1250 | tcp_openreq_init(req, &tmp_opt, skb); | 1248 | tcp_openreq_init(req, &tmp_opt, skb); |
1251 | 1249 | ||
1252 | treq = inet6_rsk(req); | 1250 | treq = inet6_rsk(req); |
1253 | ipv6_addr_copy(&treq->rmt_addr, &ipv6_hdr(skb)->saddr); | 1251 | treq->rmt_addr = ipv6_hdr(skb)->saddr; |
1254 | ipv6_addr_copy(&treq->loc_addr, &ipv6_hdr(skb)->daddr); | 1252 | treq->loc_addr = ipv6_hdr(skb)->daddr; |
1255 | if (!want_cookie || tmp_opt.tstamp_ok) | 1253 | if (!want_cookie || tmp_opt.tstamp_ok) |
1256 | TCP_ECN_create_request(req, tcp_hdr(skb)); | 1254 | TCP_ECN_create_request(req, tcp_hdr(skb)); |
1257 | 1255 | ||
@@ -1380,7 +1378,7 @@ static struct sock * tcp_v6_syn_recv_sock(struct sock *sk, struct sk_buff *skb, | |||
1380 | 1378 | ||
1381 | ipv6_addr_set_v4mapped(newinet->inet_saddr, &newnp->saddr); | 1379 | ipv6_addr_set_v4mapped(newinet->inet_saddr, &newnp->saddr); |
1382 | 1380 | ||
1383 | ipv6_addr_copy(&newnp->rcv_saddr, &newnp->saddr); | 1381 | newnp->rcv_saddr = newnp->saddr; |
1384 | 1382 | ||
1385 | inet_csk(newsk)->icsk_af_ops = &ipv6_mapped; | 1383 | inet_csk(newsk)->icsk_af_ops = &ipv6_mapped; |
1386 | newsk->sk_backlog_rcv = tcp_v4_do_rcv; | 1384 | newsk->sk_backlog_rcv = tcp_v4_do_rcv; |
@@ -1444,9 +1442,9 @@ static struct sock * tcp_v6_syn_recv_sock(struct sock *sk, struct sk_buff *skb, | |||
1444 | 1442 | ||
1445 | memcpy(newnp, np, sizeof(struct ipv6_pinfo)); | 1443 | memcpy(newnp, np, sizeof(struct ipv6_pinfo)); |
1446 | 1444 | ||
1447 | ipv6_addr_copy(&newnp->daddr, &treq->rmt_addr); | 1445 | newnp->daddr = treq->rmt_addr; |
1448 | ipv6_addr_copy(&newnp->saddr, &treq->loc_addr); | 1446 | newnp->saddr = treq->loc_addr; |
1449 | ipv6_addr_copy(&newnp->rcv_saddr, &treq->loc_addr); | 1447 | newnp->rcv_saddr = treq->loc_addr; |
1450 | newsk->sk_bound_dev_if = treq->iif; | 1448 | newsk->sk_bound_dev_if = treq->iif; |
1451 | 1449 | ||
1452 | /* Now IPv6 options... | 1450 | /* Now IPv6 options... |