Commit Graph

46 Commits

Author SHA1 Message Date
Guy Harris 8026255c08 Update Andreas Sikkema's e-mail address.
svn path=/trunk/; revision=10065
2004-02-14 22:48:53 +00:00
Guy Harris 027cf5a574 From Anders Broman: fix the offsets usd when adding the manufacturer info.
svn path=/trunk/; revision=10060
2004-02-13 19:33:14 +00:00
Jörg Mayer 469f3956ba Fix the following type of warings:
packet-h245.c:13932: warning: invalid storage class for function `dissect_h245_RedundancyEncodingElement'
by moving the function declarations outside other functions

svn path=/trunk/; revision=9631
2004-01-10 13:49:52 +00:00
Guy Harris 9758b3928d "conversation_new()" takes flags NO_ADDR2 and NO_PORT2, not NO_ADDR_B
and NO_PORT_B - the corresponding flags have the same values, but they
don't have the same semantics (a "find_conversation()" call with a
missing address or port B will do a wildcard match on *both* addresses
or ports, not just the second one).

svn path=/trunk/; revision=9604
2004-01-09 00:56:04 +00:00
Ronnie Sahlberg 058e84ff14 Change the way signalType is dissected to be
compatible with and dissect the packets from Martin R and Paul H.

I still think ethereal was correct before this patch and that
this patch is not compatible with teh standard.
Anyway, that doesnt matter much. With this patch ethereal will dissect the packets properly.
Time to study x691 again.

svn path=/trunk/; revision=9066
2003-11-22 11:12:19 +00:00
Guy Harris 459f7323ca From Lars Roland: whitespace cleanups.
svn path=/trunk/; revision=8789
2003-10-27 22:28:48 +00:00
Ronnie Sahlberg 594223536a From Martin Regner, bugfix for H245.
The restricted character string for signalType is 1 character,  not 1 to 128 characters.

svn path=/trunk/; revision=8666
2003-10-10 10:54:37 +00:00
Guy Harris 5f4c7b8a00 Prefix the EXTENSION #defines with ASN1_ as well.
svn path=/trunk/; revision=8653
2003-10-09 22:35:07 +00:00
Guy Harris 33d2ce9a74 Prefix OPTIONAL and NOT_OPTIONAL with ASN1_, to avoid collisions with
other definitions of OPTIONAL (such as the one in Windows).

svn path=/trunk/; revision=8650
2003-10-09 20:52:57 +00:00
Guy Harris c2e71cb70b From Tomas Kukosa:
1) string tables for t35CountryCode, t35Extension and
	   h221ManufacturerCode were moved into the new file t35.c
	   because they are common for more dissectors

	2) the dissect_h245_NonStandardParameter_with_extension_marker()
	   was moved from h245 to h225 and renamed to
	   dissect_h225_NonStandardParameter() because the
	   NonStandardData type is different for H.225.0 and H.245

	3) type of the "h245.nsp.object" dissector table was changed from
	   FT_UINT32 to FT_STRING, so it can select a dissector based on
	   an OID rather than the Adler-32 hash of an OID

	4) the "h225.nsp.object" and "h225.nsp.h221" dissector tables
	   were created

svn path=/trunk/; revision=8550
2003-09-26 22:20:08 +00:00
Guy Harris 4c28968cfd From Martin Regner: fix dissection of non-standard parameters.
svn path=/trunk/; revision=8400
2003-09-06 01:17:10 +00:00
Guy Harris 49009cdc8e From Anders Broman: display T35 manufacturer codes as strings.
svn path=/trunk/; revision=8373
2003-09-04 18:55:54 +00:00
Guy Harris a3a1ee8850 From Andreas Sikkema: Facility for H.245 to display short message types
instead of long ones (introduces new preference, default is off):
  OpenLogicalChannel OpenLogicalChannel OpenLogicalChannel OpenLogicalChannel
  OLC OLC OLC OLC

svn path=/trunk/; revision=8343
2003-09-02 21:40:34 +00:00
Ronnie Sahlberg 10833b30b2 Updates and bugfixes from Andreas and Martin
svn path=/trunk/; revision=8321
2003-08-30 22:47:48 +00:00
Ronnie Sahlberg 9ce749fd8a update to h245 to decode the county codes
from anders broman

svn path=/trunk/; revision=8297
2003-08-28 12:57:24 +00:00
Ronnie Sahlberg b91e76964d The definition of NonStandardParameter is different between H.225 and H.245
Create an alternative NonStandardParameter dissector that matches the
definition that H.225 needs.

svn path=/trunk/; revision=8277
2003-08-26 21:44:35 +00:00
Guy Harris f695468fa2 From Tomas Kukosa: allow subdissectors to be registered for
NonStandardParameter data in the H.245 dissector.

svn path=/trunk/; revision=8206
2003-08-21 18:00:22 +00:00
Guy Harris 45208cd1d5 From Ronnie Sahlberg: patch to set up conversations to use RTP and RTCP
based on H.245 information.

svn path=/trunk/; revision=8172
2003-08-16 00:51:04 +00:00
Ronnie Sahlberg 1777e3dd3a make h225 register detected h245 tcp ports so that h245 dissector is called.
it is currently done in a way too crude way,
when a h245 endpoint is found,  it calls dissector_add("tcp.port",...) and
thus registers it globally for this port for ALL ip addresses.

if someone knows how to change it to only register it for
<ipaddress><tcpport> instead, that would be much better.

svn path=/trunk/; revision=8120
2003-08-01 10:11:54 +00:00
Ronnie Sahlberg 66b0082777 Updated some restricted character set alphabets so that the characters are in the correct order.
svn path=/trunk/; revision=8112
2003-07-31 10:28:12 +00:00
Ronnie Sahlberg 27edcee365 fix minor bugs in h245 decoding
svn path=/trunk/; revision=8092
2003-07-29 08:59:14 +00:00
Ronnie Sahlberg 1eb4be4dc2 Updates to the MEGACO plugin so that it will call the H.245 dissector for some
instancews where megaco encapsulates h.245

svn path=/trunk/; revision=8087
2003-07-26 04:51:08 +00:00
Ronnie Sahlberg 96a109c8d8 export T38FaxProfile and DataProtocolCapability since these are user in H.225 as well
svn path=/trunk/; revision=8052
2003-07-19 10:25:45 +00:00
Ronnie Sahlberg 38b4c33520 Make h221nonstandard and nonstandardparameter externaly visible
h225 will need them

svn path=/trunk/; revision=8033
2003-07-16 19:05:37 +00:00
Ronnie Sahlberg 987d45a974 Add a new parameter to the constrained integer dissector so that it also handles
constrained integers with an extension marker.

Update all calls to the constrained integer dissector

Add dissection to the rfc_number type  which is a constrasined integer with an extension marker

Add H245 so that it builds by default in ethereal.
It has been tested extensively by a semi-large number of people with a lot of real and synthetic captures  and seems to work very well.

New protocol added to ethereal

svn path=/trunk/; revision=8032
2003-07-16 09:23:56 +00:00
Ronnie Sahlberg cc4aeb23e6 remove a function that was not used/obsolete
fix an instance where the wrong dissector was called instead of RequestMultiplexEntryRejectionDescriptions.

svn path=/trunk/; revision=8031
2003-07-16 08:53:08 +00:00
Ronnie Sahlberg d25a4feb53 minor updates.
make reassembly a preference
update comments

svn path=/trunk/; revision=8030
2003-07-16 08:38:16 +00:00
Ronnie Sahlberg 54ab042328 updates bugfix for the NumericString alphabet.
Implement some restricted ia5strings

svn path=/trunk/; revision=8029
2003-07-16 08:17:14 +00:00
Ronnie Sahlberg e146533cfd Add decoding of NumericString
svn path=/trunk/; revision=8018
2003-07-13 01:43:33 +00:00
Ronnie Sahlberg 6ffb0280ee Break out the PER functions from the alternative h245 dissector
and put them in their own file.

I had to put them im packet-per.c  instead of asn1-per.c  since othervise
i couldnt get it to invoke the register  routine from register.c

the per dissector is compiled into ethereal by default,  but there are no callers in ethereal until  the h245 dissector is added.

someone that knows the registry stuff better might consider renaming it to asn1-per.c instead of packet-per.c

svn path=/trunk/; revision=8017
2003-07-12 22:35:21 +00:00
Ronnie Sahlberg dcbe6da00a small updates
IA5String when tehre are no restriction on the alphabet is actually just an octet string

start populating the COL_INFO with request/response  commandname
COL_INFO will be tricky to get nice.
we might needs some hack to pass different values around through the dissect_per layer so can format values from different parts/subdissector functions nicely.

svn path=/trunk/; revision=8013
2003-07-10 07:31:50 +00:00
Ronnie Sahlberg 946b5baffa remove one more NOT_DECODED_YET for the subAddress IA5String
svn path=/trunk/; revision=8010
2003-07-09 11:07:57 +00:00
Ronnie Sahlberg d8643b8a13 Some more guesswork applied.
It looks like the constrained version of IA5String might be encoded as
a constrained integer followed by (byte aligned) a list of ASCII bytes makeing up shte string.

svn path=/trunk/; revision=8009
2003-07-09 11:02:50 +00:00
Ronnie Sahlberg 0e4218f45e Make ethereal decode normal unconstrained INTEGER types.
svn path=/trunk/; revision=8007
2003-07-09 10:21:45 +00:00
Ronnie Sahlberg 249b06f6e2 fix bug in dissect_per_GeneralString()
use proto_tree_add_item() instead of proto_tree_add_string() since there is nothing that says the string will be null terminated.

svn path=/trunk/; revision=8006
2003-07-09 09:45:42 +00:00
Guy Harris 94c2ea7e5b From Lars Roland: export "dissect_h245_OpenLogicalChannel()" and
"dissect_h245_MultimediaSystemControlMessage()" for use in the future by
other dissectors.

svn path=/trunk/; revision=7994
2003-07-08 18:16:44 +00:00
Ronnie Sahlberg 6b720cd68f remove one more redundant decode of the extensions present bit.
change the decode of sequence and extensions  to assume the lower bound for the number of extensions is 1 and thus 1 have to be added to the encoded value.

dont know if this is right or not, the satndard x691 does not mention anything
about the lb being 1 and the value being semiconstrained but a note at 18.8
does mention that the number of extensions can not be 0.

i think there is a difference between saying a value can not be zero and
between saying the lower bound is 1.  but hey it is a telco standard.

the change might be right or it might be wrong.
i think it is wrong or else the standard is wrong.
it at least dissects the very few captures i have properly.
telco guys, either give feedback or live with the dissector being potentially
wrong.
its that easy.

svn path=/trunk/; revision=7990
2003-07-08 11:39:45 +00:00
Ronnie Sahlberg 790e4a1b78 fix a small bug in dissect_per_choice where it dissected and displayed a bit for "extensions present" even if that bit was not encoded in the pdu.
svn path=/trunk/; revision=7989
2003-07-08 11:03:12 +00:00
Ronnie Sahlberg 9352374151 when extensions are present to a sequence,
for the individualk bits in the bitmap field for whether each extension
is present or not, add "(<extension name> [is|is NOT] present)" to the
tree item.

this makes the dissection of the extension bitmap more meaningful

svn path=/trunk/; revision=7988
2003-07-08 10:35:17 +00:00
Ronnie Sahlberg 9fb50f7318 When decoding the optional field bitmap for a sequence,
for the individual bits,  if we know the name of the optional field
then put "<field name> [is|is NOT] present"  into the tree pane
so we can see what each bit in this field refers to.

svn path=/trunk/; revision=7987
2003-07-08 10:22:20 +00:00
Ronnie Sahlberg 94e862eeb6 change the interfae so that dissect_per_boolean() also can return the proto_item
that was created to display the value.

svn path=/trunk/; revision=7986
2003-07-08 10:08:22 +00:00
Ronnie Sahlberg 634693b1f5 If we dont want the internal per stuff to be displayed,
dont put the object identifier length field in the tree.

svn path=/trunk/; revision=7970
2003-07-07 10:30:36 +00:00
Ronnie Sahlberg d516f11660 Attempt to decode GeneralString.
RFC2833 is a bit "unclear" but I guess this type is encoded
as first a length-determinant followed by the actual ascii data.

I belive the length-determinant is byte aligned in aligned-per so the entire
field is so.

at best, this is pure guesswork  but it does decode the single capture i do have containing GeneralString types properly.

Anyone interested are welcome to purchase and provide
proper h323 standard docs from itu-t and snail-mail them to me.
A random asn file from www.packetyzer.com together with the X.691 pdf file is
"difficult".

svn path=/trunk/; revision=7969
2003-07-07 10:22:59 +00:00
Ronnie Sahlberg 70d5abe409 minor updates
add a gboolean which controls whether the internal PER fields are to be displayed or not in the tree pane.

svn path=/trunk/; revision=7968
2003-07-06 11:11:41 +00:00
Ronnie Sahlberg a8b3756214 Small updates.
Replace dissect_h245_TransportAddress()  which was the generic decoder for the TransportAddress sequence  with several semi-identical routines that matches the name of the field (instead of the type).
This makes the presentation easier to read.

e.g.  Present this ip address as mediaChannel  which is the field name instead of as TransportAddress

svn path=/trunk/; revision=7967
2003-07-06 10:29:14 +00:00
Ronnie Sahlberg 34772e0b82 work copy of a h245 dissector and PER dissection helper routines.
read the comment at the top of the file for instructions on how to activate it and what needs to be done.

svn path=/trunk/; revision=7963
2003-07-04 09:24:00 +00:00