summaryrefslogtreecommitdiffstats
path: root/client.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2009-09-02 20:00:10 +0000
committerNicholas Marriott <nicm@openbsd.org>2009-09-02 20:00:10 +0000
commit7a4bac82d7d3cc355c92b312fda00fa9523e79f9 (patch)
treee9627e47b3f2379606340841357e1c720c7c564f /client.c
parent74c35c513efc616cd56aa9bd1d7b2561fd6df132 (diff)
Set exittype for error exit as well as the error string.
Diffstat (limited to 'client.c')
-rw-r--r--client.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/client.c b/client.c
index 359d9482..bd062c69 100644
--- a/client.c
+++ b/client.c
@@ -201,7 +201,7 @@ client_main(struct client_ctx *cctx)
}
}
}
-
+
if (sigterm) {
printf("[terminated]\n");
return (1);
@@ -219,9 +219,12 @@ client_main(struct client_ctx *cctx)
case CCTX_DETACH:
printf("[detached]\n");
return (0);
- default:
+ case CCTX_ERROR:
printf("[error: %s]\n", cctx->errstr);
return (1);
+ default:
+ printf("[error: unknown error]\n");
+ return (1);
}
}
@@ -275,6 +278,7 @@ client_msg_dispatch(struct client_ctx *cctx)
printdata.msg[(sizeof printdata.msg) - 1] = '\0';
cctx->errstr = xstrdup(printdata.msg);
+ cctx->exittype = CCTX_ERROR;
imsg_free(&imsg);
return (-1);
case MSG_EXIT: