Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2019-02-11 | global-functions: add missing colon | 1 | -1/+1 | ||
2019-02-08 | global-functions: prevent infinite loop in $CharacterReplace | 1 | -0/+4 | ||
2019-02-08 | ipv6-update: simplify array access | 1 | -2/+2 | ||
2019-02-08 | dhcp-to-dns: rework, fix cleanup with mac-address and more | 1 | -37/+29 | ||
2019-02-08 | dhcp-to-dns: use mac-address if hostname is empty | 1 | -0/+3 | ||
2019-02-08 | dhcp-to-dns: use $CharacterReplace | 1 | -6/+3 | ||
2019-02-08 | global-functions: add $CharacterReplace | 1 | -0/+15 | ||
2019-02-07 | capsman-download-packages: upgrade CAPs one after another with delay | 1 | -2/+9 | ||
2019-01-29 | gps-track: strip trailing binary zeros | 1 | -0/+2 | ||
2019-01-29 | gps-track: log about coordinate-format | 1 | -1/+2 | ||
2019-01-18 | check-routeros-update: run email-backup on auto-update | 1 | -0/+3 | ||
2019-01-15 | email-backup: silence unwanted output | 1 | -1/+1 | ||
2019-01-15 | update-tunnelbroker: fix parsing id | 1 | -1/+1 | ||
2019-01-15 | update-tunnelbroker: simplify array access | 1 | -3/+3 | ||
2019-01-15 | netwatch-syslog: simplify array access | 1 | -1/+1 | ||
2019-01-15 | collect-wireless-mac: simplify array access | 3 | -3/+3 | ||
2019-01-15 | dhcp-lease-comment: simplify array access | 3 | -3/+3 | ||
2019-01-15 | lease-script: split scripts for de/assign, add debug log | 1 | -4/+18 | ||
2019-01-14 | email-backup: give board name and model | 1 | -1/+3 | ||
2019-01-12 | initial-commands: put into blocks | 1 | -8/+14 | ||
2019-01-12 | check-certificates: strip prefix from issuer CN | 1 | -1/+1 | ||
2019-01-12 | check-certificates: properly handle expired certificates | 1 | -4/+11 | ||
2019-01-09 | check-certificates: move conditions to loop | 1 | -60/+50 | ||
2019-01-09 | check-certificates: shorten key for detailed infos | 1 | -10/+10 | ||
2019-01-09 | check-certificates: show issuer CN only | 1 | -2/+11 | ||
2019-01-09 | email-backup: be more verbose about attached files and secret key | 1 | -4/+9 | ||
2019-01-09 | check-certificates: include the issuer in notifications | 1 | -0/+4 | ||
2019-01-09 | check-certificates: update CommonName after renewal | 1 | -0/+1 | ||
2019-01-09 | super-mario-theme: simplify array access | 1 | -1/+1 | ||
2019-01-09 | daily-psk: simplify algorithm | 1 | -21/+13 | ||
2019-01-09 | check-certificates: use time functionality | 1 | -25/+10 | ||
No need to calculate that... | |||||
2019-01-09 | check-certificates: send notification on renewal | 1 | -8/+18 | ||
2019-01-09 | check-certificates: drop extra warning | 1 | -2/+0 | ||
A sent notification implies that renewal failed. | |||||
2019-01-04 | ppp-on-up: just release ipv6 lease | 1 | -6/+1 | ||
This should get a new lease immediately. | |||||
2019-01-04 | ppp-on-up: run scripts if available | 1 | -0/+11 | ||
2019-01-04 | update-tunnelbroker: get tunnelbroker config from interface comment | 2 | -26/+20 | ||
2019-01-04 | email-backup: print to update from cloud | 1 | -0/+3 | ||
2019-01-04 | ppp-on-up: fix variable handling | 1 | -1/+3 | ||
The variable $interface is not a name but a reference... Basically this worked only because of the oddity - the filter did not work and *all* dhcp-clients were disabled and enabled. | |||||
2019-01-04 | global: variable names are CamelCase | 41 | -782/+775 | ||
___ _ ___ __ / _ )(_)__ _ / _/__ _/ /_ / _ / / _ `/ / _/ _ `/ __/ /____/_/\_, / /_/ \_,_/\__/ _ __ /___/ _ __ | | / /___ __________ (_)___ ____ _/ / | | /| / / __ `/ ___/ __ \/ / __ \/ __ `/ / | |/ |/ / /_/ / / / / / / / / / / /_/ /_/ |__/|__/\__,_/_/ /_/ /_/_/_/ /_/\__, (_) /____/ RouterOS has some odd behavior when it comes to variable names. Let's have a look at the interfaces: [admin@MikroTik] > / interface print where name=en1 Flags: D - dynamic, X - disabled, R - running, S - slave # NAME TYPE ACTUAL-MTU L2MTU 0 RS en1 ether 1500 1598 That looks ok. Now we use a script: { :local interface "en1"; / interface print where name=$interface; } And the result... [admin@MikroTik] > { :local interface "en1"; {... / interface print where name=$interface; } Flags: D - dynamic, X - disabled, R - running, S - slave # NAME TYPE ACTUAL-MTU L2MTU 0 RS en1 ether 1500 1598 ... still looks ok. We make a little modification to the script: { :local name "en1"; / interface print where name=$name; } And the result: [admin@MikroTik] > { :local name "en1"; {... / interface print where name=$name; } Flags: D - dynamic, X - disabled, R - running, S - slave # NAME TYPE ACTUAL-MTU L2MTU 0 RS en1 ether 1500 1598 1 S en2 ether 1500 1598 2 S en3 ether 1500 1598 3 S en4 ether 1500 1598 4 S en5 ether 1500 1598 5 R br-local bridge 1500 1598 Ups! The filter has no effect! That happens whenever the variable name ($name) matches the property name (name=). And another modification: { :local type "en1"; / interface print where name=$type; } And the result: [admin@MikroTik] > { :local type "en1"; {... / interface print where name=$type; } Flags: D - dynamic, X - disabled, R - running, S - slave # NAME TYPE ACTUAL-MTU L2MTU Ups! Nothing? Even if the variable name ($type) matches whatever property name (type=) things go wrong. The answer from MikroTik support (in Ticket#2019010222000454): > This is how scripting works in RouterOS and we will not fix it. To get around this we use variable names in CamelCase. Let's hope Mikrotik never ever introduces property names in CamelCase... *fingers crossed* | |||||
2019-01-03 | global-{config,functions}: move variables, make independent | 4 | -9/+12 | ||
2019-01-03 | script-updates: add configuration versioning | 3 | -0/+20 | ||
2019-01-03 | dhcp-to-dns: give time in short format | 1 | -1/+1 | ||
Note that a unit is required to make it a time value! | |||||
2019-01-03 | daily-psk-schedule: give time in short format | 1 | -1/+1 | ||
Note that a unit is required to make it a time value! | |||||
2019-01-02 | rename script 'check-lte-firmware-update' -> 'check-lte-firmware-upgrade' | 2 | -8/+8 | ||
That's the correct wording from commands.. | |||||
2019-01-02 | add script 'unattended-lte-firmware-upgrade' | 1 | -0/+29 | ||
2019-01-02 | add template for script documentation | 1 | -0/+47 | ||
2019-01-02 | README: add link to scroll up | 1 | -0/+2 | ||
2019-01-02 | ignore all html files | 1 | -1/+1 | ||
2019-01-02 | Makefile: update links for generated html | 1 | -1/+1 | ||
2019-01-02 | Makefile: update for extended functionality | 1 | -8/+17 | ||
This can handle new and multiple markdown files. | |||||
2019-01-02 | update-tunnelbroker: verify certificate | 2 | -2/+58 | ||
2019-01-02 | update-tunnelbroker: move configuration to global-config... | 2 | -19/+28 | ||
... and get the external ip address from cloud. Signed-off-by: Michael Gisbers <michael@gisbers.de> Signed-off-by: Christian Hesse <mail@eworm.de> | |||||
2019-01-02 | capsman-download-packages: use upgrade command to force remote-cap upgrade | 1 | -1/+1 | ||
Signed-off-by: Michael Gisbers <michael@gisbers.de> Signed-off-by: Christian Hesse <mail@eworm.de> | |||||
2019-01-02 | check-routeros-update: be more verbose on error | 1 | -1/+1 | ||
2019-01-02 | check-routeros-update: do not fail if safe-update-url return error | 1 | -6/+11 | ||
We still want the notification... | |||||
2019-01-02 | update copyright for 2019 | 43 | -44/+44 | ||
2018-12-28 | global-functions: properly define global functions | 4 | -3/+2 | ||
2018-12-28 | global-functions: update comment in $SendNotification | 1 | -1/+1 | ||
2018-12-28 | global-functions: add $DownloadPackage | 2 | -8/+30 | ||
... and make script 'capsman-download-packages' use it. | |||||
2018-12-28 | capsman-download-packages: move condition to loop | 1 | -17/+16 | ||
2018-12-27 | remove script 'remove-packages' | 1 | -19/+0 | ||
Use script 'capsman-download-packages' to download and cleanup packages... | |||||
2018-12-27 | capsman-download-packages: act in package-path only | 1 | -1/+4 | ||
2018-12-27 | capsman-download-packages: do not restart service... | 1 | -2/+2 | ||
... but disconnect old CAPs and force reconnect with update. | |||||
2018-12-27 | capsman-download-packages: rewrite package-name from wireless@ to wireless | 1 | -0/+4 | ||
Signed-off-by: Michael Gisbers <michael@gisbers.de> Signed-off-by: Christian Hesse <mail@eworm.de> | |||||
2018-12-27 | add script 'capsman-download-packages' | 1 | -0/+34 | ||
2018-12-27 | global-functions: add $GetMacVendor | 4 | -24/+21 | ||
2018-12-21 | remove-packages: delay if uptime less than one minute | 1 | -0/+2 | ||
2018-12-20 | global-functions: make $CertificateAvailable work on CommonName | 10 | -148/+147 | ||
This should prevent endless certificate switching for Let's Encrypt cross-signed intermediate certificates. | |||||
2018-12-20 | README: add Root CA certificate DST Root CA X3 | 3 | -5/+34 | ||
This is used by Let's Encrypt to cross-sign. | |||||
2018-12-20 | check-certificates: support auto-renew of certificates | 2 | -10/+49 | ||
2018-12-19 | update-gre-address: remove settings from global-config | 2 | -21/+9 | ||
Instead read infos from gre interface comment. | |||||
2018-12-19 | ipv6-update: remove settings from global-config | 2 | -21/+12 | ||
Instead make it more robust by reading comments. | |||||
2018-12-18 | email-backup: support cloud backup | 2 | -7/+30 | ||
2018-12-18 | README: add initial commands for copy and paste | 2 | -0/+28 | ||
2018-12-17 | check-lte-firmware-update: strip the extra line break | 1 | -0/+2 | ||
2018-12-14 | add script 'check-lte-firmware-update' | 2 | -0/+33 | ||
2018-12-14 | collect-wireless-mac: send the mac's vendor part only | 3 | -3/+3 | ||
2018-12-14 | collect-wireless-mac: get and record the vendor | 3 | -6/+36 | ||
2018-12-13 | email-backup: try without delay | 1 | -2/+0 | ||
2018-12-12 | remove extra dollar sign | 5 | -9/+9 | ||
2018-12-12 | email-backup: send backup and config export in one mail | 1 | -20/+23 | ||
2018-12-12 | email-backup: export terse | 1 | -2/+2 | ||
2018-11-28 | global-functions: add identity tag in $SendNotification | 9 | -11/+13 | ||
... and send subject in telegram message. | |||||
2018-11-26 | global-config: add identity tag | 1 | -1/+1 | ||
2018-11-26 | ip-addr-bridge: ignore bridges without ports | 1 | -4/+6 | ||
Bridges are used for loopback... Assume we do not want to disable addresses if the bridge has no ports. | |||||
2018-11-13 | global-config: sort sms-action alphabetically | 1 | -2/+2 | ||
2018-11-13 | global-config: add more examples for mode button and sms-action | 1 | -3/+5 | ||
2018-11-09 | global-functions: use 'print count-only' | 1 | -1/+1 | ||
2018-11-09 | check-routeros-update: use 'print count-only' | 1 | -1/+1 | ||
2018-11-09 | learn-mac-based-vlan: move log inside condition | 1 | -3/+2 | ||
2018-11-09 | learn-mac-based-vlan: use 'print count-only' | 1 | -1/+1 | ||
2018-11-09 | dhcp-to-dns: use 'print count-only' | 1 | -1/+1 | ||
2018-11-09 | lease-script: use 'print count-only' | 1 | -1/+1 | ||
2018-11-09 | add script 'ip-addr-bridge' | 1 | -0/+14 | ||
2018-11-09 | accesslist-duplicates: support interactive removal | 3 | -0/+27 | ||
2018-11-09 | global-functions: add function to read user input | 1 | -0/+5 | ||
2018-10-25 | bridge-port-to-default: delay only when required | 1 | -3/+5 | ||
2018-10-25 | bridge-port-to-default: delay for global-config | 1 | -0/+3 | ||
All scripts scheduled with "start-time=startup interval=0" start simultaneously, thus racing on global variables. So delay for a second and give global-config time to finish. | |||||
2018-10-25 | bridge-port-to-default: drop unused code, :toarray strips itself | 1 | -3/+0 | ||
2018-10-25 | bridge-port-to-default: fix variable name | 1 | -1/+1 | ||