diff options
author | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2003-08-23 13:56:40 +0000 |
---|---|---|
committer | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2003-08-23 13:56:40 +0000 |
commit | cb92d3284b02b4a251ba0f4cd426012c16a72a8b (patch) | |
tree | d7a1eb6658c61aed85df57f220a8456e71cea71a /gtk/endpoint_talkers_udpip.c | |
parent | 5cf0634041d08d1789f37cda8a1e991086ee2253 (diff) | |
download | wireshark-cb92d3284b02b4a251ba0f4cd426012c16a72a8b.tar.gz wireshark-cb92d3284b02b4a251ba0f4cd426012c16a72a8b.tar.bz2 wireshark-cb92d3284b02b4a251ba0f4cd426012c16a72a8b.zip |
Update the UDP and the TCP conversation list tool so that it can handle IPv6 as well.
Make no distinction between UDP/TCP over IPv4 and UDP/TCP over IPv6
and present them in the same list.
svn path=/trunk/; revision=8224
Diffstat (limited to 'gtk/endpoint_talkers_udpip.c')
-rw-r--r-- | gtk/endpoint_talkers_udpip.c | 34 |
1 files changed, 14 insertions, 20 deletions
diff --git a/gtk/endpoint_talkers_udpip.c b/gtk/endpoint_talkers_udpip.c index 9fa3b85b0b..794207bf89 100644 --- a/gtk/endpoint_talkers_udpip.c +++ b/gtk/endpoint_talkers_udpip.c @@ -1,9 +1,7 @@ -/* should be trivial to extend to handle ipv6 as well. currently only support -for ipv4*/ /* endpoint_talkers_udpip.c * endpoint_talkers_udpip 2003 Ronnie Sahlberg * - * $Id: endpoint_talkers_udpip.c,v 1.1 2003/08/23 09:09:35 sahlberg Exp $ + * $Id: endpoint_talkers_udpip.c,v 1.2 2003/08/23 13:56:40 sahlberg Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs <gerald@ethereal.com> @@ -73,21 +71,17 @@ win_destroy_cb(GtkWindow *win _U_, gpointer data) static char * udpip_address_to_str(address *addr) { - static int i=0; - static char *strp, str[4][256]; - - i++; - if(i>=4){ - i=0; - } - strp=str[i]; + char *strp=NULL; switch(addr->type){ case AT_IPv4: - sprintf(strp, "%d.%d.%d.%d", addr->data[0], addr->data[1], addr->data[2], addr->data[3]); + strp=ip_to_str(addr->data); + break; + case AT_IPv6: + strp=ip6_to_str(addr->data); break; default: - fprintf(stderr, "Unsupported transport for TCP in the TCP talkers tap.\n"); + fprintf(stderr, "Unsupported transport for UDP in the UDP talkers tap.\n"); } return strp; @@ -151,8 +145,8 @@ gtk_udpip_talkers_init(char *optarg) GString *error_string; - if(!strncmp(optarg,"talkers,udpip,",14)){ - filter=optarg+14; + if(!strncmp(optarg,"talkers,udp,",12)){ + filter=optarg+12; } else { filter=NULL; } @@ -161,7 +155,7 @@ gtk_udpip_talkers_init(char *optarg) udpip_talkers->win=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_default_size(GTK_WINDOW(udpip_talkers->win), 750, 400); - gtk_window_set_title(GTK_WINDOW(udpip_talkers->win), "UDP/IP Talkers"); + gtk_window_set_title(GTK_WINDOW(udpip_talkers->win), "UDP Talkers"); SIGNAL_CONNECT(udpip_talkers->win, "destroy", win_destroy_cb, udpip_talkers); @@ -170,7 +164,7 @@ gtk_udpip_talkers_init(char *optarg) gtk_container_set_border_width(GTK_CONTAINER(vbox), 10); gtk_widget_show(vbox); - label=gtk_label_new("UDP/IP Talkers"); + label=gtk_label_new("UDP Talkers"); gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); gtk_widget_show(label); @@ -195,14 +189,14 @@ gtk_udpip_talkers_init(char *optarg) static void gtk_udpip_endpoints_cb(GtkWidget *w _U_, gpointer d _U_) { - gtk_udpip_talkers_init("talkers,udpip"); + gtk_udpip_talkers_init("talkers,udp"); } void register_tap_menu_udpip_talkers(void) { - register_tap_menu_item("Endpoint Talkers/UDPIP", gtk_udpip_endpoints_cb); + register_tap_menu_item("Endpoint Talkers/UDP (IPv4 IPv6)", gtk_udpip_endpoints_cb); } @@ -211,6 +205,6 @@ register_tap_menu_udpip_talkers(void) void register_tap_listener_udpip_talkers(void) { - register_ethereal_tap("talkers,udpip", gtk_udpip_talkers_init); + register_ethereal_tap("talkers,udp", gtk_udpip_talkers_init); } |