aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGerald Combs <gerald@wireshark.org>2015-08-21 09:45:48 -0700
committerGerald Combs <gerald@wireshark.org>2015-08-21 17:13:11 +0000
commitdd2a2d432a0c1e7ca5b0fe56da8624619f23e35d (patch)
tree289d91d093096c38e06337c2145fc17032a164d3
parent69ec4a553050e56cc97ad48a512b3f41453ffa53 (diff)
Multicast and wireless lan statistics fixups.
Make sure "-z multicast,stat[,filter]" and "-z wlan,stat[,filter]" work. Add some missing "-z" items to the man page. Try to fix some MSVC++ warnings. Change-Id: Ie18e5355d595e351f000f14d82781dcdf33141c3 Reviewed-on: https://code.wireshark.org/review/10184 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
-rw-r--r--doc/wireshark.pod.template8
-rw-r--r--ui/qt/main_window_slots.cpp6
-rw-r--r--ui/qt/multicast_statistics_dialog.cpp9
-rw-r--r--ui/qt/wlan_statistics_dialog.cpp21
4 files changed, 36 insertions, 8 deletions
diff --git a/doc/wireshark.pod.template b/doc/wireshark.pod.template
index f414d4bf90..f2b00abe36 100644
--- a/doc/wireshark.pod.template
+++ b/doc/wireshark.pod.template
@@ -705,6 +705,10 @@ SRT statistics for a specific host.
Show DHCP (BOOTP) statistics.
+=item B<-z> expert
+
+Show expert information.
+
=item B<-z> fc,srt[,I<filter>]
Collect call/reply SRT (Service Response Time) data for FC. Data collected
@@ -931,6 +935,10 @@ VoIP Calls.
Example: B<-z voip,calls>
+=item B<-z> wlan,stat[,<filter>]
+
+Show IEEE 802.11 network and station statistics.
+
=item --disable-protocol E<lt>proto_nameE<gt>
Disable dissection of proto_name.
diff --git a/ui/qt/main_window_slots.cpp b/ui/qt/main_window_slots.cpp
index 05d0d550e1..cbd4e61aff 100644
--- a/ui/qt/main_window_slots.cpp
+++ b/ui/qt/main_window_slots.cpp
@@ -2572,6 +2572,7 @@ void MainWindow::on_actionSCTPFilterThisAssociation_triggered()
}
}
+// -z wlan,stat
void MainWindow::statCommandWlanStatistics(const char *arg, void *)
{
WlanStatisticsDialog *wlan_stats_dlg = new WlanStatisticsDialog(*this, capture_file_, arg);
@@ -2585,6 +2586,7 @@ void MainWindow::on_actionWirelessWlanStatistics_triggered()
statCommandWlanStatistics(NULL, NULL);
}
+// -z expert
void MainWindow::statCommandExpertInfo(const char *, void *)
{
ExpertInfoDialog *expert_dialog = new ExpertInfoDialog(*this, capture_file_);
@@ -2653,6 +2655,7 @@ void MainWindow::on_actionStatisticsTcpStreamWindowScaling_triggered()
openTcpStreamDialog(GRAPH_WSCALE);
}
+// -z mcast,stat
void MainWindow::statCommandMulticastStatistics(const char *arg, void *)
{
MulticastStatisticsDialog *mcast_stats_dlg = new MulticastStatisticsDialog(*this, capture_file_, arg);
@@ -2798,6 +2801,7 @@ void MainWindow::on_actionStatisticsCollectd_triggered()
openStatisticsTreeDialog("collectd");
}
+// -z conv,...
void MainWindow::statCommandConversations(const char *arg, void *userdata)
{
ConversationDialog *conv_dialog = new ConversationDialog(*this, capture_file_, GPOINTER_TO_INT(userdata), arg);
@@ -2815,6 +2819,7 @@ void MainWindow::on_actionStatisticsConversations_triggered()
statCommandConversations(NULL, NULL);
}
+// -z endpoints,...
void MainWindow::statCommandEndpoints(const char *arg, void *userdata)
{
EndpointDialog *endp_dialog = new EndpointDialog(*this, capture_file_, GPOINTER_TO_INT(userdata), arg);
@@ -2857,6 +2862,7 @@ void MainWindow::on_actionStatisticsPacketLengths_triggered()
openStatisticsTreeDialog("plen");
}
+// -z io,stat
void MainWindow::statCommandIOGraph(const char *, void *)
{
IOGraphDialog *iog_dialog = new IOGraphDialog(*this, capture_file_);
diff --git a/ui/qt/multicast_statistics_dialog.cpp b/ui/qt/multicast_statistics_dialog.cpp
index c818ce4e3f..dd2f521ddf 100644
--- a/ui/qt/multicast_statistics_dialog.cpp
+++ b/ui/qt/multicast_statistics_dialog.cpp
@@ -455,8 +455,13 @@ void MulticastStatisticsDialog::captureFileClosing()
// Stat command + args
static void
-multicast_statistics_init(const char *, void*) {
- wsApp->emitStatCommandSignal("MulticastStatistics", NULL, NULL);
+multicast_statistics_init(const char *args, void*) {
+ QStringList args_l = QString(args).split(',');
+ QByteArray filter;
+ if (args_l.length() > 2) {
+ filter = QStringList(args_l.mid(2)).join(",").toUtf8();
+ }
+ wsApp->emitStatCommandSignal("MulticastStatistics", filter.constData(), NULL);
}
static stat_tap_ui multicast_statistics_ui = {
diff --git a/ui/qt/wlan_statistics_dialog.cpp b/ui/qt/wlan_statistics_dialog.cpp
index 5331b6c335..3855de86fe 100644
--- a/ui/qt/wlan_statistics_dialog.cpp
+++ b/ui/qt/wlan_statistics_dialog.cpp
@@ -77,10 +77,10 @@ public:
setText(col_bssid_, address_to_qstring(&addr_));
}
bool isMatch(address *addr) {
- return (addresses_equal(&addr_, addr)) == TRUE;
+ return addresses_equal(&addr_, addr);
}
void update(wlan_hdr_t *wlan_hdr) {
- bool is_sender = addresses_equal(&addr_, &wlan_hdr->src) == TRUE;
+ bool is_sender = addresses_equal(&addr_, &wlan_hdr->src);
// XXX Should we count received probes and auths? This is what the
// GTK+ UI does, but it seems odd.
@@ -448,7 +448,7 @@ private:
void updateBssid(wlan_hdr_t *wlan_hdr) {
copy_address(&bssid_, &wlan_hdr->bssid);
- is_broadcast_ = is_broadcast_bssid(&bssid_) == TRUE;
+ is_broadcast_ = is_broadcast_bssid(&bssid_);
setText(col_bssid_, address_to_qstring(&bssid_));
}
};
@@ -463,7 +463,7 @@ static const QString node_col_4_title_ = QObject::tr("Pkts Sent");
static const QString node_col_5_title_ = QObject::tr("Pkts Received");
static const QString node_col_11_title_ = QObject::tr("Comment");
-WlanStatisticsDialog::WlanStatisticsDialog(QWidget &parent, CaptureFile &cf, const char *) :
+WlanStatisticsDialog::WlanStatisticsDialog(QWidget &parent, CaptureFile &cf, const char *filter) :
TapParameterDialog(parent, cf, HELP_STATS_WLAN_TRAFFIC_DIALOG)
{
setWindowSubtitle(tr("Wireless LAN Statistics"));
@@ -504,6 +504,10 @@ WlanStatisticsDialog::WlanStatisticsDialog(QWidget &parent, CaptureFile &cf, con
addFilterActions();
+ if (filter) {
+ setDisplayFilter(filter);
+ }
+
connect(statsTreeWidget(), SIGNAL(currentItemChanged(QTreeWidgetItem*,QTreeWidgetItem*)),
this, SLOT(updateHeaderLabels()));
}
@@ -644,8 +648,13 @@ void WlanStatisticsDialog::captureFileClosing()
// Stat command + args
static void
-wlan_statistics_init(const char *, void*) {
- wsApp->emitStatCommandSignal("WlanStatistics", NULL, NULL);
+wlan_statistics_init(const char *args, void*) {
+ QStringList args_l = QString(args).split(',');
+ QByteArray filter;
+ if (args_l.length() > 2) {
+ filter = QStringList(args_l.mid(2)).join(",").toUtf8();
+ }
+ wsApp->emitStatCommandSignal("WlanStatistics", filter.constData(), NULL);
}
static stat_tap_ui wlan_statistics_ui = {