From owner-cvs-src-old@FreeBSD.ORG Fri Apr 30 19:52:50 2010 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D33D41065675 for ; Fri, 30 Apr 2010 19:52:50 +0000 (UTC) (envelope-from jilles@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id C0C5C8FC1E for ; Fri, 30 Apr 2010 19:52:50 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id o3UJqokQ054934 for ; Fri, 30 Apr 2010 19:52:50 GMT (envelope-from jilles@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id o3UJqoKU054933 for cvs-src-old@freebsd.org; Fri, 30 Apr 2010 19:52:50 GMT (envelope-from jilles@repoman.freebsd.org) Message-Id: <201004301952.o3UJqoKU054933@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to jilles@repoman.freebsd.org using -f From: Jilles Tjoelker Date: Fri, 30 Apr 2010 19:52:35 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/contrib/telnet/telnet commands.c externs.h network.c sys_bsd.c telnet.c terminal.c X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 30 Apr 2010 19:52:50 -0000 jilles 2010-04-30 19:52:35 UTC FreeBSD src repository Modified files: contrib/telnet/telnet commands.c externs.h network.c sys_bsd.c telnet.c terminal.c Log: SVN rev 207449 on 2010-04-30 19:52:35Z by jilles telnet: Fix infinite loop if local output generates SIGPIPE. Instead of catching SIGPIPE and jumping out of the signal handler with longjmp, ignore it and handle write errors to the local output by exiting from there. I have changed the error message to mention the local output instead of NetBSD's wrong "Connection closed by foreign host". Write errors to the network were already handled by exiting immediately and this now applies to EPIPE too. The code assumed that SIGPIPE could only be generated by the network connection; if it was generated by the local output, it would longjmp out of the signal handler and write an error message which caused another SIGPIPE. PR: 19773 Obtained from: NetBSD MFC after: 1 week Revision Changes Path 1.36 +1 -2 src/contrib/telnet/telnet/commands.c 1.13 +0 -1 src/contrib/telnet/telnet/externs.h 1.8 +1 -1 src/contrib/telnet/telnet/network.c 1.13 +1 -9 src/contrib/telnet/telnet/sys_bsd.c 1.17 +0 -1 src/contrib/telnet/telnet/telnet.c 1.8 +14 -2 src/contrib/telnet/telnet/terminal.c