sctp: check cached dst before using it
dst_check() will take care of SA (and obsolete field), hence IPsec rekeying scenario is taken into account. Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> Acked-by: Vlad Yaseivch <vyasevich@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
c57b546840
commit
e0268868ba
@@ -377,9 +377,7 @@ int sctp_packet_transmit(struct sctp_packet *packet)
|
||||
*/
|
||||
skb_set_owner_w(nskb, sk);
|
||||
|
||||
/* The 'obsolete' field of dst is set to 2 when a dst is freed. */
|
||||
if (!dst || (dst->obsolete > 1)) {
|
||||
dst_release(dst);
|
||||
if (!sctp_transport_dst_check(tp)) {
|
||||
sctp_transport_route(tp, NULL, sctp_sk(sk));
|
||||
if (asoc && (asoc->param_flags & SPP_PMTUD_ENABLE)) {
|
||||
sctp_assoc_sync_pmtu(asoc);
|
||||
|
Reference in New Issue
Block a user