summaryrefslogtreecommitdiffstats
path: root/client.c
diff options
context:
space:
mode:
authorTiago Cunha <tcunha@gmx.com>2009-10-15 01:48:24 +0000
committerTiago Cunha <tcunha@gmx.com>2009-10-15 01:48:24 +0000
commit6257be6371e3848a64891b7b88c77e364ea1d9cc (patch)
treecd540722f7882d7121c5e2b4f158c6e43f0984fa /client.c
parent9800dc469718720861a143228e04c1dad60cf6c7 (diff)
Sync OpenBSD patchset 406:
Do this in a better way - print messages when exiting with nonzero. Also remove the login shell information from server-info, only the client should care about it.
Diffstat (limited to 'client.c')
-rw-r--r--client.c47
1 files changed, 24 insertions, 23 deletions
diff --git a/client.c b/client.c
index 3f774c90..428ce50e 100644
--- a/client.c
+++ b/client.c
@@ -1,4 +1,4 @@
-/* $Id: client.c,v 1.76 2009-10-15 01:45:13 tcunha Exp $ */
+/* $OpenBSD: client.c,v 1.24 2009/10/13 13:15:26 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -220,32 +220,33 @@ out:
* Print exit status message, unless running as a login shell where it
* would either be pointless or irritating.
*/
- if (!login_shell) {
- if (sigterm) {
- printf("[terminated]\n");
+ if (sigterm) {
+ printf("[terminated]\n");
+ return (1);
+ }
+ switch (cctx->exittype) {
+ case CCTX_DIED:
+ printf("[lost server]\n");
+ return (0);
+ case CCTX_SHUTDOWN:
+ if (!login_shell)
+ printf("[server exited]\n");
+ return (0);
+ case CCTX_EXIT:
+ if (cctx->errstr != NULL) {
+ printf("[error: %s]\n", cctx->errstr);
return (1);
}
- switch (cctx->exittype) {
- case CCTX_DIED:
- printf("[lost server]\n");
- return (0);
- case CCTX_SHUTDOWN:
- printf("[server exited]\n");
- return (0);
- case CCTX_EXIT:
- if (cctx->errstr != NULL) {
- printf("[error: %s]\n", cctx->errstr);
- return (1);
- }
+ if (!login_shell)
printf("[exited]\n");
- return (0);
- case CCTX_DETACH:
+ return (0);
+ case CCTX_DETACH:
+ if (!login_shell)
printf("[detached]\n");
- return (0);
- default:
- printf("[unknown error]\n");
- return (1);
- }
+ return (0);
+ default:
+ printf("[unknown error]\n");
+ return (1);
}
}