diff options
Diffstat (limited to 'capture_opts.h')
-rw-r--r-- | capture_opts.h | 53 |
1 files changed, 45 insertions, 8 deletions
diff --git a/capture_opts.h b/capture_opts.h index 9cd688c32e..a6b980e0a2 100644 --- a/capture_opts.h +++ b/capture_opts.h @@ -73,21 +73,46 @@ typedef enum { } capture_sampling; #endif +typedef struct interface_options_tag { + gchar *name; + gchar *descr; + gchar *cfilter; + int snaplen; + int linktype; + gboolean promisc_mode; +#if defined(_WIN32) || defined(HAVE_PCAP_CREATE) + int buffer_size; +#endif + gboolean monitor_mode; +} interface_options; + /** Capture options coming from user interface */ typedef struct capture_options_tag { /* general */ void *cf; /**< handle to cfile (note: untyped handle) */ gboolean has_cfilter; /**< TRUE if capture filter specified on command line */ - gchar *cfilter; /**< Capture filter string */ - gchar *iface; /**< the network interface to capture from */ + gchar *cfilter; /**< Capture filter string + *< XXX: Can finally be be removed. + *< Replaced by interface_options.cfilter */ + gchar *iface; /**< the network interface to capture from + *< XXX: Can finally be be removed. + *< Replaced by interface_options.name */ gchar *iface_descr; /**< A human readable description of iface. *< NOTE: capture_opts.c is not able to *< set this field because doing so *< requires too many dependencies. *< Readers of this field should use *< get_iface_description() from - *< "capture_ui_utils.h" to access it. */ + *< "capture_ui_utils.h" to access it. + *< XXX: Can finally be be removed. + *< Replaced by interface_options.descr */ + GArray *ifaces; /**< array of interfaces. + Currently only used by dumpcap. */ + gint number_of_ifaces; /**< Curently only used by dumpcap. */ + interface_options default_options; #ifdef HAVE_PCAP_REMOTE + /**< XXX: Should this whole block moved to + *< interface_options ?*/ capture_source src_type; /**< Capturing on remote interface */ gchar *remote_host; /**< Host name or network address *< for remote capturing */ @@ -102,19 +127,31 @@ typedef struct capture_options_tag { gboolean nocap_local; /**< TODO: Whether to capture local traffic */ #endif #ifdef HAVE_PCAP_SETSAMPLING + /**< XXX: Should this whole block moved to + *< interface_options ?*/ capture_sampling sampling_method; /**< PCAP packet sampling method */ int sampling_param; /**< PCAP packet sampling parameter */ #endif #if defined(_WIN32) || defined(HAVE_PCAP_CREATE) - int buffer_size; /**< the capture buffer size (MB) */ + int buffer_size; /**< the capture buffer size (MB) + *< XXX: Can finally be be removed. + *< Replaced by interface_options.buffer_size */ #endif gboolean has_snaplen; /**< TRUE if maximum capture packet length is specified */ - int snaplen; /**< Maximum captured packet length */ - gboolean promisc_mode; /**< Capture in promiscuous mode */ + int snaplen; /**< Maximum captured packet length + *< XXX: Can finally be be removed. + *< Replaced by interface_options.snaplen */ + gboolean promisc_mode; /**< Capture in promiscuous mode + *< XXX: Can finally be be removed. + *< Replaced by interface_options.promisc_mode */ int linktype; /**< Data link type to use, or -1 for - "use default" */ - gboolean monitor_mode; /**< Capture in monitor mode, if available */ + "use default" + *< XXX: Can finally be be removed. + *< Replaced by interface_options.linktype */ + gboolean monitor_mode; /**< Capture in monitor mode, if available + *< XXX: Can finally be be removed. + *< Replaced by interface_options.monitor_mode */ gboolean saving_to_file; /**< TRUE if capture is writing to a file */ gchar *save_file; /**< the capture file name */ gboolean group_read_access; /**< TRUE is group read permission needs to be set */ |