MCPcopy Create free account
hub / github.com/secdev/scapy / BFD

Class BFD

scapy/contrib/bfd.py:112–143  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

110
111
112class BFD(Packet):
113 name = "BFD"
114 fields_desc = [
115 BitField("version", 1, 3),
116 BitEnumField("diag", 0, 5, _diagnostics),
117 BitEnumField("sta", 3, 2, _sta_names),
118 FlagsField("flags", 0, 6, "MDACFP"),
119 ByteField("detect_mult", 3),
120 FieldLenField(
121 "len",
122 None,
123 fmt="B",
124 length_of="optional_auth",
125 adjust=lambda pkt, x: x + 24,
126 ),
127 BitField("my_discriminator", 0x11111111, 32),
128 BitField("your_discriminator", 0x22222222, 32),
129 BitField("min_tx_interval", 1000000000, 32),
130 BitField("min_rx_interval", 1000000000, 32),
131 BitField("echo_rx_interval", 1000000000, 32),
132 ConditionalField(
133 PacketField("optional_auth", None, OptionalAuth),
134 lambda pkt: pkt.flags.names[2] == "A",
135 ),
136 ]
137
138 def mysummary(self):
139 return self.sprintf(
140 "BFD (my_disc=%BFD.my_discriminator%,"
141 "your_disc=%BFD.your_discriminator%,"
142 "state=%BFD.sta%)"
143 )
144
145
146for _bfd_port in [

Callers

nothing calls this directly

Calls 7

BitFieldClass · 0.90
BitEnumFieldClass · 0.90
FlagsFieldClass · 0.90
ByteFieldClass · 0.90
FieldLenFieldClass · 0.90
ConditionalFieldClass · 0.90
PacketFieldClass · 0.90

Tested by

no test coverage detected