From 4234d47befb38a67139e088c40171e491e1444bb Mon Sep 17 00:00:00 2001 From: Vlad Yasevich Date: Fri, 30 Apr 2010 22:39:26 -0400 Subject: [PATCH] --- yaml --- r: 194635 b: refs/heads/master c: fbdf501c9374966a56829ecca3a7f25d2b49a305 h: refs/heads/master i: 194633: 99ea99b95e47161db9dfe9e964c216063604282b 194631: 0aa1aae1a7383191bd8e7b37a0a8a27943988247 v: v3 --- [refs] | 2 +- trunk/net/sctp/associola.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 8e4227f8038e..e07240dd9d43 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: bc4f841a05364b2572bcc266e9fd7e9cf5f06d5b +refs/heads/master: fbdf501c9374966a56829ecca3a7f25d2b49a305 diff --git a/trunk/net/sctp/associola.c b/trunk/net/sctp/associola.c index df5abbff63e2..de830c268564 100644 --- a/trunk/net/sctp/associola.c +++ b/trunk/net/sctp/associola.c @@ -762,7 +762,8 @@ struct sctp_transport *sctp_assoc_add_peer(struct sctp_association *asoc, asoc->peer.retran_path = peer; } - if (asoc->peer.active_path == asoc->peer.retran_path) { + if (asoc->peer.active_path == asoc->peer.retran_path && + peer->state != SCTP_UNCONFIRMED) { asoc->peer.retran_path = peer; } @@ -1318,7 +1319,7 @@ void sctp_assoc_update_retran_path(struct sctp_association *asoc) /* Keep track of the next transport in case * we don't find any active transport. */ - if (!next) + if (t->state != SCTP_UNCONFIRMED && !next) next = t; } }