summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlastair Tse <liquidx@gentoo.org>2004-07-24 20:43:42 +0000
committerAlastair Tse <liquidx@gentoo.org>2004-07-24 20:43:42 +0000
commit01568c48ca3e4883b8299a5aeccc30fd98787fce (patch)
tree072bde285b4471603eeadb8aabdcbece0037f1f4 /net-misc/gsmlib
parentAdded a fix for X.Org on AMD64: bug #58138. (Manifest recommit) (diff)
downloadgentoo-2-01568c48ca3e4883b8299a5aeccc30fd98787fce.tar.gz
gentoo-2-01568c48ca3e4883b8299a5aeccc30fd98787fce.tar.bz2
gentoo-2-01568c48ca3e4883b8299a5aeccc30fd98787fce.zip
added new revision of stable version with gcc33 patches plus some mem leak fixes. thanks to Zach Bagnall <yem@y3m.net> (#54993)
Diffstat (limited to 'net-misc/gsmlib')
-rw-r--r--net-misc/gsmlib/ChangeLog10
-rw-r--r--net-misc/gsmlib/Manifest4
-rw-r--r--net-misc/gsmlib/files/digest-gsmlib-1.10-r11
-rw-r--r--net-misc/gsmlib/files/gsmlib-1.10-fd-leak-fix.patch77
-rw-r--r--net-misc/gsmlib/files/gsmlib-1.10-include-fix.patch11
-rw-r--r--net-misc/gsmlib/gsmlib-1.10-r1.ebuild37
6 files changed, 139 insertions, 1 deletions
diff --git a/net-misc/gsmlib/ChangeLog b/net-misc/gsmlib/ChangeLog
index cf63b3df2a91..b53887f1a93d 100644
--- a/net-misc/gsmlib/ChangeLog
+++ b/net-misc/gsmlib/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for net-misc/gsmlib
# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/gsmlib/ChangeLog,v 1.6 2004/07/01 21:04:20 squinky86 Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/gsmlib/ChangeLog,v 1.7 2004/07/24 20:43:42 liquidx Exp $
+
+*gsmlib-1.10-r1 (24 Jul 2004)
+
+ 24 Jul 2004; Alastair Tse <liquidx@gentoo.org>
+ +files/gsmlib-1.10-fd-leak-fix.patch, +files/gsmlib-1.10-include-fix.patch,
+ +gsmlib-1.10-r1.ebuild:
+ added new revision of stable version with gcc33 patches plus some mem leak
+ fixes. thanks to Zach Bagnall <yem@y3m.net> (#54993)
01 Jul 2004; Jon Hood <squinky86@gentoo.org> gsmlib-1.10.ebuild,
gsmlib-1.11_pre030826.ebuild:
diff --git a/net-misc/gsmlib/Manifest b/net-misc/gsmlib/Manifest
index dddc5bb7cb33..7a7dc4fec202 100644
--- a/net-misc/gsmlib/Manifest
+++ b/net-misc/gsmlib/Manifest
@@ -1,6 +1,10 @@
MD5 2fc43d9370de407dcd4858f21105a67c gsmlib-1.11_pre030826.ebuild 683
MD5 5943491eec3f9d0a1ab8c7250bec3f2e gsmlib-1.10.ebuild 595
+MD5 2fb4a57b2217097565c3f6ae33360020 gsmlib-1.10-r1.ebuild 733
MD5 55167371292e6cf59a9dc110bbdc6693 ChangeLog 773
MD5 a53f0ed8435cda3e9150e994afe7a269 metadata.xml 301
MD5 ca07bc08da15e439dfee58227b2255f5 files/digest-gsmlib-1.10 63
MD5 9358266ac12314de9a89dc071fbd6485 files/digest-gsmlib-1.11_pre030826 73
+MD5 6829c61b804c994593a2f679065225a0 files/gsmlib-1.10-include-fix.patch 407
+MD5 ca07bc08da15e439dfee58227b2255f5 files/digest-gsmlib-1.10-r1 63
+MD5 2ce7eeb6838e5b5a1f2f41889a23c1bd files/gsmlib-1.10-fd-leak-fix.patch 2318
diff --git a/net-misc/gsmlib/files/digest-gsmlib-1.10-r1 b/net-misc/gsmlib/files/digest-gsmlib-1.10-r1
new file mode 100644
index 000000000000..d824df38686d
--- /dev/null
+++ b/net-misc/gsmlib/files/digest-gsmlib-1.10-r1
@@ -0,0 +1 @@
+MD5 deea4ce2e4f5f1965d32d576597d3ff4 gsmlib-1.10.tar.gz 474591
diff --git a/net-misc/gsmlib/files/gsmlib-1.10-fd-leak-fix.patch b/net-misc/gsmlib/files/gsmlib-1.10-fd-leak-fix.patch
new file mode 100644
index 000000000000..b6eb494f16fe
--- /dev/null
+++ b/net-misc/gsmlib/files/gsmlib-1.10-fd-leak-fix.patch
@@ -0,0 +1,77 @@
+--- tmp/gsmlib-1.9/gsmlib/gsm_unix_serial.cc 2001-07-15 11:00:36.000000000 +0100
++++ /home/fez/edmundd/gsm_unix_serial.cc 2002-11-09 21:59:01.000000000 +0000
+@@ -178,11 +178,15 @@
+
+ // switch off non-blocking mode
+ int fdFlags;
+- if ((fdFlags = fcntl(_fd, F_GETFL)) == -1)
++ if ((fdFlags = fcntl(_fd, F_GETFL)) == -1) {
++ close(_fd);
+ throwModemException(_("getting file status flags failed"));
++ }
+ fdFlags &= ~O_NONBLOCK;
+- if (fcntl(_fd, F_SETFL, fdFlags) == -1)
++ if (fcntl(_fd, F_SETFL, fdFlags) == -1) {
++ close(_fd);
+ throwModemException(_("switching of non-blocking mode failed"));
++ }
+
+ long int saveTimeoutVal = _timeoutVal;
+ _timeoutVal = 3;
+@@ -194,17 +198,22 @@
+
+ // toggle DTR to reset modem
+ int mctl = TIOCM_DTR;
+- if (ioctl(_fd, TIOCMBIC, &mctl) < 0)
++ if (ioctl(_fd, TIOCMBIC, &mctl) < 0) {
++ close(_fd);
+ throwModemException(_("clearing DTR failed"));
++ }
+ // the waiting time for DTR toggling is increased with each loop
+ usleep(holdoff[initTries]);
+- if (ioctl(_fd, TIOCMBIS, &mctl) < 0)
++ if (ioctl(_fd, TIOCMBIS, &mctl) < 0) {
++ close(_fd);
+ throwModemException(_("setting DTR failed"));
+-
++ }
+ // get line modes
+- if (tcgetattr(_fd, &t) < 0)
++ if (tcgetattr(_fd, &t) < 0) {
++ close(_fd);
+ throwModemException(stringPrintf(_("tcgetattr device '%s'"),
+ device.c_str()));
++ }
+
+ // set line speed
+ cfsetispeed(&t, lineSpeed);
+@@ -229,9 +238,11 @@
+ t.c_cc[VSUSP] = 0;
+
+ // write back
+- if(tcsetattr (_fd, TCSANOW, &t) < 0)
++ if(tcsetattr (_fd, TCSANOW, &t) < 0) {
++ close(_fd);
+ throwModemException(stringPrintf(_("tcsetattr device '%s'"),
+ device.c_str()));
++ }
+ // the waiting time for writing to the ME/TA is increased with each loop
+ usleep(holdoff[initTries]);
+
+@@ -277,11 +288,14 @@
+ catch (GsmException &e)
+ {
+ _timeoutVal = saveTimeoutVal;
+- if (initTries == 0)
++ if (initTries == 0) {
++ close(_fd);
+ throw e;
++ }
+ }
+ }
+ // no response after 3 tries
++ close(_fd);
+ throw GsmException(stringPrintf(_("reset modem failed '%s'"),
+ device.c_str()), OtherError);
+ }
+
diff --git a/net-misc/gsmlib/files/gsmlib-1.10-include-fix.patch b/net-misc/gsmlib/files/gsmlib-1.10-include-fix.patch
new file mode 100644
index 000000000000..042974e77c8f
--- /dev/null
+++ b/net-misc/gsmlib/files/gsmlib-1.10-include-fix.patch
@@ -0,0 +1,11 @@
+diff -ur gsmlib-1.10/gsmlib/gsm_unix_serial.cc gsmlib-1.10-fixed/gsmlib/gsm_unix_serial.cc
+--- gsmlib-1.10/gsmlib/gsm_unix_serial.cc 2002-09-22 23:51:10.000000000 +1200
++++ gsmlib-1.10-fixed/gsmlib/gsm_unix_serial.cc 2004-06-24 18:07:16.776486024 +1200
+@@ -26,6 +26,7 @@
+ #include <sys/ioctl.h>
+ #include <signal.h>
+ #include <pthread.h>
++#include <cassert>
+
+ using namespace std;
+ using namespace gsmlib;
diff --git a/net-misc/gsmlib/gsmlib-1.10-r1.ebuild b/net-misc/gsmlib/gsmlib-1.10-r1.ebuild
new file mode 100644
index 000000000000..2417954dbe0e
--- /dev/null
+++ b/net-misc/gsmlib/gsmlib-1.10-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2004 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/gsmlib/gsmlib-1.10-r1.ebuild,v 1.1 2004/07/24 20:43:42 liquidx Exp $
+
+inherit eutils
+
+DESCRIPTION="Library and Applications to access GSM mobile phones"
+SRC_URI="http://www.pxh.de/fs/gsmlib/download/${P}.tar.gz"
+HOMEPAGE="http://www.pxh.de/fs/gsmlib/"
+
+DEPEND=""
+
+IUSE=""
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="~x86 ~ppc ~sparc"
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+
+ # Missing #include <cassert>
+ epatch ${FILESDIR}/${P}-include-fix.patch
+
+ # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=168475
+ epatch ${FILESDIR}/${P}-fd-leak-fix.patch
+}
+
+src_compile() {
+ econf || die
+ make || die
+}
+
+src_install () {
+ make DESTDIR=${D} install || die
+ dodoc AUTHORS NEWS README
+}