summaryrefslogtreecommitdiff
path: root/test/src
diff options
context:
space:
mode:
authorJeremy Harris <jgh146exb@wizmail.org>2016-02-24 18:19:04 +0000
committerJeremy Harris <jgh146exb@wizmail.org>2016-03-03 13:25:30 +0000
commit59eaad2b1af0dc58545dff6a7211948782811e1a (patch)
tree850aa0f5536176fc02adfb5851274b8a2999a8b1 /test/src
parentbe92b80c645837095fd47f1334502a7c4ec41c93 (diff)
Cutthrough: fix operation under -bhc to not actually deliver. Bug 1800
Diffstat (limited to 'test/src')
-rw-r--r--test/src/server.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/test/src/server.c b/test/src/server.c
index 5c6080238..3aecf76f0 100644
--- a/test/src/server.c
+++ b/test/src/server.c
@@ -65,13 +65,14 @@ typedef struct line {
/*************************************************
* SIGALRM handler - crash out *
*************************************************/
+int tmo_noerror = 0;
static void
sigalrm_handler(int sig)
{
sig = sig; /* Keep picky compilers happy */
printf("\nServer timed out\n");
-exit(99);
+exit(tmo_noerror ? 0 : 99);
}
@@ -215,7 +216,10 @@ if (argc > 1 && (!strcmp(argv[1], "--help") || !strcmp(argv[1], "-h")))
while (na < argc && argv[na][0] == '-')
{
if (strcmp(argv[na], "-d") == 0) debug = 1;
- else if (strcmp(argv[na], "-t") == 0) timeout = atoi(argv[++na]);
+ else if (strcmp(argv[na], "-t") == 0)
+ {
+ if (tmo_noerror = ((timeout = atoi(argv[++na])) < 0)) timeout = -timeout;
+ }
else if (strcmp(argv[na], "-i") == 0) initial_pause = atoi(argv[++na]);
else if (strcmp(argv[na], "-noipv4") == 0) use_ipv4 = 0;
else if (strcmp(argv[na], "-noipv6") == 0) use_ipv6 = 0;