On Jan 14, 2004, at 6:59 PM, Richard Sharpe wrote:
So what they really want is a way to prevent particular dissectors
from
handing anything off to subdissectors. That *could* be done at
startup
time, but I could also imagine somebody wanting to dynamically turn
off
handoff from some particular protocol *and* turn it on again, so that
they could, for example, look at a trace purely from the standpoint of
TCP and then turn handoff from TCP back on again.
Yes, that is true, but in this case, he would probably re-run tethereal
over the same capture with a different set of protocols (perhaps none)
disabled.
Yes, but I'm not thinking about this as a feature solely for his
particular requirement, I'm thinking about whether a general solution
would help there *and* elsewhere.
The former requires API changes; the latter wouldn't, as the handoff
routines could maintain that, just as they maintain the
"current_proto"
member of the "packet_info" structure. (It'd require changes in those
few places where handoff isn't done with handoff routines - those
could
be found by looking for places where "pinfo->current_proto" is
changed.)
Hmmm, it is not clear to me how that helps to prevent dissection
beyond a
particular horizon ... perhaps I am just jetlagged ...
It helps by doing the work in the mostly-centralized handoff process,
so most dissectors wouldn't have to be changed to support this.