Ich habe 2 TCP Dissektoren, die auf den gleichen Port hört.
Daher entschied ich mich für einen Basis-Dissektor, der diesen Port überwacht, und dieser Basis-Dissektor enthält die Informationen für die 2 TCP-Dissektoren.
Wenn ein Paket für diesen Port eintrifft, erstellt der Basis-Dissektor eine foreach-Schleife und versucht, jeden der beiden tcp-Dissektoren aufzurufen.Wie bekomme ich eine Meldung, wenn ein Anruf bei Wireshark Dissector von einem anderen Dissektor erfolgreich war
Ich verwende den Code Zeile:
res = Dissector.get("first_tcp_dissector"):call(buffer, pinfo, tree)
Ich erwarte, dass, wenn der angerufene Dissektor das Paket erfolgreich analysiert wird es eine Nummer zurück (wenn das Paket nicht für sie ist, es zurückgeben 0) .
aber dissector:call(tvb, pinfo, tree)
gibt nichts zurück und ich habe keine Angabe, ob die Analyse erfolgreich war.
Wie kann ich den wahren Rückgabewert des ersten_tcp_dissector oder ziemlich eine Angabe erhalten, wenn das Parsen erfolgreich war?
(By the way, ich möchte nicht Heuristik verwenden ...)