Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2023-03-10 | drop dummy scripts used for migration | 1 | -3/+0 | ||
This now causes expected warnings on first run of $ScriptInstallUpdate. The migration still works, as we keep `global-config.changes` and `global-functions`. | |||||
2023-03-07 | rename scripts and add file extension ".rsc"change-95 | 1 | -136/+1 | ||
No functional change for the user... The migration is done automatically. | |||||
2023-01-26 | check-certificates: handle decryption failures and warn | 1 | -1/+10 | ||
If a download succeeds at least one of the given passphrases is expected to decrypt a key in the file. | |||||
2023-01-23 | check-certificates: make the warning time configurablechange-89 | 1 | -1/+3 | ||
2023-01-02 | update copyright for 2023 | 1 | -1/+1 | ||
2022-05-11 | check-certificates: RouterOS v7 path syntax | 1 | -27/+19 | ||
2022-01-01 | update copyright for 2022 | 1 | -1/+1 | ||
2021-05-21 | check-certificates: fix variable name | 1 | -1/+1 | ||
2021-04-28 | check-certificates: pass origin to $SendNotification2 | 1 | -2/+4 | ||
2021-04-28 | check-certificates: use $SendNotification2 | 1 | -7/+7 | ||
2021-03-21 | check-certificates: silence certificate import | 1 | -1/+1 | ||
2021-03-21 | check-certificates: be more verbose when attempting to renew | 1 | -0/+1 | ||
2021-02-24 | check-certificates: silence fetch | 1 | -1/+1 | ||
2021-02-24 | global: give script or function name in log messages | 1 | -12/+13 | ||
2021-02-18 | global: drop script 'global-wait'change-44 | 1 | -0/+3 | ||
All scripts wait for the global functions on their own now. | |||||
2021-02-16 | global-functions: drop support for attachment in notification e-mail | 1 | -1/+1 | ||
2021-01-11 | check-certificates: complete certificate renewal time | 1 | -1/+1 | ||
With a modified certificate renewal time may have failed if the new certificate was not found. | |||||
2021-01-11 | check-certificates: do not renew if loosing private key | 1 | -0/+5 | ||
2021-01-11 | check-certificates: show info on private key | 1 | -0/+2 | ||
2021-01-01 | update copyright for 2021 | 1 | -1/+1 | ||
2020-12-18 | check-certificates: make the certificate renewal time configurablechange-40 | 1 | -1/+2 | ||
2020-11-26 | global-functions: clickable links in telegram notifications | 1 | -1/+1 | ||
2020-11-13 | check-certificates: decrease log severity to info | 1 | -2/+2 | ||
2020-09-18 | extend magic pattern with "by RouterOS" | 1 | -1/+1 | ||
This matches the string included in export. | |||||
2020-09-06 | check-certificates: do not notify with missing validity period | 1 | -1/+1 | ||
2020-09-01 | check-certificates: better check for non-empty value | 1 | -1/+1 | ||
2020-08-26 | [ ... print count-only ...] -> [ :len [ ... find ... ] ] | 1 | -1/+1 | ||
Using 'print count-only' always prints a number to terminal, even if the value is evaluated in a condition or assigned to a variable. This can be quite annoying. Behavior will not chance (SUP-25503), so replacing the code... | |||||
2020-08-21 | check-certificates: wait to be fully connected | 1 | -4/+2 | ||
2020-08-21 | check-certificates: fix usage of function | 1 | -1/+1 | ||
2020-07-17 | check-certificates: add symbol in notification | 1 | -2/+3 | ||
2020-07-16 | check-certificates: use $IfThenElse | 1 | -7/+3 | ||
2020-06-19 | explicitly name the license | 1 | -0/+1 | ||
Copyright (C) 2013-2020 Christian Hesse <mail@eworm.de> This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. https://www.gnu.org/licenses/#GPL https://www.gnu.org/licenses/gpl.html https://www.gnu.org/licenses/gpl.md | |||||
2020-04-24 | check-certificates: exclude issued certificates on SCEP server | 1 | -16/+20 | ||
2020-04-24 | check-certificates: always use parenthesis | 1 | -2/+2 | ||
2020-04-24 | check-certificates: add missing blank | 1 | -1/+1 | ||
2020-04-03 | check-certificates: warn about missing chain | 1 | -1/+3 | ||
2020-04-03 | check-certificates: check and download certificate chain | 1 | -0/+3 | ||
2020-03-27 | add doc/check-certificates.md | 1 | -0/+1 | ||
2020-03-20 | check-certificates: exclude certificates issued by SCEP | 1 | -2/+2 | ||
2020-03-05 | check-certificates: use $LogPrintExit for debug | 1 | -5/+5 | ||
2020-02-28 | global-functions: sort alphabetically | 1 | -3/+3 | ||
2020-02-26 | global-functions: merge $LogAnd{Error,Put} to $LogPrintExit ... | 1 | -7/+6 | ||
... and fix logging. Logging with severity from variable (:log $severity ...) is not possible, this is considered a syntax error. Also the 'workaround' with parsing code failed with missing message in log. The reliable code is a lot longer, so merge the two functions to save a lot of duplicate code. | |||||
2020-02-26 | check-certificates: use $LogAndPut | 1 | -2/+3 | ||
2020-02-26 | check-certificates: use $LogAndError | 1 | -2/+1 | ||
2020-02-26 | global-functions: $LogAndError: add severity | 1 | -1/+1 | ||
2020-02-26 | check-certificates: use $LogAndError | 1 | -2/+2 | ||
2020-02-24 | check-certificates: check for synced time | 1 | -0/+6 | ||
2020-02-06 | check-certificates: rename all certificates by their common names | 1 | -0/+5 | ||
2020-01-01 | update copyright for 2020 | 1 | -1/+1 | ||
2019-11-11 | check-certificates: make renew notification silent | 1 | -1/+1 | ||
2019-07-31 | check-certificates: fix renewing certificate in place | 1 | -14/+18 | ||
2019-07-18 | check-certificates: use $ParseKeyValueStore | 1 | -11/+3 | ||
2019-05-21 | check-certificates: get certificate values into array | 1 | -43/+28 | ||
2019-05-02 | check-certificates: do not try to renew locally issued certificates | 1 | -1/+1 | ||
2019-05-02 | check-certificates: give issuer info on locally issued certificates | 1 | -1/+2 | ||
Certificates issued locally do not have an 'issuer' property, but a 'ca' one. Looks like either of both is filled, so just concatenate. | |||||
2019-04-30 | global-functions: add $WaitForFile, wait for file on fetch | 1 | -1/+4 | ||
The fetch command is asynchronous, the file is not guaranteed to be available when command terminates. I opened an issue at Mikrotik support (Ticket#2019041722004999), their answer: > You should perform a check in a loop. > :delay until file exist > > That can happen also with any configuration not just files. So add a function to wait for a file with given name. I have not seen this with other configuration, though. | |||||
2019-04-11 | check-certificates: make sure fingerprint is a string | 1 | -1/+1 | ||
This makes sure the condition below works for certificate templates, which do not have a fingerprint. | |||||
2019-04-11 | check-certificates: do not send notification for templates | 1 | -1/+1 | ||
2019-04-11 | check-certificates: always return a string in $GetIssuerCN | 1 | -0/+1 | ||
2019-04-10 | check-certificates: add url encoding for certificate download | 1 | -4/+6 | ||
2019-04-10 | check-certificates: try to fetch PEM and P12 file | 1 | -4/+10 | ||
2019-04-10 | check-certificates: use full path... | 1 | -3/+3 | ||
... to make sure syntax does not break if package is not installed. | |||||
2019-04-10 | check-certificates: just change certificates, no loop | 1 | -12/+4 | ||
2019-04-09 | drop deprecated mode= for fetch | 1 | -1/+1 | ||
2019-04-03 | always write warnings and errors to log | 1 | -0/+1 | ||
2019-04-01 | check-certificates: support multiple passphraseschange-3 | 1 | -1/+3 | ||
2019-03-28 | check-certificates: show remaining time | 1 | -8/+16 | ||
2019-03-25 | check-certificates: update certificates for ipsec identities | 1 | -1/+12 | ||
2019-03-06 | check-certificates: split loop for certificate renew and warning | 1 | -20/+27 | ||
This allows to have differnt time values. | |||||
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 | 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 | 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 | global: variable names are CamelCase | 1 | -47/+46 | ||
___ _ ___ __ / _ )(_)__ _ / _/__ _/ /_ / _ / / _ `/ / _/ _ `/ __/ /____/_/\_, / /_/ \_,_/\__/ _ __ /___/ _ __ | | / /___ __________ (_)___ ____ _/ / | | /| / / __ `/ ___/ __ \/ / __ \/ __ `/ / | |/ |/ / /_/ / / / / / / / / / / /_/ /_/ |__/|__/\__,_/_/ /_/ /_/_/_/ /_/\__, (_) /____/ 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-02 | update copyright for 2019 | 1 | -1/+1 | ||
2018-12-20 | check-certificates: support auto-renew of certificates | 1 | -10/+44 | ||
2018-11-28 | global-functions: add identity tag in $SendNotification | 1 | -1/+1 | ||
... and send subject in telegram message. | |||||
2018-10-10 | global: remove unused variables | 1 | -2/+0 | ||
2018-10-09 | check-certificates: use function for notification | 1 | -3/+4 | ||
2018-09-27 | start scripts with a magic token / shebang | 1 | -1/+1 | ||
2018-08-24 | add empty comment at first line... | 1 | -0/+1 | ||
... for better formatting in export. | |||||
2018-07-05 | add scripts | 1 | -0/+52 | ||