summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2006-11-21 02:11:50 +0100
committerDavid S. Miller <davem@sunset.davemloft.net>2006-12-03 06:26:50 +0100
commit6c7be55ca0c204473d07a030a03c49a7471b4508 (patch)
treed1dd7c14a0b723523834ecc09199fbfe9e50139f
parent[SCTP]: sctp_endpoint_lookup_assoc() switched to net-endian. (diff)
downloadlinux-6c7be55ca0c204473d07a030a03c49a7471b4508.tar.xz
linux-6c7be55ca0c204473d07a030a03c49a7471b4508.zip
[SCTP]: sctp_has_association() switched to net-endian.
Ditto for its only caller (sctp_endpoint_is_peeled_off) Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/sctp/endpointola.c2
-rw-r--r--net/sctp/input.c5
-rw-r--r--net/sctp/socket.c4
3 files changed, 4 insertions, 7 deletions
diff --git a/net/sctp/endpointola.c b/net/sctp/endpointola.c
index 5ffb1af336c0..4cca7792c961 100644
--- a/net/sctp/endpointola.c
+++ b/net/sctp/endpointola.c
@@ -305,7 +305,7 @@ int sctp_endpoint_is_peeled_off(struct sctp_endpoint *ep,
bp = &ep->base.bind_addr;
list_for_each(pos, &bp->address_list) {
addr = list_entry(pos, struct sctp_sockaddr_entry, list);
- if (sctp_has_association(&addr->a_h, paddr)) {
+ if (sctp_has_association(&addr->a, paddr)) {
sctp_read_unlock(&ep->base.addr_lock);
return 1;
}
diff --git a/net/sctp/input.c b/net/sctp/input.c
index 2d660f8d94fd..33111873a488 100644
--- a/net/sctp/input.c
+++ b/net/sctp/input.c
@@ -872,11 +872,8 @@ int sctp_has_association(const union sctp_addr *laddr,
{
struct sctp_association *asoc;
struct sctp_transport *transport;
- union sctp_addr tmp, tmp2;
- flip_to_n(&tmp, laddr);
- flip_to_n(&tmp2, paddr);
- if ((asoc = sctp_lookup_association(&tmp, &tmp2, &transport))) {
+ if ((asoc = sctp_lookup_association(laddr, paddr, &transport))) {
sctp_association_put(asoc);
return 1;
}
diff --git a/net/sctp/socket.c b/net/sctp/socket.c
index 6beaa7821ca6..e118e3c1285e 100644
--- a/net/sctp/socket.c
+++ b/net/sctp/socket.c
@@ -1018,7 +1018,7 @@ static int __sctp_connect(struct sock* sk,
* make sure that there is no peeled-off association matching
* the peer address even on another socket.
*/
- if (sctp_endpoint_is_peeled_off(ep, &to)) {
+ if (sctp_endpoint_is_peeled_off(ep, sa_addr)) {
err = -EADDRNOTAVAIL;
goto out_free;
}
@@ -1475,7 +1475,7 @@ SCTP_STATIC int sctp_sendmsg(struct kiocb *iocb, struct sock *sk,
*/
if ((sctp_style(sk, TCP) &&
sctp_sstate(sk, ESTABLISHED)) ||
- sctp_endpoint_is_peeled_off(ep, &to)) {
+ sctp_endpoint_is_peeled_off(ep, &tmp)) {
err = -EADDRNOTAVAIL;
goto out_unlock;
}