Commit Graph

78 Commits

Author SHA1 Message Date
Gerald Combs 6d731a3e79 Add TCP sequence number (Stevens-style) graphs.
Add the QCustomPlot widget. Thanks to Emanuel Eichhammer for granting a
license change. Move some common code from ui/gtk/tcp_graph.c to
ui/tap-tcp-stream.[ch]. Get rid of tcp_graph_selected_packet_enabled().
It was only used in the menu code and didn't match what we were doing
elsewhere.

Still quite a bit of work to do but it's a promising start.

svn path=/trunk/; revision=51538
2013-08-27 18:13:20 +00:00
Jakub Zawadzki c702e92121 Replace relative timestamp with reference frame number. Saves 16B per frame.
svn path=/trunk/; revision=50772
2013-07-21 23:07:33 +00:00
Jakub Zawadzki 28e9dcc4a9 Some work on multi file dissection
- make init_dissection/cleanup_dissection private for libwireshark
- implement epan_new(), epan_free()
- pass epan_t to epan_dissect*

svn path=/trunk/; revision=50761
2013-07-21 18:38:03 +00:00
Jakub Zawadzki ce81449ed9 packet dissection now takes pointer to tvb instead of guint8 data
implement frame_tvbuff, right now almost a copy of 'real' tvb.

svn path=/trunk/; revision=50497
2013-07-11 05:47:02 +00:00
Guy Harris 8c9edf1280 Have the seek-read routines take a Buffer rather than a guint8 pointer
as the "where to put the packet data" argument.

This lets more of the libwiretap code be common between the read and
seek-read code paths, and also allows for more flexibility in the "fill
in the data" path - we can expand the buffer as needed in both cases.

svn path=/trunk/; revision=49949
2013-06-16 00:20:00 +00:00
Chris Maynard b4414c61d9 As of r49659, StatisticsMenu is now just Statistics.
Fixes https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8770

svn path=/trunk/; revision=49788
2013-06-05 16:42:22 +00:00
Jaap Keuter 42c71a3261 Follow up on bug 8416.
Remove C++ incompatibilities in GTK+ 3 code.

svn path=/trunk/; revision=48606
2013-03-28 06:36:44 +00:00
Bill Meier 35d1b406d7 From beroset:
remove C++ incompatibilities
 https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8416 attachment #10408

Note: The following parts of the patch had been previously done:
 asn1/snmp/packet-snmp-template.c
 epan/dissectors/packet-snmp.c
 epan/dissectors/packet-x11.c

svn path=/trunk/; revision=48448
2013-03-21 02:58:59 +00:00
Anders Broman 12d85ac2b3 Use explicit casts.
svn path=/trunk/; revision=48144
2013-03-06 20:33:32 +00:00
Anders Broman 917661c7cb Get rid of xor_gc altogether, I think it's a remnant from the "old" cross-hair code.
svn path=/trunk/; revision=48140
2013-03-06 18:17:42 +00:00
Bill Meier f0f5583ce4 Remove redundant call to gtk_box_set_child_packing().
svn path=/trunk/; revision=47128
2013-01-16 22:43:58 +00:00
Bill Meier 128f123d7f Use gdk_cairo_set_source_rgba() and GdkRGBA.
svn path=/trunk/; revision=47121
2013-01-16 21:07:52 +00:00
Bill Meier 165f86b9a3 Cleanup: Whitespace, formatting-style, long-lines & etc.
Use "4 space" indentation.

Add an XXX comment about better formating needed
 for the text in the Help window (so the
 text columns line up and so the Help text
 looks better).

Comment out a "does-noting" for loop;

svn path=/trunk/; revision=47059
2013-01-14 04:28:16 +00:00
Bill Meier c7120ce08e Replace gtk_table...() with ws_gtk_grid...();
Also: Minor changes so that window resizing is handled
      identically in Gtk2 & Gtk3.

svn path=/trunk/; revision=47058
2013-01-14 03:13:55 +00:00
Michael Mann 86d690880f replace "unsigned" datatype with "guint". Some mpeg files needed "unsigned int" instead.
bugs 7825-7827 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7825)

svn path=/trunk/; revision=46928
2013-01-04 05:22:43 +00:00
Guy Harris 97937db263 The inverse of GINT_TO_POINTER() is GPOINTER_TO_INT(); use it. That
squelches some warnings.

svn path=/trunk/; revision=46729
2012-12-24 23:12:34 +00:00
Martin Mathieson b369116122 Don't cast away constness of passed-in tap structs.
svn path=/trunk/; revision=46552
2012-12-16 00:43:37 +00:00
Pascal Quantin 252c23c744 From Edwin Groothuis via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8083 :
Abstract some constants by defines in tcp_graph.c

svn path=/trunk/; revision=46524
2012-12-12 22:08:02 +00:00
Bill Meier 7cd0417af5 Fix numerous instances of a variable/parameter name "shadowing" a library function name;
(At least some (gcc ?) compilers give a "shadow" warning for these).

svn path=/trunk/; revision=46402
2012-12-05 15:56:36 +00:00
Anders Broman 0f19bd385b From Jim Young:
Refactoring committed in Revision 460001 of tcp_graph.c introduced a copy&pasteo to wscale_make_elmtlist() such that compare_headers() would always return false.  Consequently no elements would get added to the list of elements to be plotted.

The attached patch corrects wscale_make_elmtlist() so that the Windows Scaling graph will plot elements.

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8018

svn path=/trunk/; revision=46200
2012-11-26 08:50:25 +00:00
Bill Meier 6f606223aa Fix a [-Wshadow] warning;
svn path=/trunk/; revision=46188
2012-11-25 21:54:55 +00:00
Martin Mathieson 4fb9cfe714 Set line width 1 for the cairo context used to draw all lines (bug
8017).  Do it outside of the loop.

svn path=/trunk/; revision=46176
2012-11-25 14:15:02 +00:00
Martin Mathieson 8abda3c25a Needed to match up correct element lists for data + control for tcptrace
graphs.

Should really make clearer the way lists of elements are allocated and
the final next is assigned to NULL...

svn path=/trunk/; revision=46174
2012-11-25 02:04:00 +00:00
Martin Mathieson 6851b6dee2 Show ACK after data list, so grey/blue is visible when zoomed out.
svn path=/trunk/; revision=46173
2012-11-25 00:35:36 +00:00
Martin Mathieson 535a8887d7 From Jim Young:
- restore rendering TCP graph titles with black text (fixing bug 8016)

Plus a couple of updated comments.

svn path=/trunk/; revision=46164
2012-11-24 14:20:00 +00:00
Martin Mathieson f4c90e138d Was not allocating a large enough element array for tput graphs.
svn path=/trunk/; revision=46079
2012-11-18 19:52:48 +00:00
Martin Mathieson 1a1e7f38b7 - Make perform_zoom() quickly return if graph already fully zoomed out
- Restore zooming out with middle-button + shift
- Lose unused graph->next and register_tap_listener_tcp_graph()
- Fix up some whitespace

svn path=/trunk/; revision=46072
2012-11-18 15:56:29 +00:00
Martin Mathieson e9e2137c19 Try to cast away windows buildbot errors.
svn path=/trunk/; revision=46025
2012-11-13 20:13:32 +00:00
Martin Mathieson 14d585d743 Zoom in on a rectangle chosen by clicking and dragging the left mouse
button.

From Edwin Goothuis (bug 7931), with some small edits and
comments from me.

svn path=/trunk/; revision=46024
2012-11-13 19:37:58 +00:00
Martin Mathieson 777b1274df Initialise a variable and try to make the OSX-10.6-x64 buildbot happy.
svn path=/trunk/; revision=46007
2012-11-12 04:13:13 +00:00
Martin Mathieson 0aebd579e3 Show SACK information in TCP graphs. Also add a generated field for the
number of SACK ranges found in the SACK option.

This involved extending the IP options framework to include an extra
void* data field, which in the case of TCP is filled in with the tap
struct - other users currently pass NULL.

I first implemented the graph to sort the SACK ranges and show (in red)
the unacknowledged regions between them, but this became confusing where
the number of ranges is limited by TCP padding bytes. i.e. you can't
tell how many SACKs could have been encoded, so some of the gaps between
ranges may already have been received.

svn path=/trunk/; revision=46006
2012-11-12 03:55:46 +00:00
Martin Mathieson 0b3ffdd688 Allow TCP graphs to be launched from the conversation table window.
svn path=/trunk/; revision=46001
2012-11-11 18:32:47 +00:00
Jakub Zawadzki 77368c3668 Introduce epan_dissect_run_with_taps() which run dissection with taps.
unexport tap_queue_init, tap_push_tapped_queue

svn path=/trunk/; revision=45670
2012-10-20 19:27:24 +00:00
Jakub Zawadzki 78631020b8 Add wtap_pseudo_header union to wtap_pkthdr structure.
Use pkthdr instead of pseudo_header as argument for dissecting.

svn path=/trunk/; revision=45601
2012-10-16 21:50:57 +00:00
Martin Mathieson 6f112aa115 Copy of tap details needed to be a little bit deeper.
svn path=/trunk/; revision=45458
2012-10-10 23:09:52 +00:00
Martin Mathieson 81a50ff80b Take a deep copy of the tap struct in the tap function, as it is not
safe to access it after the packet has been fully dissected (the
struct will have been allocated with ep_alloc()).

svn path=/trunk/; revision=45449
2012-10-10 16:17:19 +00:00
Martin Mathieson 3884220435 Fix some indentation, add missing braces, and don't bother calling
cairo_set_width() inside the loops while doing the axes.

svn path=/trunk/; revision=45335
2012-10-06 00:23:23 +00:00
Martin Mathieson bf370afa44 When drawing an axis, only call cairo_stroke once all lines are drawn.
svn path=/trunk/; revision=45281
2012-10-03 09:15:16 +00:00
Martin Mathieson a273e4a913 Submit Jacub's fix for bug 7771 (hanging while drawing graph types that
involved ellipses). cairo_save/restore is nicer than
cairo_create/destroy, and quite a bit quicker too.

svn path=/trunk/; revision=45280
2012-10-03 08:58:12 +00:00
Jeff Morriss 3729335973 We always HAVE_CONFIG_H so don't bother checking whether we have it or not.
svn path=/trunk/; revision=45016
2012-09-20 01:48:30 +00:00
Martin Mathieson 1586d80a77 RLC: when zooming, use shift and control keys to lock vertical or
horizontal scaling respectively.

RLC+TCP: when already fully zoomed out, don't multiply zoom by 1.0 and redraw.
When holding down the key to zoom out, waiting to several redraws of the
whole graph to complete could take a while...

svn path=/trunk/; revision=44374
2012-08-09 04:02:35 +00:00
Martin Mathieson 3fc7c2348c Fix a couple of problems with the common zooming function.
svn path=/trunk/; revision=44341
2012-08-08 15:26:12 +00:00
Anders Broman 2e309b4d10 Remove cosshair cursor
svn path=/trunk/; revision=44340
2012-08-08 14:56:09 +00:00
Martin Mathieson aa65475748 Use a common function for doing zoom (shared by mouse and keyboard).
svn path=/trunk/; revision=44321
2012-08-08 02:51:22 +00:00
Martin Mathieson 9fd94df70f Do the cross like it is in rlc_lte_graph.c, i.e. by just drawing black
lines, then erasing by re-showing the current pixmap.

svn path=/trunk/; revision=44316
2012-08-07 23:04:48 +00:00
Anders Broman 52cb35b85a It should now compile with GDK_DISABLE_DEPRECATED
svn path=/trunk/; revision=44300
2012-08-07 13:58:23 +00:00
Martin Mathieson a0a35a9c49 Reset a flag when restore to original view, again to avoid leaving a
cross on the screen.

svn path=/trunk/; revision=44273
2012-08-05 01:04:41 +00:00
Martin Mathieson eab4e35254 When the graph has been redrawn (after resize or move), set the
redraw_needed flag to FALSE to avoid leaving crosses behind.

svn path=/trunk/; revision=44271
2012-08-05 00:27:48 +00:00
Martin Mathieson d89adc3f3b GTK3 still failing. Fix a typo.
svn path=/trunk/; revision=44270
2012-08-04 22:38:03 +00:00
Martin Mathieson ebc7cf7d41 GTK 3 is broken. This time, pass in GtkWidget* to get_mouse_position().
svn path=/trunk/; revision=44269
2012-08-04 22:07:54 +00:00