Ethereal-dev: [Ethereal-dev] Patch for WSP decoding.
Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.
From: "Alexandre P. Ferreira" <alexandref@xxxxxxxxxxxx>
Date: Mon, 30 Jul 2001 14:28:57 -0300
Hi,A small patch for correct decoding of WSP capabilities in a connect reply. Please apply.
Thanks, -- Alexandre Peixoto Ferreira Coordenador de Planejamento TCO IP +55 61 3137504
*** ethereal-2001-07-30/packet-wsp.c Mon Jul 30 02:20:44 2001
--- ethereal-2001-07-30.new/packet-wsp.c Mon Jul 30 09:41:43 2001
***************
*** 750,756 ****
value_type_t, int);
static void add_accept_application_header (proto_tree *, tvbuff_t *, int,
tvbuff_t *, value_type_t, int);
! static void add_capabilities (proto_tree *tree, tvbuff_t *tvb);
static value_type_t get_value_type_len (tvbuff_t *, int, guint *, int *, int *);
static guint get_uintvar (tvbuff_t *, guint, guint);
static gint get_integer (tvbuff_t *, guint, guint, value_type_t, guint *);
--- 750,756 ----
value_type_t, int);
static void add_accept_application_header (proto_tree *, tvbuff_t *, int,
tvbuff_t *, value_type_t, int);
! static void add_capabilities (proto_tree *tree, tvbuff_t *tvb, int type);
static value_type_t get_value_type_len (tvbuff_t *, int, guint *, int *, int *);
static guint get_uintvar (tvbuff_t *, guint, guint);
static gint get_integer (tvbuff_t *, guint, guint, value_type_t, guint *);
***************
*** 1045,1051 ****
if (capabilityLength > 0)
{
tmp_tvb = tvb_new_subset (tvb, offset, capabilityLength, capabilityLength);
! add_capabilities (wsp_tree, tmp_tvb);
offset += capabilityLength;
}
--- 1045,1051 ----
if (capabilityLength > 0)
{
tmp_tvb = tvb_new_subset (tvb, offset, capabilityLength, capabilityLength);
! add_capabilities (wsp_tree, tmp_tvb, CONNECT);
offset += capabilityLength;
}
***************
*** 1079,1085 ****
if (capabilityLength > 0)
{
tmp_tvb = tvb_new_subset (tvb, offset, capabilityLength, capabilityLength);
! add_capabilities (wsp_tree, tmp_tvb);
offset += capabilityLength;
}
--- 1079,1085 ----
if (capabilityLength > 0)
{
tmp_tvb = tvb_new_subset (tvb, offset, capabilityLength, capabilityLength);
! add_capabilities (wsp_tree, tmp_tvb, CONNECTREPLY);
offset += capabilityLength;
}
***************
*** 2271,2277 ****
}
static void
! add_capabilities (proto_tree *tree, tvbuff_t *tvb)
{
proto_item *ti;
proto_tree *wsp_capabilities;
--- 2271,2277 ----
}
static void
! add_capabilities (proto_tree *tree, tvbuff_t *tvb, int type)
{
proto_item *ti;
proto_tree *wsp_capabilities;
***************
*** 2366,2383 ****
case 0x05 : /* Extended Methods */
offsetStr = offset;
offset++;
! i = 0;
! while ((offsetStr-capabilitiesStart) <= length)
{
! value = tvb_get_guint8(tvb, offsetStr);
! i += snprintf(valString+i,200-i,"(%d - ",value);
! offsetStr++;
! for (;(valString[i] = tvb_get_guint8(tvb, offsetStr));i++,offsetStr++);
! offsetStr++;
! valString[i++] = ')';
! valString[i++] = ' ';
}
- valString[i]=0;
proto_tree_add_string(wsp_capabilities, hf_wsp_capabilities_extended_methods, tvb, capabilitiesStart, length+1, valString);
break;
case 0x06 : /* Header Code Pages */
--- 2366,2397 ----
case 0x05 : /* Extended Methods */
offsetStr = offset;
offset++;
! if (type == CONNECT)
! {
! i = 0;
! while ((offsetStr-capabilitiesStart) <= length)
! {
! value = tvb_get_guint8(tvb, offsetStr);
! i += snprintf(valString+i,200-i,"(%d - ",value);
! offsetStr++;
! for (;(valString[i] = tvb_get_guint8(tvb, offsetStr));i++,offsetStr++);
! offsetStr++;
! valString[i++] = ')';
! valString[i++] = ' ';
! }
! valString[i]=0;
! }
! else
{
! i = 0;
! while ((offsetStr-capabilitiesStart) <= length)
! {
! value = tvb_get_guint8(tvb, offsetStr);
! i += snprintf(valString+i,200-i,"(%d) ",value);
! offsetStr++;
! }
! valString[i]=0;
}
proto_tree_add_string(wsp_capabilities, hf_wsp_capabilities_extended_methods, tvb, capabilitiesStart, length+1, valString);
break;
case 0x06 : /* Header Code Pages */
- Follow-Ups:
- Re: [Ethereal-dev] Patch for WSP decoding.
- From: Guy Harris
- Re: [Ethereal-dev] Patch for WSP decoding.
- Prev by Date: Re: [Ethereal-dev] Diameter Finally up to -07
- Next by Date: [Ethereal-dev] idl2eth man page
- Previous by thread: Re: [Ethereal-dev] Diameter Finally up to -07
- Next by thread: Re: [Ethereal-dev] Patch for WSP decoding.
- Index(es):