1
0
mirror of https://github.com/eworm-de/routeros-scripts.git synced 2024-05-11 05:55:19 +00:00

daily-psk: fixes for CAPsMAN

This commit is contained in:
Christian Hesse
2023-01-22 12:16:06 +01:00
parent e6c256cd4b
commit c7498c6397
2 changed files with 9 additions and 6 deletions

View File

@ -60,8 +60,9 @@ $WaitFullyConnected;
:local NewPsk [ $GeneratePSK $Date ];
:foreach AccList in=[ /caps-man/access-list/find where comment~$DailyPskMatchComment ] do={
:local Ssid [ /caps-man/access-list/get $AccList ssid-regexp ];
:local Configuration [ /caps-man/configuration/get ([ find where ssid=$Ssid ]->0) name ];
:local SsidRegExp [ /caps-man/access-list/get $AccList ssid-regexp ];
:local Configuration ([ /caps-man/configuration/find where ssid~$SsidRegExp ]->0);
:local Ssid [ /caps-man/configuration/get $Configuration ssid ];
:local OldPsk [ /caps-man/access-list/get $AccList private-passphrase ];
:local Skip 0;
@ -69,7 +70,7 @@ $WaitFullyConnected;
$LogPrintExit2 info $0 ("Updating daily PSK for " . $Ssid . " to " . $NewPsk . " (was " . $OldPsk . ")") false;
/caps-man/access-list/set $AccList private-passphrase=$NewPsk;
:if ([ :len [ /caps-man/interface/find where configuration=$Configuration ] ] > 0) do={
:if ([ :len [ /caps-man/actual-interface-configuration/find where configuration.ssid=$Ssid !disabled ] ] > 0) do={
:foreach SeenSsid in=$Seen do={
:if ($SeenSsid = $Ssid) do={
$LogPrintExit2 debug $0 ("Already sent a mail for SSID " . $Ssid . ", skipping.") false;

View File

@ -63,9 +63,11 @@ $WaitFullyConnected;
:foreach AccList in=[ /%PATH%/access-list/find where comment~$DailyPskMatchComment ] do={
:local IntName [ /interface/wireless/access-list/get $AccList interface ];
:local Ssid [ /interface/wireless/get $IntName ssid ];
:local Ssid [ /caps-man/access-list/get $AccList ssid-regexp ];
:local Configuration [ /caps-man/configuration/get ([ find where ssid=$Ssid ]->0) name ];
:local OldPsk [ /interface/wireless/access-list/get $AccList private-pre-shared-key ];
# /interface/wireless above - /caps-man below
:local SsidRegExp [ /caps-man/access-list/get $AccList ssid-regexp ];
:local Configuration ([ /caps-man/configuration/find where ssid~$SsidRegExp ]->0);
:local Ssid [ /caps-man/configuration/get $Configuration ssid ];
:local OldPsk [ /caps-man/access-list/get $AccList private-passphrase ];
:local Skip 0;
@ -75,7 +77,7 @@ $WaitFullyConnected;
/caps-man/access-list/set $AccList private-passphrase=$NewPsk;
:if ([ :len [ /interface/wireless/find where name=$IntName !disabled ] ] = 1) do={
:if ([ :len [ /caps-man/interface/find where configuration=$Configuration ] ] > 0) do={
:if ([ :len [ /caps-man/actual-interface-configuration/find where configuration.ssid=$Ssid !disabled ] ] > 0) do={
:foreach SeenSsid in=$Seen do={
:if ($SeenSsid = $Ssid) do={
$LogPrintExit2 debug $0 ("Already sent a mail for SSID " . $Ssid . ", skipping.") false;