1999-06-22 22:02:39 +00:00
|
|
|
/* summary.h
|
1999-12-10 04:21:04 +00:00
|
|
|
* Definitions for capture file summary data
|
1999-06-22 22:02:39 +00:00
|
|
|
*
|
2004-07-18 00:24:25 +00:00
|
|
|
* $Id$
|
1999-06-22 22:02:39 +00:00
|
|
|
*
|
2006-05-21 05:12:17 +00:00
|
|
|
* Wireshark - Network traffic analyzer
|
|
|
|
* By Gerald Combs <gerald@wireshark.org>
|
1999-06-22 22:02:39 +00:00
|
|
|
* 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.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __SUMMARY_H__
|
|
|
|
#define __SUMMARY_H__
|
|
|
|
|
2005-02-06 21:20:35 +00:00
|
|
|
#ifdef HAVE_LIBPCAP
|
|
|
|
#include "capture.h"
|
|
|
|
#endif
|
|
|
|
|
2011-07-05 20:34:03 +00:00
|
|
|
typedef struct iface_options_tag {
|
|
|
|
char *name;
|
|
|
|
char *descr;
|
|
|
|
char *cfilter;
|
2012-02-26 08:02:02 +00:00
|
|
|
guint64 drops; /* number of packet drops */
|
2011-07-05 20:34:03 +00:00
|
|
|
gboolean drops_known; /* TRUE if number of packet drops is known */
|
2012-02-26 08:02:02 +00:00
|
|
|
gboolean has_snap; /* TRUE if maximum capture packet length is known */
|
|
|
|
int snap; /* Maximum captured packet length */
|
|
|
|
int linktype; /* wiretap encapsulation type */
|
2011-07-05 20:34:03 +00:00
|
|
|
} iface_options;
|
|
|
|
|
1999-06-22 22:02:39 +00:00
|
|
|
typedef struct _summary_tally {
|
2012-02-26 08:02:02 +00:00
|
|
|
guint64 bytes; /**< total bytes */
|
|
|
|
double start_time; /**< seconds, with msec resolution */
|
|
|
|
double stop_time; /**< seconds, with msec resolution */
|
2012-02-23 15:40:31 +00:00
|
|
|
double elapsed_time; /**< seconds, with msec resolution,
|
2012-02-26 08:02:02 +00:00
|
|
|
includes time before first packet
|
|
|
|
and after last packet */
|
|
|
|
guint32 marked_count; /**< number of marked packets */
|
|
|
|
guint32 marked_count_ts; /**< number of time-stamped marked packets */
|
2012-02-23 15:40:31 +00:00
|
|
|
guint64 marked_bytes; /**< total bytes in the marked packets */
|
|
|
|
double marked_start; /**< time in seconds, with msec resolution */
|
|
|
|
double marked_stop; /**< time in seconds, with msec resolution */
|
2012-02-26 08:02:02 +00:00
|
|
|
guint32 ignored_count; /**< number of ignored packets */
|
|
|
|
guint32 packet_count; /**< total number of packets in trace */
|
|
|
|
guint32 packet_count_ts; /**< total number of time-stamped packets in trace */
|
|
|
|
guint32 filtered_count; /**< number of filtered packets */
|
|
|
|
guint32 filtered_count_ts; /**< number of time-stamped filtered packets */
|
2012-02-23 15:40:31 +00:00
|
|
|
guint64 filtered_bytes; /**< total bytes in the filtered packets */
|
|
|
|
double filtered_start; /**< time in seconds, with msec resolution */
|
|
|
|
double filtered_stop; /**< time in seconds, with msec resolution */
|
1999-12-10 04:21:04 +00:00
|
|
|
const char *filename;
|
2012-02-26 17:04:28 +00:00
|
|
|
gint64 file_length; /**< file length in bytes */
|
|
|
|
int file_type; /**< wiretap file type */
|
|
|
|
int encap_type; /**< wiretap encapsulation type */
|
2012-02-23 15:40:31 +00:00
|
|
|
gboolean has_snap; /**< TRUE if maximum capture packet length is known */
|
2012-02-26 17:04:28 +00:00
|
|
|
int snap; /**< Maximum captured packet length */
|
|
|
|
gboolean drops_known; /**< TRUE if number of packet drops is known */
|
2012-02-23 15:40:31 +00:00
|
|
|
guint64 drops; /**< number of packet drops */
|
|
|
|
const char *dfilter; /**< display filter */
|
2011-07-15 20:45:28 +00:00
|
|
|
gboolean is_tempfile;
|
2012-02-23 21:29:13 +00:00
|
|
|
/* from SHB, use summary_fill_shb_inf() to get values */
|
2012-02-26 08:02:02 +00:00
|
|
|
gchar *opt_comment; /**< comment from SHB block */
|
|
|
|
gchar *shb_hardware; /**< Capture HW from SHB block */
|
2012-02-26 17:04:28 +00:00
|
|
|
gchar *shb_os; /**< The OS the capture was made on from SHB block */
|
2012-02-26 08:02:02 +00:00
|
|
|
gchar *shb_user_appl; /**< The application that made the capture from SHB block */
|
2005-02-06 21:34:59 +00:00
|
|
|
/* capture related, use summary_fill_in_capture() to get values */
|
2011-07-05 20:34:03 +00:00
|
|
|
GArray *ifaces;
|
|
|
|
gboolean legacy;
|
1999-06-22 22:02:39 +00:00
|
|
|
} summary_tally;
|
|
|
|
|
2008-10-14 22:55:16 +00:00
|
|
|
extern void
|
2005-02-06 21:20:35 +00:00
|
|
|
summary_fill_in(capture_file *cf, summary_tally *st);
|
|
|
|
|
|
|
|
#ifdef HAVE_LIBPCAP
|
|
|
|
extern void
|
2012-02-23 15:40:31 +00:00
|
|
|
summary_fill_in_capture(capture_file *cf, capture_options *capture_opts, summary_tally *st);
|
2005-02-06 21:20:35 +00:00
|
|
|
#endif
|
2012-02-26 17:04:28 +00:00
|
|
|
extern void
|
|
|
|
summary_update_comment(capture_file *cf, gchar *comment);
|
1999-06-22 22:02:39 +00:00
|
|
|
|
|
|
|
#endif /* summary.h */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|