Make "comp_info_str" static in Ethereal - there's no need for it outside

"gtk/main.c" in Ethereal.

Add the GLib version to it in Ethereal, and put in the GLib version
rather than the GTK+ version in Tethereal (which isn't linked with
GTK+...).

Make it a GString; this makes the code to construct it slightly less
ugly, especially now that we're putting the GLib version in.

Fix the code for the "-D" flag in Tethereal to compile in a no-libpcap
version (in a no-libpcap version, it just says that this version of
Tethereal wasn't compiled with capture support).

svn path=/trunk/; revision=3196
This commit is contained in:
Guy Harris 2001-03-27 06:48:12 +00:00
parent f380fba2b1
commit c58b7b49b5
3 changed files with 70 additions and 45 deletions

View File

@ -1,7 +1,7 @@
/* globals.h /* globals.h
* Global defines, etc. * Global defines, etc.
* *
* $Id: globals.h,v 1.23 2000/10/19 22:59:23 guy Exp $ * $Id: globals.h,v 1.24 2001/03/27 06:48:11 guy Exp $
* *
* Ethereal - Network traffic analyzer * Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org> * By Gerald Combs <gerald@zing.org>
@ -34,7 +34,6 @@
extern capture_file cfile; extern capture_file cfile;
extern guint main_ctx, file_ctx; extern guint main_ctx, file_ctx;
extern gchar comp_info_str[256];
extern gchar *ethereal_path; extern gchar *ethereal_path;
extern gchar *last_open_dir; extern gchar *last_open_dir;
extern gboolean auto_scroll_live; extern gboolean auto_scroll_live;

View File

@ -1,6 +1,6 @@
/* main.c /* main.c
* *
* $Id: main.c,v 1.184 2001/03/27 06:19:30 guy Exp $ * $Id: main.c,v 1.185 2001/03/27 06:48:12 guy Exp $
* *
* Ethereal - Network traffic analyzer * Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com> * By Gerald Combs <gerald@ethereal.com>
@ -143,7 +143,7 @@ static GtkWidget *bv_scrollw;
GdkFont *m_r_font, *m_b_font; GdkFont *m_r_font, *m_b_font;
guint m_font_height, m_font_width; guint m_font_height, m_font_width;
guint main_ctx, file_ctx, help_ctx; guint main_ctx, file_ctx, help_ctx;
gchar comp_info_str[256]; static GString *comp_info_str;
gchar *ethereal_path = NULL; gchar *ethereal_path = NULL;
gchar *last_open_dir = NULL; gchar *last_open_dir = NULL;
@ -171,13 +171,13 @@ about_ethereal( GtkWidget *w, gpointer data ) {
simple_dialog(ESD_TYPE_INFO, NULL, simple_dialog(ESD_TYPE_INFO, NULL,
"Ethereal - Network Protocol Analyzer\n" "Ethereal - Network Protocol Analyzer\n"
"Version " VERSION " (C) 1998-2000 Gerald Combs <gerald@ethereal.com>\n" "Version " VERSION " (C) 1998-2000 Gerald Combs <gerald@ethereal.com>\n"
"Compiled with %s\n\n" "Compiled %s\n\n"
"Check the man page for complete documentation and\n" "Check the man page for complete documentation and\n"
"for the list of contributors.\n" "for the list of contributors.\n"
"\nSee http://www.ethereal.com/ for more information.", "\nSee http://www.ethereal.com/ for more information.",
comp_info_str); comp_info_str->str);
} }
void void
@ -700,8 +700,8 @@ file_quit_cmd_cb (GtkWidget *widget, gpointer data)
static void static void
print_usage(void) { print_usage(void) {
fprintf(stderr, "This is GNU " PACKAGE " " VERSION ", compiled with %s\n", fprintf(stderr, "This is GNU " PACKAGE " " VERSION ", compiled %s\n",
comp_info_str); comp_info_str->str);
#ifdef HAVE_LIBPCAP #ifdef HAVE_LIBPCAP
fprintf(stderr, "%s [ -vh ] [ -kpQS ] [ -B <byte view height> ] [ -c count ]\n", fprintf(stderr, "%s [ -vh ] [ -kpQS ] [ -B <byte view height> ] [ -c count ]\n",
PACKAGE); PACKAGE);
@ -725,7 +725,7 @@ show_version(void)
create_console(); create_console();
#endif #endif
printf("%s %s, with %s\n", PACKAGE, VERSION, comp_info_str); printf("%s %s, %s\n", PACKAGE, VERSION, comp_info_str->str);
} }
/* And now our feature presentation... [ fade to music ] */ /* And now our feature presentation... [ fade to music ] */
@ -873,47 +873,62 @@ main(int argc, char *argv[])
col_init(&cfile.cinfo, prefs->num_cols); col_init(&cfile.cinfo, prefs->num_cols);
/* Assemble the compile-time options */ /* Assemble the compile-time options */
snprintf(comp_info_str, 256, comp_info_str = g_string_new("");
g_string_append(comp_info_str, "with ");
g_string_sprintfa(comp_info_str,
#ifdef GTK_MAJOR_VERSION #ifdef GTK_MAJOR_VERSION
"GTK+ %d.%d.%d, %s%s, %s%s, %s%s", GTK_MAJOR_VERSION, GTK_MINOR_VERSION, "GTK+ %d.%d.%d", GTK_MAJOR_VERSION, GTK_MINOR_VERSION,
GTK_MICRO_VERSION, GTK_MICRO_VERSION);
#else #else
"GTK+ (version unknown), %s%s, %s%s, %s%s", "GTK+ (version unknown)");
#endif
g_string_append(comp_info_str, ", with ");
g_string_sprintfa(comp_info_str,
#ifdef GLIB_MAJOR_VERSION
"GLib %d.%d.%d", GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION,
GLIB_MICRO_VERSION);
#else
"GLib (version unknown)");
#endif #endif
#ifdef HAVE_LIBPCAP #ifdef HAVE_LIBPCAP
"with libpcap ", pcap_version, g_string_append(comp_info_str, ", with libpcap ");
g_string_append(comp_info_str, pcap_version);
#else #else
"without libpcap", "", g_string_append(comp_info_str, ", without libpcap");
#endif #endif
#ifdef HAVE_LIBZ #ifdef HAVE_LIBZ
g_string_append(comp_info_str, ", with libz ");
#ifdef ZLIB_VERSION #ifdef ZLIB_VERSION
"with libz ", ZLIB_VERSION, g_string_append(comp_info_str, ZLIB_VERSION);
#else /* ZLIB_VERSION */ #else /* ZLIB_VERSION */
"with libz ", "(version unknown)", g_string_append(comp_info_str, "(version unknown)");
#endif /* ZLIB_VERSION */ #endif /* ZLIB_VERSION */
#else /* HAVE_LIBZ */ #else /* HAVE_LIBZ */
"without libz", "", g_string_append(comp_info_str, ", without libz");
#endif /* HAVE_LIBZ */ #endif /* HAVE_LIBZ */
/* Oh, this is pretty */ /* Oh, this is pretty */
#if defined(HAVE_UCD_SNMP_SNMP_H) #if defined(HAVE_UCD_SNMP_SNMP_H)
g_string_append(comp_info_str, ", with UCD SNMP ");
#ifdef HAVE_UCD_SNMP_VERSION_H #ifdef HAVE_UCD_SNMP_VERSION_H
"with UCD SNMP ", VersionInfo g_string_append(comp_info_str, VersionInfo);
#else /* HAVE_UCD_SNMP_VERSION_H */ #else /* HAVE_UCD_SNMP_VERSION_H */
"with UCD SNMP ", "(version unknown)" g_string_append(comp_info_str, "(version unknown)");
#endif /* HAVE_UCD_SNMP_VERSION_H */ #endif /* HAVE_UCD_SNMP_VERSION_H */
#elif defined(HAVE_SNMP_SNMP_H) #elif defined(HAVE_SNMP_SNMP_H)
g_string_append(comp_info_str, ", with CMU SNMP ");
#ifdef HAVE_SNMP_VERSION_H #ifdef HAVE_SNMP_VERSION_H
"with CMU SNMP ", snmp_Version() g_string_append(comp_info_str, snmp_Version());
#else /* HAVE_SNMP_VERSION_H */ #else /* HAVE_SNMP_VERSION_H */
"with CMU SNMP ", "(version unknown)" g_string_append(comp_info_str, "(version unknown)");
#endif /* HAVE_SNMP_VERSION_H */ #endif /* HAVE_SNMP_VERSION_H */
#else /* no SNMP */ #else /* no SNMP */
"without SNMP", "" g_string_append(comp_info_str, ", without SNMP");
#endif #endif
);
/* Now get our args */ /* Now get our args */
while ((opt = getopt(argc, argv, "B:c:f:hi:km:no:pP:Qr:R:Ss:t:T:w:W:vZ:")) != EOF) { while ((opt = getopt(argc, argv, "B:c:f:hi:km:no:pP:Qr:R:Ss:t:T:w:W:vZ:")) != EOF) {

View File

@ -1,6 +1,6 @@
/* tethereal.c /* tethereal.c
* *
* $Id: tethereal.c,v 1.71 2001/03/27 06:16:10 guy Exp $ * $Id: tethereal.c,v 1.72 2001/03/27 06:48:11 guy Exp $
* *
* Ethereal - Network traffic analyzer * Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org> * By Gerald Combs <gerald@zing.org>
@ -96,7 +96,7 @@
static guint32 firstsec, firstusec; static guint32 firstsec, firstusec;
static guint32 prevsec, prevusec; static guint32 prevsec, prevusec;
static gchar comp_info_str[256]; static GString *comp_info_str;
static gboolean verbose; static gboolean verbose;
static gboolean print_hex; static gboolean print_hex;
static gboolean line_buffered; static gboolean line_buffered;
@ -142,8 +142,8 @@ print_usage(void)
{ {
int i; int i;
fprintf(stderr, "This is GNU t%s %s, compiled with %s\n", PACKAGE, fprintf(stderr, "This is GNU t%s %s, compiled %s\n", PACKAGE, VERSION,
VERSION, comp_info_str); comp_info_str->str);
#ifdef HAVE_LIBPCAP #ifdef HAVE_LIBPCAP
fprintf(stderr, "t%s [ -DvVhlp ] [ -c count ] [ -f <capture filter> ]\n", PACKAGE); fprintf(stderr, "t%s [ -DvVhlp ] [ -c count ] [ -f <capture filter> ]\n", PACKAGE);
fprintf(stderr, "\t[ -F <capture file type> ] [ -i interface ] [ -n ]\n"); fprintf(stderr, "\t[ -F <capture file type> ] [ -i interface ] [ -n ]\n");
@ -251,47 +251,53 @@ main(int argc, char *argv[])
col_init(&cfile.cinfo, prefs->num_cols); col_init(&cfile.cinfo, prefs->num_cols);
/* Assemble the compile-time options */ /* Assemble the compile-time options */
snprintf(comp_info_str, 256, comp_info_str = g_string_new("");
#ifdef GTK_MAJOR_VERSION
"GTK+ %d.%d.%d, %s%s, %s%s, %s%s", GTK_MAJOR_VERSION, GTK_MINOR_VERSION, g_string_append(comp_info_str, "with ");
GTK_MICRO_VERSION, g_string_sprintfa(comp_info_str,
#ifdef GLIB_MAJOR_VERSION
"GLib %d.%d.%d", GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION,
GLIB_MICRO_VERSION);
#else #else
"GTK+ (version unknown), %s%s, %s%s, %s%s", "GLib (version unknown)");
#endif #endif
#ifdef HAVE_LIBPCAP #ifdef HAVE_LIBPCAP
"with libpcap ", pcap_version, g_string_append(comp_info_str, ", with libpcap ");
g_string_append(comp_info_str, pcap_version);
#else #else
"without libpcap", "", g_string_append(comp_info_str, ", without libpcap");
#endif #endif
#ifdef HAVE_LIBZ #ifdef HAVE_LIBZ
g_string_append(comp_info_str, ", with libz ");
#ifdef ZLIB_VERSION #ifdef ZLIB_VERSION
"with libz ", ZLIB_VERSION, g_string_append(comp_info_str, ZLIB_VERSION);
#else /* ZLIB_VERSION */ #else /* ZLIB_VERSION */
"with libz ", "(version unknown)", g_string_append(comp_info_str, "(version unknown)");
#endif /* ZLIB_VERSION */ #endif /* ZLIB_VERSION */
#else /* HAVE_LIBZ */ #else /* HAVE_LIBZ */
"without libz", "", g_string_append(comp_info_str, ", without libz");
#endif /* HAVE_LIBZ */ #endif /* HAVE_LIBZ */
/* Oh, this is pretty */ /* Oh, this is pretty */
#if defined(HAVE_UCD_SNMP_SNMP_H) #if defined(HAVE_UCD_SNMP_SNMP_H)
g_string_append(comp_info_str, ", with UCD SNMP ");
#ifdef HAVE_UCD_SNMP_VERSION_H #ifdef HAVE_UCD_SNMP_VERSION_H
"with UCD SNMP ", VersionInfo g_string_append(comp_info_str, VersionInfo);
#else /* HAVE_UCD_SNMP_VERSION_H */ #else /* HAVE_UCD_SNMP_VERSION_H */
"with UCD SNMP ", "(version unknown)" g_string_append(comp_info_str, "(version unknown)");
#endif /* HAVE_UCD_SNMP_VERSION_H */ #endif /* HAVE_UCD_SNMP_VERSION_H */
#elif defined(HAVE_SNMP_SNMP_H) #elif defined(HAVE_SNMP_SNMP_H)
g_string_append(comp_info_str, ", with CMU SNMP ");
#ifdef HAVE_SNMP_VERSION_H #ifdef HAVE_SNMP_VERSION_H
"with CMU SNMP ", snmp_Version() g_string_append(comp_info_str, snmp_Version());
#else /* HAVE_SNMP_VERSION_H */ #else /* HAVE_SNMP_VERSION_H */
"with CMU SNMP ", "(version unknown)" g_string_append(comp_info_str, "(version unknown)");
#endif /* HAVE_SNMP_VERSION_H */ #endif /* HAVE_SNMP_VERSION_H */
#else /* no SNMP */ #else /* no SNMP */
"without SNMP", "" g_string_append(comp_info_str, ", without SNMP");
#endif #endif
);
/* Now get our args */ /* Now get our args */
while ((opt = getopt(argc, argv, "c:Df:F:hi:lno:pr:R:s:t:vw:Vx")) != EOF) { while ((opt = getopt(argc, argv, "c:Df:F:hi:lno:pr:R:s:t:vw:Vx")) != EOF) {
@ -305,6 +311,7 @@ main(int argc, char *argv[])
#endif #endif
break; break;
case 'D': /* Print a list of capture devices */ case 'D': /* Print a list of capture devices */
#ifdef HAVE_LIBPCAP
if_list = get_interface_list(&err, err_str); if_list = get_interface_list(&err, err_str);
if (if_list == NULL) { if (if_list == NULL) {
switch (err) { switch (err) {
@ -325,6 +332,10 @@ main(int argc, char *argv[])
printf("%s\n", (char *)if_entry->data); printf("%s\n", (char *)if_entry->data);
free_interface_list(if_list); free_interface_list(if_list);
exit(0); exit(0);
#else
capture_option_specified = TRUE;
arg_error = TRUE;
#endif
break; break;
case 'f': case 'f':
#ifdef HAVE_LIBPCAP #ifdef HAVE_LIBPCAP
@ -427,7 +438,7 @@ main(int argc, char *argv[])
} }
break; break;
case 'v': /* Show version and exit */ case 'v': /* Show version and exit */
printf("t%s %s, with %s\n", PACKAGE, VERSION, comp_info_str); printf("t%s %s, %s\n", PACKAGE, VERSION, comp_info_str->str);
exit(0); exit(0);
break; break;
case 'w': /* Write to capture file xxx */ case 'w': /* Write to capture file xxx */