summaryrefslogtreecommitdiff
path: root/net/sctp/transport.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-12-01 15:58:15 +0100
committerTakashi Iwai <tiwai@suse.de>2009-12-01 15:58:15 +0100
commitb00615d163cd24fa98d155acfc1f9d81d6fe1103 (patch)
treedde815788aaea3e336aaaf24763311ce63a22e1b /net/sctp/transport.c
parent75639e7ee1401b3876c7a00ffe96ea8027668690 (diff)
parentd6797322231af98b9bb4afb175dd614cf511e5f7 (diff)
Merge branch 'topic/pcm-dma-fix' into topic/core-change
Diffstat (limited to 'net/sctp/transport.c')
-rw-r--r--net/sctp/transport.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/sctp/transport.c b/net/sctp/transport.c
index c256e4839316..3b141bb32faf 100644
--- a/net/sctp/transport.c
+++ b/net/sctp/transport.c
@@ -308,7 +308,8 @@ void sctp_transport_route(struct sctp_transport *transport,
/* Initialize sk->sk_rcv_saddr, if the transport is the
* association's active path for getsockname().
*/
- if (asoc && (transport == asoc->peer.active_path))
+ if (asoc && (!asoc->peer.primary_path ||
+ (transport == asoc->peer.active_path)))
opt->pf->af->to_sk_saddr(&transport->saddr,
asoc->base.sk);
} else