aboutsummaryrefslogtreecommitdiffstats
path: root/net/sctp/sm_statefuns.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/sctp/sm_statefuns.c')
-rw-r--r--net/sctp/sm_statefuns.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/net/sctp/sm_statefuns.c b/net/sctp/sm_statefuns.c
index ac776fd20667..7d722f5a31d7 100644
--- a/net/sctp/sm_statefuns.c
+++ b/net/sctp/sm_statefuns.c
@@ -1018,6 +1018,7 @@ sctp_disposition_t sctp_sf_backbeat_8_3(const struct sctp_endpoint *ep,
1018 struct sctp_transport *link; 1018 struct sctp_transport *link;
1019 sctp_sender_hb_info_t *hbinfo; 1019 sctp_sender_hb_info_t *hbinfo;
1020 unsigned long max_interval; 1020 unsigned long max_interval;
1021 union sctp_addr tmp;
1021 1022
1022 if (!sctp_vtag_verify(chunk, asoc)) 1023 if (!sctp_vtag_verify(chunk, asoc))
1023 return sctp_sf_pdiscard(ep, asoc, type, arg, commands); 1024 return sctp_sf_pdiscard(ep, asoc, type, arg, commands);
@@ -1035,7 +1036,8 @@ sctp_disposition_t sctp_sf_backbeat_8_3(const struct sctp_endpoint *ep,
1035 } 1036 }
1036 1037
1037 from_addr = hbinfo->daddr; 1038 from_addr = hbinfo->daddr;
1038 link = sctp_assoc_lookup_paddr(asoc, &from_addr); 1039 flip_to_n(&tmp, &from_addr);
1040 link = sctp_assoc_lookup_paddr(asoc, &tmp);
1039 1041
1040 /* This should never happen, but lets log it if so. */ 1042 /* This should never happen, but lets log it if so. */
1041 if (unlikely(!link)) { 1043 if (unlikely(!link)) {