[SCTP]: sctp_transport_{init,new}() switched to net-endian.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/net/sctp/associola.c b/net/sctp/associola.c
index 4bd916c..7824aea 100644
--- a/net/sctp/associola.c
+++ b/net/sctp/associola.c
@@ -564,7 +564,7 @@
return peer;
}
- peer = sctp_transport_new(addr, gfp);
+ peer = sctp_transport_new(&tmp, gfp);
if (!peer)
return NULL;
diff --git a/net/sctp/sm_statefuns.c b/net/sctp/sm_statefuns.c
index 174acc3..c536263 100644
--- a/net/sctp/sm_statefuns.c
+++ b/net/sctp/sm_statefuns.c
@@ -5105,6 +5105,7 @@
__u16 sport;
__u16 dport;
__u32 vtag;
+ union sctp_addr tmp;
/* Get the source and destination port from the inbound packet. */
sport = ntohs(chunk->sctp_hdr->dest);
@@ -5135,7 +5136,8 @@
}
/* Make a transport for the bucket, Eliza... */
- transport = sctp_transport_new(sctp_source(chunk), GFP_ATOMIC);
+ flip_to_n(&tmp, sctp_source(chunk));
+ transport = sctp_transport_new(&tmp, GFP_ATOMIC);
if (!transport)
goto nomem;
diff --git a/net/sctp/transport.c b/net/sctp/transport.c
index bacd094..e1448ad 100644
--- a/net/sctp/transport.c
+++ b/net/sctp/transport.c
@@ -61,8 +61,8 @@
gfp_t gfp)
{
/* Copy in the address. */
- peer->ipaddr_h = *addr;
- flip_to_n(&peer->ipaddr, &peer->ipaddr_h);
+ peer->ipaddr = *addr;
+ flip_to_h(&peer->ipaddr_h, &peer->ipaddr);
peer->af_specific = sctp_get_af_specific(addr->sa.sa_family);
peer->asoc = NULL;