the network type being 1 and the byte after it being 2; we assume, for
now, that the network type is 1 byte, and that if the byte after it is
0, the network type is an NDIS type - 1, and if it's 2, it's an NDIS type.
svn path=/trunk/; revision=7973
have plugin support. (Don't do so if we *do* have it, because if
"proto_init()" ever changes so that it doesn't use the argument even if
we have plugin support, we want a warning so we know that we should get
rid of that argument.)
svn path=/trunk/; revision=7972
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
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
connection to check for addresses and ports at the same time, rather
then checking the source addresses, destination addresses, and ports
separately, as the latter doesn't handle A:X->B:Y and B:X->A:Y both
being active connections.
svn path=/trunk/; revision=7966
itself, so we leaked memory when freeing the interface list; in
"free_interface_list()", use "g_list_foreach()", calling a list free
routine, to free the data items in the list, and then use
"g_list_free()" to free the list.
Use "free_interface_list()" in "get_interface_list()" to free the list
if we have an error, as it now does what the code that use to be there
did.
svn path=/trunk/; revision=7965
Short Message reassembly;
Preference to allow automatic decoding of Short Message data as
CL-WSP if a Port Number UDH is present.
Use "%u" rather than "%d" for unsigned quantities.
Use "tvb_get_ntohs()" to fetch big-endian 16-bit quantities rather than
calling "tvb_get_guint8()" twice and reassembling yourself.
svn path=/trunk/; revision=7960
"tvb_get_string()" rather than "tvb_format_text()". (This fixes a
problem wherein we freed the return value of "tvb_format_text()", which
we should not do as "tvb_format_text()" doesn't dynamically allocate the
buffer it returns, but means that we don't handle non-printable
characters - but that's a problem with "cb_wstr_postprocess()" as well,
as "tvb_fake_unicode()" also doesn't handle non-printable characters
specially; we should fix the problem in *both* routines.)
svn path=/trunk/; revision=7955
UDH dissection in SMPP message
WTP and WSP dissection over SMPP (no reassembly)
WSP status code rendering in Info column
svn path=/trunk/; revision=7954
source files, so that they're not defined in every file that includes
the header file, regardless of whether the file uses the table (in which
case it should be defined in one file, and externally referenced in
other files) or not (in which case it should't be defined in that file
at all).
Get rid of a boilerplate comment paragraph that doesn't apply.
svn path=/trunk/; revision=7952
don't assume that a dissector handle has a protocol associated
with it (there's none for the "OSI network layer" dissector, for
example, as that dissector hands off to one of several protocols
based on the NLPID);
rename a few functions to have names that better explain what
they do;
have separate functions to show all the layer types (dissector
tables) and to show all the protocols supported for a layer
type, and have both of them take, as an argument, the standard
I/O stream to which they should write;
improve the parser for the "-d" option to give more information
on errors;
fix up some comments.
svn path=/trunk/; revision=7949
rathe than the record length minus the record header length, as the
number of available (captured) bytes in the packet. Check to make sure
that value isn't bigger than the record length minus the header length.
Only subtract the 4-byte FCS length from the purported length of the
packet on the wire if that would leave the on-the-wire length >= the
number of captured bytes, so that we can better handle capture files
from programs that produce LANalyzer-format captures where the
on-the-wire length *doesn't* include the FCS.
svn path=/trunk/; revision=7948
Make it have the usual collection of 3 static buffers, just in case
somebody decides to call it more than once in the same
printf-like-routine call.
svn path=/trunk/; revision=7940
list rather than duplicating this information in the dissector. Some
of the opnum strings were starting to get out of date as developers
forgot to update the information in both places.
svn path=/trunk/; revision=7936
is pointless, as it's a 16-bit unsigned quantity. Remove those checks -
but note in a comment that WTAP_MAX_PACKET_SIZE must be at least 65535
(as there might well be link-layer types with packets at least that
large).
svn path=/trunk/; revision=7934