Date: Wednesday, May 20, 2015 @ 11:16:30 Author: bisson Revision: 239585
fix FS#45020 Added: openssh/trunk/dispatch.patch Modified: openssh/trunk/PKGBUILD ----------------+ PKGBUILD | 5 ++- dispatch.patch | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 85 insertions(+), 1 deletion(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2015-05-20 07:59:44 UTC (rev 239584) +++ PKGBUILD 2015-05-20 09:16:30 UTC (rev 239585) @@ -5,7 +5,7 @@ pkgname=openssh pkgver=6.8p1 -pkgrel=2 +pkgrel=3 pkgdesc='Free version of the SSH connectivity tools' url='http://www.openssh.org/portable.html' license=('custom:BSD') @@ -17,6 +17,7 @@ validpgpkeys=('59C2118ED206D927E667EBE3D3E5F56B6D920D30') source=("ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/${pkgname}-${pkgver}.tar.gz"{,.asc} 'error.patch' + 'dispatch.patch' 'sshdgenkeys.service' 'sshd@.service' 'sshd.service' @@ -25,6 +26,7 @@ 'sshd.pam') sha1sums=('cdbc51e46a902b30d263b05fdc71340920e91c92' 'SKIP' '1b6b11efe9b20b9d1e51a59ac4b16eefb1dc84b8' + 'e629d45e899bbb2b3e702080f37cb40f3dc2b9b4' 'cc1ceec606c98c7407e7ac21ade23aed81e31405' '6a0ff3305692cf83aca96e10f3bb51e1c26fccda' 'ec49c6beba923e201505f5669cea48cad29014db' @@ -39,6 +41,7 @@ prepare() { cd "${srcdir}/${pkgname}-${pkgver}" patch -p1 -i ../error.patch + patch -p1 -i ../dispatch.patch } build() { Added: dispatch.patch =================================================================== --- dispatch.patch (rev 0) +++ dispatch.patch 2015-05-20 09:16:30 UTC (rev 239585) @@ -0,0 +1,81 @@ +From 639d6bc57b1942393ed12fb48f00bc05d4e093e4 Mon Sep 17 00:00:00 2001 +From: d...@openbsd.org <d...@openbsd.org> +Date: Fri, 01 May 2015 07:10:01 +0000 +Subject: 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@ +--- +diff --git a/dispatch.c b/dispatch.c +index afe6182..aac933e 100644 +--- a/dispatch.c ++++ b/dispatch.c +@@ -1,4 +1,4 @@ +-/* $OpenBSD: dispatch.c,v 1.26 2015/02/12 20:34:19 dtucker Exp $ */ ++/* $OpenBSD: dispatch.c,v 1.27 2015/05/01 07:10:01 djm Exp $ */ + /* + * Copyright (c) 2000 Markus Friedl. All rights reserved. + * +@@ -137,22 +137,6 @@ ssh_dispatch_run_fatal(struct ssh *ssh, int mode, volatile sig_atomic_t *done, + { + int r; + +- if ((r = ssh_dispatch_run(ssh, mode, done, ctxt)) != 0) { +- switch (r) { +- case SSH_ERR_CONN_CLOSED: +- logit("Connection closed by %.200s", +- ssh_remote_ipaddr(ssh)); +- cleanup_exit(255); +- case SSH_ERR_CONN_TIMEOUT: +- logit("Connection to %.200s timed out while " +- "waiting to read", ssh_remote_ipaddr(ssh)); +- cleanup_exit(255); +- case SSH_ERR_DISCONNECTED: +- logit("Disconnected from %.200s", +- ssh_remote_ipaddr(ssh)); +- cleanup_exit(255); +- default: +- fatal("%s: %s", __func__, ssh_err(r)); +- } +- } ++ if ((r = ssh_dispatch_run(ssh, mode, done, ctxt)) != 0) ++ sshpkt_fatal(ssh, __func__, r); + } +diff --git a/packet.c b/packet.c +index 4922573..a7727ef 100644 +--- a/packet.c ++++ b/packet.c +@@ -1,4 +1,4 @@ +-/* $OpenBSD: packet.c,v 1.208 2015/02/13 18:57:00 markus Exp $ */ ++/* $OpenBSD: packet.c,v 1.212 2015/05/01 07:10:01 djm Exp $ */ + /* + * Author: Tatu Ylonen <y...@cs.hut.fi> + * Copyright (c) 1995 Tatu Ylonen <y...@cs.hut.fi>, Espoo, Finland +@@ -1920,9 +1920,19 @@ sshpkt_fatal(struct ssh *ssh, const char *tag, int r) + logit("Connection closed by %.200s", ssh_remote_ipaddr(ssh)); + cleanup_exit(255); + case SSH_ERR_CONN_TIMEOUT: +- logit("Connection to %.200s timed out while " +- "waiting to write", ssh_remote_ipaddr(ssh)); ++ logit("Connection to %.200s timed out", ssh_remote_ipaddr(ssh)); + cleanup_exit(255); ++ case SSH_ERR_DISCONNECTED: ++ logit("Disconnected from %.200s", ++ ssh_remote_ipaddr(ssh)); ++ cleanup_exit(255); ++ case SSH_ERR_SYSTEM_ERROR: ++ if (errno == ECONNRESET) { ++ logit("Connection reset by %.200s", ++ ssh_remote_ipaddr(ssh)); ++ cleanup_exit(255); ++ } ++ /* FALLTHROUGH */ + default: + fatal("%s%sConnection to %.200s: %s", + tag != NULL ? tag : "", tag != NULL ? ": " : "", +-- +cgit v0.9.2