Ethereal-dev: RE: [Ethereal-dev] Re: [Ethereal-users] H225-SETUP

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

From: "Anders Broman (TN/EAB)" <anders.broman@xxxxxxxxxxxx>
Date: Thu, 5 Feb 2004 10:30:11 +0100
Hi,
I have tried your patch and it looks good, the warnings was there before:
 
packet-h225.c
packet-h225.c(10322) : warning C4018: '>' : signed/unsigned mismatch
packet-h225.c(10324) : warning C4018: '>' : signed/unsigned mismatch
register.c
I have included a diff with the patch.
Best regards
Anders
 
-----Original Message-----
From: ethereal-dev-bounces@xxxxxxxxxxxx [mailto:ethereal-dev-bounces@xxxxxxxxxxxx]On Behalf Of Martin Regner
Sent: den 5 februari 2004 07:48
To: ethereal-dev@xxxxxxxxxxxx
Subject: [Ethereal-dev] Re: [Ethereal-users] H225-SETUP

 
Jonty Ray wrote:
<  I Can successfully see it in Ethereal version 0.9.7, which I have been using till now.
 
I think that I found something interesting.
The "fastStart item length" is 36 for Item 0, but it seems that the h225 dissector is not using that information, so it continues
to dissect the next fastStart item without skipping any padding bytes (at least it seems that there is some kind of padding in your
capture that I haven't seen in other captures).
 
I tried to do some small modifications i dissect_h225_fastStart_item so that the new offset is calculated from item length
and that seems to solve the problem. Howver I have just tested with one capture yet.
 
The solution below is just the preliminar I used. I need to check more details regarding this and there is currently a warning
due to unsigned/signed mismatch.
 
Maybe there is a few other places in the code where you need to do similar things. 
 
 
static int
dissect_h225_fastStart_item(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
{
 guint32 length;
 guint32 newoffset;
 
 offset=dissect_per_length_determinant(tvb, offset, pinfo, tree, hf_h225_fastStart_item_length, &length);
 newoffset = offset + (length<<3);  /* please note that offset is in bits in PER dissectors, but the item length is in octets */
 offset=dissect_h245_OpenLogicalChannel(tvb, offset, pinfo, tree);
 
 contains_faststart = TRUE;
 
 return newoffset;
}

This communication is confidential and intended solely for the addressee(s). Any unauthorized review, use, disclosure or distribution is prohibited. If you believe this message has been sent to you in error, please notify the sender by replying to this transmission and delete the message without disclosing it. Thank you.

E-mail including attachments is susceptible to data corruption, interruption, unauthorized amendment, tampering and viruses, and we only send and receive e-mails on the basis that we are not liable for any such corruption, interception, amendment, tampering or viruses or any consequences thereof.

Attachment: h225.diff
Description: Binary data