On 10 dec 2011, at 07:10, Guy Harris wrote:

> On Dec 6, 2011, at 3:07 PM, s...@wireshark.org wrote:
> 
>> http://anonsvn.wireshark.org/viewvc/viewvc.cgi?view=rev&revision=40108
>> 
>> User: sake
>> Date: 2011/12/06 03:07 PM
>> 
>> Log:
>> - Make a distinction between ethernet padding and an ethernet trailer
>> - ... and make that distinction configurable for capture files that do not 
>> have padding in small frames, but do have trailers
> 
> How would you have small frames without padding, unless you're capturing 
> packets before they're put onto the wire (e.g., capturing packets being sent 
> by your machine, in which case you're not going to have a trailer added by 
> any monitoring hardware)?

I know F5 makes a dissector for trailing data, where the capturing is done on 
the box. I did check on my virtual F5 box and it does seem to add padding first 
before adding their trailer.  But theoretically it is possible that the 
capturing mechanism of a device is handed a small frame and then adds a 
trailer. I wanted to keep this possibility open as before my change an 
ethernet-trailer-dissector would be handed that data. If we think we can skip 
this and always assume there is padding on small frames, then it is safe to 
skip this preference.


>> - Add VSS-Monitoring dissector to show by the TAP inserted time- and 
>> portstamps
> 
> That dissector won't actually dissect anything if the trailer length is < 8 
> and is 0 modulo 3.  However, it does not reject trailers with a length of 0 
> or 4; this keeps frames with an FCS from being handled correctly.  I've 
> checked in a changed to reject packets with a length < 8 and that's 0 mod 3.
> 
> I've also checked in a changed to packet-eth.c not to even try calling *any* 
> of the heuristic trailer dissectors if the "real trailer" length is 0.
> 
> These changes fix the dissection of some captures

Thanks!


> If the FCS is known to be present (fcs_len = 4), we should probably make sure 
> the FCS is *not* part of the tvbuff we hand to the heuristic trailer 
> dissectors; we definitely should make sure it's dissected as an FCS.

I agree, checked in SVN 40146


> If it's not known to be present, and the "real trailer" is exactly 4 bytes 
> long, is there any way to determine whether it's a trailer or an FCS?  Short 
> of the 4-byte trailer failing all the heuristics, that's about it.
> 
> We also currently have no way for the trailer dissector to say "OK, there's a 
> trailer, followed by an FCS".

At first I thought that dissector_try_heuristic() would return the amount of 
bytes that were handled by the trailer-dissector. That would make it possible 
to check whether there are still 4 bytes left and assume those must be the FCS. 
But it returns true of false only.

Cheers,
Sake



___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev@wireshark.org>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe

Reply via email to