converted to pointers to null strings (see prefs.c for an explanation).
Initialize "current_asn1" to a mallocated null string.
That lets us use "strcmp()" to compare asn1_filename and current_asn1.
We already do that with asn1_pduname and current_pduname, so use
"strcmp()" for them as well.
Call "build_pdu_tree()" if we haven't yet built a PDU tree, even if the
PDU type preference hasn't changed.
Don't register with any of the ports unless we have a PDU tree, so we
don't try to dissect with a null PDU tree pointer.
Before constructing a PDU tree, if we already have a PDU tree, free it.
When we free data_nodes, free the data attached to the nodes.
Make a bunch of stuff static.
svn path=/trunk/; revision=12045
and as plugin dissectors shouldn't be linked with GTK+ (so that they
don't depend on Ethereal being built with a particular version of GTK+ -
Ethereal is packaged for Windows in both GTK+ 1.3[.x] and 2.x versions -
and so that they can work with Tethereal, which doesn't use GTK+).
svn path=/trunk/; revision=11840
check for it in the Gryphon plugin.
Use "tvb_get_ntoh64()" to fetch the time stamp, and format it similarly
to the way absolute date/time time stamps are formatted.
svn path=/trunk/; revision=11800
preferences to the new multi-port ones, so that, instead of complaining
when the old preferences were seen, we make the port be the one port in
the new preference.
Make the "message_win" "generic ASN.1" preference an obsolete
preference, so we silently ignore it rather than complaining about it.
svn path=/trunk/; revision=11623
include of <resolv.h> in any system header file gets the system
<resolv.h> (needed for builds on Tru64 with GTK+ 1.2[.x]).
svn path=/trunk/; revision=11615
add SCTP support;
allow more than one port number to be specified;
add recovery from garbled or incomplete ASN.1 messages.
svn path=/trunk/; revision=11572
Also move ncp222.py, x11-fields, process-x11-fields.pl,
make-reg-dotc, and make-reg-dotc.py.
Adjust #include lines in files that include packet-*.h
files.
svn path=/trunk/; revision=11410
they have LF at the end of the line on UN*X and CR/LF on Windows;
hopefully this means that if a CR/LF version is checked in on Windows,
the CRs will be stripped so that they show up only when checked out on
Windows, not on UN*X.
svn path=/trunk/; revision=11400
(plugins/mgcp/packet-mgcp.c), initially for the ConnectionParameters(P),
and updates/adds some specification references.
This patch makes the sub parameter values filterable as numbers and
may allow for improved MGCP statistics in the future.
svn path=/trunk/; revision=11033
convenient to put into a command line (no capital letters, no spaces to
require quotes), and one that's a detailed description for use in the
UI. Allow either of them in the preferences file or "-o" option; use
the detailed description in the UI, and also use it when writing the
preferences out, so that the preference will be readable by older
versions of Ethereal (assuming the preference existed in that version).
Update "README.developer" to give more detail about an enum_val_t (and
to put the _t in), and to give a more detailed description of the
"radio_buttons" argument to "prefs_register_enum_preference()".
svn path=/trunk/; revision=10982
add a config.nmake option to control whether to build
libethereal.dll or not;
remove "./wiretap" from PATH to prevent problems due to
wrongly-loaded files;
build dissector.lib with MSVC;
move "print.c" and "ps.c" to the dissector helpers, as "print.c"
imports variables from packet-frame.c and packet-data.c, which
are in libethereal;
move "g711.c" out of the dissector helpers, as they're used only
by Ethereal in a tap, not in Tethereal or in any dissector;
add a .def file for libethereal;
arrange to declare global variables exported from libethereal
with "__declspec(dllimport)" when building programs that import
those variables;
update the NSIS installer.
Make the "configure" script define ETH_VAR_IMPORT as "extern".
svn path=/trunk/; revision=10834
errors to the user. Use that, rather than "g_warning()", in the
Diameter dissector to report errors reading the dictionary.
Make the format argument to "simple_dialog()" a "const" pointer.
Fix up the read-error message in Tethereal to end with a newline.
If a simple dialog is requested before the main window or the
capture-control window is popped up, queue it up and pop the queued
messages up once the main or capture-control window is displayed.
svn path=/trunk/; revision=10616
line to every Makefile.am file for a given plugin XXX:
XXX_la_LIBADD = -L../../epan -lethereal @GLIB_LIBS@
This way symbols defined in libethereal and GLib are resolved when linking
the plugin dissector modules.
svn path=/trunk/; revision=10601
nth-grandparent-up for a protocol tree item and to get the last item
created by the BER dissector (that API and the new names for the
universal tags were supplied by him - the checkin item didn't give him
credit).
svn path=/trunk/; revision=10491
support them.
From Ronnie Sahlberg: Kerberos updates with new constants from the
current draft, decryption and dissection of Kerberos blobs, and changes
to work with the changed BER dissector.
svn path=/trunk/; revision=10479
that dissectors should call to report file open and read errors, and
have "report_open_failure()" and "report_read_failure()" call through
those pointers, rather than being defined and exported by the
application using libethereal - instead, the application would define
those functions and pass pointers to them to 'epan_init()".
Move "report_err.h" to the epan directory, as the functions it declares
are now part of the libethereal API.
svn path=/trunk/; revision=10470
have to worry about overflowing a buffer; thanks to Stefan Esser for
catching that one. (It also means we handle it if there's no '\0' at
the end.)
svn path=/trunk/; revision=10341
Update README.plugins to use ENABLE_STATIC instead of __ETHEREAL_STATIC__
Update some plugins, that were created after my changes according to the
outdated docs.
Changed occurrences of
G_MODULE_EXPORT void plugin_reg_handoff(void)
into
G_MODULE_EXPORT void
plugin_reg_handoff(void)
as the one line Python version doesn't work with the Python of Suse 9.0
svn path=/trunk/; revision=10281
read errors; there are separate implementations for Ethereal (pops up an
alert box) and Tethereal (prints an error message).
Use those routines in the ASN.1 dissector.
svn path=/trunk/; revision=10152
the ASN.1 file if the pathname is the old default file pathname, with
the last component preceded by "/" rather than "\", to suppress
complaints if you have a preferences file saved under the old regime.
svn path=/trunk/; revision=10118
scrolled_window_new().
added gtk_scrolled_window_set_policy(AUTOMATIC,AUTOMATIC) to
scrolled_window_new()
added GTK2's gtk_scrolled_window_set_shadow(GTK_SHADOW_IN)
to every place needed
svn path=/trunk/; revision=9999
type in the IrLAP control field - on most UNIXes the dissector should be
able to use the table from the main program, but that doesn't currently
work on Windows.
svn path=/trunk/; revision=9717
tables, for use in the top-level item for the control field, for
unnumbered frame function codes for commands and responses. If the
argument is null, default to the standard tables.
Use "dissect_xdlc_control()" and the #defines from "xdlc.h" for IrDA.
Use the reported length rather than the data length in the IrDA
dissector when iterating over the data in an IrDA packet.
Make "dissect_xid()" update the column information as well as the
protocol tree. Put the slot number into the protocol tree only for
command frames - "the slot number field is undefined in discovery XID
response frames", to quote the IrLAP spec.
svn path=/trunk/; revision=9716
tables, for use in the top-level item for the control field, for
unnumbered frame function codes for commands and responses. If the
argument is null, default to the standard tables.
Use "dissect_xdlc_control()" and the #defines from "xdlc.h" for IrDA.
Use the reported length rather than the data length in the IrDA
dissector when iterating over the data in an IrDA packet.
Make "dissect_xid()" update the column information as well as the
protocol tree. Put the slot number into the protocol tree only for
command frames - "the slot number field is undefined in discovery XID
response frames", to quote the IrLAP spec.
svn path=/trunk/; revision=9715
tables, for use in the top-level item for the control field, for
unnumbered frame function codes for commands and responses. If the
argument is null, default to the standard tables.
Use "dissect_xdlc_control()" and the #defines from "xdlc.h" for IrDA.
Use the reported length rather than the data length in the IrDA
dissector when iterating over the data in an IrDA packet.
Make "dissect_xid()" update the column information as well as the
protocol tree. Put the slot number into the protocol tree only for
command frames - "the slot number field is undefined in discovery XID
response frames", to quote the IrLAP spec.
svn path=/trunk/; revision=9713
dissectors assume a two's-complement machine (we offer our apologies to
those trying to run it on sign-magnitude IBM 7090/7094's and one's
complement Univac/Unisys 11xx machines :-)).
svn path=/trunk/; revision=9584
pointers to hf_ values, so the subfields of the control field are put
into the protocol tree as filterable items. Change the protocols that
use it appropriately.
Export "dissect_xdlc_control()" to plugins.
svn path=/trunk/; revision=9531
packet-irda.c:453:1: warning: C++ style comments are not allowed in ISO C90
packet-irda.c:453:1: warning: (this will be reported only once per input file)
(+ several more // disabling debug output)
svn path=/trunk/; revision=9377
From Anders Broman: patches to various makefiles and configure scripts
to build the V5UA dissector, and patches to make it compile.
From me: .cvsignore file, and NSIS patches.
svn path=/trunk/; revision=9311
than32 bits risks overflow problems).
Use "gint" for tvbuff lengths.
Use -1 for uses of "tvb_length_remaining()" that mean "the rest of the
tvbuff"; use "tvb_reported_length_remaining()" for "the rest of the
packet.
Clean up the handling of the DOCSIS payload.
svn path=/trunk/; revision=9267
than32 bits risks overflow problems).
Use a "gint" as the length of the vsif TLV, as that's what
"tvb_length_remaining()" returns.
svn path=/trunk/; revision=9266
protocol tree stuff not use GNodes means that the ASN.1 plugin now needs
to be explicitly linked against GLib in order to get access to the GNode
routines, otherwise you get errors from the run-time linker.
svn path=/trunk/; revision=9173
like "decode_enumerated_bitfield()" but handles value_string tables
containing values as they appear in the bitfield rather than as they
appear in the item containing the bitfield.
svn path=/trunk/; revision=9134
Make "proto_is_protocol_enabled()" and "proto_get_protocol_short_name()"
take a "protocol_t *" as an argument, so they don't have to look up the
"protocol_t" - this will probably speed them up considerably, and
they're called on almost every dissector handoff.
Get rid of a number of "proto_is_protocol_enabled()" calls that aren't
necessary (dissectors called through handles, including those called
through dissector tables, or called as heuristic dissectors, aren't even
called if their protocol isn't enabled).
Change some direct dissector calls to go through handles.
svn path=/trunk/; revision=9002
Make "proto_is_protocol_enabled()" and "proto_get_protocol_short_name()"
take a "protocol_t *" as an argument, so they don't have to look up the
"protocol_t" - this will probably speed them up considerably, and
they're called on almost every dissector handoff.
Get rid of a number of "proto_is_protocol_enabled()" calls that aren't
necessary (dissectors called through handles, including those called
through dissector tables, or called as heuristic dissectors, aren't even
called if their protocol isn't enabled).
Change some direct dissector calls to go through handles.
svn path=/trunk/; revision=8979
typedef enum _foo foo;
enum _foo {
...
};
You have to define the enum before using it in a typedef. (If I had my
ANSI C89 standard handy, I could say whether that was legal ANSI C or
not.)
svn path=/trunk/; revision=8918
* Added a new function get_file_in_temp() to
epan/filesystem.c. This because of asn1.dll plugin which
had code to write to a log-file "c:\temp\ethereal.log". I feel
this patch makes this safer; I don't even have a c:\temp dir.
* Patched packet-asn1.c to use get_file_in_temp().
* Added some #undef to packet-snmp.c to silence gcc.
* Changed "%u" -> "%lu" formats in util.c
Rename get_file_in_temp() to get_tempfile_path() to match other function
names.
svn path=/trunk/; revision=8859
ENOENT when trying to open the SNACC file, and the file we're trying to
open is the default file, don't print a warning.
Fix some typoes.
svn path=/trunk/; revision=8806
recurse into subdirectories doing "nmake -f Makefile.nmake distclean".
Have "nmake -f Makefile.nmake clean" not remove stuff that "make clean"
doesn't remove (such as Flex/Bison output and config.h files) - and have
"nmake -f Makefile.nmake distclean" remove stuff that "make distclean"
removes, including "tethereal-tap-register.c" and
"ethereal-tap-register.c".
svn path=/trunk/; revision=8672
/* XXX This code is neither Endianess independent, nor will it work
* on platforms that do not support the *optional* guin64 type
*/
svn path=/trunk/; revision=8626
Added two new "well known destinations": SD_IOPWR AND SD_UTIL.
Added logic to dissect the CMD_SET_TIME command.
Added an alterate destination for the CMD_PGM_START command.
Added logic to dissect the CMD_SCHED_MSG_REPLACE command.
Added logic to dissect the CMD_USDT_REGISTER command.
Added logic to dissect the CMD_USDT_SET_FUNCTIONAL command.
Added logic to dissect the following commands
CMD_IOPWR_GETINP
CMD_IOPWR_GETLATCH
CMD_IOPWR_CLRLATCH
CMD_IOPWR_GETOUT
CMD_IOPWR_SETOUT
CMD_IOPWR_SETBIT
CMD_IOPWR_CLRBIT
CMD_IOPWR_GETPOWER
CMD_UTIL_SET_INIT_STRATEGY
CMD_UTIL_GET_INIT_STRATEGY
Added the ability to recongnize more IOCTLS. (For the SJA1000 driver, LIN
and power drivers.)
Added the ability to recognize more card types.
Added dissection of more fields for CMD_SCHED_TX command.
Bug fixes and general updating.
svn path=/trunk/; revision=8607
Remove the internal packet-per.c functions
"dissect_per_length_determinant()" and
"dissect_per_normally_small_nonnegative_whole_number()" from the
plugin API, as they shouldn't be used outside the PER dissector.
Remove the H.225/H.245 functions
"dissect_h225_TransportAddress()" and
"dissect_h245_NonStandardParameter()" from the plugin API until
we really need them in plugins.
Add the string dissector table functions to the plugin API.
svn path=/trunk/; revision=8532
- get rid of ...-static.o files in the build process (now done via
config.h instead of compiler flag)
- make packet-rtnet link statically (remove one unused function, rename
another one)
svn path=/trunk/; revision=8389
translate MEGACO error codes to descriptions, and show the media
descriptor differently.
"tvb_new_subset(tvb,0,tvb_length(tvb),-1)" returns a tvbuff equivalent
to "tvb"; don't bother calling "tvb_new_subset()".
svn path=/trunk/; revision=8353
"tvb_new_subset(tvb, 0, -1, -1)", which is equivalent to just "tvb" -
it's creating a "subset" that includes the entire tvbuff. Don't bother
with the "tvb_new_subset()" call.
svn path=/trunk/; revision=8341
move the initialization of the addresses in the plugin interface
structure from run-time to link time;
don't attempt to rebuild the X* files automatically, just warn
that they're out of date and show the command used to rebuild
them (not everybody has GCC installed, but it's required in
order to rebuild them).
Get rid of the checked-in Xepan_plugins.c, as it's no longer generated
or used.
Fix Makefile.am now that Xepan_plugins.c has been replaced by Xass-list.
Give plugin_gen.py an RCS ID.
svn path=/trunk/; revision=8186
"delete_giop_user_module()" to the list of exported functions on
platforms where a run-time loaded module can't directly access functions
from the main program.
svn path=/trunk/; revision=8143
"dissector_get_port_handle()", "dissector_handle_get_short_name()",
"dissector_handle_get_protocol_index()", "new_register_dissector()", and
"new_create_dissector_handle()" to the list of APIs available to
plugins on platforms where plugins have to call core Ethereal routines
through pointers.
"extern"alize the remaining routines in "epan/packet.h".
svn path=/trunk/; revision=8116
all packets have an "=" in them, which TransactionResponseAcks do not.
Check some of the "tvb_find_guint8()" replies and give up if they return
-1.
svn path=/trunk/; revision=8102
should blow up when handed a null pointer on all platforms that map low
addresses out of the address space, which is most if not all of them at
this point, and calls to "assert()" cause problems if you mix
GCC-compiled and Sun-C-compiled code.
svn path=/trunk/; revision=8047
variables the user configures - the user isn't expected to change
GLIB_LIBS or GTK_LIBS, and there's a comment nothing that users
shouldn't have to do so), which contain the appropriate libraries for
building stuff that requires only GLib, and stuff that required GTK+ and
GLib, respectively, and use those macros in the Makefile.nmake files.
svn path=/trunk/; revision=7885
variables the user configures - the user isn't expected to change
GLIB_CFLAGS or GTK_CFLAGS, and there's a comment nothing that users
shouldn't have to do so), which contain the appropriate "/I" flags for
building stuff that requires only GLib, and stuff that required GTK+ and
GLib, respectively, and use those macros in the Makefile.nmake files.
svn path=/trunk/; revision=7884
tvb_get_string() - takes a tvbuff, an offset, and a length as
arguments, allocates a buffer big enough to hold a string with
the specified number of bytes plus an added null terminator
(i.e., length+1), copies the specified number of bytes from the
tvbuff, at the specified offset, to that buffer and puts in a
null terminator, and returns a pointer to that buffer (or throws
an exception before allocating the buffer if that many bytes
aren't available in the tvbuff);
tvb_get_stringz() - takes a tvbuff, an offset, and a pointer to
a "gint" as arguments, gets the size of the null-terminated
string starting at the specified offset in the tvbuff (throwing
an exception if the null terminator isn't found), allocates a
buffer big enough to hold that string, copies the string to that
buffer, and returns a pointer to that buffer and stores the
length of the string (including the terminating null) in the
variable pointed to by the "gint" pointer.
Replace many pieces of code allocating a buffer and copying a string
with calls to "tvb_get_string()" (for one thing, "tvb_get_string()"
doesn't require you to remember that the argument to
"tvb_get_nstringz0()" is the size of the buffer into which you're
copying the string, which might be the length of the string to be copied
*plus 1*).
Don't use fixed-length buffers for null-terminated strings (even if the
code that generates those packets has a #define to limit the length of
the string). Use "tvb_get_stringz()", instead.
In some cases where a value is fetched but is only used to pass an
argument to a "proto_tree_add_XXX" routine, use "proto_tree_add_item()"
instead.
svn path=/trunk/; revision=7859
given a tvbuff/offset pair referring to the byte past the end of the
item. Use it in one place in the SMB dissector (there are plenty of
other places where it could be used as well).
svn path=/trunk/; revision=7603
Add Response-Time statistics for each known mgcp message-type.
Fix a few bugs and remove trailing whitespace.
Use "gdouble" for printing time-values and calculating the
average. It is easier to use and shouldn't overflow on big
trace files like "guint32".
Move some functions for time statistics into the new file
timestats.c in the main directory. This code may be useful in
the rpc and smb rtt-taps as well.
svn path=/trunk/; revision=7469
most, if not all, platforms on which Ethereal runs, a guint32 is an
"unsigned int", not an "unsigned long", and on platforms where an
"unsigned long" is 64 bits, "%ld" is definitely wrong - and so is
"%lu").
svn path=/trunk/; revision=7296
to be using it for stuff that should be hex, and for stuff that should
be Boolean. Use BASE_DEC if it should be decimal, BASE_HEX if it should
be hex, and make it Boolean if it should be Boolean.
svn path=/trunk/; revision=7053
Move SCTP payload protocol IDs to a header file, and get the PPIDs from
that header file rather than defining them in dissectors running atop
SCTP. Use both the old(?) and official PPID for ASAP.
svn path=/trunk/; revision=6926
script for the plugin directory; in most Makefile.am files it's set with
plugindir = @plugindir@
(along the lines of what's done with other variables with pathnames -
the variable name is all lower case), so the variable needs to be named
"plugindir".
Fix the DOCSIS plugins' Makefile.am to use "plugindir".
Don't bother doing "AC_SUBST(PLUGIN_DIR)", as no Makefiles use
PLUGIN_DIR as an autoconf variable.
svn path=/trunk/; revision=6887
the same long name, short name, or filter name, and abort if there are.
Fix the duplicate names that found (and another name error found while
fixing one of those errors).
svn path=/trunk/; revision=6425
protocol tree is being built or not, we must also construct a tvbuff to
hand to that dissector regardless of whether a protocol tree is being
built or not.
svn path=/trunk/; revision=6402
- Bug in the dissection of the Request/Transmit policy in packet-tlv.c
- Incorrect filter string for docsis.ehdr.ver
- Dissection of PHS Upstream/Downstream Extended Header sub-elements
- Dissection of Unsolicited Grant Sync sub-element
svn path=/trunk/; revision=6141
While we're at it, add "extern" to a bunch of function declaration the
preceding change *didn't* require to have the "extern" added.
svn path=/trunk/; revision=5995
fix a minor problem in which the Info colum was incorrectly
defaulted to "Fragmentation Frame";
add 4 missing fields for the Extended header in Fragmentation
frames.
svn path=/trunk/; revision=5902
*inviolable guarantee* that the offset will *never* be bigger than 255.
(The same applies for "guint16" and 65535.) Otherwise, you run the risk
of an infinite loop (packets are not guaranteed to be valid, nor are the
contents of capture files - and there's no guarantee that you're reading
a DOCSIS file if you've turned on the "force interpretation as DOCSIS"
flag.)
svn path=/trunk/; revision=5897
should do if it doesn't find an EOL; if FALSE, it behaves as before,
returning values that treat the line as ending at the end of the tvbuff,
and if TRUE, it returns -1, so its caller can do segment reassembly
until it gets the EOL.
Add an option to the SMTP dissector to do segment reassembly, and do
segment reassembly of the first line.
svn path=/trunk/; revision=5891
dftest.c:
Remove #if-0-ed includes
packet-ieee80211.c, packet-wtls.c, packet-afp.c, packet-wsp.c,
packet-wtp.c, ethereal_gen.py:
Remove redundant include varargs (already in snprintf.h,
and required only for snprintf.h)
Remove unused include of snprintf.h from files not using
"snprintf()".
svn path=/trunk/; revision=5889
management frame, the Info column isn't erased.
Replace a call to "tvb_length_remaining()" with the value returned by a
earlier identical call.
svn path=/trunk/; revision=5867
DOCSIS support, including support for "Ethernet" captures where
the raw frame is a DOCSIS frame rather than an Ethernet
frame (some Cisco cable-modem head-end gear can send out a
trace of all traffic on an Ethernet, but what it sends are
the raw bytes of DOCSIS frames, not Ethernet frames)
Get rid of second AUTHORS entry for Devin Heitmueller, merging its item
into the older entry.
Clean up the order of some lists of plugin items.
svn path=/trunk/; revision=5861
Don't add "-I/usr/include" to CFLAGS or CPPFLAGS; GCC 3.1 warns
about it, and it's not necessary.
Expand the plugin directory path used for installation at
installation time, rather than configuration time, so the user
can reset "prefix" at installation time.
svn path=/trunk/; revision=5828
whether the length value in the TPKT header is large enough to include
that much payload - if not, report the packet as not being a TPKT
packet.
Have the heuristic Q.931 dissector supply the appropriate value.
svn path=/trunk/; revision=5457
where the pointer to "dissect_data()" was in 0.9.3; the pointer to
"dissect_data()" wasn't initialized in 0.9.3 (as the function wasn't
exported - you call it through a handle), so no plugin should have been
using it, and putting the pointer to "tcp_dissect_pdus()" in its place
means the structure offsets of all function pointers after it will be
the same in 0.9.3 and the next release, preserving binary compatibility
for plugins.
svn path=/trunk/; revision=5395
extracting PDUs from it and possibly doing reassembly. Make the COPS,
DNS, DSI, Gryphon, and SCCP dissectors use it.
Add "set_actual_length()", "tcp_dissect_pdus()",
"decode_boolean_bitfield()", "decode_numeric_bitfield()", and
"decode_enumerated_bitfield()" to the list of routines available to
dissectors on platforms where routines in the main program aren't
available to dynamically-loaded code.
Declare routines in "to_str.h" as "extern"; as I remember, that's
necessary to allow the "decode_XXX_bitfield()" routines declared therein
to be made available to plugins as per the above.
Note that new exported routines should be added to the end of the table
if that's the only change being made to the table.
Create a new "plugin_api_decls.h" header file, used to declare both the
"p_" variables and the "p_" structure members in the routine-exporting
mechanism; this reduces the number of places you have to change to
change the list of exported routines.
svn path=/trunk/; revision=5394
As a result of that, we now construct a tvbuff for each Gryphon message;
this obviates the need to pass a message length to the dissectors for
each message type.
svn path=/trunk/; revision=5321
In the "configure.in" files, add
-D_U_="__attribute__((unused))"
to CFLAGS if we're using GCC, and add
-D_U_=""
otherwise, so _U_ can be used to mark arguments as unused.
Add -D_U_="" arguments to the Makefile.nmake files as well, so _U_ works
with Microsoft Visual C++ as well.
Add comments and RCS IDs to the Makefile.nmake files that don't already
have them.
svn path=/trunk/; revision=4824
have a TPKT header at the beginning, so there's not need for it to have
an offset as an argument; its callers don't have to know how big the
TPKT header is (or we can put a #define in "packet-tpkt.h" for it). Get
rid of the second argument.
svn path=/trunk/; revision=4791
packets per segment.
Instead of having a routine for dissectors such as the Q.931 dissector
to call to dissect the TPKT header, have a routine that does all the
reassembly and multiple-packets-per-segment work, and have the Q.931
dissector call it. Export "is_tpkt()", and the new routine, to plugins.
Add preferences for TPKT and Q.931 reassembly.
svn path=/trunk/; revision=4778