scapy.contrib.mqttsn

MQTT for Sensor Networks (MQTT-SN)

Specification: http://www.mqtt.org/new/wp-content/uploads/2009/06/MQTT-SN_spec_v1.2.pdf

class scapy.contrib.mqttsn.MQTTSN(_pkt, /, *, len=None, type=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              LEN              |      TYPE     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                           Fig. MQTTSN                            
MQTTSN fields

len

VariableFieldLenField

None

type

XByteEnumField

0

payload_guess

Possible sublayers: MQTTSNAdvertise, MQTTSNConnack, MQTTSNConnect, MQTTSNDisconnect, MQTTSNEncaps, MQTTSNGwInfo, MQTTSNPingReq, MQTTSNPingResp, MQTTSNPuback, MQTTSNPubcomp, MQTTSNPublish, MQTTSNPubrec, MQTTSNPubrel, MQTTSNRegack, MQTTSNRegister, MQTTSNSearchGW, MQTTSNSuback, MQTTSNSubscribe, MQTTSNUnsuback, MQTTSNUnsubscribe, MQTTSNWillMsgReq, MQTTSNWillMsgResp, MQTTSNWillMsgUpd, MQTTSNWillMsg, MQTTSNWillTopicReq, MQTTSNWillTopicResp, MQTTSNWillTopicUpd, MQTTSNWillTopic

class scapy.contrib.mqttsn.MQTTSNAdvertise(_pkt, /, *, gw_id=0, duration=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     GW ID     |            DURATION           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. MQTTSNAdvertise                       
MQTTSNAdvertise fields

gw_id

ByteField

0

duration

ShortField

0

class scapy.contrib.mqttsn.MQTTSNConnack(_pkt, /, *, return_code=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  RETURN CODE  |
+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNConnack                        
MQTTSNConnack fields

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNConnect(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, prot_id=1, duration=0, client_id=b'')[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|D|QOS|R|W|C|TID|    PROT ID    |            DURATION           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           CLIENT ID           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNConnect                        
MQTTSNConnect fields

dup

BitField (1 bit)

0

qos

BitEnumField

0

retain

BitField (1 bit)

0

will

BitField (1 bit)

0

cleansess

BitField (1 bit)

0

tid_type

BitEnumField

0

prot_id

ByteField

1

duration

ShortField

0

client_id

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNDisconnect(_pkt, /, *, duration=None)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            DURATION           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. MQTTSNDisconnect                       
MQTTSNDisconnect fields

duration

ShortField (Cond)

None

class scapy.contrib.mqttsn.MQTTSNEncaps(_pkt, /, *, resvd=0, radius=0, w_node_id=b'')[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   RESVD   |RAD|           W NODE ID           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNEncaps                         
MQTTSNEncaps fields

resvd

BitField (6 bits)

0

radius

BitField (2 bits)

0

w_node_id

StrLenField

b''

payload_guess

Possible sublayers: MQTTSN

class scapy.contrib.mqttsn.MQTTSNGwInfo(_pkt, /, *, gw_id=0, gw_addr=b'')[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     GW ID     |            GW ADDR            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNGwInfo                         
MQTTSNGwInfo fields

gw_id

ByteField

0

gw_addr

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNPingReq(_pkt, /, *, client_id=b'')[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           CLIENT ID           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNPingReq                        
MQTTSNPingReq fields

client_id

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNPingResp(_pkt, /)[源代码]

基类:Packet

aliastypes
class scapy.contrib.mqttsn.MQTTSNPuback(_pkt, /, *, tid=0, mid=0, return_code=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              TID              |              MID              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  RETURN CODE  |
+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNPuback                         
MQTTSNPuback fields

tid

ShortField

0

mid

ShortField

0

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNPubcomp(_pkt, /, *, mid=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              MID              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNPubcomp                        
MQTTSNPubcomp fields

mid

ShortField

0

class scapy.contrib.mqttsn.MQTTSNPublish(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, tid=0, mid=0, data=b'')[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|D|QOS|R|W|C|TID|              TID              |      MID      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |              DATA             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNPublish                        
MQTTSNPublish fields

dup

BitField (1 bit)

0

qos

BitEnumField

0

retain

BitField (1 bit)

0

will

BitField (1 bit)

0

cleansess

BitField (1 bit)

0

tid_type

BitEnumField

0

tid

ShortField

0

mid

ShortField

0

data

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNPubrec(_pkt, /, *, mid=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              MID              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNPubrec                         
MQTTSNPubrec fields

mid

ShortField

0

class scapy.contrib.mqttsn.MQTTSNPubrel(_pkt, /, *, mid=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              MID              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNPubrel                         
MQTTSNPubrel fields

mid

ShortField

0

class scapy.contrib.mqttsn.MQTTSNRegack(_pkt, /, *, tid=0, mid=0, return_code=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              TID              |              MID              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  RETURN CODE  |
+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNRegack                         
MQTTSNRegack fields

tid

ShortField

0

mid

ShortField

0

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNRegister(_pkt, /, *, tid=0, mid=0, topic_name=b'')[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              TID              |              MID              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           TOPIC NAME          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. MQTTSNRegister                        
MQTTSNRegister fields

tid

ShortField

0

mid

ShortField

0

topic_name

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNSearchGW(_pkt, /, *, radius=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     RADIUS    |
+-+-+-+-+-+-+-+-+

                       Fig. MQTTSNSearchGW                        
MQTTSNSearchGW fields

radius

ByteField

0

class scapy.contrib.mqttsn.MQTTSNSuback(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, tid=0, mid=0, return_code=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|D|QOS|R|W|C|TID|              TID              |      MID      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |  RETURN CODE  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNSuback                         
MQTTSNSuback fields

dup

BitField (1 bit)

0

qos

BitEnumField

0

retain

BitField (1 bit)

0

will

BitField (1 bit)

0

cleansess

BitField (1 bit)

0

tid_type

BitEnumField

0

tid

ShortField

0

mid

ShortField

0

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNSubscribe(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, mid=0, tid=None, short_topic=None, topic_name=None)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|D|QOS|R|W|C|TID|              MID              |      TID      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |          SHORT TOPIC          |   TOPIC NAME  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                       Fig. MQTTSNSubscribe                       
MQTTSNSubscribe fields

dup

BitField (1 bit)

0

qos

BitEnumField

0

retain

BitField (1 bit)

0

will

BitField (1 bit)

0

cleansess

BitField (1 bit)

0

tid_type

BitEnumField

0

mid

ShortField

0

tid

ShortField (Cond)

None

short_topic

StrFixedLenField (Cond)

None

topic_name

StrLenField (Cond)

None

class scapy.contrib.mqttsn.MQTTSNUnsuback(_pkt, /, *, mid=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              MID              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. MQTTSNUnsuback                        
MQTTSNUnsuback fields

mid

ShortField

0

class scapy.contrib.mqttsn.MQTTSNUnsubscribe(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, mid=0, tid=None, short_topic=None, topic_name=None)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|D|QOS|R|W|C|TID|              MID              |      TID      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |          SHORT TOPIC          |   TOPIC NAME  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                      Fig. MQTTSNUnsubscribe                      
MQTTSNUnsubscribe fields

dup

BitField (1 bit)

0

qos

BitEnumField

0

retain

BitField (1 bit)

0

will

BitField (1 bit)

0

cleansess

BitField (1 bit)

0

tid_type

BitEnumField

0

mid

ShortField

0

tid

ShortField (Cond)

None

short_topic

StrFixedLenField (Cond)

None

topic_name

StrLenField (Cond)

None

class scapy.contrib.mqttsn.MQTTSNWillMsg(_pkt, /, *, will_msg=b'')[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            WILL MSG           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. MQTTSNWillMsg                        
MQTTSNWillMsg fields

will_msg

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNWillMsgReq(_pkt, /)[源代码]

基类:Packet

aliastypes
class scapy.contrib.mqttsn.MQTTSNWillMsgResp(_pkt, /, *, return_code=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  RETURN CODE  |
+-+-+-+-+-+-+-+-+

                      Fig. MQTTSNWillMsgResp                      
MQTTSNWillMsgResp fields

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNWillMsgUpd(_pkt, /, *, will_msg=b'')[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            WILL MSG           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. MQTTSNWillMsgUpd                       
MQTTSNWillMsgUpd fields

will_msg

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNWillTopic(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, will_topic=b'')[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|D|QOS|R|W|C|TID|           WILL TOPIC          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. MQTTSNWillTopic                       
MQTTSNWillTopic fields

dup

BitField (1 bit)

0

qos

BitEnumField

0

retain

BitField (1 bit)

0

will

BitField (1 bit)

0

cleansess

BitField (1 bit)

0

tid_type

BitEnumField

0

will_topic

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNWillTopicReq(_pkt, /)[源代码]

基类:Packet

aliastypes
class scapy.contrib.mqttsn.MQTTSNWillTopicResp(_pkt, /, *, return_code=0)[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  RETURN CODE  |
+-+-+-+-+-+-+-+-+

                     Fig. MQTTSNWillTopicResp                     
MQTTSNWillTopicResp fields

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNWillTopicUpd(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, will_topic=b'')[源代码]

基类:Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|D|QOS|R|W|C|TID|           WILL TOPIC          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Fig. MQTTSNWillTopicUpd                      
MQTTSNWillTopicUpd fields

dup

BitField (1 bit)

0

qos

BitEnumField

0

retain

BitField (1 bit)

0

will

BitField (1 bit)

0

cleansess

BitField (1 bit)

0

tid_type

BitEnumField

0

will_topic

StrLenField

b''

class scapy.contrib.mqttsn.RandVariableFieldLen[源代码]

基类:RandNum

class scapy.contrib.mqttsn.VariableFieldLenField(*args, **kwargs)[源代码]

基类:FieldLenField

MQTT-SN length field either has 1 byte for values [0x02, 0xff] or 3 bytes for values [0x0100, 0xffff]. If the first byte is 0x01 the length value comes in network byte-order in the next 2 bytes. MQTT-SN packets are at least 2 bytes long (length field + type field).

addfield(pkt, s, val)[源代码]
getfield(pkt, s)[源代码]
randval()[源代码]