From bd1e85a8838cc356290bac6fa7ae834952f06547 Mon Sep 17 00:00:00 2001 From: rofl0r Date: Tue, 8 Jan 2019 16:06:01 +0000 Subject: [PATCH] proxywatchd: add safeguards against tor outage --- proxywatchd.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/proxywatchd.py b/proxywatchd.py index 2756f12..7ee3b91 100644 --- a/proxywatchd.py +++ b/proxywatchd.py @@ -59,6 +59,12 @@ class WorkerJob(): err == rocksock.RS_E_HIT_TIMEOUT: # proxy is not online, so don't waste time trying all possible protocols break + elif fp == 0 and \ + err == rocksock.RS_E_TARGET_CONN_REFUSED: + fail_inc = 0 + if random.randint(0, (config.watchd.threads-1)/2) == 0: + _log("could not connect to proxy 0, sleep 5s", "ERROR") + time.sleep(5) elif et == rocksock.RS_ET_GAI: fail_inc = 0 _log("could not resolve connection target %s"%srv, "ERROR")