Date: Mon, 26 Mar 2007 19:44:04 +0200 (CEST) From: Ed Schouten <ed@fxq.nl> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/110872: [mail/xmail] Switch to <termios.h> Message-ID: <20070326174404.318091CC79@palm.hoeg.nl> Resent-Message-ID: <200703261750.l2QHo2rg011947@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 110872 >Category: ports >Synopsis: [mail/xmail] Switch to <termios.h> >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: Mon Mar 26 17:50:01 GMT 2007 >Closed-Date: >Last-Modified: >Originator: Ed Schouten >Release: FreeBSD 6.2-STABLE i386 >Organization: >Environment: System: FreeBSD palm.hoeg.nl 6.2-STABLE FreeBSD 6.2-STABLE #0: Sun Feb 11 22:32:09 CET 2007 root@palm.hoeg.nl:/usr/obj/usr/src/sys/PALM i386 >Description: The mail/xmail package makes use of the sgtty.h terminal interface. On FreeBSD, sgtty only works when a kernel with COMPAT_43/COMPAT_43TTY is running. Because it isn't hard to migrate this application to use termios, we'd be better off using that interface. >How-To-Repeat: >Fix: The termio interface has a switch called TABDLY. The appropriate option is called OXTABS in termios. --- mail/xmail/files/patch-ad Thu Feb 5 08:33:20 1998 +++ mail/xmail/files/patch-ad Mon Mar 26 19:38:38 2007 @@ -1,6 +1,20 @@ --- callMail.c.orig Thu Jan 26 21:52:01 1995 +++ callMail.c Wed Feb 4 23:30:07 1998 -@@ -81,7 +81,7 @@ +@@ -38,11 +38,10 @@ + #include <sys/select.h> + #endif + +-#if !(defined(SYSV) || defined(linux)) || defined(clipper) ++#if !(defined(SYSV) || defined(linux) || defined(__FreeBSD__)) || defined(clipper) + #include <sgtty.h> + #else +-#include <sys/termio.h> +-#include <sys/sysmacros.h> ++#include <sys/termios.h> + #include <fcntl.h> + #if defined(att) + #include <sys/stropts.h> +@@ -81,7 +80,7 @@ #ifdef hpux #define PTYCHAR2 "fedcba9876543210" #else /* !hpux */ @@ -9,3 +23,33 @@ #endif /* !hpux */ #endif /* !PTYCHAR2 */ +@@ -207,8 +206,8 @@ + callMail(argv) + char *argv[]; + { +-#if defined(linux) || (defined(SYSV) && !defined(clipper)) +- struct termio tio; ++#if defined(linux) || defined(__FreeBSD__) || (defined(SYSV) && !defined(clipper)) ++ struct termios tio; + #else + struct sgttyb Sgtty; + #endif +@@ -223,14 +222,14 @@ + /* + ** Set minimal requirements for slave connection (no echo, no NL->CR, keep TABS) + */ +-#if defined(linux) || (defined(SYSV) && !defined(clipper)) +- (void) ioctl(slave, TCGETA, &tio); +- tio.c_oflag &= ~(OCRNL|ONLCR|ONLRET|TABDLY); ++#if defined(linux) || defined(__FreeBSD__) || (defined(SYSV) && !defined(clipper)) ++ tcgetattr(slave, &tio); ++ tio.c_oflag &= ~(OCRNL|ONLCR|ONLRET|OXTABS); + tio.c_iflag &= ~IXOFF; + tio.c_iflag |= ICRNL; + tio.c_lflag &= ~(ISIG|ECHO); + tio.c_lflag |= ICANON; +- (void) ioctl(slave, TCSETA, &tio); ++ tcsetattr(slave, TCSANOW, &tio); + #else + (void) ioctl(slave, TIOCGETP, &Sgtty); + Sgtty.sg_flags &= ~(ECHO|CRMOD|XTABS); >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070326174404.318091CC79>