Ethereal-dev: RE: [Ethereal-dev] proto.c: line 1400 (proto_tree_add_uint): shou ld not be r

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Tom Uijldert <Tom.Uijldert@xxxxxx>
Date: Fri, 15 Feb 2002 12:30:10 +0100
> Many thanks for the bug reports. In packet-ucp.c:1441, we find:
> 
> 	UcpHandleByte(hf_ucp_parm_NT);
> 
> but hf_ucp_parm_NT is an FT_STRING field, not a FT_UINT8 field.

Oops!, typo.

> Since there is a value_string for this field, vals_parm_NT, I am
> guessing that hf_ucp_parm_NT should really be a FT_UINT8 type.

http://www.cmgwds.com/asp/index.asp?id=100 provides details. Your guesswork
is fine btw.

> However, that value string is never used in the code.
> 
> I'm checking in the attached change, to make hf_ucp_parm_NT a
> FT_UINT8 type, and for it to use vals_parm_NT.

Good one, thanks.

> BTW, for those that maintain packet-ucp.c, the ucp_handle_byte()
> is confusing. Why is the guint8 returned by tvb_get_guint()
> checked to see if it's != '/' ?

If a field is not filled in, you will immediately encounter the separator to
the next field (which is '/'). Only when a value is given, the field will be
displayed (so yes, when a lot of optional fields are omitted, you will see
something like '////////' etc.).
See also the spec.

Regards,
Tom Uijldert          Email: Tom.Uijldert@xxxxxx