From a16463610639a22d470c2c999ce2a8408a575834 Mon Sep 17 00:00:00 2001 From: Stanislav Zaikin Date: Tue, 5 Sep 2023 10:40:07 +0200 Subject: linux-cp: check if lcp_itf_pair exists before creating tap Now we create tun/tap and then check whether lcp_itf_pair was already created. Move the check in the beginning. Type: fix Signed-off-by: Stanislav Zaikin Change-Id: I848685a9cfdbe92a5e38ecb8e5d5322262b4e384 --- src/plugins/linux-cp/lcp_interface.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/plugins/linux-cp/lcp_interface.c') diff --git a/src/plugins/linux-cp/lcp_interface.c b/src/plugins/linux-cp/lcp_interface.c index fab048a7773..921dccf5519 100644 --- a/src/plugins/linux-cp/lcp_interface.c +++ b/src/plugins/linux-cp/lcp_interface.c @@ -782,6 +782,15 @@ lcp_itf_pair_create (u32 phy_sw_if_index, u8 *host_if_name, const vnet_sw_interface_t *sw; const vnet_hw_interface_t *hw; const lcp_itf_pair_t *lip; + index_t lipi; + + lipi = lcp_itf_pair_find_by_phy (phy_sw_if_index); + + if (lipi != INDEX_INVALID) + { + LCP_ITF_PAIR_ERR ("pair_create: already created"); + return VNET_API_ERROR_VALUE_EXIST; + } if (!vnet_sw_if_index_is_api_valid (phy_sw_if_index)) { -- cgit 1.2.3-korg