当前位置: 首页>>代码示例>>Python>>正文


Python socket.BTPROTO_L2CAP属性代码示例

本文整理汇总了Python中socket.BTPROTO_L2CAP属性的典型用法代码示例。如果您正苦于以下问题:Python socket.BTPROTO_L2CAP属性的具体用法?Python socket.BTPROTO_L2CAP怎么用?Python socket.BTPROTO_L2CAP使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在socket的用法示例。


在下文中一共展示了socket.BTPROTO_L2CAP属性的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: listen

# 需要导入模块: import socket [as 别名]
# 或者: from socket import BTPROTO_L2CAP [as 别名]
def listen(self):
		print("Waiting for connections")
		self.scontrol = socket.socket(
		    socket.AF_BLUETOOTH, socket.SOCK_SEQPACKET, socket.BTPROTO_L2CAP)  # BluetoothSocket(L2CAP)
		self.sinterrupt = socket.socket(
		    socket.AF_BLUETOOTH, socket.SOCK_SEQPACKET, socket.BTPROTO_L2CAP)  # BluetoothSocket(L2CAP)
		self.scontrol.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
		self.sinterrupt.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
		# bind these sockets to a port - port zero to select next available
		self.scontrol.bind((socket.BDADDR_ANY, self.P_CTRL))
		self.sinterrupt.bind((socket.BDADDR_ANY, self.P_INTR))

		# Start listening on the server sockets
		self.scontrol.listen(5)  # Limit of 1 connection
		self.sinterrupt.listen(5)

		self.ccontrol, cinfo = self.scontrol.accept()
		print ("Got a connection on the control channel from " + cinfo[0])

		self.cinterrupt, cinfo = self.sinterrupt.accept()
		print ("Got a connection on the interrupt channel from " + cinfo[0])

	# send a string to the bluetooth host machine 
开发者ID:quangthanh010290,项目名称:keyboard_mouse_emulate_on_raspberry,代码行数:25,代码来源:btk_server.py

示例2: __init__

# 需要导入模块: import socket [as 别名]
# 或者: from socket import BTPROTO_L2CAP [as 别名]
def __init__(self, peer):
        s = socket.socket(socket.AF_BLUETOOTH, socket.SOCK_RAW,
                          socket.BTPROTO_L2CAP)
        s.connect((peer,0))
        
        self.ins = self.outs = s 
开发者ID:medbenali,项目名称:CyberScan,代码行数:8,代码来源:bluetooth.py

示例3: __init__

# 需要导入模块: import socket [as 别名]
# 或者: from socket import BTPROTO_L2CAP [as 别名]
def __init__(self, bt_address):
        if WINDOWS:
            warning("Not available on Windows")
            return
        s = socket.socket(socket.AF_BLUETOOTH, socket.SOCK_RAW,
                          socket.BTPROTO_L2CAP)
        s.connect((bt_address, 0))
        self.ins = self.outs = s 
开发者ID:secdev,项目名称:scapy,代码行数:10,代码来源:bluetooth.py

示例4: l2cap_connect

# 需要导入模块: import socket [as 别名]
# 或者: from socket import BTPROTO_L2CAP [as 别名]
def l2cap_connect(dst, src=None, mtu=None):
    sock = socket.socket(socket.AF_BLUETOOTH, socket.SOCK_SEQPACKET, socket.BTPROTO_L2CAP)
    if src is not None:
        sock.bind(src)
    if mtu is not None:
        set_imtu(sock, mtu)
    sock.connect(dst)
    return sock 
开发者ID:ArmisSecurity,项目名称:blueborne,代码行数:10,代码来源:btsock.py

示例5: kernel_disconnect_workarounds

# 需要导入模块: import socket [as 别名]
# 或者: from socket import BTPROTO_L2CAP [as 别名]
def kernel_disconnect_workarounds(self, data):
        #print 'PRE KERNEL WORKAROUND %d' % len(data)
        
        def noop(value):
            return value
            
        if (sys.version_info > (3, 0)):
            ord = noop
        else:
            import __builtin__
            ord = __builtin__.ord
        
        if len(data) == 22 and [ord(elem) for elem in data[0:5]] == [0x04, 0x3e, 0x13, 0x01, 0x00]:
            handle = ord(data[5])
            # get address
            set = data[9:15]
            # get device info
            dev_info = self.get_device_info()
            raw_set = [ord(c) for c in set]
            raw_set.reverse()
            #addz = ''.join([hex(c) for c in set])
            #set.reverse()
            addz = "%02x:%02x:%02x:%02x:%02x:%02x" % struct.unpack("BBBBBB", array.array('B', raw_set))
            socket2 = BluetoothSocket(socket.AF_BLUETOOTH, socket.SOCK_SEQPACKET, socket.BTPROTO_L2CAP)
            
            socket2.bind_l2(0, dev_info['addr'], cid=ATT_CID, addr_type=0)#addr_type=dev_info['type'])
            
            self._l2sockets[handle] = socket2
            try:
                result = socket2.connect_l2(0, addz, cid=ATT_CID, addr_type=ord(data[8]) + 1)
            except:
                pass
        elif len(data) == 7 and [ord(elem) for elem in data[0:4]] == [0x04, 0x05, 0x04, 0x00]:
            handle = ord(data[4])
            
            socket2 = self._l2sockets[handle] if handle in self._l2sockets else None
            if socket2:
                # print 'GOT A SOCKET!'
                socket2.close()
                del self._l2sockets[handle] 
开发者ID:Adam-Langley,项目名称:pybleno,代码行数:42,代码来源:BluetoothHCI.py

示例6: _bind

# 需要导入模块: import socket [as 别名]
# 或者: from socket import BTPROTO_L2CAP [as 别名]
def _bind(self, sa):
        r = self.libc.bind(self.fileno(), self.libc.string(sa), len(sa))
        if r != 0:
            raise IOError(get_errno(), os.strerror(get_errno()))

    # bind to BTPROTO_L2CAP socket 
开发者ID:Adam-Langley,项目名称:pybleno,代码行数:8,代码来源:BluetoothSocket.py

示例7: _connect

# 需要导入模块: import socket [as 别名]
# 或者: from socket import BTPROTO_L2CAP [as 别名]
def _connect(self, sa):
        r = self.libc.connect(self.fileno(), self.libc.string(sa), len(sa))
        if r != 0:
            raise IOError(get_errno(), os.strerror(get_errno()))

    # connect to BTPROTO_L2CAP socket 
开发者ID:Adam-Langley,项目名称:pybleno,代码行数:8,代码来源:BluetoothSocket.py


注:本文中的socket.BTPROTO_L2CAP属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。