NobGit
public nobgit read

NobMail

Based on mailcow: dockerized

Languages

Repository composition by tracked source files.

PHP
PHP 49% JavaScript 35% HTML 9% CSS 4% Shell 2% Python 1% Lua 0% Perl 0% Ruby 0% SCSS 0%
Create file Wiki Documentation
Clone
https://nobgit.com/orgs/nobgit/nobmail.git
ssh://[email protected]:2222/orgs/nobgit/nobmail.git

Commit

[Web] Fix for the fix of transport map checks

ebaa441f
andryyy <[email protected]> 8 years ago
data/web/inc/functions.transports.inc.php | 24 ++++++++++++++++++++++--
 1 file changed, 22 insertions(+), 2 deletions(-)

Diff

diff --git a/data/web/inc/functions.transports.inc.php b/data/web/inc/functions.transports.inc.php
index 0131bd36..e45fab78 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(