Ethereal-dev: [Ethereal-dev] Knowing if a dissector is running in tethereal or ethereal
Hi,
I've found an issue that would be nice to handle:
Persistently stored objects that might be needed or not in future
calls to the dissector.
In the case of tethereal these have become (in my case) the #1 cause
of crashes of long-running tethereal sessions, as they end-up eating
all the memory that is available before crashing.
It would be nice to be able to know from a dissector whether It still
will need the persistent data or if it can just free that space.
I think in mate, that eats tons of memory, if it could determine
whether or not the persistent data would be needed it could free it as
it runs, then it will allow for much longer runs.
As I'm working with header fragments in my reimplementation of HTTP
I've noticed that I will have to keep all the header fragments in
memory. Which is fine in interactive ethereal because I might move
ranomly from one packet to another, in this condition I might need any
fragment at every given time.
Now, when it runs within tethereal this becomes a huge memory waste,
as I could delete the fw fragments once I've used them, and not even
create the bw ones, that would allow for much longer runs.
Luis Ontanon