scapy.contrib.mqttsn

class scapy.contrib.mqttsn.MQTTSN(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

len

VariableFieldLenField

None

type

XByteEnumField

0

payload_guess

可能的子层: MQTTSNAdvertiseMQTTSNConnackMQTTSNConnectMQTTSNDisconnectMQTTSNEncapsMQTTSNGwInfoMQTTSNPingReqMQTTSNPingRespMQTTSNPubackMQTTSNPubcompMQTTSNPublishMQTTSNPubrecMQTTSNPubrelMQTTSNRegackMQTTSNRegisterMQTTSNSearchGWMQTTSNSubackMQTTSNSubscribeMQTTSNUnsubackMQTTSNUnsubscribeMQTTSNWillMsgReqMQTTSNWillMsgRespMQTTSNWillMsgUpdMQTTSNWillMsgMQTTSNWillTopicReqMQTTSNWillTopicRespMQTTSNWillTopicUpdMQTTSNWillTopic

class scapy.contrib.mqttsn.MQTTSNAdvertise(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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                       
MQTTSN广告字段

gw_id

ByteField

0

duration

ShortField

0

class scapy.contrib.mqttsn.MQTTSNConnack(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNConnect(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

dup

BitField (1位)

0

qos

BitEnumField (2位)

0

retain

BitField (1位)

0

will

BitField (1位)

0

cleansess

BitField (1位)

0

tid_type

BitEnumField (2位)

0

prot_id

ByteField

1

duration

ShortField

0

client_id

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNDisconnect(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

duration

ShortField (Cond)

None

class scapy.contrib.mqttsn.MQTTSNEncaps(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

resvd

BitField (6位)

0

radius

BitField (2位)

0

w_node_id

StrLenField

b''

payload_guess

可能的子层: MQTTSN

class scapy.contrib.mqttsn.MQTTSNGwInfo(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

gw_id

ByteField

0

gw_addr

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNPingReq(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

client_id

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNPingResp(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
class scapy.contrib.mqttsn.MQTTSNPuback(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

tid

ShortField

0

mid

ShortField

0

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNPubcomp(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

mid

ShortField

0

class scapy.contrib.mqttsn.MQTTSNPublish(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

dup

BitField (1位)

0

qos

BitEnumField (2位)

0

retain

BitField (1位)

0

will

BitField (1位)

0

cleansess

BitField (1位)

0

tid_type

BitEnumField (2位)

0

tid

ShortField

0

mid

ShortField

0

data

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNPubrec(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

mid

ShortField

0

class scapy.contrib.mqttsn.MQTTSNPubrel(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

mid

ShortField

0

class scapy.contrib.mqttsn.MQTTSNRegack(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

tid

ShortField

0

mid

ShortField

0

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNRegister(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

radius

ByteField

0

class scapy.contrib.mqttsn.MQTTSNSuback(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

dup

BitField (1位)

0

qos

BitEnumField (2位)

0

retain

BitField (1位)

0

will

BitField (1位)

0

cleansess

BitField (1位)

0

tid_type

BitEnumField (2位)

0

tid

ShortField

0

mid

ShortField

0

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNSubscribe(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

dup

BitField (1位)

0

qos

BitEnumField (2位)

0

retain

BitField (1位)

0

will

BitField (1位)

0

cleansess

BitField (1位)

0

tid_type

BitEnumField (2位)

0

mid

ShortField

0

tid

ShortField (Cond)

None

short_topic

StrFixedLenField (Cond)

None

topic_name

StrLenField (Cond)

None

class scapy.contrib.mqttsn.MQTTSNUnsuback(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

mid

ShortField

0

class scapy.contrib.mqttsn.MQTTSNUnsubscribe(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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                      
MQTTSN退订字段

dup

BitField (1位)

0

qos

BitEnumField (2位)

0

retain

BitField (1位)

0

will

BitField (1位)

0

cleansess

BitField (1位)

0

tid_type

BitEnumField (2位)

0

mid

ShortField

0

tid

ShortField (Cond)

None

short_topic

StrFixedLenField (Cond)

None

topic_name

StrLenField (Cond)

None

class scapy.contrib.mqttsn.MQTTSNWillMsg(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
class scapy.contrib.mqttsn.MQTTSNWillMsgResp(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNWillMsgUpd(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

will_msg

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNWillTopic(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

dup

BitField (1位)

0

qos

BitEnumField (2位)

0

retain

BitField (1 bit)

0

will

BitField (1位)

0

cleansess

BitField (1位)

0

tid_type

BitEnumField (2位)

0

will_topic

StrLenField

b''

class scapy.contrib.mqttsn.MQTTSNWillTopicReq(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
class scapy.contrib.mqttsn.MQTTSNWillTopicResp(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

return_code

ByteEnumField

0

class scapy.contrib.mqttsn.MQTTSNWillTopicUpd(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
显示类似RFC的架构
 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字段

dup

BitField (1位)

0

qos

BitEnumField (2位)

0

retain

BitField (1位)

0

will

BitField (1位)

0

cleansess

BitField (1位)

0

tid_type

BitEnumField (2位)

0

will_topic

StrLenField

b''

class scapy.contrib.mqttsn.RandVariableFieldLen

Bases: scapy.volatile.RandNum

class scapy.contrib.mqttsn.VariableFieldLenField(*args, **kwargs)

Bases: scapy.fields.FieldLenField

MQTT-SN长度字段对于值[0x02,0xff]具有1个字节,对于值[0x0100,0xffff]具有3个字节. 如果第一个字节为0x01,则长度值在接下来的2个字节中按网络字节顺序排列. MQTT-SN数据包的长度至少为2个字节(长度字段+类型字段).

addfield(pkt, s, val)
getfield(pkt, s)
randval()