Я написал свой диссектор для ваершарка на С, писал под линуксом.
По какой-то причине, оно начинает парсить пакет только после ethernet заголовка, мне же нужно парсить пакет, начинаея с самого начала пакета. Я совершенно не силен в Си, но документация у меня вызывает еще больше недоумение.
void proto_reg_handoff_ebh(void)
{
static dissector_handle_t ERh_handle;
ERh_handle = create_dissector_handle(dissect_erh, proto_erh);
dissector_add_uint("ethertype", ERH_TYPE, ERh_handle);
}
Вот функция которой я пытаюсь поймать пакет. Оно отлично ловит, но в функции dissect_erh при обращении к нулевому биту происходит обращение к нулевому биту после ethernet заголовка. Как передать в диссектор кадр целиком? Чтобы оно не выделяло Ethernet заголовок при парсинге пакета?