def __init__(self): AgentThreadedBase.__init__(self) self._failures=[] ## can't really fail here self.socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) try: self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) ##The following doesn't work on Linux try: self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1) except: pass except: self._failures.append("Socket Options: REUSEADDR") try: self.socket.setsockopt(socket.SOL_IP, socket.IP_MULTICAST_TTL, 255) self.socket.setsockopt(socket.SOL_IP, socket.IP_MULTICAST_LOOP, 1) except: self._failures.append("Socket Options: Multicast") try: self.group = ('', _MDNS_PORT) self.socket.bind(self.group) except: # Some versions of linux raise an exception even though # the SO_REUSE* options have been set, so ignore it # pass self.socket.setsockopt(socket.SOL_IP, socket.IP_MULTICAST_IF, socket.inet_aton('0.0.0.0')) self.socket.setsockopt(socket.SOL_IP, socket.IP_ADD_MEMBERSHIP, socket.inet_aton(_MDNS_ADDR) + socket.inet_aton('0.0.0.0'))
def __init__(self): AgentThreadedBase.__init__(self) self._failures = [] ## can't really fail here self.socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) try: self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) ##The following doesn't work on Linux try: self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1) except: pass except: self._failures.append("Socket Options: REUSEADDR") try: self.socket.setsockopt(socket.SOL_IP, socket.IP_MULTICAST_TTL, 255) self.socket.setsockopt(socket.SOL_IP, socket.IP_MULTICAST_LOOP, 1) except: self._failures.append("Socket Options: Multicast") try: self.group = ('', _MDNS_PORT) self.socket.bind(self.group) except: # Some versions of linux raise an exception even though # the SO_REUSE* options have been set, so ignore it # pass self.socket.setsockopt(socket.SOL_IP, socket.IP_MULTICAST_IF, socket.inet_aton('0.0.0.0')) self.socket.setsockopt( socket.SOL_IP, socket.IP_ADD_MEMBERSHIP, socket.inet_aton(_MDNS_ADDR) + socket.inet_aton('0.0.0.0'))
def __init__(self): AgentThreadedBase.__init__(self) self.logged={}
def __init__(self): AgentThreadedBase.__init__(self)
def __init__(self): AgentThreadedBase.__init__(self) self.services={} self.addresses={} self.newEntry=False self.justAnnounced=[]
def __init__(self): AgentThreadedBase.__init__(self) self.num_agents_started = 0 self.num_agents_halted = 0
def __init__(self): AgentThreadedBase.__init__(self) self._generate()
def __init__(self): AgentThreadedBase.__init__(self) self.num_agents_started=0 self.num_agents_halted=0
def __init__(self): AgentThreadedBase.__init__(self) self.logged = {}