Wireshark-dev: Re: [Wireshark-dev] need to read three bytes of offset

From: Guy Harris <guy@xxxxxxxxxxxx>
Date: Thu, 4 Mar 2010 12:47:40 -0800
On Mar 4, 2010, at 12:42 PM, prashanth joshi wrote:

> thanks for the clarification.
> I was writing a function to read such 3 byte values and convert them to int. Unaware that uint24 field is supported in C (I have seen uint24 field only in wireshark).
> Now I am using the uint24 type.

Standard C doesn't have a uint24 data type (even C99 doesn't have uint24_t).  I suppose if you're using C on the Datacraft/Harris machines (no relation):

	http://bolt.beetlebolt.com/blog/?m=200706

you'd have a 24-bit data type, but most if not all machines capable of running Wireshark have 8-bit bytes and 32-bit or 64-bit registers.

Wireshark supports 24-bit integral-valued fields - but you put the values into 32-bit variables.