From owner-freebsd-ports-bugs@FreeBSD.ORG Tue Jun 10 21:00:08 2008 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 960E31065679 for ; Tue, 10 Jun 2008 21:00:08 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 707358FC1C for ; Tue, 10 Jun 2008 21:00:08 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.2/8.14.2) with ESMTP id m5AL08LQ004209 for ; Tue, 10 Jun 2008 21:00:08 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.2/8.14.1/Submit) id m5AL08DT004208; Tue, 10 Jun 2008 21:00:08 GMT (envelope-from gnats) Resent-Date: Tue, 10 Jun 2008 21:00:08 GMT Resent-Message-Id: <200806102100.m5AL08DT004208@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Ed Schouten Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BC8E2106567E for ; Tue, 10 Jun 2008 20:51:46 +0000 (UTC) (envelope-from ed@hoeg.nl) Received: from palm.hoeg.nl (mx0.hoeg.nl [IPv6:2001:610:652::211]) by mx1.freebsd.org (Postfix) with ESMTP id 865088FC26 for ; Tue, 10 Jun 2008 20:51:46 +0000 (UTC) (envelope-from ed@hoeg.nl) Received: by palm.hoeg.nl (Postfix, from userid 1000) id 0DF951CCAC; Tue, 10 Jun 2008 22:49:27 +0200 (CEST) Message-Id: <20080610204927.0DF951CCAC@palm.hoeg.nl> Date: Tue, 10 Jun 2008 22:49:27 +0200 (CEST) From: Ed Schouten To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: ports/124462: [Patch] mail/metamail: fix termios patch X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Ed Schouten List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Jun 2008 21:00:08 -0000 >Number: 124462 >Category: ports >Synopsis: [Patch] mail/metamail: fix termios patch >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Jun 10 21:00:08 UTC 2008 >Closed-Date: >Last-Modified: >Originator: Ed Schouten >Release: FreeBSD 6.3-STABLE i386 >Organization: >Environment: System: FreeBSD palm.hoeg.nl 6.3-STABLE FreeBSD 6.3-STABLE #0: Wed Jun 4 08:56:01 CEST 2008 ed@palm.hoeg.nl:/usr/obj/usr/src/sys/PALM i386 >Description: The mail/metamail port has been patched some time ago to use termios, not sgtty. Unfortunately the patch missed two chunks, which means it still called stty() and gtty(), even though it should have used tcsetattr() and tcgetattr() there. >How-To-Repeat: >Fix: --- mail/metamail/files/patch-metamail_metamail.c +++ mail/metamail/files/patch-metamail_metamail.c @@ -138,6 +138,33 @@ #else static struct sgttyb MyTtyStateIn, MyTtyStateOut; #endif +@@ -2385,9 +2397,9 @@ + SaveTtyState() { + /* Bogus -- would like a good portable way to reset the terminal state here */ + #if !defined(AMIGA) && !defined(MSDOS) +-#ifdef SYSV +- ioctl(fileno(stdin), TCGETA, &MyTtyStateIn); +- ioctl(fileno(stdout), TCGETA, &MyTtyStateOut); ++#if 1 ++ tcgetattr(fileno(stdin), &MyTtyStateIn); ++ tcgetattr(fileno(stdout), &MyTtyStateOut); + #else + gtty(fileno(stdin), &MyTtyStateIn); + gtty(fileno(stdout), &MyTtyStateOut); +@@ -2398,10 +2410,10 @@ + + RestoreTtyState() { + #if !defined(AMIGA) && !defined(MSDOS) +-#ifdef SYSV ++#if 1 + if (HasSavedTtyState) { +- ioctl(fileno(stdout), TCSETA, &MyTtyStateOut); +- ioctl(fileno(stdin), TCSETA, &MyTtyStateIn); ++ tcsetattr(fileno(stdout), TCSANOW, &MyTtyStateOut); ++ tcsetattr(fileno(stdin), TCSANOW, &MyTtyStateIn); + } + #else + if (HasSavedTtyState) { @@ -2681,15 +2693,15 @@ StartRawStdin() { >Release-Note: >Audit-Trail: >Unformatted: