scapy.contrib.mqtt

class scapy.contrib.mqtt.MQTT(_pkt, /, *, type=1, DUP=0, QOS=0, RETAIN=0, len=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTT'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BitEnumField (MQTT).type>, <BitEnumField (MQTT).DUP>, <BitEnumField (MQTT).QOS>, <BitEnumField (MQTT).RETAIN>, <VariableFieldLenField (MQTT).len>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({'type': 1}, <class 'scapy.contrib.mqtt.MQTTConnect'>), ({'type': 2}, <class 'scapy.contrib.mqtt.MQTTConnack'>), ({'type': 3}, <class 'scapy.contrib.mqtt.MQTTPublish'>), ({'type': 4}, <class 'scapy.contrib.mqtt.MQTTPuback'>), ({'type': 5}, <class 'scapy.contrib.mqtt.MQTTPubrec'>), ({'type': 6}, <class 'scapy.contrib.mqtt.MQTTPubrel'>), ({'type': 7}, <class 'scapy.contrib.mqtt.MQTTPubcomp'>), ({'type': 8}, <class 'scapy.contrib.mqtt.MQTTSubscribe'>), ({'type': 9}, <class 'scapy.contrib.mqtt.MQTTSuback'>), ({'type': 10}, <class 'scapy.contrib.mqtt.MQTTUnsubscribe'>), ({'type': 11}, <class 'scapy.contrib.mqtt.MQTTUnsuback'>), ({'type': 14}, <class 'scapy.contrib.mqtt.MQTTDisconnect'>)]
class scapy.contrib.mqtt.MQTTConnack(_pkt, /, *, sessPresentFlag=0, retcode=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTConnack'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (MQTTConnack).sessPresentFlag>, <ByteEnumField (MQTTConnack).retcode>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.MQTTConnect(_pkt, /, *, length=None, protoname=b'', protolevel=5, usernameflag=0, passwordflag=0, willretainflag=0, willQOSflag=0, willflag=0, cleansess=0, reserved=0, klive=0, clientIdlen=None, clientId=b'', wtoplen=None, willtopic=b'', wmsglen=None, willmsg=b'', userlen=None, username=b'', passlen=None, password=b'')[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTConnect'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FieldLenField (MQTTConnect).length>, <StrLenField (MQTTConnect).protoname>, <ByteEnumField (MQTTConnect).protolevel>, <BitEnumField (MQTTConnect).usernameflag>, <BitEnumField (MQTTConnect).passwordflag>, <BitEnumField (MQTTConnect).willretainflag>, <BitEnumField (MQTTConnect).willQOSflag>, <BitEnumField (MQTTConnect).willflag>, <BitEnumField (MQTTConnect).cleansess>, <BitEnumField (MQTTConnect).reserved>, <ShortField (MQTTConnect).klive>, <FieldLenField (MQTTConnect).clientIdlen>, <StrLenField (MQTTConnect).clientId>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>, <scapy.fields.ConditionalField object>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.MQTTDisconnect(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTDisconnect'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = []
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.MQTTPuback(_pkt, /, *, msgid=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTPuback'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ShortField (MQTTPuback).msgid>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.MQTTPubcomp(_pkt, /, *, msgid=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTPubcomp'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ShortField (MQTTPubcomp).msgid>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.MQTTPublish(_pkt, /, *, length=None, topic=b'', msgid=None, value=b'')[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTPublish'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FieldLenField (MQTTPublish).length>, <StrLenField (MQTTPublish).topic>, <scapy.fields.ConditionalField object>, <StrLenField (MQTTPublish).value>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.MQTTPubrec(_pkt, /, *, msgid=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTPubrec'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ShortField (MQTTPubrec).msgid>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.MQTTPubrel(_pkt, /, *, msgid=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTPubrel'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ShortField (MQTTPubrel).msgid>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.MQTTSuback(_pkt, /, *, msgid=None, retcodes=[])[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTSuback'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ShortField (MQTTSuback).msgid>, <FieldListField (MQTTSuback).retcodes>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.MQTTSubscribe(_pkt, /, *, msgid=None, topics=[])[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTSubscribe'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ShortField (MQTTSubscribe).msgid>, <PacketListField (MQTTSubscribe).topics>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.MQTTTopic(_pkt, /, *, length=None, topic=b'')[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTTopic'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FieldLenField (MQTTTopic,MQTTTopicQOS).length>, <StrLenField (MQTTTopic,MQTTTopicQOS).topic>]
guess_payload_class(payload)[source]
class scapy.contrib.mqtt.MQTTTopicQOS(_pkt, /, *, length=None, topic=b'', QOS=0)[source]

Bases: MQTTTopic

aliastypes = [<class 'scapy.contrib.mqtt.MQTTTopicQOS'>, <class 'scapy.contrib.mqtt.MQTTTopic'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FieldLenField (MQTTTopic,MQTTTopicQOS).length>, <StrLenField (MQTTTopic,MQTTTopicQOS).topic>, <ByteEnumField (MQTTTopicQOS).QOS>]
class scapy.contrib.mqtt.MQTTUnsuback(_pkt, /, *, msgid=None)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTUnsuback'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ShortField (MQTTUnsuback).msgid>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.MQTTUnsubscribe(_pkt, /, *, msgid=None, topics=[])[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.mqtt.MQTTUnsubscribe'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ShortField (MQTTUnsubscribe).msgid>, <PacketListField (MQTTUnsubscribe).topics>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({}, <class 'scapy.contrib.mqtt.MQTT'>)]
class scapy.contrib.mqtt.RandVariableFieldLen[source]

Bases: RandNum

class scapy.contrib.mqtt.VariableFieldLenField(name: str, default: Optional[Any], length_of: Optional[str] = None, fmt: str = 'H', count_of: Optional[str] = None, adjust: Callable[[Packet, int], int] = <function FieldLenField.<lambda>>)[source]

Bases: FieldLenField

addfield(pkt, s, val)[source]
getfield(pkt, s)[source]
randval()[source]