vici: Support non-Unix sockets for vici connections using Python
This commit is contained in:
@@ -11,10 +11,8 @@ class Transport(object):
|
|||||||
HEADER_LENGTH = 4
|
HEADER_LENGTH = 4
|
||||||
MAX_SEGMENT = 512 * 1024
|
MAX_SEGMENT = 512 * 1024
|
||||||
|
|
||||||
def __init__(self, address="/var/run/charon.vici"):
|
def __init__(self, sock):
|
||||||
self.address = address
|
self.socket = sock
|
||||||
self.socket = socket.socket(socket.AF_UNIX)
|
|
||||||
self.socket.connect(address)
|
|
||||||
|
|
||||||
def send(self, packet):
|
def send(self, packet):
|
||||||
self.socket.sendall(struct.pack("!I", len(packet)) + packet)
|
self.socket.sendall(struct.pack("!I", len(packet)) + packet)
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import collections
|
import collections
|
||||||
|
import socket
|
||||||
|
|
||||||
from .exception import SessionException
|
from .exception import SessionException
|
||||||
from .protocol import Transport, Packet, Message
|
from .protocol import Transport, Packet, Message
|
||||||
@@ -11,8 +12,11 @@ CommandResult = collections.namedtuple(
|
|||||||
|
|
||||||
|
|
||||||
class Session(object):
|
class Session(object):
|
||||||
def __init__(self, address="/var/run/charon.vici"):
|
def __init__(self, sock=None):
|
||||||
self.handler = SessionHandler(Transport(address))
|
if sock is None:
|
||||||
|
sock = socket.socket(socket.AF_UNIX)
|
||||||
|
sock.connect("/var/run/charon.vici")
|
||||||
|
self.handler = SessionHandler(Transport(sock))
|
||||||
|
|
||||||
def version(self):
|
def version(self):
|
||||||
"""Retrieve daemon and system specific version information.
|
"""Retrieve daemon and system specific version information.
|
||||||
|
|||||||
Reference in New Issue
Block a user