diff options
author | djm@openbsd.org <djm@openbsd.org> | 2015-05-01 07:10:01 +0000 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2015-05-10 11:55:48 +1000 |
commit | 639d6bc57b1942393ed12fb48f00bc05d4e093e4 (patch) | |
tree | 683e82b29b8c711bbabfdfb7f4724f8f95ca3b93 /packet.c | |
parent | 9559d7de34c572d4d3fd990ca211f8ec99f62c4d (diff) |
upstream commit
refactor ssh_dispatch_run_fatal() to use sshpkt_fatal()
to better report error conditions. Teach sshpkt_fatal() about ECONNRESET.
Improves error messages on TCP connection resets. bz#2257
ok dtucker@
Diffstat (limited to 'packet.c')
-rw-r--r-- | packet.c | 16 |
1 files changed, 13 insertions, 3 deletions
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: packet.c,v 1.211 2015/04/27 01:52:30 djm Exp $ */ | 1 | /* $OpenBSD: packet.c,v 1.212 2015/05/01 07:10:01 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -1920,9 +1920,19 @@ sshpkt_fatal(struct ssh *ssh, const char *tag, int r) | |||
1920 | logit("Connection closed by %.200s", ssh_remote_ipaddr(ssh)); | 1920 | logit("Connection closed by %.200s", ssh_remote_ipaddr(ssh)); |
1921 | cleanup_exit(255); | 1921 | cleanup_exit(255); |
1922 | case SSH_ERR_CONN_TIMEOUT: | 1922 | case SSH_ERR_CONN_TIMEOUT: |
1923 | logit("Connection to %.200s timed out while " | 1923 | logit("Connection to %.200s timed out", ssh_remote_ipaddr(ssh)); |
1924 | "waiting to write", ssh_remote_ipaddr(ssh)); | ||
1925 | cleanup_exit(255); | 1924 | cleanup_exit(255); |
1925 | case SSH_ERR_DISCONNECTED: | ||
1926 | logit("Disconnected from %.200s", | ||
1927 | ssh_remote_ipaddr(ssh)); | ||
1928 | cleanup_exit(255); | ||
1929 | case SSH_ERR_SYSTEM_ERROR: | ||
1930 | if (errno == ECONNRESET) { | ||
1931 | logit("Connection reset by %.200s", | ||
1932 | ssh_remote_ipaddr(ssh)); | ||
1933 | cleanup_exit(255); | ||
1934 | } | ||
1935 | /* FALLTHROUGH */ | ||
1926 | default: | 1936 | default: |
1927 | fatal("%s%sConnection to %.200s: %s", | 1937 | fatal("%s%sConnection to %.200s: %s", |
1928 | tag != NULL ? tag : "", tag != NULL ? ": " : "", | 1938 | tag != NULL ? tag : "", tag != NULL ? ": " : "", |