1999-09-10 07:19:51 +00:00
|
|
|
/* globals.h
|
|
|
|
* Global defines, etc.
|
|
|
|
*
|
Move the toolkit-independent code to create a temporary capture file,
and to fork off and run a separate copy of "ethereal" for "-S" and "-F"
captures or just call "capture()" otherwise, out of "gtk/capture_dlg.c"
and into a routine in "capture.c".
If the attempt to create said temporary capture file fails, pop up a
dialog box and don't do the capture.
Have the child capture process send a message upstream after it either
successfully starts the capture and syncs out the header of the capture
file, or fails to start the capture; the message indicates whether it
succeeded or failed, and, if it failed, includes a failure message.
This:
avoids the use of a signal, and thus means we don't have to
worry about whether to capture the signal, or whether to start
or stop capturing depending on whether this particular capture
is in sync mode or not;
lets us pop up the message box for the error in the parent
process if we're in sync mode, rather than doing it in the
child, which didn't work well.
Add a check button to the Capture/Start dialog box, so that we can
control, for each capture, whether it's to be done in sync mode or not.
svn path=/trunk/; revision=708
1999-09-23 06:27:27 +00:00
|
|
|
* $Id: globals.h,v 1.6 1999/09/23 06:27:19 guy Exp $
|
1999-09-10 07:19:51 +00:00
|
|
|
*
|
|
|
|
* Ethereal - Network traffic analyzer
|
|
|
|
* By Gerald Combs <gerald@zing.org>
|
|
|
|
* 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.
|
|
|
|
*/
|
|
|
|
|
1999-09-01 03:04:24 +00:00
|
|
|
#ifndef __GLOBALS_H__
|
|
|
|
#define __GLOBALS_H__
|
|
|
|
|
|
|
|
#ifndef _STDIO_H_
|
|
|
|
#include <stdio.h>
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef __PACKET_H__
|
|
|
|
#include "packet.h"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef __GTK_H__
|
|
|
|
#include <gtk/gtk.h>
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef __FILE_H__
|
|
|
|
#include "file.h"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef __TIMESTAMP_H__
|
|
|
|
#include "timestamp.h"
|
|
|
|
#endif
|
|
|
|
|
1999-09-10 07:19:51 +00:00
|
|
|
#define MIN_PACKET_SIZE 68 /* minimum amount of packet data we can read */
|
|
|
|
|
|
|
|
/* Byte swapping routines */
|
|
|
|
#define SWAP16(x) \
|
|
|
|
( (((x) & 0x00ff) << 8) | \
|
|
|
|
(((x) & 0xff00) >> 8) )
|
|
|
|
#define SWAP32(x) \
|
|
|
|
( (((x) & 0x000000ff) << 24) | \
|
|
|
|
(((x) & 0x0000ff00) << 8) | \
|
|
|
|
(((x) & 0x00ff0000) >> 8) | \
|
|
|
|
(((x) & 0xff000000) >> 24) )
|
|
|
|
|
|
|
|
/* Byte ordering */
|
|
|
|
#ifndef BYTE_ORDER
|
1999-09-12 14:34:36 +00:00
|
|
|
# define LITTLE_ENDIAN 4321
|
|
|
|
# define BIG_ENDIAN 1234
|
|
|
|
# ifdef WORDS_BIGENDIAN
|
|
|
|
# define BYTE_ORDER BIG_ENDIAN
|
|
|
|
# else
|
|
|
|
# define BYTE_ORDER LITTLE_ENDIAN
|
|
|
|
# endif
|
1999-09-10 07:19:51 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
/* From the K&R book, p. 89 */
|
|
|
|
#ifndef MAX
|
1999-09-12 14:34:36 +00:00
|
|
|
# define MAX(x, y) ((x) > (y) ? (x) : (y))
|
1999-09-10 07:19:51 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef MIN
|
1999-09-12 14:34:36 +00:00
|
|
|
# define MIN(x, y) ((x) < (y) ? (x) : (y))
|
1999-09-10 07:19:51 +00:00
|
|
|
#endif
|
|
|
|
|
1999-09-01 03:04:24 +00:00
|
|
|
extern FILE *data_out_file;
|
|
|
|
extern packet_info pi;
|
|
|
|
extern capture_file cf;
|
|
|
|
extern GtkWidget *file_sel, *packet_list, *tree_view, *byte_view, *prog_bar,
|
|
|
|
*info_bar;
|
|
|
|
extern GdkFont *m_r_font, *m_b_font;
|
|
|
|
extern guint main_ctx, file_ctx;
|
|
|
|
extern gint start_capture;
|
|
|
|
extern gchar comp_info_str[256];
|
|
|
|
extern gchar *ethereal_path;
|
|
|
|
extern gchar *medium_font;
|
|
|
|
extern gchar *bold_font;
|
|
|
|
extern gchar *last_open_dir;
|
1999-09-19 15:54:54 +00:00
|
|
|
extern gboolean auto_scroll_live;
|
1999-09-01 03:04:24 +00:00
|
|
|
|
|
|
|
extern ts_type timestamp_type;
|
|
|
|
|
|
|
|
extern GtkStyle *item_style;
|
|
|
|
|
|
|
|
#ifdef HAVE_LIBPCAP
|
|
|
|
extern int sync_mode; /* allow sync */
|
|
|
|
extern int sync_pipe[2]; /* used to sync father */
|
|
|
|
extern int fork_mode; /* fork a child to do the capture */
|
|
|
|
extern int quit_after_cap; /* Makes a "capture only mode". Implies -k */
|
|
|
|
#endif
|
|
|
|
|
1999-09-09 03:32:03 +00:00
|
|
|
#define PF_DIR ".ethereal"
|
|
|
|
|
1999-09-01 03:04:24 +00:00
|
|
|
#endif
|