У меня есть 2 диссектора TCP, которые слушают один и тот же порт.
Поэтому я выбрал базовый диссектор, который слушает этот порт, и этот базовый диссектор содержит информацию для двух диссекторов TCP.
когда пакет приходит на этот порт , базовый диссектор создает цикл foreach и пытается вызвать каждый из двух диссекторов TCP по очереди.
Я использую строку кода:
res = Dissector.get("first_tcp_dissector"):call(buffer, pinfo, tree)
Я ожидаю, что если вызываемый диссектор успешно проанализирует пакет, он вернет число (если этот пакет не для него, он вернет 0).
но dissector:call(tvb, pinfo, tree)
ничего не возвращает, и у меня нет никаких указаний на успешный синтаксический анализ.
Как я могу получить истинное возвращаемое значение first_tcp_dissector или какое-то указание на успешность синтаксического анализа?
(Кстати, я не хочу использовать эвристику ...)