aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Christian Hesse <mail@eworm.de>2021-11-18 18:05:33 +0100
committerGravatar Christian Hesse <mail@eworm.de>2021-11-19 20:18:39 +0100
commit15d8652c296597e42582e7248362fed70656e0df (patch)
tree47935a4df7455161e880e888e661449c384f4074
parent868879ec8d431b6e50ed4bfc098b562a319270f5 (diff)
accesslist-duplicates: read more than a single digit
With RouterOS 6.x a print always starts with numeric id zero, then counts up. This is no longer true with RouterOS 7.x... Thus we have to handle two or more digits in input.
-rw-r--r--accesslist-duplicates.capsman6
-rw-r--r--accesslist-duplicates.local6
-rw-r--r--accesslist-duplicates.template6
3 files changed, 12 insertions, 6 deletions
diff --git a/accesslist-duplicates.capsman b/accesslist-duplicates.capsman
index 5fcf6ae..3992991 100644
--- a/accesslist-duplicates.capsman
+++ b/accesslist-duplicates.capsman
@@ -12,6 +12,8 @@
:global GlobalFunctionsReady;
:while ($GlobalFunctionsReady != true) do={ :delay 500ms; }
+:local Read do={ :return; }
+
:local Seen [ :toarray "" ];
:local Shown [ :toarray "" ];
@@ -28,8 +30,8 @@
:set Shown ($Shown, $Mac);
:put "\nNumeric id to remove, any key to skip!";
- :local Remove ([ :terminal inkey ] - 48);
- :if ($Remove >= 0 && $Remove <= 9) do={
+ :local Remove [ :tonum [ $Read ] ];
+ :if ([ :typeof $Remove ] = "num") do={
:put ("Removing numeric id " . $Remove . "...\n");
/ caps-man access-list remove $Remove;
}
diff --git a/accesslist-duplicates.local b/accesslist-duplicates.local
index 4d058d4..cb2e7c3 100644
--- a/accesslist-duplicates.local
+++ b/accesslist-duplicates.local
@@ -12,6 +12,8 @@
:global GlobalFunctionsReady;
:while ($GlobalFunctionsReady != true) do={ :delay 500ms; }
+:local Read do={ :return; }
+
:local Seen [ :toarray "" ];
:local Shown [ :toarray "" ];
@@ -28,8 +30,8 @@
:set Shown ($Shown, $Mac);
:put "\nNumeric id to remove, any key to skip!";
- :local Remove ([ :terminal inkey ] - 48);
- :if ($Remove >= 0 && $Remove <= 9) do={
+ :local Remove [ :tonum [ $Read ] ];
+ :if ([ :typeof $Remove ] = "num") do={
:put ("Removing numeric id " . $Remove . "...\n");
/ interface wireless access-list remove $Remove;
}
diff --git a/accesslist-duplicates.template b/accesslist-duplicates.template
index 8878bcc..25923e1 100644
--- a/accesslist-duplicates.template
+++ b/accesslist-duplicates.template
@@ -13,6 +13,8 @@
:global GlobalFunctionsReady;
:while ($GlobalFunctionsReady != true) do={ :delay 500ms; }
+:local Read do={ :return; }
+
:local Seen [ :toarray "" ];
:local Shown [ :toarray "" ];
@@ -29,8 +31,8 @@
:set Shown ($Shown, $Mac);
:put "\nNumeric id to remove, any key to skip!";
- :local Remove ([ :terminal inkey ] - 48);
- :if ($Remove >= 0 && $Remove <= 9) do={
+ :local Remove [ :tonum [ $Read ] ];
+ :if ([ :typeof $Remove ] = "num") do={
:put ("Removing numeric id " . $Remove . "...\n");
/ %PATH% access-list remove $Remove;
}