mirror of
https://github.com/eworm-de/routeros-scripts.git
synced 2026-03-03 12:39:35 +00:00
Compare commits
16 commits
31a4e95383
...
a853e172fa
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a853e172fa | ||
|
|
3394f0a140 | ||
|
|
d3fb2ab982 | ||
|
|
7bf523275a | ||
|
|
b1e4e89585 | ||
|
|
9f005a16a1 | ||
|
|
3b73af9559 | ||
|
|
99cf486b8e | ||
|
|
2e2f3c4b1a | ||
|
|
db880aea76 | ||
|
|
fe5f28ea6c | ||
|
|
2a321c430a | ||
|
|
2e71b055db | ||
|
|
b3c2088ee9 | ||
|
|
c13a22e15c | ||
|
|
9312f677fe |
3 changed files with 34 additions and 27 deletions
|
|
@ -54,9 +54,17 @@
|
|||
"' (file '" . $CertFileName . "')...");
|
||||
|
||||
:do {
|
||||
/tool/fetch check-certificate=yes-without-crl http-header-field=({ [ $FetchUserAgentStr $ScriptName ] }) \
|
||||
($CertRenewUrl . $CertFileName) dst-path=$CertFileName as-value;
|
||||
$WaitForFile $CertFileName;
|
||||
:onerror Err {
|
||||
/tool/fetch check-certificate=yes-without-crl \
|
||||
http-header-field=({ [ $FetchUserAgentStr $ScriptName ] }) \
|
||||
($CertRenewUrl . $CertFileName) dst-path=$CertFileName as-value;
|
||||
} do={
|
||||
:if ($Err != "Fetch failed with status 404") do={
|
||||
$LogPrint warning $0 ("Failed fetching certificate: " . $Err);
|
||||
}
|
||||
:error false;
|
||||
}
|
||||
$WaitForFile $CertFileName;
|
||||
|
||||
:local DecryptionFailed true;
|
||||
:foreach I,PassPhrase in=$CertRenewPass do={
|
||||
|
|
|
|||
|
|
@ -121,22 +121,22 @@
|
|||
} do={
|
||||
$LogPrint warning $ScriptName ("Request to DoH server " . ($DohServer->"doh-url") . \
|
||||
" failed: " . $Err);
|
||||
:continue;
|
||||
}
|
||||
|
||||
:if ($Data != false) do={
|
||||
:if ([ :typeof [ :find $Data "doh-check-OK" ] ] = "num") do={
|
||||
/ip/dns/set use-doh-server=($DohServer->"doh-url") verify-doh-cert=yes;
|
||||
:if ([ /certificate/settings/get crl-use ] = true) do={
|
||||
$LogPrintOnce warning $ScriptName ("Configured to use CRL, that can cause severe issue!");
|
||||
}
|
||||
/ip/dns/cache/flush;
|
||||
$LogPrint info $ScriptName ("Setting DoH server: " . ($DohServer->"doh-url"));
|
||||
:exit;
|
||||
} else={
|
||||
$LogPrint warning $ScriptName ("Received unexpected response from DoH server: " . \
|
||||
:if ([ :typeof [ :find $Data "doh-check-OK" ] ] != "num") do={
|
||||
$LogPrint warning $ScriptName ("Received unexpected response from DoH server: " . \
|
||||
($DohServer->"doh-url"));
|
||||
}
|
||||
:continue;
|
||||
}
|
||||
|
||||
/ip/dns/set use-doh-server=($DohServer->"doh-url") verify-doh-cert=yes;
|
||||
:if ([ /certificate/settings/get crl-use ] = true) do={
|
||||
$LogPrintOnce warning $ScriptName ("Configured to use CRL, that can cause severe issue!");
|
||||
}
|
||||
/ip/dns/cache/flush;
|
||||
$LogPrint info $ScriptName ("Setting DoH server: " . ($DohServer->"doh-url"));
|
||||
:exit;
|
||||
}
|
||||
} do={
|
||||
:global ExitOnError; $ExitOnError [ :jobname ] $Err;
|
||||
|
|
|
|||
|
|
@ -68,18 +68,17 @@
|
|||
|
||||
:local Data false;
|
||||
:for I from=1 to=4 do={
|
||||
:if ($Data = false) do={
|
||||
:onerror Err {
|
||||
:set Data ([ /tool/fetch check-certificate=yes-without-crl output=user \
|
||||
("https://api.telegram.org/bot" . $TelegramTokenId . "/getUpdates?offset=" . \
|
||||
$TelegramChatOffset->0 . "&allowed_updates=%5B%22message%22%5D") as-value ]->"data");
|
||||
:set TelegramRandomDelay [ $MAX 0 ($TelegramRandomDelay - 1) ];
|
||||
} do={
|
||||
:if ($I < 4) do={
|
||||
$LogPrint debug $ScriptName ("Fetch failed, " . $I . ". try: " . $Err);
|
||||
:set TelegramRandomDelay [ $MIN 15 ($TelegramRandomDelay + 5) ];
|
||||
:delay (($I * $I) . "s");
|
||||
}
|
||||
:onerror Err {
|
||||
:set Data ([ /tool/fetch check-certificate=yes-without-crl output=user \
|
||||
("https://api.telegram.org/bot" . $TelegramTokenId . "/getUpdates?offset=" . \
|
||||
$TelegramChatOffset->0 . "&allowed_updates=%5B%22message%22%5D") as-value ]->"data");
|
||||
:set TelegramRandomDelay [ $MAX 0 ($TelegramRandomDelay - 1) ];
|
||||
:break;
|
||||
} do={
|
||||
:if ($I < 4) do={
|
||||
$LogPrint debug $ScriptName ("Fetch failed, " . $I . ". try: " . $Err);
|
||||
:set TelegramRandomDelay [ $MIN 15 ($TelegramRandomDelay + 5) ];
|
||||
:delay (($I * $I) . "s");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue