1 May 2012 17:13
[Bug 7210] Buildbot crash output: fuzz-2012-04-27-376.pcap
<bugzilla-daemon <at> wireshark.org>
2012-05-01 15:13:40 GMT
2012-05-01 15:13:40 GMT
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7210 --- Comment #7 from Jeff Morriss <jeff.morriss.ws <at> gmail.com> 2012-05-01 08:13:39 PDT --- (In reply to comment #5) > (In reply to comment #4) > > (In reply to comment #3) > > > "Exception Occurred" means the dissector did crash > > > > No, it means that the dissector called a tvbuff routine to fetch some data and > > the data wasn't actually present in the tvbuff; this either means > > > > 1) the dissector is attempting to fetch data that is legitimately not > > there, which is a dissector bug; > > Yes. > > > 2) the dissector is attempting to fetch data that is supposed to be there, > > but that isn't there in the packet, which is *not* a dissector bug, it's a > > malformed packet; > > Most of the time (in my experience) this is due to the dissector not validating > a length field, in which case it is more correct for the dissector to validate > the field against tvb_reported_length() or tvb_reported_length_remaining(), add > an expert info to the actual malformed field, and continue on to dissect as > much of the rest of the packet as it can. FWIW, I tend to dislike dissectors that do that. In my mind, simple is better when it comes to dissectors: just dissect your stuff and if you go off the end of a TVB, throw an exception and be done with it. It does mean that exceptions mean dissection stops, but, well... Such is the price for (dramatically?)(Continue reading)
RSS Feed