diff options
| author | Eugene Grosbein <eugen@FreeBSD.org> | 2024-08-19 03:34:37 +0000 |
|---|---|---|
| committer | Eugene Grosbein <eugen@FreeBSD.org> | 2024-08-19 03:34:37 +0000 |
| commit | 8132e959099f0c533f698d8fbc17386f9144432f (patch) | |
| tree | f8a47fd58d7f633bc69f52a8f7746758ea69b72b /sys/netinet/libalias | |
| parent | 0a9d1da6e6cede5e9c0ff63240d724049ad72b5b (diff) | |
Diffstat (limited to 'sys/netinet/libalias')
| -rw-r--r-- | sys/netinet/libalias/alias_db.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sys/netinet/libalias/alias_db.c b/sys/netinet/libalias/alias_db.c index 167201fa1b8f..d516b6cda96c 100644 --- a/sys/netinet/libalias/alias_db.c +++ b/sys/netinet/libalias/alias_db.c @@ -868,8 +868,15 @@ _FindLinkIn(struct libalias *la, struct in_addr dst_addr, case 0: LIST_FOREACH(lnk, &grp->full, all.in) { if (lnk->dst_addr.s_addr == dst_addr.s_addr && - lnk->dst_port == dst_port) - return (UseLink(la, lnk)); + lnk->dst_port == dst_port) { + struct alias_link *found; + + found = UseLink(la, lnk); + if (found != NULL) + return (found); + /* link expired */ + break; + } } break; case LINK_UNKNOWN_DEST_PORT: |
