aboutsummaryrefslogtreecommitdiffstats
path: root/net/sctp/bind_addr.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/sctp/bind_addr.c')
-rw-r--r--net/sctp/bind_addr.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/net/sctp/bind_addr.c b/net/sctp/bind_addr.c
index eb3a5e25777d..fd0f812f8a46 100644
--- a/net/sctp/bind_addr.c
+++ b/net/sctp/bind_addr.c
@@ -264,7 +264,6 @@ int sctp_raw_to_bind_addrs(struct sctp_bind_addr *bp, __u8 *raw_addr_list,
264 int retval = 0; 264 int retval = 0;
265 int len; 265 int len;
266 struct sctp_af *af; 266 struct sctp_af *af;
267 union sctp_addr tmp;
268 267
269 /* Convert the raw address to standard address format */ 268 /* Convert the raw address to standard address format */
270 while (addrs_len) { 269 while (addrs_len) {
@@ -278,9 +277,8 @@ int sctp_raw_to_bind_addrs(struct sctp_bind_addr *bp, __u8 *raw_addr_list,
278 break; 277 break;
279 } 278 }
280 279
281 af->from_addr_param(&addr, rawaddr, port, 0); 280 af->from_addr_param(&addr, rawaddr, htons(port), 0);
282 flip_to_n(&tmp, &addr); 281 retval = sctp_add_bind_addr(bp, &addr, 1, gfp);
283 retval = sctp_add_bind_addr(bp, &tmp, 1, gfp);
284 if (retval) { 282 if (retval) {
285 /* Can't finish building the list, clean up. */ 283 /* Can't finish building the list, clean up. */
286 sctp_bind_addr_clean(bp); 284 sctp_bind_addr_clean(bp);