rpms/ax25-tools/F-10 ax25-tools-0.0.8-Unix98-ptmx.patch, NONE, 1.1 ax25-tools.spec, 1.1, 1.2

Sindre Pedersen Bjørdal sindrepb at fedoraproject.org
Thu Dec 11 07:10:44 UTC 2008


Author: sindrepb

Update of /cvs/pkgs/rpms/ax25-tools/F-10
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv10594

Modified Files:
	ax25-tools.spec 
Added Files:
	ax25-tools-0.0.8-Unix98-ptmx.patch 
Log Message:
fix pseudo-terminal issue

ax25-tools-0.0.8-Unix98-ptmx.patch:

--- NEW FILE ax25-tools-0.0.8-Unix98-ptmx.patch ---
--- kiss/mkiss.c.orig	2008-12-05 22:01:49.000000000 +0100
+++ kiss/mkiss.c	2008-12-05 22:09:36.000000000 +0100
@@ -96,6 +96,7 @@
 {
 	char		*name;		/* Interface name (/dev/???)	*/
 	int		fd;		/* File descriptor		*/
+	int		is_pty;
 	int		escaped;	/* FESC received?		*/
 	u16		crc;		/* Incoming frame crc		*/
 	unsigned char	obuf[SIZE];	/* TX buffer			*/
@@ -475,6 +476,8 @@
 		perror("mkiss: open");
 		return 1;
 	}
+	grantpt(tty->fd);
+	tty->is_pty = !unlockpt(tty->fd);
 
 	tty->name = argv[optind];
 	tty_raw(tty->fd, hwflag);
@@ -502,6 +505,8 @@
 			perror("mkiss: open");
 			return 1;
 		}
+		grantpt(pty[i]->fd);
+		pty[i]->is_pty = !unlockpt(pty[i]->fd);
 		pty[i]->name = argv[optind + i + 1];
 		tty_raw(pty[i]->fd, FALSE);
 		pty[i]->optr = pty[i]->obuf;
@@ -511,9 +516,11 @@
 	/*
 	 * Now all the ports are open, lock them.
 	 */
-	tty_lock(argv[optind]);
+	if (!tty->is_pty)
+		tty_lock(argv[optind]);
 	for (i = 0; i < numptys; i++)
-		tty_lock(argv[optind + i + 1]);
+		if (!pty[i]->is_pty)
+			tty_lock(argv[optind + i + 1]);
 
 	signal(SIGHUP, SIG_IGN);
 	signal(SIGUSR1, sigusr1_handler);


Index: ax25-tools.spec
===================================================================
RCS file: /cvs/pkgs/rpms/ax25-tools/F-10/ax25-tools.spec,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ax25-tools.spec	19 Feb 2008 23:30:42 -0000	1.1
+++ ax25-tools.spec	11 Dec 2008 07:10:13 -0000	1.2
@@ -1,6 +1,6 @@
 Name:           ax25-tools
 Version:        0.0.8
-Release:        2%{?dist}
+Release:        3%{?dist}
 Summary:        Tools used to configure an ax.25 enabled computer
 
 Group:          Applications/Communications
@@ -9,6 +9,8 @@
 Source0:        http://downloads.sourceforge.net/ax25/%{name}-%{version}.tar.gz
 #Patch by Daniel Schepler to include soundmodem.h, which was obsoleted and removed from the 2.6 kernel 
 Patch0:         %{name}-%{version}-soundmodem.h.patch
+#Patch by Thomas Sailer to work around issue with BSD style pseudo-terminal not being supported anymore. Adds support for Unix98 pseudo-terminals.
+Patch1:         %{name}-%{version}-Unix98-ptmx.patch
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
@@ -24,6 +26,7 @@
 %prep
 %setup -q
 %patch0 -p1
+%patch1 -p0
 
 %build
 %configure
@@ -50,7 +53,11 @@
 %{_mandir}/man?/*
 
 %changelog 
+* Thu Dec 11 2008 Sindre Pedersen Bjørdal <foolish at guezz.net> 0.0.8-3
+- Fix pseudo-terminal issue, #475045
+
 * Sat Feb 16 2008 Robert 'Bob' Jensen <bob at bobjensen.com> 0.0.8-2
 - Submit for review
+
 * Thu Dec 06 2007 Sindre Pedersen Bjørdal <foolish at guezz.net> 0.0.8-1
 - Initial Build




More information about the fedora-extras-commits mailing list