aboutsummaryrefslogtreecommitdiffstats
path: root/net/sctp/socket.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/sctp/socket.c')
-rw-r--r--net/sctp/socket.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/net/sctp/socket.c b/net/sctp/socket.c
index e878da0949db..0e3de0c71137 100644
--- a/net/sctp/socket.c
+++ b/net/sctp/socket.c
@@ -386,7 +386,8 @@ static int sctp_do_bind(struct sock *sk, union sctp_addr *addr, int len)
386 /* Add the address to the bind address list. 386 /* Add the address to the bind address list.
387 * Use GFP_ATOMIC since BHs will be disabled. 387 * Use GFP_ATOMIC since BHs will be disabled.
388 */ 388 */
389 ret = sctp_add_bind_addr(bp, addr, SCTP_ADDR_SRC, GFP_ATOMIC); 389 ret = sctp_add_bind_addr(bp, addr, af->sockaddr_len,
390 SCTP_ADDR_SRC, GFP_ATOMIC);
390 391
391 /* Copy back into socket for getsockname() use. */ 392 /* Copy back into socket for getsockname() use. */
392 if (!ret) { 393 if (!ret) {
@@ -577,6 +578,7 @@ static int sctp_send_asconf_add_ip(struct sock *sk,
577 af = sctp_get_af_specific(addr->v4.sin_family); 578 af = sctp_get_af_specific(addr->v4.sin_family);
578 memcpy(&saveaddr, addr, af->sockaddr_len); 579 memcpy(&saveaddr, addr, af->sockaddr_len);
579 retval = sctp_add_bind_addr(bp, &saveaddr, 580 retval = sctp_add_bind_addr(bp, &saveaddr,
581 sizeof(saveaddr),
580 SCTP_ADDR_NEW, GFP_ATOMIC); 582 SCTP_ADDR_NEW, GFP_ATOMIC);
581 addr_buf += af->sockaddr_len; 583 addr_buf += af->sockaddr_len;
582 } 584 }