scapy.layers.bluetooth4LE

Bluetooth 4LE layer

class scapy.layers.bluetooth4LE.BDAddrField(name, default, resolve=False)[source]

Bases: MACField

i2m(pkt, x)[source]
m2i(pkt, x)[source]
class scapy.layers.bluetooth4LE.BTLE(_pkt, /, *, access_addr=2391391958, crc=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE'>, <class 'scapy.packet.Packet'>]
static compute_crc(pdu, init=5592405)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XLEIntField (BTLE).access_addr>, <X3BytesField (BTLE).crc>]
hashret()[source]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({'access_addr': 2391391958}, <class 'scapy.layers.bluetooth4LE.BTLE_ADV'>), ({}, <class 'scapy.layers.bluetooth4LE.BTLE_DATA'>)]
post_build(p, pay)[source]
post_dissect(s)[source]
pre_dissect(s)[source]
class scapy.layers.bluetooth4LE.BTLEChanMapField(name, default)[source]

Bases: XByteField

addfield(pkt, s, val)[source]
getfield(pkt, s)[source]
class scapy.layers.bluetooth4LE.BTLEFeatureField(name, default)[source]

Bases: FlagsField

class scapy.layers.bluetooth4LE.BTLEPhysField(name, default)[source]

Bases: FlagsField

class scapy.layers.bluetooth4LE.BTLE_ADV(_pkt, /, *, RxAdd=0, TxAdd=0, ChSel=0, RFU=0, PDU_type=0, Length=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_ADV'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BitEnumField (BTLE_ADV).RxAdd>, <BitEnumField (BTLE_ADV).TxAdd>, <BitEnumField (BTLE_ADV).ChSel>, <BitField (BTLE_ADV).RFU>, <BitEnumField (BTLE_ADV).PDU_type>, <XByteField (BTLE_ADV).Length>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({'PDU_type': 0}, <class 'scapy.layers.bluetooth4LE.BTLE_ADV_IND'>), ({'PDU_type': 1}, <class 'scapy.layers.bluetooth4LE.BTLE_ADV_DIRECT_IND'>), ({'PDU_type': 2}, <class 'scapy.layers.bluetooth4LE.BTLE_ADV_NONCONN_IND'>), ({'PDU_type': 3}, <class 'scapy.layers.bluetooth4LE.BTLE_SCAN_REQ'>), ({'PDU_type': 4}, <class 'scapy.layers.bluetooth4LE.BTLE_SCAN_RSP'>), ({'PDU_type': 5}, <class 'scapy.layers.bluetooth4LE.BTLE_CONNECT_REQ'>), ({'PDU_type': 6}, <class 'scapy.layers.bluetooth4LE.BTLE_ADV_SCAN_IND'>)]
post_build(p, pay)[source]
class scapy.layers.bluetooth4LE.BTLE_ADV_DIRECT_IND(_pkt, /, *, AdvA=None, InitA=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_ADV_DIRECT_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BDAddrField (BTLE_ADV_DIRECT_IND).AdvA>, <BDAddrField (BTLE_ADV_DIRECT_IND).InitA>]
class scapy.layers.bluetooth4LE.BTLE_ADV_IND(_pkt, /, *, AdvA=None, data=[])[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_ADV_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BDAddrField (BTLE_ADV_IND,BTLE_ADV_NONCONN_IND,BTLE_ADV_SCAN_IND).AdvA>, <PacketListField (BTLE_ADV_IND,BTLE_ADV_NONCONN_IND,BTLE_ADV_SCAN_IND).data>]
class scapy.layers.bluetooth4LE.BTLE_ADV_NONCONN_IND(_pkt, /, *, AdvA=None, data=[])[source]

Bases: BTLE_ADV_IND

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_ADV_NONCONN_IND'>, <class 'scapy.layers.bluetooth4LE.BTLE_ADV_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BDAddrField (BTLE_ADV_IND,BTLE_ADV_NONCONN_IND,BTLE_ADV_SCAN_IND).AdvA>, <PacketListField (BTLE_ADV_IND,BTLE_ADV_NONCONN_IND,BTLE_ADV_SCAN_IND).data>]
class scapy.layers.bluetooth4LE.BTLE_ADV_SCAN_IND(_pkt, /, *, AdvA=None, data=[])[source]

Bases: BTLE_ADV_IND

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_ADV_SCAN_IND'>, <class 'scapy.layers.bluetooth4LE.BTLE_ADV_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BDAddrField (BTLE_ADV_IND,BTLE_ADV_NONCONN_IND,BTLE_ADV_SCAN_IND).AdvA>, <PacketListField (BTLE_ADV_IND,BTLE_ADV_NONCONN_IND,BTLE_ADV_SCAN_IND).data>]
class scapy.layers.bluetooth4LE.BTLE_CONNECT_REQ(_pkt, /, *, InitA=None, AdvA=None, AA=0, crc_init=0, win_size=0, win_offset=0, interval=0, latency=0, timeout=0, chM=0, SCA=0, hop=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_CONNECT_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BDAddrField (BTLE_CONNECT_REQ).InitA>, <BDAddrField (BTLE_CONNECT_REQ).AdvA>, <XIntField (BTLE_CONNECT_REQ).AA>, <X3BytesField (BTLE_CONNECT_REQ).crc_init>, <XByteField (BTLE_CONNECT_REQ).win_size>, <XLEShortField (BTLE_CONNECT_REQ).win_offset>, <XLEShortField (BTLE_CONNECT_REQ).interval>, <XLEShortField (BTLE_CONNECT_REQ).latency>, <XLEShortField (BTLE_CONNECT_REQ).timeout>, <BTLEChanMapField (BTLE_CONNECT_REQ).chM>, <BitField (BTLE_CONNECT_REQ).SCA>, <BitField (BTLE_CONNECT_REQ).hop>]
class scapy.layers.bluetooth4LE.BTLE_CTRL(_pkt, /, *, opcode=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_CTRL'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (BTLE_CTRL).opcode>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({'opcode': 0}, <class 'scapy.layers.bluetooth4LE.LL_CONNECTION_UPDATE_IND'>), ({'opcode': 1}, <class 'scapy.layers.bluetooth4LE.LL_CHANNEL_MAP_IND'>), ({'opcode': 2}, <class 'scapy.layers.bluetooth4LE.LL_TERMINATE_IND'>), ({'opcode': 3}, <class 'scapy.layers.bluetooth4LE.LL_ENC_REQ'>), ({'opcode': 4}, <class 'scapy.layers.bluetooth4LE.LL_ENC_RSP'>), ({'opcode': 5}, <class 'scapy.layers.bluetooth4LE.LL_START_ENC_REQ'>), ({'opcode': 6}, <class 'scapy.layers.bluetooth4LE.LL_START_ENC_RSP'>), ({'opcode': 7}, <class 'scapy.layers.bluetooth4LE.LL_UNKNOWN_RSP'>), ({'opcode': 8}, <class 'scapy.layers.bluetooth4LE.LL_FEATURE_REQ'>), ({'opcode': 9}, <class 'scapy.layers.bluetooth4LE.LL_FEATURE_RSP'>), ({'opcode': 10}, <class 'scapy.layers.bluetooth4LE.LL_PAUSE_ENC_REQ'>), ({'opcode': 11}, <class 'scapy.layers.bluetooth4LE.LL_PAUSE_ENC_RSP'>), ({'opcode': 12}, <class 'scapy.layers.bluetooth4LE.LL_VERSION_IND'>), ({'opcode': 13}, <class 'scapy.layers.bluetooth4LE.LL_REJECT_IND'>), ({'opcode': 14}, <class 'scapy.layers.bluetooth4LE.LL_SLAVE_FEATURE_REQ'>), ({'opcode': 15}, <class 'scapy.layers.bluetooth4LE.LL_CONNECTION_PARAM_REQ'>), ({'opcode': 16}, <class 'scapy.layers.bluetooth4LE.LL_CONNECTION_PARAM_RSP'>), ({'opcode': 17}, <class 'scapy.layers.bluetooth4LE.LL_REJECT_EXT_IND'>), ({'opcode': 18}, <class 'scapy.layers.bluetooth4LE.LL_PING_REQ'>), ({'opcode': 19}, <class 'scapy.layers.bluetooth4LE.LL_PING_RSP'>), ({'opcode': 20}, <class 'scapy.layers.bluetooth4LE.LL_LENGTH_REQ'>), ({'opcode': 21}, <class 'scapy.layers.bluetooth4LE.LL_LENGTH_RSP'>), ({'opcode': 22}, <class 'scapy.layers.bluetooth4LE.LL_PHY_REQ'>), ({'opcode': 23}, <class 'scapy.layers.bluetooth4LE.LL_PHY_RSP'>), ({'opcode': 24}, <class 'scapy.layers.bluetooth4LE.LL_PHY_UPDATE_IND'>), ({'opcode': 25}, <class 'scapy.layers.bluetooth4LE.LL_MIN_USED_CHANNELS_IND'>), ({'opcode': 26}, <class 'scapy.layers.bluetooth4LE.LL_CTE_REQ'>), ({'opcode': 27}, <class 'scapy.layers.bluetooth4LE.LL_CTE_RSP'>), ({'opcode': 28}, <class 'scapy.layers.bluetooth4LE.LL_PERIODIC_SYNC_IND'>), ({'opcode': 29}, <class 'scapy.layers.bluetooth4LE.LL_CLOCK_ACCURACY_REQ'>), ({'opcode': 30}, <class 'scapy.layers.bluetooth4LE.LL_CLOCK_ACCURACY_RSP'>), ({'opcode': 31}, <class 'scapy.layers.bluetooth4LE.LL_CIS_REQ'>), ({'opcode': 32}, <class 'scapy.layers.bluetooth4LE.LL_CIS_RSP'>), ({'opcode': 33}, <class 'scapy.layers.bluetooth4LE.LL_CIS_IND'>), ({'opcode': 34}, <class 'scapy.layers.bluetooth4LE.LL_CIS_TERMINATE_IND'>), ({'opcode': 35}, <class 'scapy.layers.bluetooth4LE.LL_POWER_CONTROL_REQ'>), ({'opcode': 36}, <class 'scapy.layers.bluetooth4LE.LL_POWER_CONTROL_RSP'>), ({'opcode': 37}, <class 'scapy.layers.bluetooth4LE.LL_POWER_CHANGE_IND'>), ({'opcode': 38}, <class 'scapy.layers.bluetooth4LE.LL_SUBRATE_REQ'>), ({'opcode': 39}, <class 'scapy.layers.bluetooth4LE.LL_SUBRATE_IND'>), ({'opcode': 40}, <class 'scapy.layers.bluetooth4LE.LL_CHANNEL_REPORTING_IND'>), ({'opcode': 41}, <class 'scapy.layers.bluetooth4LE.LL_CHANNEL_STATUS_IND'>)]
class scapy.layers.bluetooth4LE.BTLE_DATA(_pkt, /, *, RFU=0, MD=0, SN=0, NESN=0, LLID=0, len=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_DATA'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BitField (BTLE_DATA).RFU>, <BitField (BTLE_DATA).MD>, <BitField (BTLE_DATA).SN>, <BitField (BTLE_DATA).NESN>, <BitEnumField (BTLE_DATA).LLID>, <ByteField (BTLE_DATA).len>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({'LLID': 2}, <class 'scapy.layers.bluetooth.L2CAP_Hdr'>), ({'LLID': 3}, <class 'scapy.layers.bluetooth4LE.BTLE_CTRL'>), ({'LLID': 1, 'len': 0}, <class 'scapy.layers.bluetooth4LE.BTLE_EMPTY_PDU'>)]
post_build(p, pay)[source]
class scapy.layers.bluetooth4LE.BTLE_EMPTY_PDU(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_EMPTY_PDU'>, <class 'scapy.packet.Packet'>]
class scapy.layers.bluetooth4LE.BTLE_PPI(_pkt, /, *, btle_version=0, btle_channel=None, btle_clkn_high=None, btle_clk_100ns=None, rssi_max=None, rssi_min=None, rssi_avg=None, rssi_count=None)[source]

Bases: PPI_Element

Cooked BTLE PPI header

See ppi_btle_t in https://github.com/greatscottgadgets/libbtbb/blob/master/lib/src/pcap.c

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_PPI'>, <class 'scapy.layers.ppi.PPI_Element'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (BTLE_PPI).btle_version>, <LEShortField (BTLE_PPI).btle_channel>, <ByteField (BTLE_PPI).btle_clkn_high>, <LEIntField (BTLE_PPI).btle_clk_100ns>, <SignedByteField (BTLE_PPI).rssi_max>, <SignedByteField (BTLE_PPI).rssi_min>, <SignedByteField (BTLE_PPI).rssi_avg>, <ByteField (BTLE_PPI).rssi_count>]
class scapy.layers.bluetooth4LE.BTLE_RF(_pkt, /, *, rf_channel=0, signal=-128, noise=-128, access_address_offenses=0, reference_access_address=0, dewhitened=0, sig_power_valid=0, noise_power_valid=0, decrypted=0, reference_access_address_valid=0, access_address_offenses_valid=0, channel_aliased=0, type=0, crc_checked=0, crc_valid=0, mic_checked=0, mic_valid=0, phy=0)[source]

Bases: Packet

Cooked BTLE link-layer pseudoheader.

https://www.tcpdump.org/linktypes/LINKTYPE_BLUETOOTH_LE_LL_WITH_PHDR.html

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_RF'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (BTLE_RF).rf_channel>, <SignedByteField (BTLE_RF).signal>, <SignedByteField (BTLE_RF).noise>, <ByteField (BTLE_RF).access_address_offenses>, <XLEIntField (BTLE_RF).reference_access_address>, <LEBitField (BTLE_RF).dewhitened>, <LEBitField (BTLE_RF).sig_power_valid>, <LEBitField (BTLE_RF).noise_power_valid>, <LEBitField (BTLE_RF).decrypted>, <LEBitField (BTLE_RF).reference_access_address_valid>, <LEBitField (BTLE_RF).access_address_offenses_valid>, <LEBitField (BTLE_RF).channel_aliased>, <LEBitEnumField (BTLE_RF).type>, <LEBitField (BTLE_RF).crc_checked>, <LEBitField (BTLE_RF).crc_valid>, <LEBitField (BTLE_RF).mic_checked>, <LEBitField (BTLE_RF).mic_valid>, <LEBitEnumField (BTLE_RF).phy>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.layers.bluetooth4LE.BTLE'>)]
class scapy.layers.bluetooth4LE.BTLE_SCAN_REQ(_pkt, /, *, ScanA=None, AdvA=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_SCAN_REQ'>, <class 'scapy.packet.Packet'>]
answers(other)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BDAddrField (BTLE_SCAN_REQ).ScanA>, <BDAddrField (BTLE_SCAN_REQ).AdvA>]
class scapy.layers.bluetooth4LE.BTLE_SCAN_RSP(_pkt, /, *, AdvA=None, data=[])[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.BTLE_SCAN_RSP'>, <class 'scapy.packet.Packet'>]
answers(other)[source]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BDAddrField (BTLE_SCAN_RSP).AdvA>, <PacketListField (BTLE_SCAN_RSP).data>]
class scapy.layers.bluetooth4LE.LL_CHANNEL_MAP_IND(_pkt, /, *, chM=1099511627774, instant=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CHANNEL_MAP_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BTLEChanMapField (LL_CHANNEL_MAP_IND).chM>, <XLEShortField (LL_CHANNEL_MAP_IND).instant>]
class scapy.layers.bluetooth4LE.LL_CHANNEL_REPORTING_IND(_pkt, /, *, enable=0, min_spacing=0, max_delay=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CHANNEL_REPORTING_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (LL_CHANNEL_REPORTING_IND).enable>, <ByteField (LL_CHANNEL_REPORTING_IND).min_spacing>, <ByteField (LL_CHANNEL_REPORTING_IND).max_delay>]
class scapy.layers.bluetooth4LE.LL_CHANNEL_STATUS_IND(_pkt, /, *, channel_classification=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CHANNEL_STATUS_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<LEBitField (LL_CHANNEL_STATUS_IND).channel_classification>]
class scapy.layers.bluetooth4LE.LL_CIS_IND(_pkt, /, *, AA=0, cis_offset=0, cig_sync_delay=0, cis_sync_delay=0, conn_event_count=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CIS_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XIntField (LL_CIS_IND).AA>, <X3BytesField (LL_CIS_IND).cis_offset>, <X3BytesField (LL_CIS_IND).cig_sync_delay>, <X3BytesField (LL_CIS_IND).cis_sync_delay>, <XLEShortField (LL_CIS_IND).conn_event_count>]
class scapy.layers.bluetooth4LE.LL_CIS_REQ(_pkt, /, *, cig_id=0, cis_id=0, phy_c_to_p=<Flag 0 ()>, phy_p_to_c=<Flag 0 ()>, max_sdu_c_to_p=0, rfu1=0, framed=0, max_sdu_p_to_c=0, rfu2=0, sdu_interval_c_to_p=0, rfu3=0, sdu_interval_p_to_c=0, rfu4=0, max_pdu_c_to_p=0, max_pdu_p_to_c=0, nse=0, subinterval=0, bn_c_to_p=0, bn_p_to_c=0, ft_c_to_p=0, ft_p_to_c=0, iso_interval=0, cis_offset_min=0, cis_offset_max=0, conn_event_count=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CIS_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XByteField (LL_CIS_REQ).cig_id>, <XByteField (LL_CIS_REQ).cis_id>, <BTLEPhysField (LL_CIS_REQ).phy_c_to_p>, <BTLEPhysField (LL_CIS_REQ).phy_p_to_c>, <LEBitField (LL_CIS_REQ).max_sdu_c_to_p>, <LEBitField (LL_CIS_REQ).rfu1>, <LEBitField (LL_CIS_REQ).framed>, <LEBitField (LL_CIS_REQ).max_sdu_p_to_c>, <LEBitField (LL_CIS_REQ).rfu2>, <LEBitField (LL_CIS_REQ).sdu_interval_c_to_p>, <LEBitField (LL_CIS_REQ).rfu3>, <LEBitField (LL_CIS_REQ).sdu_interval_p_to_c>, <LEBitField (LL_CIS_REQ).rfu4>, <XLEShortField (LL_CIS_REQ).max_pdu_c_to_p>, <XLEShortField (LL_CIS_REQ).max_pdu_p_to_c>, <XByteField (LL_CIS_REQ).nse>, <X3BytesField (LL_CIS_REQ).subinterval>, <LEBitField (LL_CIS_REQ).bn_c_to_p>, <LEBitField (LL_CIS_REQ).bn_p_to_c>, <ByteField (LL_CIS_REQ).ft_c_to_p>, <ByteField (LL_CIS_REQ).ft_p_to_c>, <XLEShortField (LL_CIS_REQ).iso_interval>, <X3BytesField (LL_CIS_REQ).cis_offset_min>, <X3BytesField (LL_CIS_REQ).cis_offset_max>, <XLEShortField (LL_CIS_REQ).conn_event_count>]
class scapy.layers.bluetooth4LE.LL_CIS_RSP(_pkt, /, *, cis_offset_min=0, cis_offset_max=0, conn_event_count=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CIS_RSP'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<X3BytesField (LL_CIS_RSP).cis_offset_min>, <X3BytesField (LL_CIS_RSP).cis_offset_max>, <XLEShortField (LL_CIS_RSP).conn_event_count>]
class scapy.layers.bluetooth4LE.LL_CIS_TERMINATE_IND(_pkt, /, *, cig_id=0, cis_id=0, error_code=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CIS_TERMINATE_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (LL_CIS_TERMINATE_IND).cig_id>, <ByteField (LL_CIS_TERMINATE_IND).cis_id>, <ByteField (LL_CIS_TERMINATE_IND).error_code>]
class scapy.layers.bluetooth4LE.LL_CLOCK_ACCURACY_REQ(_pkt, /, *, sca=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CLOCK_ACCURACY_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XByteField (LL_CLOCK_ACCURACY_REQ).sca>]
class scapy.layers.bluetooth4LE.LL_CLOCK_ACCURACY_RSP(_pkt, /, *, sca=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CLOCK_ACCURACY_RSP'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XByteField (LL_CLOCK_ACCURACY_RSP).sca>]
class scapy.layers.bluetooth4LE.LL_CONNECTION_PARAM_REQ(_pkt, /, *, interval_min=6, interval_max=6, latency=0, timeout=0, preferred_periodicity=0, reference_conn_evt_count=0, offset0=0, offset1=0, offset2=0, offset3=0, offset4=0, offset5=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CONNECTION_PARAM_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XShortField (LL_CONNECTION_PARAM_REQ).interval_min>, <XShortField (LL_CONNECTION_PARAM_REQ).interval_max>, <XShortField (LL_CONNECTION_PARAM_REQ).latency>, <XShortField (LL_CONNECTION_PARAM_REQ).timeout>, <XByteField (LL_CONNECTION_PARAM_REQ).preferred_periodicity>, <XShortField (LL_CONNECTION_PARAM_REQ).reference_conn_evt_count>, <XShortField (LL_CONNECTION_PARAM_REQ).offset0>, <XShortField (LL_CONNECTION_PARAM_REQ).offset1>, <XShortField (LL_CONNECTION_PARAM_REQ).offset2>, <XShortField (LL_CONNECTION_PARAM_REQ).offset3>, <XShortField (LL_CONNECTION_PARAM_REQ).offset4>, <XShortField (LL_CONNECTION_PARAM_REQ).offset5>]
class scapy.layers.bluetooth4LE.LL_CONNECTION_PARAM_RSP(_pkt, /, *, interval_min=6, interval_max=6, latency=0, timeout=0, preferred_periodicity=0, reference_conn_evt_count=0, offset0=0, offset1=0, offset2=0, offset3=0, offset4=0, offset5=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CONNECTION_PARAM_RSP'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XShortField (LL_CONNECTION_PARAM_RSP).interval_min>, <XShortField (LL_CONNECTION_PARAM_RSP).interval_max>, <XShortField (LL_CONNECTION_PARAM_RSP).latency>, <XShortField (LL_CONNECTION_PARAM_RSP).timeout>, <XByteField (LL_CONNECTION_PARAM_RSP).preferred_periodicity>, <XShortField (LL_CONNECTION_PARAM_RSP).reference_conn_evt_count>, <XShortField (LL_CONNECTION_PARAM_RSP).offset0>, <XShortField (LL_CONNECTION_PARAM_RSP).offset1>, <XShortField (LL_CONNECTION_PARAM_RSP).offset2>, <XShortField (LL_CONNECTION_PARAM_RSP).offset3>, <XShortField (LL_CONNECTION_PARAM_RSP).offset4>, <XShortField (LL_CONNECTION_PARAM_RSP).offset5>]
class scapy.layers.bluetooth4LE.LL_CONNECTION_UPDATE_IND(_pkt, /, *, win_size=0, win_offset=0, interval=6, latency=0, timeout=50, instant=6)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CONNECTION_UPDATE_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XByteField (LL_CONNECTION_UPDATE_IND).win_size>, <XLEShortField (LL_CONNECTION_UPDATE_IND).win_offset>, <XLEShortField (LL_CONNECTION_UPDATE_IND).interval>, <XLEShortField (LL_CONNECTION_UPDATE_IND).latency>, <XLEShortField (LL_CONNECTION_UPDATE_IND).timeout>, <XLEShortField (LL_CONNECTION_UPDATE_IND).instant>]
class scapy.layers.bluetooth4LE.LL_CTE_REQ(_pkt, /, *, min_cte_len_req=0, rfu=0, cte_type_req=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CTE_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<LEBitField (LL_CTE_REQ).min_cte_len_req>, <LEBitField (LL_CTE_REQ).rfu>, <LEBitField (LL_CTE_REQ).cte_type_req>]
class scapy.layers.bluetooth4LE.LL_CTE_RSP(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_CTE_RSP'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = []
class scapy.layers.bluetooth4LE.LL_ENC_REQ(_pkt, /, *, rand=0, ediv=0, skdm=0, ivm=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_ENC_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XLELongField (LL_ENC_REQ).rand>, <XLEShortField (LL_ENC_REQ).ediv>, <XLELongField (LL_ENC_REQ).skdm>, <XLEIntField (LL_ENC_REQ).ivm>]
class scapy.layers.bluetooth4LE.LL_ENC_RSP(_pkt, /, *, skds=0, ivs=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_ENC_RSP'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XLELongField (LL_ENC_RSP).skds>, <XLEIntField (LL_ENC_RSP).ivs>]
class scapy.layers.bluetooth4LE.LL_FEATURE_REQ(_pkt, /, *, feature_set=<Flag 0 ()>)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_FEATURE_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BTLEFeatureField (LL_FEATURE_REQ).feature_set>]
class scapy.layers.bluetooth4LE.LL_FEATURE_RSP(_pkt, /, *, feature_set=<Flag 0 ()>)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_FEATURE_RSP'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BTLEFeatureField (LL_FEATURE_RSP).feature_set>]
class scapy.layers.bluetooth4LE.LL_LENGTH_REQ(_pkt, /, *, max_rx_bytes=251, max_rx_time=2120, max_tx_bytes=251, max_tx_time=2120)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_LENGTH_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XLEShortField (LL_LENGTH_REQ).max_rx_bytes>, <XLEShortField (LL_LENGTH_REQ).max_rx_time>, <XLEShortField (LL_LENGTH_REQ).max_tx_bytes>, <XLEShortField (LL_LENGTH_REQ).max_tx_time>]
class scapy.layers.bluetooth4LE.LL_LENGTH_RSP(_pkt, /, *, max_rx_bytes=251, max_rx_time=2120, max_tx_bytes=251, max_tx_time=2120)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_LENGTH_RSP'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XLEShortField (LL_LENGTH_RSP).max_rx_bytes>, <XLEShortField (LL_LENGTH_RSP).max_rx_time>, <XLEShortField (LL_LENGTH_RSP).max_tx_bytes>, <XLEShortField (LL_LENGTH_RSP).max_tx_time>]
class scapy.layers.bluetooth4LE.LL_MIN_USED_CHANNELS_IND(_pkt, /, *, phys=<Flag 0 ()>, min_used_channels=2)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_MIN_USED_CHANNELS_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BTLEPhysField (LL_MIN_USED_CHANNELS_IND).phys>, <ByteField (LL_MIN_USED_CHANNELS_IND).min_used_channels>]
class scapy.layers.bluetooth4LE.LL_PAUSE_ENC_REQ(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_PAUSE_ENC_REQ'>, <class 'scapy.packet.Packet'>]
class scapy.layers.bluetooth4LE.LL_PAUSE_ENC_RSP(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_PAUSE_ENC_RSP'>, <class 'scapy.packet.Packet'>]
class scapy.layers.bluetooth4LE.LL_PERIODIC_SYNC_IND(_pkt, /, *, id=251, sync_info=0, conn_event_count=0, last_pa_event_counter=0, sid=0, a_type=0, sca=0, phy=<Flag 0 ()>, AdvA=None, sync_conn_event_count=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_PERIODIC_SYNC_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XLEShortField (LL_PERIODIC_SYNC_IND).id>, <LEBitField (LL_PERIODIC_SYNC_IND).sync_info>, <XLEShortField (LL_PERIODIC_SYNC_IND).conn_event_count>, <XLEShortField (LL_PERIODIC_SYNC_IND).last_pa_event_counter>, <LEBitField (LL_PERIODIC_SYNC_IND).sid>, <LEBitField (LL_PERIODIC_SYNC_IND).a_type>, <LEBitField (LL_PERIODIC_SYNC_IND).sca>, <BTLEPhysField (LL_PERIODIC_SYNC_IND).phy>, <BDAddrField (LL_PERIODIC_SYNC_IND).AdvA>, <XLEShortField (LL_PERIODIC_SYNC_IND).sync_conn_event_count>]
class scapy.layers.bluetooth4LE.LL_PHY_REQ(_pkt, /, *, tx_phys=<Flag 0 ()>, rx_phys=<Flag 0 ()>)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_PHY_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BTLEPhysField (LL_PHY_REQ).tx_phys>, <BTLEPhysField (LL_PHY_REQ).rx_phys>]
class scapy.layers.bluetooth4LE.LL_PHY_RSP(_pkt, /, *, tx_phys=<Flag 0 ()>, rx_phys=<Flag 0 ()>)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_PHY_RSP'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BTLEPhysField (LL_PHY_RSP).tx_phys>, <BTLEPhysField (LL_PHY_RSP).rx_phys>]
class scapy.layers.bluetooth4LE.LL_PHY_UPDATE_IND(_pkt, /, *, tx_phy=<Flag 0 ()>, rx_phy=<Flag 0 ()>, instant=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_PHY_UPDATE_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BTLEPhysField (LL_PHY_UPDATE_IND).tx_phy>, <BTLEPhysField (LL_PHY_UPDATE_IND).rx_phy>, <XShortField (LL_PHY_UPDATE_IND).instant>]
class scapy.layers.bluetooth4LE.LL_PING_REQ(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_PING_REQ'>, <class 'scapy.packet.Packet'>]
class scapy.layers.bluetooth4LE.LL_PING_RSP(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_PING_RSP'>, <class 'scapy.packet.Packet'>]
class scapy.layers.bluetooth4LE.LL_POWER_CHANGE_IND(_pkt, /, *, phy=0, min=0, max=0, rfu=0, delta=0, tx_power=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_POWER_CHANGE_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (LL_POWER_CHANGE_IND).phy>, <LEBitField (LL_POWER_CHANGE_IND).min>, <LEBitField (LL_POWER_CHANGE_IND).max>, <LEBitField (LL_POWER_CHANGE_IND).rfu>, <SignedByteField (LL_POWER_CHANGE_IND).delta>, <ByteField (LL_POWER_CHANGE_IND).tx_power>]
class scapy.layers.bluetooth4LE.LL_POWER_CONTROL_REQ(_pkt, /, *, phy=0, delta=0, tx_power=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_POWER_CONTROL_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (LL_POWER_CONTROL_REQ).phy>, <SignedByteField (LL_POWER_CONTROL_REQ).delta>, <SignedByteField (LL_POWER_CONTROL_REQ).tx_power>]
class scapy.layers.bluetooth4LE.LL_POWER_CONTROL_RSP(_pkt, /, *, min=0, max=0, rfu=0, delta=0, tx_power=0, apr=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_POWER_CONTROL_RSP'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<LEBitField (LL_POWER_CONTROL_RSP).min>, <LEBitField (LL_POWER_CONTROL_RSP).max>, <LEBitField (LL_POWER_CONTROL_RSP).rfu>, <SignedByteField (LL_POWER_CONTROL_RSP).delta>, <SignedByteField (LL_POWER_CONTROL_RSP).tx_power>, <ByteField (LL_POWER_CONTROL_RSP).apr>]
class scapy.layers.bluetooth4LE.LL_REJECT_EXT_IND(_pkt, /, *, reject_opcode=0, error_code=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_REJECT_EXT_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XByteField (LL_REJECT_EXT_IND).reject_opcode>, <XByteField (LL_REJECT_EXT_IND).error_code>]
class scapy.layers.bluetooth4LE.LL_REJECT_IND(_pkt, /, *, code=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_REJECT_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XByteField (LL_REJECT_IND).code>]
class scapy.layers.bluetooth4LE.LL_SLAVE_FEATURE_REQ(_pkt, /, *, feature_set=<Flag 0 ()>)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_SLAVE_FEATURE_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BTLEFeatureField (LL_SLAVE_FEATURE_REQ).feature_set>]
class scapy.layers.bluetooth4LE.LL_START_ENC_REQ(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_START_ENC_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = []
class scapy.layers.bluetooth4LE.LL_START_ENC_RSP(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_START_ENC_RSP'>, <class 'scapy.packet.Packet'>]
class scapy.layers.bluetooth4LE.LL_SUBRATE_IND(_pkt, /, *, subrate_factor=0, subrate_base_event=0, latency=0, continuation_number=0, timeout=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_SUBRATE_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<LEShortField (LL_SUBRATE_IND).subrate_factor>, <LEShortField (LL_SUBRATE_IND).subrate_base_event>, <LEShortField (LL_SUBRATE_IND).latency>, <LEShortField (LL_SUBRATE_IND).continuation_number>, <LEShortField (LL_SUBRATE_IND).timeout>]
class scapy.layers.bluetooth4LE.LL_SUBRATE_REQ(_pkt, /, *, subrate_factor_min=0, subrate_factor_max=0, max_latency=0, continuation_number=0, timeout=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_SUBRATE_REQ'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<LEShortField (LL_SUBRATE_REQ).subrate_factor_min>, <LEShortField (LL_SUBRATE_REQ).subrate_factor_max>, <LEShortField (LL_SUBRATE_REQ).max_latency>, <LEShortField (LL_SUBRATE_REQ).continuation_number>, <LEShortField (LL_SUBRATE_REQ).timeout>]
class scapy.layers.bluetooth4LE.LL_TERMINATE_IND(_pkt, /, *, code=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_TERMINATE_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XByteField (LL_TERMINATE_IND).code>]
class scapy.layers.bluetooth4LE.LL_UNKNOWN_RSP(_pkt, /, *, code=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_UNKNOWN_RSP'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XByteField (LL_UNKNOWN_RSP).code>]
class scapy.layers.bluetooth4LE.LL_VERSION_IND(_pkt, /, *, version=8, company=0, subversion=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.layers.bluetooth4LE.LL_VERSION_IND'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (LL_VERSION_IND).version>, <LEShortEnumField (LL_VERSION_IND).company>, <XLEShortField (LL_VERSION_IND).subversion>]