From 3c002cd989e3c8996226685aed88936892b554d4 Mon Sep 17 00:00:00 2001 From: Milan Zazrivec Date: Sep 23 2011 09:44:40 +0000 Subject: 670881 - IPv6 support for jabberpy (cherry picked from commit 7805663d9e7ca6ba15b480c9cc5c1407f63056bb) Conflicts: jabberpy.spec --- diff --git a/jabberpy-ipv6.patch b/jabberpy-ipv6.patch new file mode 100644 index 0000000..7b3e122 --- /dev/null +++ b/jabberpy-ipv6.patch @@ -0,0 +1,45 @@ +--- jabber/xmlstream.py 2011-04-07 11:13:18.000000000 +0200 ++++ jabber/xmlstream.py 2011-06-22 14:37:49.369669567 +0200 +@@ -458,13 +458,34 @@ + self._setupComms() + return + +- self._sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) +- try: +- if self._proxy: self._sock.connect((self._proxy['host'], self._proxy['port'])) +- else: self._sock.connect((self._hostIP, self._port)) +- except socket.error, e: +- self.DEBUG("socket error: "+str(e),DBG_CONN_ERROR) +- raise ++ if self._proxy: ++ results = socket.getaddrinfo(self._proxy['host'], ++ self._proxy['port'], socket.AF_UNSPEC, socket.SOCK_STREAM) ++ else: ++ results = socket.getaddrinfo(self._hostIP, self._port, ++ socket.AF_UNSPEC, socket.SOCK_STREAM) ++ ++ for r in results: ++ af, socktype, proto, canonname, sa = r ++ try: ++ self._sock = socket.socket(af, socktype, proto) ++ except socket.error, msg: ++ self._sock = None ++ continue ++ try: ++ if self._proxy: ++ self._sock.connect((self._proxy['host'], self._proxy['port'])) ++ else: ++ self._sock.connect((self._hostIP, self._port)) ++ except socket.error, e: ++ self._sock.close() ++ self._sock = None ++ self.DEBUG("socket error: "+str(e),DBG_CONN_ERROR) ++ continue ++ break ++ ++ if self._sock is None: ++ raise socket.error("Unable to connect to the host and port specified") + + if self._connection == TCP_SSL: + try: + diff --git a/jabberpy.spec b/jabberpy.spec index e7d26fe..87092bf 100644 --- a/jabberpy.spec +++ b/jabberpy.spec @@ -2,7 +2,7 @@ Name: jabberpy Version: 0.5 # Used like this because upstream releases like 0.5-0 -Release: 0.20%{?dist} +Release: 0.21%{?dist} Summary: Python xmlstream and jabber IM protocol libs Group: Development/Libraries @@ -11,6 +11,7 @@ URL: http://sourceforge.net/projects/jabberpy/ Source0: http://downloads.sf.net/sourceforge/%{name}/%{name}-%{version}-0.tar.gz Patch0: jabberpy-no-init.patch Patch1: jabberpy-clean-sockets.patch +Patch2: jabberpy-ipv6.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -29,6 +30,7 @@ based applications with Python. chmod -x examples/*.py %patch0 -p1 -b .no-init %patch1 -p1 -b .clean-sockets +%patch2 -p0 -b .ipv6 %build %{__python} setup.py build @@ -47,6 +49,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Sep 23 2011 Milan Zazrivec 0.5-0.21 +- 670881 - IPv6 support for jabberpy + * Fri Jul 24 2009 Fedora Release Engineering - 0.5-0.20 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild