|
@@ -907,8 +907,8 @@ void sctp_assoc_control_transport(struct sctp_association *asoc,
|
|
|
if (!first || t->last_time_heard > first->last_time_heard) {
|
|
|
second = first;
|
|
|
first = t;
|
|
|
- }
|
|
|
- if (!second || t->last_time_heard > second->last_time_heard)
|
|
|
+ } else if (!second ||
|
|
|
+ t->last_time_heard > second->last_time_heard)
|
|
|
second = t;
|
|
|
}
|
|
|
|
|
@@ -929,6 +929,8 @@ void sctp_assoc_control_transport(struct sctp_association *asoc,
|
|
|
first = asoc->peer.primary_path;
|
|
|
}
|
|
|
|
|
|
+ if (!second)
|
|
|
+ second = first;
|
|
|
/* If we failed to find a usable transport, just camp on the
|
|
|
* primary, even if it is inactive.
|
|
|
*/
|