Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2021-12-09 | global-functions: $ScriptLock: remove ticket in a loop | Christian Hesse | 1 | -1/+2 | |
This was not required with RouterOS v6, but for any reason removing a ticket may fail with RouterOS v7 in very rare cases. So remove in a loop... | |||||
2021-12-09 | global-functions: $ScriptLock: cleanup in dedicated function | Christian Hesse | 1 | -4/+13 | |
2021-12-09 | mod/ipcalc: introduce $IPCalcReturn | Christian Hesse | 1 | -9/+20 | |
2021-12-09 | mod/inspectvar: truncate value if too long | Christian Hesse | 1 | -1/+3 | |
2021-12-09 | mod/inspectvar: introduce $InspectVarReturn | Christian Hesse | 1 | -8/+20 | |
2021-12-09 | global-functions: $ScriptLock: initialize earlier | Christian Hesse | 1 | -4/+3 | |
2021-12-09 | global-functions: $ScriptLock: initialize empty array on cleanup | Christian Hesse | 1 | -2/+2 | |
2021-12-07 | upload-backup: drop warning on RouterOS v7... | Christian Hesse | 1 | -6/+0 | |
... now that we have it in global-functions. | |||||
2021-12-07 | email-backup: drop warning on RouterOS v7... | Christian Hesse | 1 | -6/+0 | |
... now that we have it in global-functions. | |||||
2021-12-07 | global-functions: give a hint on RouterOS v7 | Christian Hesse | 1 | -0/+6 | |
2021-12-07 | global-config: load overlay automatically | Christian Hesse | 4 | -6/+14 | |
2021-12-07 | check-routeros-update: lock against multiple invocation | Christian Hesse | 1 | -0/+3 | |
2021-12-07 | README: changes for RouterOS v7change-70 | Christian Hesse | 5 | -4/+22 | |
2021-12-02 | doc/netwatch-notify: add missing empty line | Christian Hesse | 1 | -0/+1 | |
2021-11-22 | global-functions: $DeviceInfo: add current firmware | Christian Hesse | 1 | -0/+2 | |
(I would like to show a note if the upgrade is pending... But did not find a way to get that information. Is there?) | |||||
2021-11-19 | accesslist-duplicates: read more than a single digit | Christian Hesse | 3 | -6/+12 | |
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. | |||||
2021-11-18 | README: no capitals here... | Christian Hesse | 1 | -1/+1 | |
2021-11-16 | check-health: support hard lower limit for voltagechange-69 | Christian Hesse | 6 | -4/+19 | |
... to detect slow decrease of voltage, for example with UPS. | |||||
2021-11-16 | check-health: indicate voltage increase or decrease | Christian Hesse | 3 | -2/+6 | |
2021-11-16 | reintroduce global-waitchange-68 | Christian Hesse | 9 | -6/+65 | |
2021-11-16 | global-functions: drop deprecated function $LogPrintExit | Christian Hesse | 1 | -9/+0 | |
... which has been replaced by $LogPrintExit2 some time ago. | |||||
2021-11-15 | shorten modules directory name (global-functions.d -> mod)change-67 | Christian Hesse | 14 | -23/+25 | |
2021-11-15 | bridge-port-to-default -> global-functions.d/bridge-port-tochange-66 | Christian Hesse | 10 | -107/+79 | |
2021-11-12 | add global-functions.d/bridge-port-vlanchange-65 | Christian Hesse | 8 | -3/+159 | |
2021-11-11 | doc: move notification images to script-specific directories | Christian Hesse | 27 | -16/+16 | |
2021-11-03 | hotspot-to-wpa: drop support for tx limits | Christian Hesse | 1 | -11/+2 | |
... if you need to limit bandwidth use queues instead. | |||||
2021-10-01 | global-functions: $NotificationFunctions->"email": check for valid settings | Christian Hesse | 1 | -1/+2 | |
No need to queue mails if 'address' and 'from' are not specified... | |||||
2021-10-01 | global-functions: $DeviceInfo: do not fail on non-RouterBoard with ROS 7.x | Christian Hesse | 1 | -1/+4 | |
2021-09-28 | global-functions.d/notification-telegram: fix calculation on cut off | Christian Hesse | 1 | -2/+3 | |
2021-09-22 | doc/accesslist-duplicates: use real screenshot | Christian Hesse | 2 | -9/+2 | |
2021-09-21 | README: add a note about date and time | Christian Hesse | 1 | -0/+4 | |
2021-09-21 | README: use real screenshots... | Christian Hesse | 12 | -27/+41 | |
... and make sure copy-and-paste with code does not fail. Also end all commands with a semicolon for Github copy button. | |||||
2021-09-21 | hotspot-to-wpa-cleanup: match dhcp server name | Christian Hesse | 1 | -3/+4 | |
... as we do not want the hotspot's lease to become static. | |||||
2021-09-21 | global-functions.d/inspectvar: add $InspectVar...change-64 | Christian Hesse | 5 | -3/+44 | |
to inspect variables. This is useful for variables with (nested) arrays, for example inspecting $NetwatchNotify (from netwatch-notify): [admin@Mikrotik] > $InspectVar $NetwatchNotify -type-> array -key-> quad-one -type-> array -key-> count -type-> num -value-> 0 -key-> notified -type-> bool -value-> false -key-> parent -type-> nothing -key-> resolve-failed -type-> nothing -key-> since -type-> nothing -key-> example.com -type-> array -key-> count -type-> num -value-> 0 -key-> notified -type-> bool -value-> false -key-> parent -type-> str -value-> quad-one -key-> resolve-failed -type-> nothing -key-> since -type-> nothing | |||||
2021-09-21 | global-functions: notify about move of $IPCalc and $ScriptRunOnce to moduleschange-63 | Christian Hesse | 4 | -3/+4 | |
Just install with... $ScriptInstallUpdate global-functions.d/ipcalc ... and/or... $ScriptInstallUpdate global-functions.d/scriptrunonce ... and use the functions as before. | |||||
2021-09-21 | global-functions: move $ScriptRunOnce to optional module | Christian Hesse | 3 | -41/+48 | |
2021-09-21 | global-functions: move $IPCalc to optional module | Christian Hesse | 2 | -30/+35 | |
2021-09-21 | upload-backup: warn on missing sensitive information with ROS 7.x | Christian Hesse | 1 | -0/+6 | |
2021-09-21 | email-backup: warn on missing sensitive information with ROS 7.x | Christian Hesse | 1 | -0/+6 | |
2021-09-21 | certs: drop old chain GTS CA 1O1 / GlobalSign | Christian Hesse | 1 | -186/+0 | |
2021-09-20 | certs: add new chain GTS CA 1C3 / GTS Root R1 | Christian Hesse | 1 | -0/+242 | |
This is used by Google DNS (8.8.8.8). $CertificateAvailable "GTS CA 1C3" /ip dns set use-doh-server=https://8.8.8.8/dns-query verify-doh-cert=yes | |||||
2021-09-20 | certs: drop old intermediate cert DigiCert ECC Secure Server CA | Christian Hesse | 1 | -166/+0 | |
2021-09-20 | certs: add new intermediate cert DigiCert TLS Hybrid ECC SHA384 2020 CA1 | Christian Hesse | 1 | -0/+174 | |
This is used by Cloudflare DNS (1.1.1.1) and Quard9 (9.9.9.9). $CertificateAvailable "DigiCert TLS Hybrid ECC SHA384 2020 CA1" /ip dns set use-doh-server=https://1.1.1.1/dns-query verify-doh-cert=yes $CertificateAvailable "DigiCert TLS Hybrid ECC SHA384 2020 CA1" /ip dns set use-doh-server=https://9.9.9.9/dns-query verify-doh-cert=yes | |||||
2021-09-08 | global-functions*: syntax for ROS 7.xrouteros-7.1rc3 | Christian Hesse | 3 | -8/+8 | |
Strings with escape sequence have to be enclosed in parentheses. Looks like RouterOS 7.x is stricter here... | |||||
2021-09-02 | global-functions: $CertificateAvailable: drop version check | Christian Hesse | 1 | -5/+0 | |
2021-09-01 | global-functions: $RequiredRouterOS: allow to use without warning | Christian Hesse | 1 | -6/+9 | |
2021-08-31 | global-functions: $ScriptLock: handle array by index | Christian Hesse | 1 | -17/+50 | |
This should mitigate race conditions while rewriting the array. | |||||
2021-08-31 | global-functions: $ScriptLock: do not store but calculate job count | Christian Hesse | 1 | -7/+10 | |
This should mitigate some more race conditions. | |||||
2021-08-30 | lease-script: move debug output up | Christian Hesse | 1 | -3/+3 | |
2021-08-27 | check-health: use $ScriptLock | Christian Hesse | 1 | -0/+3 | |
2021-08-27 | netwatch-notify: use $ScriptLock | Christian Hesse | 1 | -0/+3 | |
2021-08-26 | dhcp-to-dns: check for existence of address | Christian Hesse | 1 | -1/+3 | |
Chances are that $LeaseVal is an array with just an id - no idea why this happens. So do not check for array but existence of address. | |||||
2021-08-25 | global-functions.d/notification-telegram: for syntax for ROS 7.xrouteros-7.1rc1-1 | Christian Hesse | 1 | -1/+1 | |
Strings with escape sequence have to be enclosed in parentheses. Looks like RouterOS 7.x is stricter here... | |||||
2021-08-16 | update list of contributors | Christian Hesse | 1 | -0/+1 | |
2021-07-25 | global-functions: $ScriptLock: check for successful removal of ticket | Christian Hesse | 1 | -5/+9 | |
The script is already locked, so there is no second script to remove a ticket at the same time. However a new script can add a new ticket and overwrite the removal... Thus check for successful removal anyway. | |||||
2021-07-15 | lease-script: drop differentiation of assign / deassign... | Christian Hesse | 9 | -15/+12 | |
... not that we have early locking. | |||||
2021-07-15 | lease-script: use $ScriptLock | Christian Hesse | 1 | -7/+12 | |
There were still ways to produce errors from lease scripts... Let's lock earlier, this should fix it. | |||||
2021-07-15 | update list of contributors | Christian Hesse | 1 | -0/+1 | |
2021-07-15 | global-functions: $ScriptLock: fix off-by-one check... | Ben Harris | 1 | -1/+1 | |
... for stale job tickets Signed-off-by: Christian Hesse <mail@eworm.de> | |||||
2021-07-11 | collect-wireless-mac: check for existence of mac address | Christian Hesse | 3 | -107/+119 | |
Chance are that $RegVal is an array with just an id - no idea why this happens. So do not check for array but existence of mac address. | |||||
2021-07-10 | global-functions: introduce $ScriptRunOncechange-62 | Christian Hesse | 4 | -3/+49 | |
2021-07-09 | global-functions: $ScriptInstallUpdate: add error handling for changelog | Christian Hesse | 1 | -1/+5 | |
2021-07-09 | global-functions.d/notification-telegram: subject in bold & underline | Christian Hesse | 1 | -10/+11 | |
This makes the subject visually delimited. | |||||
2021-07-09 | finally remove old scriptschange-61 | Christian Hesse | 9 | -38/+5 | |
2021-07-09 | global-functions: $ScriptInstallUpdate: add error handling for migration | Christian Hesse | 1 | -1/+5 | |
2021-07-09 | global-functions: $ScriptInstallUpdate: drop unused variable | Christian Hesse | 1 | -1/+0 | |
This was a left-over from re-run message. | |||||
2021-07-09 | global-functions: $ScriptInstallUpdate: drop the migration pattern | Christian Hesse | 1 | -1/+1 | |
2021-07-09 | doc/netwatch-notify: hint on escaping, with example | Christian Hesse | 1 | -2/+2 | |
2021-07-09 | netwatch-notify: implement pre-down hookchange-60 | Christian Hesse | 6 | -3/+11 | |
2021-07-09 | collect-wireless-mac: remove 'unknown' from message and comment | Christian Hesse | 3 | -3/+3 | |
This was true, but the mac address is no longer unknown after it was added to address list in comment. | |||||
2021-07-09 | global-functions: $ScriptLock: drop variable, just return | Christian Hesse | 1 | -3/+2 | |
2021-07-08 | global-functions: $ScriptLock: make ticket management more reliable | Christian Hesse | 1 | -10/+27 | |
2021-07-08 | lease-script: add the order in log | Christian Hesse | 1 | -2/+2 | |
2021-07-08 | lease-script: implement script order | Christian Hesse | 10 | -18/+27 | |
The order may be important: `collect-wireless-mac` can add a dns name in notification, thus `dhcp-to-dns` should run first. | |||||
2021-07-08 | lease-script: modify the tag | Christian Hesse | 9 | -10/+10 | |
2021-07-08 | netwatch-notify: run hook from a function | Christian Hesse | 1 | -23/+26 | |
2021-07-08 | netwatch-notify: add error handling for hooks | Christian Hesse | 1 | -2/+10 | |
We already had syntax validation, but a script with valid synctax can still fail to run... | |||||
2021-07-07 | doc/lease-script: hint on script installation/execution order | Christian Hesse | 1 | -1/+6 | |
2021-07-07 | doc/lease-script: fix link | Christian Hesse | 1 | -1/+1 | |
2021-07-07 | collect-wireless-mac: use $EitherOr and simplify code | Christian Hesse | 3 | -12/+6 | |
2021-07-07 | collect-wireless-mac: do not fail on missing dns record | Christian Hesse | 3 | -9/+12 | |
2021-07-06 | collect-wireless-mac: rework, more use of arrays | Christian Hesse | 3 | -61/+50 | |
2021-07-06 | ospf-to-leds: do not flood but log properly | Christian Hesse | 1 | -1/+2 | |
2021-07-05 | doc/netwatch-notify: hint on checking specific isp | Christian Hesse | 1 | -0/+17 | |
2021-07-01 | check-routeros-update: allow update for capchange-59 | Michael Gisbers | 6 | -4/+10 | |
If CAPsMAN is running on a device with just 16MB flash downloading the packages is not possible (or at least lost at reboot). So allow a CAP to update with opt-in. | |||||
2021-07-01 | collect-wireless-mac: properly handle vanished device | Christian Hesse | 3 | -18/+45 | |
2021-07-01 | dhcp-to-dns: fix static lease that lost bound status | Christian Hesse | 1 | -1/+4 | |
2021-07-01 | dhcp-to-dns: properly handle vanished lease | Christian Hesse | 1 | -23/+31 | |
2021-07-01 | lease-script: do not run too many instances of scripts | Christian Hesse | 1 | -5/+7 | |
Every instance of the scripts does all the work. If one script is running and a second script is waiting we do not have to start a third one. | |||||
2021-07-01 | lease-script: drop the delay magic... | Christian Hesse | 1 | -6/+0 | |
... as this should be handled by $ScriptLock in lease scripts now. | |||||
2021-07-01 | hotspot-to-wpa-cleanup: lock script (and wait) | Christian Hesse | 1 | -0/+3 | |
2021-07-01 | dhcp-to-dns: lock script (and wait) | Christian Hesse | 1 | -0/+3 | |
2021-07-01 | collect-wireless-mac: wait when locking script | Christian Hesse | 3 | -3/+3 | |
2021-07-01 | Merge branch 'ScriptLock' into next | Christian Hesse | 1 | -3/+58 | |
2021-07-01 | global-functions: $ScriptLock: use hex string for ticket | Christian Hesse | 1 | -2/+2 | |
Does not matter what the ticket looks like, but using hex string it is not converted to number. | |||||
2021-07-01 | global-functions: $ScriptLock: use a limit on lock... | Christian Hesse | 1 | -4/+6 | |
... to make sure it does not lock forever. | |||||
2021-06-30 | global-functions: $ScriptLock: allow to wait for lock | Christian Hesse | 1 | -0/+6 | |
2021-06-30 | global-functions: $ScriptLock: rework with tickets | Christian Hesse | 1 | -6/+40 | |
Getting the order right is not easy... We use a global variable to store "tickets" in an array. Based on that scripts know their order. | |||||
2021-06-30 | global-functions: $ScriptLock: check if script is running | Christian Hesse | 1 | -0/+4 | |
2021-06-30 | global-functions: $ScriptLock: check if script exists | Christian Hesse | 1 | -0/+4 | |