diff options
author | 2025-02-05 15:45:50 -0500 | |
---|---|---|
committer | 2025-02-07 15:12:59 +0000 | |
commit | 9af015750c96a7af85771bf76c443c2ee6d5ff0f (patch) | |
tree | 16430d90a246d40148d02bde7f09470f953ed1a7 /src/vnet/session/transport.c | |
parent | a88b1d7e2dc77fdacef5f0cf4cf6794a9b86ffe0 (diff) |
session: do not match listeners when looking for lcl portv25.02-rc2stable/2502
Also optimize lookup to avoid session rules table matching.
Type: fix
Change-Id: I5b62c870edd9f7486e7de1417816fffa30d03a3e
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit 09341c6bbef28c03c1b026ff78808b000bf7d79d)
Diffstat (limited to 'src/vnet/session/transport.c')
-rw-r--r-- | src/vnet/session/transport.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/vnet/session/transport.c b/src/vnet/session/transport.c index e8c9490decb..c58d5900650 100644 --- a/src/vnet/session/transport.c +++ b/src/vnet/session/transport.c @@ -657,8 +657,8 @@ transport_alloc_local_port (u8 proto, ip46_address_t *lcl_addr, break; /* IP:port pair already in use, check if 6-tuple available */ - if (session_lookup_connection (rmt->fib_index, lcl_addr, &rmt->ip, port, - rmt->port, proto, rmt->is_ip4)) + if (session_lookup_6tuple (rmt->fib_index, lcl_addr, &rmt->ip, port, + rmt->port, proto, rmt->is_ip4)) continue; /* 6-tuple is available so increment lcl endpoint refcount */ @@ -787,9 +787,9 @@ transport_alloc_local_endpoint (u8 proto, transport_endpoint_cfg_t * rmt_cfg, return 0; /* IP:port pair already in use, check if 6-tuple available */ - if (session_lookup_connection (rmt->fib_index, lcl_addr, &rmt->ip, - rmt_cfg->peer.port, rmt->port, proto, - rmt->is_ip4)) + if (session_lookup_6tuple (rmt->fib_index, lcl_addr, &rmt->ip, + rmt_cfg->peer.port, rmt->port, proto, + rmt->is_ip4)) return SESSION_E_PORTINUSE; /* 6-tuple is available so increment lcl endpoint refcount */ |