コード例 #1
0
ファイル: comms.py プロジェクト: jldupont/mdns-browser
    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'))
コード例 #2
0
ファイル: comms.py プロジェクト: qmutz/mdns-browser
    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'))
コード例 #3
0
ファイル: listener.py プロジェクト: jldupont/mdns-browser
 def __init__(self):
     AgentThreadedBase.__init__(self)
     self.logged={}
コード例 #4
0
 def __init__(self):
     AgentThreadedBase.__init__(self)
コード例 #5
0
 def __init__(self):
     AgentThreadedBase.__init__(self)
     self.services={}
     self.addresses={}
     self.newEntry=False
     self.justAnnounced=[]
コード例 #6
0
ファイル: sup.py プロジェクト: qmutz/mdns-browser
 def __init__(self):
     AgentThreadedBase.__init__(self)
     self.num_agents_started = 0
     self.num_agents_halted = 0
コード例 #7
0
 def __init__(self):
     AgentThreadedBase.__init__(self)
     self._generate()
コード例 #8
0
ファイル: debug.py プロジェクト: jldupont/mdns-browser
 def __init__(self):
     AgentThreadedBase.__init__(self)
コード例 #9
0
ファイル: querier.py プロジェクト: jldupont/mdns-browser
 def __init__(self):
     AgentThreadedBase.__init__(self)
     self._generate()
コード例 #10
0
ファイル: sup.py プロジェクト: jldupont/mdns-browser
 def __init__(self):
     AgentThreadedBase.__init__(self)
     self.num_agents_started=0
     self.num_agents_halted=0
コード例 #11
0
ファイル: listener.py プロジェクト: qmutz/mdns-browser
 def __init__(self):
     AgentThreadedBase.__init__(self)
     self.logged = {}