Commit graph

587 commits

Author SHA1 Message Date
Christian Hesse 23fe30c4e1 check-certificates: rename all certificates by their common names 2020-02-06 18:18:56 +01:00
Christian Hesse e376845b12 global-functions: introduce and use $CertificateNameByCN 2020-02-06 18:18:56 +01:00
Christian Hesse 38b23ddc10 script-updates: prefix variable name with dollar 2020-02-05 17:09:30 +01:00
Christian Hesse b5f4c2c87e global-config: drop $ScriptUpdatesConfigChangesIgnore
Comment or remove $GlobalConfigVersion in global-config-overlay
to disable change notifications.
2020-02-04 20:19:46 +01:00
Christian Hesse 03af7d6d9c global-functions: $CharacterReplace: do not limit string length
I've tried something like this to update a device:

/ system script set source=[ $CharacterReplace [ get global-config-overlay source ] "GlobalConfigVersion 10" "GlobalConfigVersion 11" ] global-config-overlay;

This broke with global-config-overlay longer than 999 characters. So makes
sure there is no limit for string length.
2020-02-03 21:29:21 +01:00
Christian Hesse 0c705d5311 global-config-overlay: add footer
... to guard against truncation by accident.
2020-02-03 09:29:53 +01:00
Christian Hesse 7f81734006 global-functions: $CertificateAvailable: simplify loop 2020-02-02 15:16:36 +01:00
Christian Hesse 1e72f03e5e README: update instructions to use $ScriptInstallUpdate 2020-01-29 22:14:56 +01:00
Christian Hesse 833e72eac8 script-updates: only handle scripts with magic pattern
This is supposed to prevent overwriting foreign scripts. New scripts are
expected to be installed with function $ScriptInstallUpdate!
2020-01-29 21:44:41 +01:00
Christian Hesse c500243c97 global-functions: add $ScriptInstallUpdate
Just call without parameters to update scripts:

[admin@MikroTik] > $InstallAndUpdate

Add comma separated list of scripts to install and update:

[admin@MikroTik] > $InstallAndUpdate cloud-backup[,upload-backup][,...]
2020-01-29 21:44:41 +01:00
Christian Hesse 352818ea48 global-functions: $CertificateAvailable: check whole chain
The root certificate is a self-signed certificate. Check for the issue
certificate until we find the self-signed one.
2020-01-29 21:08:10 +01:00
Christian Hesse 801dce05fa global-functions: $CertificateAvailable: warn about crl download to flash
Downloading certificate crls to flash can fill up all available space.
So warn about it!
2020-01-29 09:27:00 +01:00
Christian Hesse 74f6449e8a update-tunnelbroker: replace deprecated keep-result=no with output=none 2020-01-28 21:52:29 +01:00
Christian Hesse 639011a9ba gps-track: replace deprecated keep-result=no with output=none 2020-01-28 21:52:15 +01:00
Christian Hesse 5741924cf9 global-functions: replace deprecated keep-result=no with output=none 2020-01-28 21:51:27 +01:00
Christian Hesse c7034ca5af check-health: never divide, always multiply
With RouterOS we have integral numbers only. This prevent from having
friction that is cut off.
2020-01-24 08:17:42 +01:00
Christian Hesse 6e5e0e72bd check-health: always calculate on the lower voltage value
This makes sure an alert is triggered in both directions. Before we could have:

24.0V to 21.8V -> OK
21.8V to 24.0V -> Alert!
2020-01-24 08:16:54 +01:00
Christian Hesse 958bfa7ce8 collect-wireless-mac: automatically add missing access-list entry 2020-01-17 10:36:03 +01:00
Christian Hesse 12da4de305 check-routeros-update: do not act if reboot is scheduled 2020-01-16 16:11:50 +01:00
Christian Hesse 08c90c95b7 mode-button-scheduler: give proper message if no action defined 2020-01-06 10:33:27 +01:00
Christian Hesse b3a76c7e4b global-functions: $CertificateDownload: properly name new certificates 2020-01-06 10:20:19 +01:00
Christian Hesse aa885e17e2 collect-wireless-mac: use dynamic & bound mac address only 2020-01-06 09:47:32 +01:00
Christian Hesse bb7c4ef0d9 dhcp-lease-comment: act on bound leases only 2020-01-06 09:42:00 +01:00
Christian Hesse 0560f828d1 dhcp-to-dns: act on bound leases only 2020-01-06 09:40:24 +01:00
Christian Hesse cf79e6c473 global-functions: do not encode dash, dot, slash and underscore 2020-01-03 11:24:12 +01:00
Christian Hesse b1b7ed83ed global-functions: $Certificate*: add quoting around CN 2020-01-03 10:15:34 +01:00
Christian Hesse cb1e520965 global-functions: split $CertificateAvailable to $CertificateDownload
This allows to force download even if certificate is available. We need
this for a clean update path with Let's Encrypt.
2020-01-03 10:07:55 +01:00
Christian Hesse afb9839073 update copyright for 2020 2020-01-01 17:00:39 +01:00
Christian Hesse f9c9d67cc9 packages-update: improve wording 2019-12-20 14:38:42 +01:00
Christian Hesse d064bd349e global-functions: define first, set later 2019-12-10 14:45:35 +01:00
Christian Hesse 64341690bf global-functions: $DownloadPackage: retry on error 2019-12-05 13:20:26 +01:00
Christian Hesse 7365bfa525 packages-update: lock against multiple invocation 2019-12-05 11:41:49 +01:00
Christian Hesse 3db466f476 capsman-rolling-upgrade: lock against multiple invocation 2019-12-05 11:41:49 +01:00
Christian Hesse b8db93918f capsman-download-packages: lock against multiple invocation 2019-12-05 11:41:49 +01:00
Christian Hesse 9548641b60 packages-update: skip the interactive part of non-terminal 2019-12-04 09:21:07 +01:00
Christian Hesse f26222d5a8 check-routeros-update: use $ScriptFromTerminal 2019-12-03 23:45:55 +01:00
Christian Hesse ebd5ff9bfe global-functions: introduce $ScriptFromTerminal
Checking whether or not started from terminal is tricky... We have to find
the job for the script, find its top most parent and get its type.
2019-12-03 23:45:55 +01:00
Christian Hesse bccdb47fde ipv6-update: calculate address with bitwise operator
Support for bitwise operator was added in RouterOS 6.46beta38.
2019-12-03 12:07:36 +01:00
Christian Hesse e37af0065c hotspot-to-wpa: get limits from place-before-entry 2019-12-03 11:41:18 +01:00
Christian Hesse ac6c132ea0 global-functions: $DeviceInfo: append revision to model 2019-11-28 10:49:21 +01:00
Christian Hesse a8a0523d33 collect-wireless-mac: add the dns name 2019-11-25 17:07:45 +01:00
Christian Hesse 15a6fb325e collect-wireless-mac: lease without address should be impossible...
... we need the check for empty hostname, though.
2019-11-25 16:43:19 +01:00
Christian Hesse b70d4f7666 collect-wireless-mac: move code into condition 2019-11-25 16:39:23 +01:00
Christian Hesse 73a3e58c8f {email,upload}-backup: update wording 2019-11-21 22:22:04 +01:00
Christian Hesse 845c25f87c dhcp-to-dns: act on hostname only if available 2019-11-14 22:16:33 +01:00
Christian Hesse 395bc8c90f dhcp-to-dns: set the temporary variable unconditionally 2019-11-12 13:02:40 +01:00
Christian Hesse 91776d3388 dhcp-to-dns: handle duplicate mac-address and host-name
* several leases for one mac address (changed client id, different net):
   -> take address from last lease
  Most likely this is the same devices which booted different OS or
  changed to different network.

* several leases for one host name:
   -> take address from first lease
  We see either different devices with same name or one device with
  several network interfaces. Keep the first name to mitigate stealing
  dns name.
2019-11-12 12:49:28 +01:00
Christian Hesse 9d5c566b1c check-certificates: make renew notification silent 2019-11-11 20:47:11 +01:00
Christian Hesse c93c6e1934 README: fix typo and wording 2019-11-05 00:28:30 +01:00
Christian Hesse 7c0c27c03f global-functions: add architecture in device info 2019-10-28 13:15:10 +01:00