From ebaa441f0e788a0ff2c3e914e72d96c8c90ed78a Mon Sep 17 00:00:00 2001 From: andryyy Date: Sun, 23 Dec 2018 14:16:55 +0100 Subject: [PATCH] [Web] Fix for the fix of transport map checks --- data/web/inc/functions.transports.inc.php | 24 +++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/data/web/inc/functions.transports.inc.php b/data/web/inc/functions.transports.inc.php index 0131bd362..e45fab789 100644 --- a/data/web/inc/functions.transports.inc.php +++ b/data/web/inc/functions.transports.inc.php @@ -225,7 +225,17 @@ function transport($_action, $_data = null) { } } } - if (!isset($next_hop_matches[1])) { + if (isset($next_hop_matches[1])) { + if (in_array($next_hop_clean, $existing_nh)) { + $_SESSION['return'][] = array( + 'type' => 'danger', + 'log' => array(__FUNCTION__, $_action, $_data_log), + 'msg' => array('next_hop_interferes', $next_hop_clean, $nexthop) + ); + return false; + } + } + else { foreach ($existing_clean_nh as $existing_clean_nh_each) { if ($existing_clean_nh_each[1] == $nexthop) { $_SESSION['return'][] = array( @@ -311,7 +321,17 @@ function transport($_action, $_data = null) { preg_match('/\[(.+)\].*/', $transport_data['nexthop'], $existing_clean_nh[]); } } - if (!isset($next_hop_matches[1])) { + if (isset($next_hop_matches[1])) { + if (in_array($next_hop_clean, $existing_nh)) { + $_SESSION['return'][] = array( + 'type' => 'danger', + 'log' => array(__FUNCTION__, $_action, $_data_log), + 'msg' => array('next_hop_interferes', $next_hop_clean, $nexthop) + ); + return false; + } + } + else { foreach ($existing_clean_nh as $existing_clean_nh_each) { if ($existing_clean_nh_each[1] == $nexthop) { $_SESSION['return'][] = array(