a protocol tree;
the column values.
This includes stats-tree listeners.
Have the routines to build the packet list, and to retap packets, honor
those requirements. This means that cf_retap_packets() no longer needs
an argument to specify whether to construct the column values or not, so
get rid of that argument.
This also means that there's no need for a tap to have a fake filter
to ensure that the protocol tree will be built, so don't set up a fake
"frame" filter.
While we're at it, clean up some cases where "no filter" was represented
as a null string rather than a null pointer.
Have a routine to return an indication of the number of tap listeners
with filters; use that rather than the global num_tap_filters.
Clean up some indentation and some gboolean vs. gint items.
svn path=/trunk/; revision=28645
http://anonsvn.wireshark.org/viewvc/viewvc.cgi?view=rev&revision=28534
User: wmeier
Date: 2009/05/30 11:07 AM
Log:
Fix the save_as functions so they work (including work-around when save-as raises an alert box).
Also:
- save_as_csv: don't skip over first line of output;
- save_as_csv: Fix some (probably significant) memory leaks
associated with the use of gtk_tree_view;
- Prevent tendency for IAX2 stream window and graph window
to get lost behind other windows;
- Minor save_as dialog window reformatting;
- Misc source code cleanup & reformatting.
To RTP Analysis.
svn path=/trunk/; revision=28551
up (99 44/100% of which were assignments of double-precision
floating-point constants to floats). Hopefully this will catch at least
some P64 issues on UN*X.
svn path=/trunk/; revision=28108
(In each case the arg values used [4,0] were the same as the defaults).
checkAPIs.pl: gtk_button_box_set_child_ipadding: 'W' --> 'E'
svn path=/trunk/; revision=28030
it hangs for a while before allowing the user to interact with the window.
Fixed by setting columns to fixed height and fixed width.
Also: Don't display columns we were hiding in the CList version of this
window.
svn path=/trunk/; revision=27551
unprotect_thread_critical_region() in every module in gtk/: instead have those
modules include main.h (which has the properly extern'd prototype).
This should fix the link error on HP-UX described in
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2702
svn path=/trunk/; revision=25933
libwireshark (and the plugins using those functions) do not depend on
wiretap on Windows.
While doing that, rename the eth_* functions to ws_*.
svn path=/trunk/; revision=25354
The attached patch makes the Statistics -> RTP -> Show All Streams feature of
wireshark accessible via tshark.
I found it helpful in dealing with tons of RTP captures.
svn path=/trunk/; revision=24252
est. Use g_ascii_strcasecmp() and g_ascii_strncasecmp(), and supply our
own versions if they're missing from GLib (as is the case with GLib
1.x).
In the code to build the list of named fields for Diameter, don't use
g_strdown(); do our own g_ascii_-style upper-case to lower-case mapping
in the hash function and use g_ascii_strcasecmp() in the compare
function.
We do this because there is no guarantee that toupper(), tolower(), and
functions that use them will, for example, map between "I" and "i" in
all locales; in Turkish locales, for example, there are, in both
upper case and lower case, versions of "i" with and without a dot, and
the upper-case version of "i" is "I"-with-a-dot and the lower-case
version of "I" is "i"-without-a-dot. This causes strings that should
match not to match.
This finishes fixing bug 2010 - an earlier checkin prevented the crash
(as there are other ways to produce the same crash, e.g. a bogus
dictionary.xml file), but didn't fix the case-insensitive string matching.
svn path=/trunk/; revision=23623
RTP analysis' jitter values are thrown off by RTP events
http://bugs.wireshark.org/bugzilla/show_bug.cgi?id=1076
a) Ephemeral string (packet duration) was inserted into long-term hash of
dynamic payloads
b) There was no clock_rate mapping for MIME type "telephone-event".
svn path=/trunk/; revision=22780
find attached several trivial diffs for viewing RTP SSRC values in Hex
rather than Dec at various places in the UI.
Also includes change from BASE_DEC to BASE_HEX_DEC for corresponding RTP
and RTCP dissector header fields.
svn path=/trunk/; revision=22017
Fix compilation failures when building wireshark-0.99.6-SVN-21916 on an
x86_64-unknown-linux-gnu target with gcc version 4.1.2 20070403 (Red Hat
4.1.2-8).
The failures fall into two categories:
(1) Casts between pointers and 32-bit integers without an intermediary cast
via 'long' or 'unsigned long'. This results in a compiler warning complaining
about casts between a pointer and an integer of a different size.
(2) Passing values to "%lld" or similar printf-style format options that the
compiler thinks are a different size. Such values need to be cast to 'long
long' or 'unsigned long long'.
svn path=/trunk/; revision=21975
wrong timestamp. Place a cap on the amount of silence that we do
insert. This should fix bug 1580.
Update the release notes.
svn path=/trunk/; revision=21818
32-bit numbers. Separate signed and unsigned accessors have been
added and used where appropriate.
Definitely not for 0.99.5.
svn path=/trunk/; revision=20472
Below is a patch for a bug in rtp_analysis.c. The variable
statinfo->delta_timestamp was not initialized in all the
necessary cases. The function rtp_packet_save_payload uses this
variable and the for loop on line 935 could use an old value
and run an incorrect amount of times, e.g. a couple billion,
which gets ethereal stuck. I can supply an example capture
which causes it. The patch solves the problem.
svn path=/trunk/; revision=18798
button"; "Stop" should be used for operations that can only be stopped
(meaning that what it's already done isn't undone), not cancelled
(meaning that whatever it's already done *is* undone), for which
"Cancel" is used.
Allow the merging process to be cancelled.
Clean up indentation.
Update some comments.
svn path=/trunk/; revision=16489
to do this, I've added file_util.h to wiretap (would file_compat.h be a better name?), and provide compat_macros like eth_open() instead of open(). While at it, move other file related things there, like #include <io.h>, definition of O_BINARY and alike, so it's all in one place.
deleted related things from config.h.win32
As of these massive changes, I'm almost certain that this will break the Unix build. I'll keep an eye on the buildbot so hopefully everything is working again soon.
svn path=/trunk/; revision=16403
directory to the epan directory. Some of them should perhaps ultimately
be moved to epan/dissectors, if they pertain only to stuff exported by a
particular dissector.
Fix Gerald's e-mail address in files we're moving.
svn path=/trunk/; revision=15844
generate columns; use cf_retap_packets instead of cf_redissect_packets()
when running taps (the general flow graph stat uses the Info column).
svn path=/trunk/; revision=15793
Patch which will enable saving payload in raw (binary) format in addition to the existing au format.
We have found it very useful to be able to extract the RTP data for use with other tools (especially when dealing with proprietary/uncommon coders).
Changes:
rtp_packet_save_payload: no longer transforms packet to linear coding, payload is saved in raw format
copy_file: will perform the needed transcoding and save to needed format (au or raw)
svn path=/trunk/; revision=15648
I've done more than a day to change the timestamp resolution from microseconds to nanoseconds. As I really don't want to loose those changes, I'm going to check in the changes I've done so far. Hopefully someone else will give me a helping hand with the things left ...
What's done: I've changed the timestamp resolution from usec to nsec in almost any place in the sources. I've changed parts of the implementation in nstime.s/.h and a lot of places elsewhere.
As I don't understand the editcap source (well, I'm maybe just too tired right now), hopefully someone else might be able to fix this soon.
Doing all those changes, we get native nanosecond timestamp resolution in Ethereal. After fixing all the remaining issues, I'll take a look how to display this in a convenient way...
As I've also changed the wiretap timestamp resolution from usec to nsec we might want to change the wiretap version number...
svn path=/trunk/; revision=15520
filter as an argument on the command line and have a dialog box to enter
the display filter through the GUI. Use it for all stats using
"gtk_tap_dfilter_dlg_cb()".
Add a top-level "stat_menu.h" file to declare "REGISTER_STAT_GROUP_E"
for the benefit of the declaration of "register_dfilter_stat()" in the
top-level "tap_dfilter_dlg.h". Rename the "stat_menu.h" in the gtk
directory to "gtk_stat_menu.h", so as not to have two headers with the
same name.
Get rid of headers not declaring any functions not being used in the
module.
svn path=/trunk/; revision=15493
- Add plugins_dlg.h
- Include .h files in their respective .c files
- Include .h and remove extern declarations in .c files
- set eol-style and keywords on gui_utils.[hc]
svn path=/trunk/; revision=15471
and "Statistics" menu items into "stat.h" and "stat.c", to separate them
from the core tapping APIs. A tap could conceivably not register as a
"-z" command-line argument or "Statistics" menu item, and a stat could
conceivably not be implemented as a tap, and dissectors that implement
tapping points don't need the UI-related stuff from "stat.h", they just
want the tap-related stuff in <epan/tap.h>.
svn path=/trunk/; revision=15427
This might at some places interfere with the changes for gcc4, we might have to negotiate in that case :-)
Please note that a lot of these warnings were GTK1.x related only!
svn path=/trunk/; revision=15286
_U_-ify some unused arguments, rather than assigning them to themselves.
Un-constify one variable that gets assigned a mallocated pointer.
Clean up indentation.
svn path=/trunk/; revision=15236
If you have an RTP stream in which the first packet is duplicated, and has the marker bit set, then the RTP stream analysis will try to pad silence into a temporary file from 0 upto whatever the RTP timestamp is (which is enough to fill up my disk...). The patch fixes this misbehaviour.
svn path=/trunk/; revision=14850
Other nodes will never be created by the tree (sort of auto pruning of the tree).
While this greatly spped up the processing performance of ethereal, it makes it "dangerous" for apps that try to walk the tree directly.
rtp_analysis did not specify the fields "rtp.version" nor " rtp.ssrc" when dissecting the current packet and as such these fields were no longer part of the tree.
This surprised rtp_analysis and a coredump resulted.
This change will add the field that we walkt the tree to find to the filter string so that they will be there.
svn path=/trunk/; revision=14200
add two toolbar toggle buttons
add icons to various menu items
create new Statistics telephony group and put telephony and alike protocols in it
svn path=/trunk/; revision=14098
optimization for COLUMNS to make ethereal faster when filtering
optimization to make the slow find_protocol_by_id() fast.
(idea from Didier, implementation modified by me to be less intrusive)
svn path=/trunk/; revision=14026
it's used to register a callback for a tap listener invoked if the
specified command line argument is specified to the "-z" flag.
Move it, along with routines to:
look up a "-z" argument in the table constructed by
"register_tap_listener_cmd_arg()" and either save the full
argument to "-z" and the corresponding listener if it's found or
return a failure indication if it isn't;
list the available tap listeners;
call the "init" routines for the tap listeners saved in the
table above;
and have Ethereal and Tethereal use those routines.
svn path=/trunk/; revision=13993
when formatting numerical values for CSV lists, save the locale
before formatting, set the locale to the "C" locale, and then
restore the locale, so that numbers are always formatted with
"." as the decimal point;
add to the RTP streams window a Copy button that copies all data
from the CList to the clipboard as CSV.
svn path=/trunk/; revision=13842
to determine forward and reverse directions. This fixes a capture I
have which has the same SSRC in the forward and reverse streams.
svn path=/trunk/; revision=13599
This includes: all functions in file.h now have a cf_ prefix, will have doxygen tags, will have the capture_file *cf as the first parameter and I tried to generalize the return values for non trivial functions.
Hopefully, I didn't introduced any new bugs, as I had to change a lot of files...
svn path=/trunk/; revision=13289