Merge pull request #18586 from zmw12306/bfd_find_disc

bfdd: Fix demultiplexing to rely solely on Your Discriminator
This commit is contained in:
Donald Sharp 2025-04-10 10:30:05 -04:00 committed by GitHub
commit 86f66afc52
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -755,26 +755,7 @@ void ptm_sbfd_echo_sess_dn(struct bfd_session *bfd, uint8_t diag)
static struct bfd_session *bfd_find_disc(struct sockaddr_any *sa,
uint32_t ldisc)
{
struct bfd_session *bs;
bs = bfd_id_lookup(ldisc);
if (bs == NULL)
return NULL;
switch (bs->key.family) {
case AF_INET:
if (memcmp(&sa->sa_sin.sin_addr, &bs->key.peer,
sizeof(sa->sa_sin.sin_addr)))
return NULL;
break;
case AF_INET6:
if (memcmp(&sa->sa_sin6.sin6_addr, &bs->key.peer,
sizeof(sa->sa_sin6.sin6_addr)))
return NULL;
break;
}
return bs;
return bfd_id_lookup(ldisc);
}
struct bfd_session *ptm_bfd_sess_find(struct bfd_pkt *cp,