mirror of https://github.com/fail2ban/fail2ban
Fix up for client/server socket for python3
parent
6f4da8f3c4
commit
46a2b6e428
|
@ -29,11 +29,14 @@ __license__ = "GPL"
|
||||||
|
|
||||||
#from cPickle import dumps, loads, HIGHEST_PROTOCOL
|
#from cPickle import dumps, loads, HIGHEST_PROTOCOL
|
||||||
from pickle import dumps, loads, HIGHEST_PROTOCOL
|
from pickle import dumps, loads, HIGHEST_PROTOCOL
|
||||||
import socket
|
import socket, sys
|
||||||
|
|
||||||
class CSocket:
|
class CSocket:
|
||||||
|
|
||||||
END_STRING = "<F2B_END_COMMAND>"
|
if sys.version_info >= (3,):
|
||||||
|
END_STRING = b"<F2B_END_COMMAND>"
|
||||||
|
else:
|
||||||
|
END_STRING = "<F2B_END_COMMAND>"
|
||||||
|
|
||||||
def __init__(self, sock = "/var/run/fail2ban/fail2ban.sock"):
|
def __init__(self, sock = "/var/run/fail2ban/fail2ban.sock"):
|
||||||
# Create an INET, STREAMing socket
|
# Create an INET, STREAMing socket
|
||||||
|
@ -52,7 +55,10 @@ class CSocket:
|
||||||
|
|
||||||
#@staticmethod
|
#@staticmethod
|
||||||
def receive(sock):
|
def receive(sock):
|
||||||
msg = ''
|
if sys.version_info >= (3,):
|
||||||
|
msg = b''
|
||||||
|
else:
|
||||||
|
msg = ''
|
||||||
while msg.rfind(CSocket.END_STRING) == -1:
|
while msg.rfind(CSocket.END_STRING) == -1:
|
||||||
chunk = sock.recv(6)
|
chunk = sock.recv(6)
|
||||||
if chunk == '':
|
if chunk == '':
|
||||||
|
|
|
@ -42,7 +42,10 @@ logSys = logging.getLogger("fail2ban.server")
|
||||||
|
|
||||||
class RequestHandler(asynchat.async_chat):
|
class RequestHandler(asynchat.async_chat):
|
||||||
|
|
||||||
END_STRING = "<F2B_END_COMMAND>"
|
if sys.version_info >= (3,):
|
||||||
|
END_STRING = b"<F2B_END_COMMAND>"
|
||||||
|
else:
|
||||||
|
END_STRING = "<F2B_END_COMMAND>"
|
||||||
|
|
||||||
def __init__(self, conn, transmitter):
|
def __init__(self, conn, transmitter):
|
||||||
asynchat.async_chat.__init__(self, conn)
|
asynchat.async_chat.__init__(self, conn)
|
||||||
|
@ -62,7 +65,10 @@ class RequestHandler(asynchat.async_chat):
|
||||||
|
|
||||||
def found_terminator(self):
|
def found_terminator(self):
|
||||||
# Joins the buffer items.
|
# Joins the buffer items.
|
||||||
message = loads("".join(self.__buffer))
|
if sys.version_info >= (3,):
|
||||||
|
message = loads(b"".join(self.__buffer))
|
||||||
|
else:
|
||||||
|
message = loads("".join(self.__buffer))
|
||||||
# Gives the message to the transmitter.
|
# Gives the message to the transmitter.
|
||||||
message = self.__transmitter.proceed(message)
|
message = self.__transmitter.proceed(message)
|
||||||
# Serializes the response.
|
# Serializes the response.
|
||||||
|
|
Loading…
Reference in New Issue