On Mon, Jul 29, 2002 at 11:01:53AM +0100, Pedro Carvalho wrote:
> Hello, I recently upgraded from 0.9.1 to 0.9.5 and a previous capture
> file now hangs 0.9.5.
>
> I attached the file.
It doesn't hang when I try it.
It crashes.
I've attached a patch that fixes the crash, if you can build Ethereal
from source; if not, I've checked the fix in, so the next release should
have it.
> Sorry but i do not know hot to "bug report" this....
You report a bug by mailing to "ethereal-dev@xxxxxxxxxxxx", giving
details and, if possible, a capture file. :-)
Index: packet-wsp.c
===================================================================
RCS file: /usr/local/cvsroot/ethereal/packet-wsp.c,v
retrieving revision 1.58
diff -c -r1.58 packet-wsp.c
*** packet-wsp.c 17 Jul 2002 00:42:42 -0000 1.58
--- packet-wsp.c 30 Jul 2002 07:34:19 -0000
***************
*** 205,210 ****
--- 205,211 ----
static gint ett_redirect_afl = ETT_EMPTY;
static gint ett_multiparts = ETT_EMPTY;
static gint ett_mpartlist = ETT_EMPTY;
+ static gint ett_post_data = ETT_EMPTY;
/* Handle for WSP-over-UDP dissector */
static dissector_handle_t wsp_fromudp_handle;
***************
*** 3804,3812 ****
--- 3805,3815 ----
guint valueEnd = 0;
guint8 peek = 0;
proto_item *ti;
+ proto_tree *subtree;
/* VERIFY ti = proto_tree_add_item (tree, hf_wsp_post_data,tvb,offset,-1,bo_little_endian); */
ti = proto_tree_add_item (tree, hf_wsp_post_data,tvb,offset,-1,bo_little_endian);
+ subtree = proto_item_add_subtree(ti, ett_post_data);
if (contentTypeStr == NULL && contentType == 0x12)
{
***************
*** 3826,3832 ****
{
if (variableEnd > 0)
{
! add_post_variable (ti, tvb, variableStart, variableEnd, valueStart, offset);
}
variableStart = offset+1;
variableEnd = 0;
--- 3829,3835 ----
{
if (variableEnd > 0)
{
! add_post_variable (subtree, tvb, variableStart, variableEnd, valueStart, offset);
}
variableStart = offset+1;
variableEnd = 0;
***************
*** 3838,3850 ****
/* See if there's outstanding data */
if (variableEnd > 0)
{
! add_post_variable (ti, tvb, variableStart, variableEnd, valueStart, offset);
}
}
else if ((contentType == 0x22) || (contentType == 0x23) || (contentType == 0x23) || (contentType == 0x24) ||
(contentType == 0x25) || (contentType == 0x26) || (contentType == 0x33))
{
! add_multipart_data(ti, tvb);
}
}
--- 3841,3853 ----
/* See if there's outstanding data */
if (variableEnd > 0)
{
! add_post_variable (subtree, tvb, variableStart, variableEnd, valueStart, offset);
}
}
else if ((contentType == 0x22) || (contentType == 0x23) || (contentType == 0x23) || (contentType == 0x24) ||
(contentType == 0x25) || (contentType == 0x26) || (contentType == 0x33))
{
! add_multipart_data(subtree, tvb);
}
}
***************
*** 4894,4900 ****
&ett_redirect_flags,
&ett_redirect_afl,
&ett_multiparts,
! &ett_mpartlist
};
/* Register the protocol name and description */
--- 4897,4904 ----
&ett_redirect_flags,
&ett_redirect_afl,
&ett_multiparts,
! &ett_mpartlist,
! &ett_post_data
};
/* Register the protocol name and description */