MCPcopy Index your code
hub / github.com/secdev/scapy / MACCommand_up

Class MACCommand_up

scapy/contrib/loraphy2wan.py:399–466  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

397
398
399class MACCommand_up(Packet):
400 name = "MACCommand_up"
401 fields_desc = [ByteEnumField("CID", 0, CIDs_up),
402 ConditionalField(PacketListField("Reset", b"",
403 ResetInd,
404 length_from=lambda pkt:1),
405 lambda pkt:(pkt.CID == 0x01)),
406 ConditionalField(PacketListField("LinkCheck", b"",
407 LinkCheckReq,
408 length_from=lambda pkt:0),
409 lambda pkt:(pkt.CID == 0x02)),
410 ConditionalField(PacketListField("LinkADR", b"",
411 LinkADRReq,
412 length_from=lambda pkt:4),
413 lambda pkt:(pkt.CID == 0x03)),
414 ConditionalField(PacketListField("DutyCycle", b"",
415 DutyCycleReq,
416 length_from=lambda pkt:4),
417 lambda pkt:(pkt.CID == 0x04)),
418 ConditionalField(PacketListField("RXParamSetup", b"",
419 RXParamSetupReq,
420 length_from=lambda pkt:4),
421 lambda pkt:(pkt.CID == 0x05)),
422 ConditionalField(PacketListField("DevStatus", b"",
423 DevStatusReq,
424 length_from=lambda pkt:2),
425 lambda pkt:(pkt.CID == 0x06)),
426 ConditionalField(PacketListField("NewChannel", b"",
427 NewChannelReq,
428 length_from=lambda pkt:5),
429 lambda pkt:(pkt.CID == 0x07)),
430 ConditionalField(PacketListField("RXTimingSetup", b"",
431 RXTimingSetupReq,
432 length_from=lambda pkt:1),
433 lambda pkt:(pkt.CID == 0x08)),
434 # specific to 1.1 from here
435 ConditionalField(PacketListField("TxParamSetup", b"",
436 TxParamSetupReq,
437 length_from=lambda pkt:1),
438 lambda pkt:(pkt.CID == 0x09)),
439 ConditionalField(PacketListField("DlChannel", b"",
440 DlChannelReq,
441 length_from=lambda pkt:4),
442 lambda pkt:(pkt.CID == 0x0A)),
443 ConditionalField(PacketListField("Rekey", b"",
444 RekeyInd,
445 length_from=lambda pkt:1),
446 lambda pkt:(pkt.CID == 0x0B)),
447 ConditionalField(PacketListField("ADRParamSetup", b"",
448 ADRParamSetupReq,
449 length_from=lambda pkt:1),
450 lambda pkt:(pkt.CID == 0x0C)),
451 ConditionalField(PacketListField("DeviceTime", b"",
452 DeviceTimeReq,
453 length_from=lambda pkt:0),
454 lambda pkt:(pkt.CID == 0x0D)),
455 ConditionalField(PacketListField("ForceRejoin", b"",
456 ForceRejoinReq,

Callers

nothing calls this directly

Calls 3

ByteEnumFieldClass · 0.90
ConditionalFieldClass · 0.90
PacketListFieldClass · 0.90

Tested by

no test coverage detected