From a4f753b04e2ef5258e765e28390c9cf6959b814d Mon Sep 17 00:00:00 2001 From: Michiel Broek Date: Sun, 17 Mar 2002 12:34:38 +0000 Subject: [PATCH] Added reset command to mbout --- html/programs/mbout.html | 7 ++++++- mbcico/mbout.c | 26 +++++++++++++++++--------- mbcico/outstat.c | 3 +++ 3 files changed, 26 insertions(+), 10 deletions(-) diff --git a/html/programs/mbout.html b/html/programs/mbout.html index 6fc4e03b..a512fb76 100644 --- a/html/programs/mbout.html +++ b/html/programs/mbout.html @@ -12,7 +12,7 @@
-
Last update 31-Jan-2001
+
Last update 17-Mar-2001

 

mbout - The Outbound Manager

@@ -73,6 +73,11 @@ actual call. This is also practical if you want some files from your uplink, just make the requests and the actual request is send when your normal scheduled poll to your uplink is processed.

+mbout reset [node..node] resets the nodes "try" +counter to zero. So if a node is undiable, the counter is 30 or more, then by +resetting this counter that node will be called again. The outbound is rescanned +after this command so that calling will start immediatly. +

mbout stat shows the status of the mailer outbound. This status is also written to the logfile.

diff --git a/mbcico/mbout.c b/mbcico/mbout.c index 81fefbb9..92202099 100644 --- a/mbcico/mbout.c +++ b/mbcico/mbout.c @@ -134,12 +134,12 @@ void Help() printf(" n node Show nodelist information\n"); printf(" p poll [node..node] Poll node(s) (always crash)\n"); printf(" req req [file..file] Request file(s) from node\n"); - printf(" res reset Reset node(s) \"try\" counter\n"); + printf(" res reset [node..node] Reset node(s) \"try\" counter\n"); printf(" sta stat Show outbound status\n"); - printf(" sto stop [node..node] Stop polling node(s)\n"); + printf(" sto stop [node..node] Stop polling node(s)\n"); printf("\n"); - printf(" Should be in domain form, e.g. f16.n2801.z2.domain\n"); - printf(" Flavor's are: crash | immediate | normal | hold\n"); + printf(" Should be in domain form, e.g. f16.n2801.z2.domain\n"); + printf(" Flavor's are: crash | immediate | normal | hold\n"); colour(9, 0); printf("\n Options are:\n\n"); colour(3, 0); @@ -286,11 +286,19 @@ int main(int argc, char *argv[]) } if (do_reset) { - rc = reset(addr); - tidy_faddr(addr); - if (rc) - rc += 100; - die(rc); + for (i = 3; i <= argc; i++) { + if (strncasecmp(argv[i-1], "-q", 2)) { + if ((addr = parsefaddr(argv[i-1])) == NULL) + Fatal((char *)"Unrecognizable address"); + j = reset(addr); + tidy_faddr(addr); + if (j > rc) + rc = j; + } + } + if (rc) + rc = 100; + die(rc); } if (do_attach) { diff --git a/mbcico/outstat.c b/mbcico/outstat.c index 73dfb834..d0291625 100644 --- a/mbcico/outstat.c +++ b/mbcico/outstat.c @@ -330,6 +330,9 @@ int reset(faddr *addr) return 0; putstatus(addr, 0, 0); + Syslog('+', "Reset try-counter for %s", ascfnode(addr, 0x1f)); + if (!do_quiet) + printf("Reset try-counter for %s\n", ascfnode(addr, 0x1f)); CreateSema((char *)"scanout"); return 0;