aboutsummaryrefslogtreecommitdiffstats
path: root/gtk/endpoint_talkers_table.h
diff options
context:
space:
mode:
authorRonnie Sahlberg <ronnie_sahlberg@ozemail.com.au>2003-08-23 09:09:35 +0000
committerRonnie Sahlberg <ronnie_sahlberg@ozemail.com.au>2003-08-23 09:09:35 +0000
commitba74395cbe82f5fee8967247e5ea72f6918be845 (patch)
tree56aae2194ef5f2c2ef809bb5272ec76f57a8da32 /gtk/endpoint_talkers_table.h
parentfb0480ae436b31994ee8a2213a78252055f8832a (diff)
New feature. Statistics/EndpointTalkjers can now present a sortable table with a list of all seen conversations of a certain type.
Supported types are Ethernet/TokenRing/IP/UDP and TCP. Will add FibreChannel soon. The framework for this feature needs to be enhanced in the future so that by selecting one entry and click the right mousebutton, this will bring up a menu with Prepare/Match options with suboptions for AnyDirection, ForwardOnly or ReverseOnly which updates the display filter accordingly. Had to update some of the taps as well to change them to use a proper address structure for the address fields. We should now be able to to these stats correctly even for ip tunneled over ip tunnelled over ip ... svn path=/trunk/; revision=8222
Diffstat (limited to 'gtk/endpoint_talkers_table.h')
-rw-r--r--gtk/endpoint_talkers_table.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/gtk/endpoint_talkers_table.h b/gtk/endpoint_talkers_table.h
new file mode 100644
index 0000000000..89578e2a37
--- /dev/null
+++ b/gtk/endpoint_talkers_table.h
@@ -0,0 +1,57 @@
+/* endpoint_talkers_table.h
+ * endpoint_talkers_table 2003 Ronnie Sahlberg
+ * Helper routines common to all endpoint talkers taps.
+ *
+ * $Id: endpoint_talkers_table.h,v 1.1 2003/08/23 09:09:35 sahlberg Exp $
+ *
+ * Ethereal - Network traffic analyzer
+ * By Gerald Combs <gerald@ethereal.com>
+ * Copyright 1998 Gerald Combs
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#include <gtk/gtk.h>
+
+typedef struct _endpoint_talker_t {
+ address src_address;
+ address dst_address;
+ guint32 src_port;
+ guint32 dst_port;
+
+ guint32 rx_frames;
+ guint32 tx_frames;
+ guint32 rx_bytes;
+ guint32 tx_bytes;
+} endpoint_talker_t;
+
+typedef struct _endpoints_table {
+ GtkWidget *scrolled_window;
+ GtkCList *table;
+ gboolean has_ports;
+ guint32 num_endpoints;
+ endpoint_talker_t *endpoints;
+ char *(*address_to_str)(address *);
+ char *(*port_to_str)(guint32);
+} endpoints_table;
+
+void reset_ett_table_data(endpoints_table *et);
+
+void init_ett_table(endpoints_table *et, GtkWidget *vbox, char *(*address_to_str)(address *),char *(*port_to_str)(guint32));
+
+void add_ett_table_data(endpoints_table *et, address *src, address *dst, guint32 src_port, guint32 dst_port, int num_frames, int num_bytes);
+
+void draw_ett_table_data(endpoints_table *et);
+