Age | Commit message (Expand) | Author | Files | Lines |
12 hours | INITIAL-COMMANDS: fix typosHEADstagingnextmain | Christian Hesse | 1 | -1/+1 |
12 hours | INITIAL-COMMANDS: add status output•••Co-authored-by: Christian Hesse <mail@eworm.de>
| Miquel Bonastre | 1 | -0/+6 |
12 hours | INITIAL-COMMANDS: support installation from custom server•••Closes: https://github.com/eworm-de/routeros-scripts/pull/96
Co-authored-by: Christian Hesse <mail@eworm.de>
| Miquel Bonastre | 1 | -5/+9 |
5 days | global-functions: $CertificateNameByCN: warn with no match | Christian Hesse | 1 | -0/+2 |
6 days | global-functions: $CertificateNameByCN: return false without match...•••... and return true on success.
| Christian Hesse | 1 | -0/+4 |
6 days | global-functions: $CertificateNameByCN: pick the first match only | Christian Hesse | 1 | -1/+1 |
6 days | global-functions: $CertificateNameByCN: support matching by fingerprint and name | Christian Hesse | 1 | -2/+3 |
6 days | global-functions: $CertificateDownload: no infinite loop•••We can not call $CertificateAvailable here, as that will most likely
cause an infinite loop. After all that's the certificate mkcert.org is
using. And it *is* available in this repository.
| Christian Hesse | 1 | -2/+2 |
6 days | global-functions: $ScriptLock: increase interval with wait time•••Inspired by: https://github.com/eworm-de/routeros-scripts/issues/95#issuecomment-2773513467
| Christian Hesse | 1 | -7/+12 |
7 days | update list of contributors | Christian Hesse | 1 | -0/+1 |
7 days | global-functions: $ScriptLock: fix second parameter•••This broke with 1e8918fdaa5a30393e2004d1f5e4dff458936b67...
Fixes: https://github.com/eworm-de/routeros-scripts/issues/95
| Ilya Kulakov | 1 | -1/+1 |
12 days | README: give the script names | Christian Hesse | 1 | -51/+51 |
13 days | logo: strip some bytes...•••... by just re-compressing/re-encoding.
| Christian Hesse | 2 | -0/+0 |
13 days | mod/notification-telegram: fix override quirk•••IDs for chat and thread can be overridden. Overriding the chat probably
makes the thread invalid - so ignore that then.
| Christian Hesse | 1 | -1/+2 |
13 days | check-routeros-update: split off check-perpetual-license...•••... and also add documentation, screenshot, etc.
| Christian Hesse | 8 | -39/+152 |
2025-03-27 | check-routeros-update: send notification on renewed license...•••... when a warning has been sent before.
| Christian Hesse | 1 | -0/+10 |
2025-03-27 | check-routeros-update: send certificate warning just once...•••... and another one once expired.
| Christian Hesse | 1 | -8/+15 |
2025-03-27 | support creating the checksums file | Christian Hesse | 3 | -2/+17 |
2025-03-13 | capsman-download-packages: fix parameter for $RmFile•••The function can not handle ids, we have to pass a name instead.
| Christian Hesse | 3 | -3/+3 |
2025-03-13 | check-routeros-update: fix condition for license check•••Turns out that `next-renewal-at` is moved forward when renewal failed,
so it never matches the criteria. Just start complaining three weeks
before deadline.
| Christian Hesse | 1 | -1/+1 |
2025-03-12 | netwatch-notify: check matching address type only | Christian Hesse | 1 | -8/+12 |
2025-03-12 | netwatch-notify: increase the timeout even more•••This interacts with the number of addresses in the address-list. Having
a lot of addresses there (for exemple from script 'fw-addr-lists' ๐)
makes the 'find' take longer. We have to make sure that 'find' succeeds
before the address times out.
As this does not hurt... Let's just bump to 10 seconds to be safe.
| Christian Hesse | 1 | -2/+2 |
2025-03-12 | netwatch-notify: increase timeout...•••... as a timeout of one second expires immediately. ๐คจ
| Christian Hesse | 1 | -2/+2 |
2025-03-11 | fw-addr-lists: raw.githubusercontent.com requires 'USERTrust RSA Certificatio... | Christian Hesse | 3 | -2/+43 |
2025-03-11 | check-routeros-update: check perpetual license...•••... as these have to be renewed and can expire.
| Christian Hesse | 1 | -0/+21 |
2025-03-11 | Merge branch 'fw-addr-lists' into next | Christian Hesse | 1 | -38/+59 |
2025-03-11 | fw-addr-lists: get branch from calculated checksum•••The addresses were spread very uneven before.
Let's calculate a checksum, and take the first two characters of that.
The addresses are now spread evenly on 256 branches (0x00 to 0xff).
| Christian Hesse | 1 | -3/+8 |
2025-03-11 | fw-addr-lists: two characters for branch•••Using one character for IPv4 is ok (1 to 9), but IPv6 global unicase
(2000::/3) results in just two different characters (2 and 3).
So let's use first two characters...
| Christian Hesse | 1 | -3/+3 |
2025-03-11 | fw-addr-lists: put addresses into "branches"...•••... effectively adding another layer and some complexity, but:
The addresses are sorted inside the array, and sorting less addresses in
a branch saves a lot of processing power. So this is a lot faster now...
| Christian Hesse | 1 | -28/+37 |
2025-03-11 | fw-addr-lists: strip cidr for host addresses•••This makes sure the addresses match later when we read them from
address-list for renew.
| Christian Hesse | 1 | -0/+6 |
2025-03-11 | fw-addr-lists: do not clean up•••Cleanup is important on renew (so the script does not attempt to re-add),
but we do not care here.
| Christian Hesse | 1 | -2/+0 |
2025-03-06 | fw-addr-lists: put timeout into variable | Christian Hesse | 1 | -6/+8 |
2025-03-06 | DEBUG: add info on $LogPrintVerbose | Christian Hesse | 2 | -0/+15 |
2025-03-06 | fw-addr-lists: use $LogPrintVerbose ...•••... to reduce debug output and speed up execution.
| Christian Hesse | 1 | -6/+7 |
2025-03-06 | global-functions: introduce $LogPrintVerbose ...•••... which is a declared function, but has no code, intentionally. It can be
called as a no-op by default.
If you want this output set the function to be the same as $LogPrint:
:set LogPrintVerbose $LogPrint;
| Christian Hesse | 1 | -0/+3 |
2025-03-06 | Merge branch 'checksums' into next | Christian Hesse | 1 | -3/+22 |
2025-03-06 | global-functions: $ScriptInstallUpdate: checksum only for same source•••So ignore if script is fetched from different base or with different
suffix.
| Christian Hesse | 1 | -1/+2 |
2025-03-06 | global-functions: $ScriptInstallUpdate: simplify check•••This one should suffice...
| Christian Hesse | 1 | -2/+1 |
2025-03-06 | global-functions: $ScriptInstallUpdate: put checksum into variable | Christian Hesse | 1 | -2/+3 |
2025-03-06 | global-functions: $ScriptInstallUpdate: support checksums for CRLF scripts | Christian Hesse | 1 | -1/+2 |
2025-03-06 | global-functions: $ScriptInstallUpdate: get and compare checksums•••The file 'checksums.json' is generated when deploying to my web
server... This should speed up the update a lot as it reduces downloads
to a minimum. ๐๐
| Christian Hesse | 1 | -0/+13 |
2025-03-05 | global-functions: $ScriptInstallUpdate: move code into block | Christian Hesse | 1 | -3/+7 |
2025-03-03 | ipv6-update: check for availability of both variables | Christian Hesse | 1 | -1/+1 |
2025-03-03 | ipv6-update: ignore if prefix is no longer valid | Christian Hesse | 1 | -0/+8 |
2025-02-27 | Merge branch 'quote-file-name' into next•••This is required with RouterOS 7.18 now...
Well, probably the change was introduced with one of the
beta versions...
routeros-7.18-1 | Christian Hesse | 2 | -2/+2 |
2025-02-27 | mod/notification-telegram: $GetTelegramChatId: give thead id...•••... if message was sent to group's topic.
| Christian Hesse | 1 | -0/+3 |
2025-02-27 | INITIAL-COMMANDS: quote the certificate file name | Christian Hesse | 1 | -1/+1 |
2025-02-27 | mod/notification-telegram: $GetTelegramChatId: use last message | Christian Hesse | 1 | -4/+7 |
2025-02-27 | README: quote the certificate file name | Christian Hesse | 1 | -1/+1 |
2025-02-27 | Merge branch 'check-certificates' into next | Christian Hesse | 1 | -10/+15 |
2025-02-26 | check-certificates: try PKCS#12 before PEM...•••... as that is more likely to have a private key.
Is that true? ๐คจ
| Christian Hesse | 1 | -1/+1 |
2025-02-26 | check-certificates: simplify return from function...•••... and also break earch on success.
| Christian Hesse | 1 | -4/+2 |
2025-02-26 | check-certificates: ... and even more | Christian Hesse | 1 | -0/+3 |
2025-02-26 | check-certificates: add more debug output | Christian Hesse | 1 | -1/+3 |
2025-02-26 | check-certificates: drop dot from type...•••... and add it in file name.
| Christian Hesse | 1 | -2/+2 |
2025-02-26 | check-certificates: catch and ignore import error•••Hmm... ๐คจ When was that runtime error introduced? I *think* it
worked before.
| Christian Hesse | 1 | -4/+6 |
2025-02-25 | mod/notification-telegram: introduce $GetTelegramChatIdchange-135 | Christian Hesse | 5 | -9/+52 |
2025-02-25 | telegram-chat: say hello when awaiting commands | Christian Hesse | 1 | -1/+2 |
2025-02-25 | global-functions: $DeviceInfo: add license level, re-order | Christian Hesse | 1 | -6/+9 |
2025-02-25 | Merge branch 'telegram-topics' into next | Christian Hesse | 6 | -16/+30 |
2025-02-25 | notify on support for Telegram group topicschange-134 | Christian Hesse | 2 | -1/+2 |
2025-02-25 | telegram-chat: support reply in group's topic | Christian Hesse | 1 | -4/+9 |
2025-02-25 | telegram-chat: make $IsReply a boolean...•••... and check for correct data type.
We need this for a group with topic feature enabled, as that variable is
set there, but is is an array.
| Christian Hesse | 1 | -2/+3 |
2025-02-25 | mod/notification-telegram: support sending to group's topic...•••... when a group has enabled the "Topics" feature.
| Christian Hesse | 3 | -2/+11 |
2025-02-24 | mod/notification-telegram: simplify the queue...•••... and pass http-data as a complete sting.
| Christian Hesse | 1 | -9/+7 |
2025-02-19 | global-functions: $WaitForFile: drop the warning on file handling breakage...•••... but keep the workaround for now - just to be sure.
routeros-7.18rc1-1 | Christian Hesse | 1 | -5/+1 |
2025-02-17 | global-functions: $ScriptInstallUpdate: also show commit info | Christian Hesse | 1 | -1/+2 |
2025-02-17 | global-functions: $DeviceInfo: also show commit info | Christian Hesse | 1 | -2/+4 |
2025-02-13 | global-functions: $RmFile: fix type safeguard•••Ups... ๐ซฃ
The type is not just literal 'file' - but what ever type the file is,
like 'backup', 'package', 'script', '.conf file', ...
So let's match those types we do *not* want to remove.
Fixes: https://github.com/eworm-de/routeros-scripts/issues/90
| Christian Hesse | 1 | -2/+2 |
2025-02-13 | global-functions: $ScriptInstallUpdate: show commit id (if available) | Christian Hesse | 1 | -0/+6 |
2025-02-13 | global-functions: $DeviceInfo: show commit id (if available) | Christian Hesse | 1 | -0/+4 |
2025-02-12 | mod/scriptrunonce: always give proper return code | Christian Hesse | 1 | -0/+3 |
2025-02-12 | mod/scriptrunonce: resolve nested conditions | Christian Hesse | 1 | -11/+10 |
2025-02-12 | mod/scriptrunonce: use $FetchHuge | Christian Hesse | 1 | -5/+4 |
2025-02-12 | fw-addr-lists: add a collective list in default configurationchange-133 | Christian Hesse | 4 | -2/+8 |
2025-02-12 | global-functions: $WaitForFile: check that we can get properties•••Looks like RouterOS 7.18beta2 brings more breakage. Having a file
available in listing is just the first step now. We also need to make
sure that the file properties are accessible... ๐คช
I have seen this taking several tens of seconds at least... ๐คช๐คช So
let's just try until we have properties available, or the file vanishes.
Reported as SUP-179200. ๐ค
routeros-7.18beta2-3 | Christian Hesse | 1 | -1/+15 |
2025-02-12 | introduce DEBUG info | Christian Hesse | 1 | -0/+49 |
2025-02-11 | global-functions: $MkDir: add debug output | Christian Hesse | 1 | -0/+3 |
2025-02-11 | fw-addr-lists: these lists are deprecated and discontinued•••Any alternatives around?
| Christian Hesse | 4 | -37/+3 |
2025-02-10 | doc/log-forward: mention ntfy | Christian Hesse | 1 | -3/+3 |
2025-02-10 | doc/log-forward: add a hint on defaults | Christian Hesse | 1 | -0/+6 |
2025-02-10 | mod/notification-ntfy: use empty strings as default...•••... which should be fine now that the credentials are not passed with
fetch's properties, but as properly formatted authentication header.
| Christian Hesse | 1 | -3/+3 |
2025-02-10 | log-forward: make empty string a special meaning | Christian Hesse | 2 | -5/+10 |
2025-02-10 | Merge branch 'rmdir-rmfile' into next•••RouterOS 7.18beta2 comes with some severe issues in file handling,
probably racy conditions. Let's move file (and directory) removal to
functions, so errors can be caught and ignored ๐คช from a central place.
routeros-7.18beta2-2 | Christian Hesse | 9 | -19/+91 |
2025-02-10 | telegram-chat: use $RmDir | Christian Hesse | 1 | -1/+2 |
2025-02-10 | mod/ssh-keys-import: use $RmDir | Christian Hesse | 1 | -2/+3 |
2025-02-10 | check-certificates: use $RmFile | Christian Hesse | 1 | -1/+2 |
2025-02-10 | capsman-download-packages: use $RmFile | Christian Hesse | 3 | -3/+6 |
2025-02-10 | backup-upload: use $RmFile | Christian Hesse | 1 | -3/+4 |
2025-02-10 | backup-upload: use $RmDir | Christian Hesse | 1 | -1/+2 |
2025-02-10 | backup-cloud: use $RmDir | Christian Hesse | 1 | -1/+2 |
2025-02-10 | global-functions: $MkDir: use $RmDir | Christian Hesse | 1 | -1/+2 |
2025-02-10 | global-functions: $FetchHuge: use $RmDir | Christian Hesse | 1 | -2/+3 |
2025-02-10 | global-functions: $FetchHuge: use $RmFile | Christian Hesse | 1 | -1/+2 |
2025-02-10 | global-functions: $DownloadPackage: use $RmFile | Christian Hesse | 1 | -1/+2 |
2025-02-10 | global-functions: $CertificateDownload: use $RmFile | Christian Hesse | 1 | -2/+3 |
2025-02-10 | global-functions: $RmDir: fail on wrong type | Christian Hesse | 1 | -0/+5 |
2025-02-10 | global-functions: $RmFile: fail on wrong type | Christian Hesse | 1 | -0/+5 |
2025-02-07 | bump required RouterOS version for all scriptsrouteros-7.15-5 | Christian Hesse | 108 | -108/+108 |
2025-02-07 | global-functions: $RmDir: add debug output | Christian Hesse | 1 | -0/+3 |