Expanded filter uid, fixes #141

This commit is contained in:
Tomaae 2022-02-18 11:11:14 +01:00
parent 57a5ae622b
commit 9cc4921658
2 changed files with 16 additions and 4 deletions

View file

@ -1052,10 +1052,14 @@ class MikrotikControllerData:
{"name": "address-list"}, {"name": "address-list"},
{"name": "protocol", "default": "any"}, {"name": "protocol", "default": "any"},
{"name": "in-interface", "default": "any"}, {"name": "in-interface", "default": "any"},
{"name": "in-interface-list", "default": "any"},
{"name": "out-interface", "default": "any"}, {"name": "out-interface", "default": "any"},
{"name": "out-interface-list", "default": "any"},
{"name": "src-address", "default": "any"}, {"name": "src-address", "default": "any"},
{"name": "src-address-list", "default": "any"},
{"name": "src-port", "default": "any"}, {"name": "src-port", "default": "any"},
{"name": "dst-address", "default": "any"}, {"name": "dst-address", "default": "any"},
{"name": "dst-address-list", "default": "any"},
{"name": "dst-port", "default": "any"}, {"name": "dst-port", "default": "any"},
{"name": "layer7-protocol", "default": "any"}, {"name": "layer7-protocol", "default": "any"},
{"name": "connection-state", "default": "any"}, {"name": "connection-state", "default": "any"},
@ -1081,14 +1085,22 @@ class MikrotikControllerData:
{"key": "layer7-protocol"}, {"key": "layer7-protocol"},
{"text": ","}, {"text": ","},
{"key": "in-interface"}, {"key": "in-interface"},
{"text": ","},
{"key": "in-interface-list"},
{"text": ":"}, {"text": ":"},
{"key": "src-address"}, {"key": "src-address"},
{"text": ","},
{"key": "src-address-list"},
{"text": ":"}, {"text": ":"},
{"key": "src-port"}, {"key": "src-port"},
{"text": "-"}, {"text": "-"},
{"key": "out-interface"}, {"key": "out-interface"},
{"text": ","},
{"key": "out-interface-list"},
{"text": ":"}, {"text": ":"},
{"key": "dst-address"}, {"key": "dst-address"},
{"text": ","},
{"key": "dst-address-list"},
{"text": ":"}, {"text": ":"},
{"key": "dst-port"}, {"key": "dst-port"},
], ],

View file

@ -407,8 +407,8 @@ class MikrotikControllerFilterSwitch(MikrotikControllerSwitch):
for uid in self._ctrl.data["filter"]: for uid in self._ctrl.data["filter"]:
if self._ctrl.data["filter"][uid]["uniq-id"] == ( if self._ctrl.data["filter"][uid]["uniq-id"] == (
f"{self._data['chain']},{self._data['action']},{self._data['protocol']},{self._data['layer7-protocol']}," f"{self._data['chain']},{self._data['action']},{self._data['protocol']},{self._data['layer7-protocol']},"
f"{self._data['in-interface']}:{self._data['src-address']}:{self._data['src-port']}-" f"{self._data['in-interface']},{self._data['in-interface-list']}:{self._data['src-address']},{self._data['src-address-list']}:{self._data['src-port']}-"
f"{self._data['out-interface']}:{self._data['dst-address']}:{self._data['dst-port']}" f"{self._data['out-interface']},{self._data['out-interface-list']}:{self._data['dst-address']},{self._data['dst-address-list']}:{self._data['dst-port']}"
): ):
value = self._ctrl.data["filter"][uid][".id"] value = self._ctrl.data["filter"][uid][".id"]
@ -424,8 +424,8 @@ class MikrotikControllerFilterSwitch(MikrotikControllerSwitch):
for uid in self._ctrl.data["filter"]: for uid in self._ctrl.data["filter"]:
if self._ctrl.data["filter"][uid]["uniq-id"] == ( if self._ctrl.data["filter"][uid]["uniq-id"] == (
f"{self._data['chain']},{self._data['action']},{self._data['protocol']},{self._data['layer7-protocol']}," f"{self._data['chain']},{self._data['action']},{self._data['protocol']},{self._data['layer7-protocol']},"
f"{self._data['in-interface']}:{self._data['src-address']}:{self._data['src-port']}-" f"{self._data['in-interface']},{self._data['in-interface-list']}:{self._data['src-address']},{self._data['src-address-list']}:{self._data['src-port']}-"
f"{self._data['out-interface']}:{self._data['dst-address']}:{self._data['dst-port']}" f"{self._data['out-interface']},{self._data['out-interface-list']}:{self._data['dst-address']},{self._data['dst-address-list']}:{self._data['dst-port']}"
): ):
value = self._ctrl.data["filter"][uid][".id"] value = self._ctrl.data["filter"][uid][".id"]