Domanda
Quando si scrive un dissettore in Wireshark, è la funzione di sezionare nella sorgente del dissettore chiamata su ogni pacchetto in ordine, solo una volta?
Quali potrebbero essere le possibili cause per i valori degli alberi cambiando come clicco su pacchetti più volte?
Soluzione
Si chiama una volta quando il pacchetto è prima di visualizzare le informazioni di alto livello.
if (check_col(pinfo->cinfo, COL_PROTOCOL))
o
if (check_col(pinfo->cinfo,COL_INFO))
E chiamato di nuovo quando mostra il corpo, vale a dire quando si fa clic su quello pacchetto.
if (tree)
I piacerebbe pensare che i risultati del secondo di chiamata vengono scartati, come se si dispone di un gran numero di pacchetti per decodificare mantenendo i dettagli per ogni sarebbe troppo grande un overhead.
Ma come sempre alcuni test rapido sarebbe in grado di dimostrare se questo è il caso. (Tramite un contatore statico)