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

Class RTPSSubMessage_HEARTBEAT

scapy/contrib/rtps/rtps.py:360–410  ·  view source on GitHub ↗

0...2...........7...............15.............23...............31 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | HEARTBEAT | flags | octetsToNextHeader | +---------------+---------------+---------------+---------------+ | EntityId rea

Source from the content-addressed store, hash-verified

358
359
360class RTPSSubMessage_HEARTBEAT(EPacket):
361 """
362 0...2...........7...............15.............23...............31
363 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
364 | HEARTBEAT | flags | octetsToNextHeader |
365 +---------------+---------------+---------------+---------------+
366 | EntityId readerEntityId |
367 +---------------+---------------+---------------+---------------+
368 | EntityId writerEntityId |
369 +---------------+---------------+---------------+---------------+
370 | |
371 + SequenceNumber firstAvailableSeqNumber +
372 | |
373 +---------------+---------------+---------------+---------------+
374 | |
375 + SequenceNumber lastSeqNumber +
376 | |
377 +---------------+---------------+---------------+---------------+
378 | Counter count |
379 +---------------+---------------+---------------+---------------+
380 """
381
382 name = "RTPS HEARTBEAT (0x07)"
383 fields_desc = [
384 XByteField("submessageId", 0x07),
385 XByteField("submessageFlags", 0),
386 EField(ShortField("octetsToNextHeader", 0),
387 endianness_from=e_flags),
388 EnumField(
389 "reader_id",
390 default=b"\x00\x00\x00\x00",
391 fmt="4s",
392 enum=_rtps_reserved_entity_ids,
393 ),
394 EnumField(
395 "writer_id",
396 default=b"\x00\x00\x00\x00",
397 fmt="4s",
398 enum=_rtps_reserved_entity_ids,
399 ),
400 EField(IntField("firstAvailableSeqNumHi", 0),
401 endianness_from=e_flags),
402 EField(IntField("firstAvailableSeqNumLow", 0),
403 endianness_from=e_flags),
404 EField(IntField("lastSeqNumHi", 0),
405 endianness_from=e_flags),
406 EField(IntField("lastSeqNumLow", 0),
407 endianness_from=e_flags),
408 EField(IntField("count", 0),
409 endianness_from=e_flags),
410 ]
411
412
413class RTPSSubMessage_INFO_DST(EPacket):

Callers

nothing calls this directly

Calls 5

XByteFieldClass · 0.90
EFieldClass · 0.90
ShortFieldClass · 0.90
EnumFieldClass · 0.90
IntFieldClass · 0.90

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…