[sgala] IPV6 support for connection fith server. see #1969
This commit is contained in:
parent
e8145b8b31
commit
a37b946098
|
@ -1,8 +1,9 @@
|
|||
Gajim 0.11 (XX October 2006)
|
||||
Gajim 0.11 (XX December 2006)
|
||||
* New build system, using GNU autotools. See README.html
|
||||
* Support for link-local messaging via Zeroconf using Avahi (XEP-0174)
|
||||
* Automatically connect and disconnect to accounts according to network availability (if Network Manager is present)
|
||||
* GNOME Keyring Support (if GNOME keyring is available, manage passwords and save them in an encrypted file).
|
||||
* IPV6 support to connect to server
|
||||
* GNOME Keyring Support (if GNOME keyring is available, manage passwords and save them in an encrypted file)
|
||||
* Introducing View Menu (GNOME HIG)
|
||||
* Ability to now hide the Transports group
|
||||
* Support for notify-python. So if notification-daemon is not available, we still can show cool popups
|
||||
|
@ -33,8 +34,8 @@ Gajim 0.11 (XX October 2006)
|
|||
* Fixed bugs when removing or renaming an account with tabs open (#2369 and #2370)
|
||||
* New translations: Croatian, Esperanto
|
||||
|
||||
* FIXME : Ad-Hoc for 0.11 ?
|
||||
* FIXME : does that work ? not tested : Metacontacts across accounts (#1596)
|
||||
* Ad-Hoc commands
|
||||
* Metacontacts across accounts (#1596)
|
||||
* Gajim now requires Python 2.4 to run
|
||||
|
||||
Gajim 0.10.1 (06 June 2006)
|
||||
|
|
|
@ -95,13 +95,17 @@ class TCPsocket(PlugIn):
|
|||
def connect(self,server=None):
|
||||
""" Try to connect. Returns non-empty string on success. """
|
||||
try:
|
||||
if not server: server=self._server
|
||||
self._sock=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
self._sock.connect(server)
|
||||
self._send=self._sock.sendall
|
||||
self._recv=self._sock.recv
|
||||
self.DEBUG("Successfully connected to remote host %s"%`server`,'start')
|
||||
return 'ok'
|
||||
if not server:
|
||||
server=self._server
|
||||
for ai in socket.getaddrinfo(server[0],server[1],socket.AF_UNSPEC,socket.SOCK_STREAM):
|
||||
try:
|
||||
self._sock=socket.socket(*ai[:3])
|
||||
self._sock.connect(ai[4])
|
||||
self._send=self._sock.sendall
|
||||
self._recv=self._sock.recv
|
||||
self.DEBUG("Successfully connected to remote host %s"%`server`,'start')
|
||||
return 'ok'
|
||||
except: continue
|
||||
except: pass
|
||||
|
||||
def plugout(self):
|
||||
|
|
|
@ -106,8 +106,17 @@ class NonBlockingTcp(PlugIn, IdleObject):
|
|||
self._server = server
|
||||
self.state = 0
|
||||
try:
|
||||
self._sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
self._sock.setblocking(False)
|
||||
for ai in socket.getaddrinfo(server[0],server[1],socket.AF_UNSPEC,socket.SOCK_STREAM):
|
||||
try:
|
||||
self._sock=socket.socket(*ai[:3])
|
||||
self._sock.setblocking(False)
|
||||
self._server=ai[4]
|
||||
break
|
||||
except:
|
||||
if sys.exc_value[0] == errno.EINPROGRESS:
|
||||
break
|
||||
#for all errors, we try other addresses
|
||||
continue
|
||||
except:
|
||||
sys.exc_clear()
|
||||
if self.on_connect_failure:
|
||||
|
|
Loading…
Reference in New Issue