diff options
author | Darren Tucker <dtucker@cvs.openbsd.org> | 2017-12-10 05:55:30 +0000 |
---|---|---|
committer | Darren Tucker <dtucker@cvs.openbsd.org> | 2017-12-10 05:55:30 +0000 |
commit | 6c1f1de9304d94011cb5198391e43ec35316eae5 (patch) | |
tree | 80589b9f644862e0912ec8c195d8f714a543b23d /usr.bin/ssh | |
parent | d643d51e0a0e6162317011bbdbc7ef92ba79000e (diff) |
Put remote client info back into the ClientAlive connection termination
message. Based in part on diff from lars.nooden at gmail, ok djm
Diffstat (limited to 'usr.bin/ssh')
-rw-r--r-- | usr.bin/ssh/packet.c | 10 | ||||
-rw-r--r-- | usr.bin/ssh/packet.h | 3 | ||||
-rw-r--r-- | usr.bin/ssh/serverloop.c | 6 |
3 files changed, 11 insertions, 8 deletions
diff --git a/usr.bin/ssh/packet.c b/usr.bin/ssh/packet.c index 8ce7db0584a..039359eb546 100644 --- a/usr.bin/ssh/packet.c +++ b/usr.bin/ssh/packet.c @@ -1,4 +1,4 @@ -/* $OpenBSD: packet.c,v 1.267 2017/11/25 06:46:22 dtucker Exp $ */ +/* $OpenBSD: packet.c,v 1.268 2017/12/10 05:55:29 dtucker Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland @@ -1785,8 +1785,8 @@ ssh_packet_send_debug(struct ssh *ssh, const char *fmt,...) fatal("%s: %s", __func__, ssh_err(r)); } -static void -fmt_connection_id(struct ssh *ssh, char *s, size_t l) +void +sshpkt_fmt_connection_id(struct ssh *ssh, char *s, size_t l) { snprintf(s, l, "%.200s%s%s port %d", ssh->log_preamble ? ssh->log_preamble : "", @@ -1802,7 +1802,7 @@ sshpkt_fatal(struct ssh *ssh, const char *tag, int r) { char remote_id[512]; - fmt_connection_id(ssh, remote_id, sizeof(remote_id)); + sshpkt_fmt_connection_id(ssh, remote_id, sizeof(remote_id)); switch (r) { case SSH_ERR_CONN_CLOSED: @@ -1864,7 +1864,7 @@ ssh_packet_disconnect(struct ssh *ssh, const char *fmt,...) * Format the message. Note that the caller must make sure the * message is of limited size. */ - fmt_connection_id(ssh, remote_id, sizeof(remote_id)); + sshpkt_fmt_connection_id(ssh, remote_id, sizeof(remote_id)); va_start(args, fmt); vsnprintf(buf, sizeof(buf), fmt, args); va_end(args); diff --git a/usr.bin/ssh/packet.h b/usr.bin/ssh/packet.h index e5b3e3aecba..f0af467f2e5 100644 --- a/usr.bin/ssh/packet.h +++ b/usr.bin/ssh/packet.h @@ -1,4 +1,4 @@ -/* $OpenBSD: packet.h,v 1.83 2017/10/25 00:17:08 djm Exp $ */ +/* $OpenBSD: packet.h,v 1.84 2017/12/10 05:55:29 dtucker Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> @@ -188,6 +188,7 @@ int sshpkt_get_cstring(struct ssh *ssh, char **valp, size_t *lenp); int sshpkt_get_ec(struct ssh *ssh, EC_POINT *v, const EC_GROUP *g); int sshpkt_get_bignum2(struct ssh *ssh, BIGNUM *v); int sshpkt_get_end(struct ssh *ssh); +void sshpkt_fmt_connection_id(struct ssh *ssh, char *s, size_t l); const u_char *sshpkt_ptr(struct ssh *, size_t *lenp); /* OLD API */ diff --git a/usr.bin/ssh/serverloop.c b/usr.bin/ssh/serverloop.c index 955656ec81e..309a2567fc2 100644 --- a/usr.bin/ssh/serverloop.c +++ b/usr.bin/ssh/serverloop.c @@ -1,4 +1,4 @@ -/* $OpenBSD: serverloop.c,v 1.199 2017/10/23 05:08:00 djm Exp $ */ +/* $OpenBSD: serverloop.c,v 1.200 2017/12/10 05:55:29 dtucker Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland @@ -165,10 +165,12 @@ static void client_alive_check(struct ssh *ssh) { int channel_id; + char remote_id[512]; /* timeout, check to see how many we have had */ if (packet_inc_alive_timeouts() > options.client_alive_count_max) { - logit("Timeout, client not responding."); + sshpkt_fmt_connection_id(ssh, remote_id, sizeof(remote_id)); + logit("Timeout, client not responding from %s", remote_id); cleanup_exit(255); } |