2013-11-26 3 views
0

Я пытаюсь построить старый диссектор с новым источником wirehark, и я столкнулся с этой проблемой компиляции и не могу ее решить.ошибка: недопустимое использование неполного типа 'tvbuff_t

Подробнее журнал:

packet-xxx.cpp:467:7: error: invalid use of incomplete type 'tvbuff_t {aka struct tvbuff}' 
In file included from ../../epan/proto.h:51:0, 
       from ../../epan/packet.h:29, 
       from packet-xxx.cpp:51: 
../../epan/tvbuff.h:64:8: error: forward declaration of 'tvbuff_t {aka struct tvbuff}' 
make: *** [packet-xxx.lo] Error 1 
+0

Этот тип все еще существует в wirehark? Перемещали ли заголовки, и вам нужно добавить правильное включение? –

+0

Заголовки все еще существуют. /epan/tvbuff.h –

ответ

2

tvbuff_topaque был сделан, поэтому не доступ к своим членам напрямую больше не допускаются в диссекторе коде. Вместо tvb->length используйте tvb_length(tvb) и так далее для любых атрибутов, к которым вам нужно получить доступ.

Это был ответ на Wireshark Q & Сайт на http://ask.wireshark.org/questions/27388.

+0

Действительно. Вернувшись назад и снова посмотрев на ошибку, я понял, что, скорее всего, это проблема, о которой я только что не сформулировал ответ об этом (или хотел подтвердить мои подозрения). –

Смежные вопросы