aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2003-09-15 20:37:37 +0000
committerGuy Harris <guy@alum.mit.edu>2003-09-15 20:37:37 +0000
commit673e47d4a9a1a79170bc93b8df23c6ac328bb531 (patch)
treed1a536772bd6167431c28ecb60a637804f762b3b
parent4339a40c036664a30485c50692a9d9dba5419bbe (diff)
Keep a "display name" as part of a capture_file structure; for live
capture temporary files, it's "<capture", and for saved capture files, it's the last component of the pathname of the file. Use that in various places when displaying the file name. svn path=/trunk/; revision=8474
-rw-r--r--cfile.h3
-rw-r--r--file.c55
-rw-r--r--gtk/dcerpc_stat.c10
-rw-r--r--gtk/endpoint_talkers_table.c10
-rw-r--r--gtk/fc_stat.c10
-rw-r--r--gtk/io_stat.c10
-rw-r--r--gtk/mgcp_stat.c10
-rw-r--r--gtk/rpc_stat.c10
-rw-r--r--gtk/smb_stat.c10
9 files changed, 66 insertions, 62 deletions
diff --git a/cfile.h b/cfile.h
index f2e8b29e85..b05b33a3b8 100644
--- a/cfile.h
+++ b/cfile.h
@@ -1,7 +1,7 @@
/* cfile.h
* capture_file definition & GUI-independent manipulation
*
- * $Id: cfile.h,v 1.3 2003/08/29 04:03:45 guy Exp $
+ * $Id: cfile.h,v 1.4 2003/09/15 20:37:35 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -47,6 +47,7 @@ typedef struct _capture_file {
gchar *filename; /* Name of capture file */
gboolean is_tempfile; /* Is capture file a temporary file? */
gboolean user_saved;/* If capture file is temporary, has it been saved by user yet? */
+ gchar *displayname; /* Name used when displaying */
long f_len; /* Length of capture file */
guint16 cd_t; /* File type of capture file */
int lnk_t; /* Link-layer type with which to save capture */
diff --git a/file.c b/file.c
index 6777138d62..b2607d65e8 100644
--- a/file.c
+++ b/file.c
@@ -1,7 +1,7 @@
/* file.c
* File I/O routines
*
- * $Id: file.c,v 1.310 2003/09/12 02:48:20 sahlberg Exp $
+ * $Id: file.c,v 1.311 2003/09/15 20:37:36 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -151,6 +151,7 @@ open_cap_file(char *fname, gboolean is_tempfile, capture_file *cf)
int err;
int fd;
struct stat cf_stat;
+ gchar *displayname;
wth = wtap_open_offline(fname, &err, TRUE);
if (wth == NULL)
@@ -189,6 +190,17 @@ open_cap_file(char *fname, gboolean is_tempfile, capture_file *cf)
/* If it's a temporary capture buffer file, mark it as not saved. */
cf->user_saved = !is_tempfile;
+ /* Set the name we use in various displays */
+ if (!cf->is_tempfile) {
+ /* Get the last component of the file name, and use that. */
+ displayname = get_basename(cf->filename);
+ } else {
+ /* The file we read is a temporary file from a live capture;
+ we don't mention its name. */
+ displayname = "<capture>";
+ }
+ cf->displayname = g_strdup(displayname);
+
cf->cd_t = wtap_file_type(cf->wth);
cf->count = 0;
cf->marked_count = 0;
@@ -245,6 +257,10 @@ close_cap_file(capture_file *cf)
g_free(cf->filename);
cf->filename = NULL;
}
+ if (cf->displayname != NULL) {
+ g_free(cf->displayname);
+ cf->displayname = NULL;
+ }
/* ...which means we have nothing to save. */
cf->user_saved = FALSE;
@@ -292,7 +308,6 @@ close_cap_file(capture_file *cf)
static void
set_display_filename(capture_file *cf)
{
- gchar *name_ptr;
size_t msg_len;
static const gchar done_fmt_nodrops[] = " File: %s";
static const gchar done_fmt_drops[] = " File: %s Drops: %u";
@@ -300,31 +315,21 @@ set_display_filename(capture_file *cf)
gchar *win_name_fmt = "%s - Ethereal";
gchar *win_name;
- if (!cf->is_tempfile) {
- /* Get the last component of the file name, and put that in the
- status bar. */
- name_ptr = get_basename(cf->filename);
- } else {
- /* The file we read is a temporary file from a live capture;
- we don't mention its name in the status bar. */
- name_ptr = "<capture>";
- }
-
if (cf->drops_known) {
- msg_len = strlen(name_ptr) + strlen(done_fmt_drops) + 64;
+ msg_len = strlen(cf->displayname) + strlen(done_fmt_drops) + 64;
done_msg = g_malloc(msg_len);
- snprintf(done_msg, msg_len, done_fmt_drops, name_ptr, cf->drops);
+ snprintf(done_msg, msg_len, done_fmt_drops, cf->displayname, cf->drops);
} else {
- msg_len = strlen(name_ptr) + strlen(done_fmt_nodrops);
+ msg_len = strlen(cf->displayname) + strlen(done_fmt_nodrops);
done_msg = g_malloc(msg_len);
- snprintf(done_msg, msg_len, done_fmt_nodrops, name_ptr);
+ snprintf(done_msg, msg_len, done_fmt_nodrops, cf->displayname);
}
statusbar_push_file_msg(done_msg);
g_free(done_msg);
- msg_len = strlen(name_ptr) + strlen(win_name_fmt) + 1;
+ msg_len = strlen(cf->displayname) + strlen(win_name_fmt) + 1;
win_name = g_malloc(msg_len);
- snprintf(win_name, msg_len, win_name_fmt, name_ptr);
+ snprintf(win_name, msg_len, win_name_fmt, cf->displayname);
set_main_window_name(win_name);
g_free(win_name);
}
@@ -332,7 +337,7 @@ set_display_filename(capture_file *cf)
read_status_t
read_cap_file(capture_file *cf, int *err)
{
- gchar *name_ptr, *load_msg, *load_fmt = "%s";
+ gchar *load_msg, *load_fmt = "%s";
size_t msg_len;
char *errmsg;
char errmsg_errno[1024+1];
@@ -354,11 +359,10 @@ read_cap_file(capture_file *cf, int *err)
cul_bytes=0;
reset_tap_listeners();
- name_ptr = get_basename(cf->filename);
- msg_len = strlen(name_ptr) + strlen(load_fmt) + 2;
+ msg_len = strlen(cf->displayname) + strlen(load_fmt) + 2;
load_msg = g_malloc(msg_len);
- snprintf(load_msg, msg_len, load_fmt, name_ptr);
+ snprintf(load_msg, msg_len, load_fmt, cf->displayname);
statusbar_push_file_msg(load_msg);
/* Update the progress bar when it gets to this value. */
@@ -2151,7 +2155,7 @@ save_cap_file(char *fname, capture_file *cf, gboolean save_filtered,
gboolean save_marked, guint save_format)
{
gchar *from_filename;
- gchar *name_ptr, *save_msg, *save_fmt = " Saving: %s...";
+ gchar *save_msg, *save_fmt = " Saving: %s...";
size_t msg_len;
int err;
gboolean do_copy;
@@ -2162,10 +2166,9 @@ save_cap_file(char *fname, capture_file *cf, gboolean save_filtered,
guint8 pd[65536];
struct stat infile, outfile;
- name_ptr = get_basename(fname);
- msg_len = strlen(name_ptr) + strlen(save_fmt) + 2;
+ msg_len = strlen(cf->displayname) + strlen(save_fmt) + 2;
save_msg = g_malloc(msg_len);
- snprintf(save_msg, msg_len, save_fmt, name_ptr);
+ snprintf(save_msg, msg_len, save_fmt, cf->displayname);
statusbar_push_file_msg(save_msg);
g_free(save_msg);
diff --git a/gtk/dcerpc_stat.c b/gtk/dcerpc_stat.c
index 4a6737e8a6..60e88d1967 100644
--- a/gtk/dcerpc_stat.c
+++ b/gtk/dcerpc_stat.c
@@ -1,7 +1,7 @@
/* dcerpc_stat.c
* dcerpc_stat 2002 Ronnie Sahlberg
*
- * $Id: dcerpc_stat.c,v 1.18 2003/09/15 19:05:00 guy Exp $
+ * $Id: dcerpc_stat.c,v 1.19 2003/09/15 20:37:36 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -88,8 +88,8 @@ dcerpcstat_reset(rpcstat_t *rs)
char title_string[256];
reset_srt_table_data(&rs->srt_table);
- if (cfile.filename)
- snprintf(title_string, 255, "DCE-RPC Service Response Time statistics for %s version %d.%d : %s", rs->prog, rs->ver&0xff, rs->ver>>8, get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title_string, 255, "DCE-RPC Service Response Time statistics for %s version %d.%d : %s", rs->prog, rs->ver&0xff, rs->ver>>8, cfile.displayname);
else
snprintf(title_string, 255, "DCE-RPC Service Response Time statistics for %s version %d.%d", rs->prog, rs->ver&0xff, rs->ver>>8);
gtk_window_set_title(GTK_WINDOW(rs->win), title_string);
@@ -215,8 +215,8 @@ gtk_dcerpcstat_init(char *optarg)
rs->win=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size(GTK_WINDOW(rs->win), 550, 400);
- if (cfile.filename)
- snprintf(title_string, 255, "DCE-RPC Service Response Time statistics for %s version %d.%d : %s", rs->prog, rs->ver&0xff, rs->ver>>8, get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title_string, 255, "DCE-RPC Service Response Time statistics for %s version %d.%d : %s", rs->prog, rs->ver&0xff, rs->ver>>8, cfile.displayname);
else
snprintf(title_string, 255, "DCE-RPC Service Response Time statistics for %s version %d.%d", rs->prog, rs->ver&0xff, rs->ver>>8);
gtk_window_set_title(GTK_WINDOW(rs->win), title_string);
diff --git a/gtk/endpoint_talkers_table.c b/gtk/endpoint_talkers_table.c
index d9402df48b..39e3976006 100644
--- a/gtk/endpoint_talkers_table.c
+++ b/gtk/endpoint_talkers_table.c
@@ -4,7 +4,7 @@
* endpoint_talkers_table 2003 Ronnie Sahlberg
* Helper routines common to all endpoint talkers tap.
*
- * $Id: endpoint_talkers_table.c,v 1.17 2003/09/15 19:05:00 guy Exp $
+ * $Id: endpoint_talkers_table.c,v 1.18 2003/09/15 20:37:36 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -206,8 +206,8 @@ reset_ett_table_data(endpoints_table *et)
guint32 i;
char title[256];
- if (cfile.filename)
- snprintf(title, 255, "%s Conversations: %s", et->name, get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title, 255, "%s Conversations: %s", et->name, cfile.displayname);
else
snprintf(title, 255, "%s Conversations", et->name);
gtk_window_set_title(GTK_WINDOW(et->win), title);
@@ -884,8 +884,8 @@ init_ett_table(gboolean hide_ports, char *table_name, char *tap_name, char *filt
talkers->name=table_name;
talkers->win=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size(GTK_WINDOW(talkers->win), 750, 400);
- if (cfile.filename)
- snprintf(title, 255, "%s Conversations: %s", table_name, get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title, 255, "%s Conversations: %s", table_name, cfile.displayname);
else
snprintf(title, 255, "%s Conversations", table_name);
gtk_window_set_title(GTK_WINDOW(talkers->win), title);
diff --git a/gtk/fc_stat.c b/gtk/fc_stat.c
index 980a6e830e..b892483a80 100644
--- a/gtk/fc_stat.c
+++ b/gtk/fc_stat.c
@@ -1,7 +1,7 @@
/* fc_stat.c
* fc_stat 2003 Ronnie Sahlberg
*
- * $Id: fc_stat.c,v 1.6 2003/09/15 19:05:00 guy Exp $
+ * $Id: fc_stat.c,v 1.7 2003/09/15 20:37:36 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -65,8 +65,8 @@ fcstat_reset(void *pfc)
char title[256];
reset_srt_table_data(&fc->fc_srt_table);
- if (cfile.filename)
- snprintf(title, 255, "Fibre Channel Service Response Time statistics : %s", get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title, 255, "Fibre Channel Service Response Time statistics: %s", cfile.displayname);
else
snprintf(title, 255, "Fibre Channel Service Response Time statistics");
gtk_window_set_title(GTK_WINDOW(fc->win), title);
@@ -141,8 +141,8 @@ gtk_fcstat_init(char *optarg)
fc->win=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size(GTK_WINDOW(fc->win), 550, 400);
- if (cfile.filename)
- snprintf(title, 255, "Fibre Channel Service Response Time statistics : %s", get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title, 255, "Fibre Channel Service Response Time statistics: %s", cfile.displayname);
else
snprintf(title, 255, "Fibre Channel Service Response Time statistics");
gtk_window_set_title(GTK_WINDOW(fc->win), title);
diff --git a/gtk/io_stat.c b/gtk/io_stat.c
index d58ebc50a7..6cf22cc6ad 100644
--- a/gtk/io_stat.c
+++ b/gtk/io_stat.c
@@ -1,7 +1,7 @@
/* io_stat.c
* io_stat 2002 Ronnie Sahlberg
*
- * $Id: io_stat.c,v 1.24 2003/09/15 19:05:00 guy Exp $
+ * $Id: io_stat.c,v 1.25 2003/09/15 20:37:36 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -224,8 +224,8 @@ gtk_iostat_reset(void *g)
gio->io->last_interval=0xffffffff;
gio->io->max_interval=0;
- if (cfile.filename)
- snprintf(title, 255, "IO-Stat: %s", get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title, 255, "IO-Stat: %s", cfile.displayname);
else
snprintf(title, 255, "IO-Stat");
gtk_window_set_title(GTK_WINDOW(gio->io->window), title);
@@ -1646,8 +1646,8 @@ init_io_stat_window(io_stat_t *io)
create_ctrl_area(io, hbox);
gtk_widget_show(io->window);
- if (cfile.filename)
- snprintf(title, 255, "IO-Stat: %s", get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title, 255, "IO-Stat: %s", cfile.displayname);
else
snprintf(title, 255, "IO-Stat");
gtk_window_set_title(GTK_WINDOW(io->window), title);
diff --git a/gtk/mgcp_stat.c b/gtk/mgcp_stat.c
index e3833c4749..2ab53f7033 100644
--- a/gtk/mgcp_stat.c
+++ b/gtk/mgcp_stat.c
@@ -2,7 +2,7 @@
* mgcp-statistics for ethereal
* Copyright 2003 Lars Roland
*
- * $Id: mgcp_stat.c,v 1.10 2003/09/15 19:05:00 guy Exp $
+ * $Id: mgcp_stat.c,v 1.11 2003/09/15 20:37:37 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -110,8 +110,8 @@ mgcpstat_reset(void *pms)
ms->req_dup_num=0;
ms->rsp_dup_num=0;
- if (cfile.filename)
- snprintf(title, 255, "MGCP SRT Statistics: %s", get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title, 255, "MGCP SRT Statistics: %s", cfile.displayname);
else
snprintf(title, 255, "MGCP SRT Statistics");
if (! dlg)
@@ -350,8 +350,8 @@ gtk_mgcpstat_cb(GtkWidget *w _U_, gpointer d _U_)
}
dlg=gtk_window_new(GTK_WINDOW_TOPLEVEL);
- if (cfile.filename)
- snprintf(title, 255, "MGCP SRT Statistics: %s", get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title, 255, "MGCP SRT Statistics: %s", cfile.displayname);
else
snprintf(title, 255, "MGCP SRT Statistics");
gtk_window_set_title(GTK_WINDOW(dlg), title);
diff --git a/gtk/rpc_stat.c b/gtk/rpc_stat.c
index 3bcdbbcafc..c4ecf36fbf 100644
--- a/gtk/rpc_stat.c
+++ b/gtk/rpc_stat.c
@@ -1,7 +1,7 @@
/* rpc_stat.c
* rpc_stat 2002 Ronnie Sahlberg
*
- * $Id: rpc_stat.c,v 1.17 2003/09/15 19:05:01 guy Exp $
+ * $Id: rpc_stat.c,v 1.18 2003/09/15 20:37:37 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -66,8 +66,8 @@ rpcstat_reset(rpcstat_t *rs)
reset_srt_table_data(&rs->srt_table);
- if (cfile.filename)
- snprintf(title_string, 256, "ONC-RPC Service Response Time statistics for %s version %d : %s", rs->prog, rs->version, get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title_string, 256, "ONC-RPC Service Response Time statistics for %s version %d: %s", rs->prog, rs->version, cfile.displayname);
else
snprintf(title_string, 256, "ONC-RPC Service Response Time statistics for %s version %d", rs->prog, rs->version);
gtk_window_set_title(GTK_WINDOW(rs->win), title_string);
@@ -219,8 +219,8 @@ gtk_rpcstat_init(char *optarg)
rs->win=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size(GTK_WINDOW(rs->win), 550, 400);
- if (cfile.filename)
- snprintf(title_string, 256, "ONC-RPC Service Response Time statistics for %s version %d : %s", rs->prog, rs->version, get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title_string, 256, "ONC-RPC Service Response Time statistics for %s version %d: %s", rs->prog, rs->version, cfile.displayname);
else
snprintf(title_string, 256, "ONC-RPC Service Response Time statistics for %s version %d", rs->prog, rs->version);
gtk_window_set_title(GTK_WINDOW(rs->win), title_string);
diff --git a/gtk/smb_stat.c b/gtk/smb_stat.c
index 8801f7fd8c..e37ac0d53c 100644
--- a/gtk/smb_stat.c
+++ b/gtk/smb_stat.c
@@ -1,7 +1,7 @@
/* smb_stat.c
* smb_stat 2003 Ronnie Sahlberg
*
- * $Id: smb_stat.c,v 1.14 2003/09/15 19:05:01 guy Exp $
+ * $Id: smb_stat.c,v 1.15 2003/09/15 20:37:37 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -69,8 +69,8 @@ smbstat_reset(void *pss)
reset_srt_table_data(&ss->smb_srt_table);
reset_srt_table_data(&ss->trans2_srt_table);
reset_srt_table_data(&ss->nt_trans_srt_table);
- if (cfile.filename)
- snprintf(title, 255, "SMB Service Response Time statistics: %s", get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title, 255, "SMB Service Response Time statistics: %s", cfile.displayname);
else
snprintf(title, 255, "SMB Service Response Time statistics");
gtk_window_set_title(GTK_WINDOW(ss->win), title);
@@ -159,8 +159,8 @@ gtk_smbstat_init(char *optarg)
ss->win=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size(GTK_WINDOW(ss->win), 550, 600);
- if (cfile.filename)
- snprintf(title, 255, "SMB Service Response Time statistics: %s", get_basename(cfile.filename));
+ if (cfile.displayname)
+ snprintf(title, 255, "SMB Service Response Time statistics: %s", cfile.displayname);
else
snprintf(title, 255, "SMB Service Response Time statistics");
gtk_window_set_title(GTK_WINDOW(ss->win), title);