76 lines
2.1 KiB
Diff
76 lines
2.1 KiB
Diff
From d2c20f1a0dd228fcfaa36bb9fdd1e38148e7b145 Mon Sep 17 00:00:00 2001
|
|
From: Patrick Walther <patrick.walther@netmodule.com>
|
|
Date: Tue, 28 Jan 2020 15:14:35 +0100
|
|
|
|
---
|
|
hostapd/main.c | 5 ++++-
|
|
wpa_supplicant/main.c | 11 ++++++++---
|
|
2 files changed, 12 insertions(+), 4 deletions(-)
|
|
|
|
diff --git a/hostapd/main.c b/hostapd/main.c
|
|
index 90424d5bd..4b537f35a 100644
|
|
--- a/hostapd/main.c
|
|
+++ b/hostapd/main.c
|
|
@@ -15,6 +15,7 @@
|
|
#include "utils/common.h"
|
|
#include "utils/eloop.h"
|
|
#include "utils/uuid.h"
|
|
+#include "utils/build_features.h"
|
|
#include "crypto/random.h"
|
|
#include "crypto/tls.h"
|
|
#include "common/version.h"
|
|
@@ -690,7 +691,7 @@ int main(int argc, char *argv[])
|
|
wpa_supplicant_event = hostapd_wpa_event;
|
|
wpa_supplicant_event_global = hostapd_wpa_event_global;
|
|
for (;;) {
|
|
- c = getopt(argc, argv, "b:Bde:f:hi:KP:sSTtu:vg:G:");
|
|
+ c = getopt(argc, argv, "b:Bde:f:hi:KP:sSTtu:g:G:v::");
|
|
if (c < 0)
|
|
break;
|
|
switch (c) {
|
|
@@ -727,6 +728,8 @@ int main(int argc, char *argv[])
|
|
break;
|
|
#endif /* CONFIG_DEBUG_LINUX_TRACING */
|
|
case 'v':
|
|
+ if (optarg)
|
|
+ exit(!has_feature(optarg));
|
|
show_version();
|
|
exit(1);
|
|
break;
|
|
diff --git a/wpa_supplicant/main.c b/wpa_supplicant/main.c
|
|
index 669f5b0b6..3d7f1ba6e 100644
|
|
--- a/wpa_supplicant/main.c
|
|
+++ b/wpa_supplicant/main.c
|
|
@@ -12,6 +12,7 @@
|
|
#endif /* __linux__ */
|
|
|
|
#include "common.h"
|
|
+#include "build_features.h"
|
|
#include "fst/fst.h"
|
|
#include "wpa_supplicant_i.h"
|
|
#include "driver_i.h"
|
|
@@ -202,7 +203,7 @@ int main(int argc, char *argv[])
|
|
|
|
for (;;) {
|
|
c = getopt(argc, argv,
|
|
- "b:Bc:C:D:de:f:g:G:hH:i:I:KLMm:No:O:p:P:qsTtuvW");
|
|
+ "b:Bc:C:D:de:f:g:G:hH:i:I:KLMm:No:O:p:P:qsTtuv::W");
|
|
if (c < 0)
|
|
break;
|
|
switch (c) {
|
|
@@ -305,8 +306,12 @@ int main(int argc, char *argv[])
|
|
break;
|
|
#endif /* CONFIG_CTRL_IFACE_DBUS_NEW */
|
|
case 'v':
|
|
- printf("%s\n", wpa_supplicant_version);
|
|
- exitcode = 0;
|
|
+ if (optarg) {
|
|
+ exitcode = !has_feature(optarg);
|
|
+ } else {
|
|
+ printf("%s\n", wpa_supplicant_version);
|
|
+ exitcode = 0;
|
|
+ }
|
|
goto out;
|
|
case 'W':
|
|
params.wait_for_monitor++;
|