summaryrefslogtreecommitdiff
path: root/ui/qt/capture_interfaces_dialog.cpp
diff options
context:
space:
mode:
authorStig Bjørlykke <stig@bjorlykke.org>2016-01-03 13:37:16 +0100
committerStig Bjørlykke <stig@bjorlykke.org>2016-01-05 14:46:12 +0000
commitffb51b3afb7c92b38046a4907ba013cb6c3288b1 (patch)
tree7ac2cc00ce36c47be0c2dd55cc2e32b94db03736 /ui/qt/capture_interfaces_dialog.cpp
parentcfd5457ec0575be3b1b8726daf95fdc4da0e50fb (diff)
downloadwireshark-ffb51b3afb7c92b38046a4907ba013cb6c3288b1.tar.gz
Qt: Disable configurable interface settings for extcap
Disable promiscuous mode, snaplen, buffer size and monitor mode settings for extcap interfaces. Bug: 11865 Change-Id: I20c67815ece99b8e742e36c727f415931b87af1f Reviewed-on: https://code.wireshark.org/review/13023 Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Diffstat (limited to 'ui/qt/capture_interfaces_dialog.cpp')
-rw-r--r--ui/qt/capture_interfaces_dialog.cpp48
1 files changed, 30 insertions, 18 deletions
diff --git a/ui/qt/capture_interfaces_dialog.cpp b/ui/qt/capture_interfaces_dialog.cpp
index 088e2a71d4..4c154e9dea 100644
--- a/ui/qt/capture_interfaces_dialog.cpp
+++ b/ui/qt/capture_interfaces_dialog.cpp
@@ -512,8 +512,6 @@ void CaptureInterfacesDialog::updateInterfaces()
device->has_snaplen = FALSE;
}
- QString snaplen_string = device->has_snaplen ? QString::number(device->snaplen) : tr("default");
-
#ifdef SHOW_BUFFER_COLUMN
if (capture_dev_user_buffersize_find(device->name) != -1) {
buffer = capture_dev_user_buffersize_find(device->name);
@@ -525,14 +523,30 @@ void CaptureInterfacesDialog::updateInterfaces()
ti->setText(col_link_, linkname);
- ti->setText(col_pmode_, device->pmode ? tr("enabled") : tr("disabled"));
-
- ti->setText(col_snaplen_, snaplen_string);
+#ifdef HAVE_EXTCAP
+ if (device->if_info.type == IF_EXTCAP) {
+ /* extcap interfaces does not have this settings */
+ ti->setText(col_pmode_, tr("n/a"));
+ ti->setText(col_snaplen_, tr("n/a"));
#ifdef SHOW_BUFFER_COLUMN
- ti->setText(col_buffer_, QString::number(device->buffer));
+ ti->setText(col_buffer_, tr("n/a"));
#endif
#ifdef SHOW_MONITOR_COLUMN
- ti->setText(col_monitor_, QString(device->monitor_mode_supported? (device->monitor_mode_enabled ? tr("enabled") : tr("disabled")) : tr("n/a")));
+ ti->setText(col_monitor_, tr("n/a"));
+#endif
+ } else {
+#endif
+ QString snaplen_string = device->has_snaplen ? QString::number(device->snaplen) : tr("default");
+ ti->setText(col_pmode_, device->pmode ? tr("enabled") : tr("disabled"));
+ ti->setText(col_snaplen_, snaplen_string);
+#ifdef SHOW_BUFFER_COLUMN
+ ti->setText(col_buffer_, QString::number(device->buffer));
+#endif
+#ifdef SHOW_MONITOR_COLUMN
+ ti->setText(col_monitor_, QString(device->monitor_mode_supported? (device->monitor_mode_enabled ? tr("enabled") : tr("disabled")) : tr("n/a")));
+#endif
+#ifdef HAVE_EXTCAP
+ }
#endif
gchar* prefFilter = capture_dev_user_cfilter_find(device->name);
if (prefFilter) {
@@ -922,11 +936,11 @@ QWidget* InterfaceTreeDelegate::createEditor( QWidget *parent, const QStyleOptio
guint snap = WTAP_MAX_PACKET_SIZE;
GList *links = NULL;
- if (index.column() > 1) {
- interface_t *device;
+ if (index.column() > 1 && index.data().toString().compare(QString("n/a"))) {
QTreeWidgetItem *ti = tree_->topLevelItem(index.row());
QString interface_name = ti->text(col_interface_);
- device = find_device_by_if_name(interface_name);
+ interface_t *device = find_device_by_if_name(interface_name);
+
if (device) {
#ifdef SHOW_BUFFER_COLUMN
buffer = device->buffer;
@@ -990,14 +1004,12 @@ QWidget* InterfaceTreeDelegate::createEditor( QWidget *parent, const QStyleOptio
#ifdef SHOW_MONITOR_COLUMN
case col_monitor_:
{
- if (index.data().toString().compare(QString("n/a"))) {
- QComboBox *cb = new QComboBox(parent);
- cb->addItem(QString(tr("enabled")));
- cb->addItem(QString(tr("disabled")));
- connect(cb, SIGNAL(currentIndexChanged(QString)), this, SLOT(monitor_changed(QString)));
- w = (QWidget*) cb;
- }
- break;
+ QComboBox *cb = new QComboBox(parent);
+ cb->addItem(QString(tr("enabled")));
+ cb->addItem(QString(tr("disabled")));
+ connect(cb, SIGNAL(currentIndexChanged(QString)), this, SLOT(monitor_changed(QString)));
+ w = (QWidget*) cb;
+ break;
}
#endif
case col_filter_: