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.
This commit is contained in:
Nicholas Marriott 2009-10-13 13:15:26 +00:00
parent 760e39e405
commit 0907ca1931
2 changed files with 26 additions and 26 deletions

View File

@ -216,7 +216,6 @@ out:
* Print exit status message, unless running as a login shell where it * Print exit status message, unless running as a login shell where it
* would either be pointless or irritating. * would either be pointless or irritating.
*/ */
if (!login_shell) {
if (sigterm) { if (sigterm) {
printf("[terminated]\n"); printf("[terminated]\n");
return (1); return (1);
@ -226,6 +225,7 @@ out:
printf("[lost server]\n"); printf("[lost server]\n");
return (0); return (0);
case CCTX_SHUTDOWN: case CCTX_SHUTDOWN:
if (!login_shell)
printf("[server exited]\n"); printf("[server exited]\n");
return (0); return (0);
case CCTX_EXIT: case CCTX_EXIT:
@ -233,9 +233,11 @@ out:
printf("[error: %s]\n", cctx->errstr); printf("[error: %s]\n", cctx->errstr);
return (1); return (1);
} }
if (!login_shell)
printf("[exited]\n"); printf("[exited]\n");
return (0); return (0);
case CCTX_DETACH: case CCTX_DETACH:
if (!login_shell)
printf("[detached]\n"); printf("[detached]\n");
return (0); return (0);
default: default:
@ -243,7 +245,6 @@ out:
return (1); return (1);
} }
} }
}
int int
client_msg_dispatch(struct client_ctx *cctx) client_msg_dispatch(struct client_ctx *cctx)

View File

@ -68,9 +68,8 @@ cmd_server_info_exec(unused struct cmd *self, struct cmd_ctx *ctx)
tim = ctime(&start_time); tim = ctime(&start_time);
*strchr(tim, '\n') = '\0'; *strchr(tim, '\n') = '\0';
ctx->print(ctx, "pid %ld, started %s", (long) getpid(), tim); ctx->print(ctx, "pid %ld, started %s", (long) getpid(), tim);
ctx->print(ctx, "socket path %s, debug level %d%s%s", ctx->print(ctx, "socket path %s, debug level %d%s",
socket_path, debug_level, be_quiet ? ", quiet" : "", socket_path, debug_level, be_quiet ? ", quiet" : "");
login_shell ? ", login shell" : "");
if (uname(&un) == 0) { if (uname(&un) == 0) {
ctx->print(ctx, "system is %s %s %s %s", ctx->print(ctx, "system is %s %s %s %s",
un.sysname, un.release, un.version, un.machine); un.sysname, un.release, un.version, un.machine);