Mercurial > bitten > bitten-test
changeset 275:a111d7c72ad0
* Bump up version number.
* Use `SO_KEEPALIVE` to enable TCP-level pings for keeping the connection alive even if nothing is happening.
author | cmlenz |
---|---|
date | Sat, 08 Oct 2005 23:47:39 +0000 |
parents | 4b6abf75a930 |
children | 80645a15336b |
files | bitten/__init__.py bitten/util/beep.py |
diffstat | 2 files changed, 5 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/bitten/__init__.py +++ b/bitten/__init__.py @@ -7,4 +7,4 @@ # you should have received as part of this distribution. The terms # are also available at http://bitten.cmlenz.net/wiki/License. -__version__ = '0.5' +__version__ = '0.6'
--- a/bitten/util/beep.py +++ b/bitten/util/beep.py @@ -99,6 +99,7 @@ asyncore.dispatcher.__init__(self) self.create_socket(socket.AF_INET, socket.SOCK_STREAM) self.set_reuse_addr() + self.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1) self.bind((ip, port)) self.sessions = [] self.profiles = {} # Mapping from URIs to ProfileHandler sub-classes @@ -198,6 +199,9 @@ peer in the listening role, 1 for initiators """ asynchat.async_chat.__init__(self, conn) + if conn: + self.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1) + self.listener = listener self.addr = addr self.set_terminator('\r\n')