From fd7c1154313545f62eb3d3073addaa941cb21e1a Mon Sep 17 00:00:00 2001 From: Con Kolivas Date: Mon, 25 Aug 2014 12:03:29 +1000 Subject: [PATCH] Drop all clients and reject incoming connections when we fail to talk to the upstream pool in proxy mode --- src/generator.c | 2 ++ src/stratifier.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/generator.c b/src/generator.c index 03bc9fd9..96eac99e 100644 --- a/src/generator.c +++ b/src/generator.c @@ -1289,6 +1289,8 @@ retry: break; } if (!alive) { + send_proc(ckp->stratifier, "dropall"); + send_proc(ckp->connector, "reject"); if (!ckp->chosen_server) { LOGWARNING("Failed to connect to any servers as proxy, retrying in 5s!"); sleep(5); diff --git a/src/stratifier.c b/src/stratifier.c index e122f5e6..387d3a19 100644 --- a/src/stratifier.c +++ b/src/stratifier.c @@ -1090,6 +1090,8 @@ retry: LOGDEBUG("Stratifier failed to parse dropclient command: %s", buf); else drop_client(client_id); + } else if (cmdmatch(buf, "dropall")) { + drop_allclients(ckp); } else if (cmdmatch(buf, "block")) { block_solve(ckp); } else if (cmdmatch(buf, "loglevel")) {