Python протокол SOMEIP scapy, показывающий ключ, а не значение поля - PullRequest
0 голосов
/ 15 января 2020

При печати пакетов SOMEIP с полями .summary отображается значение, а не ключ словаря полей. Например, у нас есть поле с именем msg_type, при использовании .summary печатается значение поля пакета (NOTIFICATION, REQUEST ..), но при использовании packet.msg_type ключ поля ( 2, 3 ...).

Как напечатать значение вторым способом?

1 Ответ

0 голосов
/ 21 января 2020

msg_type - это ByteEnumField, и вы можете получить доступ к типу значения следующим образом -

from scapy.contrib.automotive import someip
s = someip.SOMEIP(msg_type=0x0)    
type_val = someip.SOMEIP.msg_type.i2s[s.msg_type]

и к выводу -

In [15]: type_val
Out[15]: 'REQUEST'
...