Jelajahi Sumber

fix(l2): scope core switch rules to their configured network

clm0081 3 hari lalu
induk
melakukan
d07b739594
1 mengubah file dengan 8 tambahan dan 0 penghapusan
  1. 8 0
      web-modules/WecomCenter/assets/l2topology/app.js

+ 8 - 0
web-modules/WecomCenter/assets/l2topology/app.js

@@ -506,6 +506,14 @@
   function coreRuleHit(rule, n) {
     var pattern = String(rule.pattern || '');
     if (!pattern) return false;
+    var net = String(rule.net || '').toUpperCase();
+    if (net) {
+      var raw = rawNetOf(n);
+      // A core with no recognisable network keyword may still be assigned by
+      // the rule; a switch already known to belong to another network must
+      // not be stolen by a broad pattern.
+      if (raw !== 'OTHER' && raw !== net) return false;
+    }
     var hay = String((n && n.name) || '') + ' ' + String((n && n.ip) || '');
     if (String(rule.match || 'contains') === 'regex') {
       try { return new RegExp(pattern, 'i').test(hay); } catch (e) { return false; }