aboutsummaryrefslogtreecommitdiffstats
path: root/wlantest
diff options
context:
space:
mode:
authorJouni Malinen <j@w1.fi>2013-11-17 19:16:29 (GMT)
committerJouni Malinen <j@w1.fi>2013-11-17 19:40:17 (GMT)
commitd33fef57a4d255e7caa772a61210b9d89a74ea5f (patch)
treeec42a46422f6d0d8b21d759f63713835489cfed8 /wlantest
parentc99a721e5b803bc6710aac0583121ef80df38d1a (diff)
downloadhostap-d33fef57a4d255e7caa772a61210b9d89a74ea5f.zip
hostap-d33fef57a4d255e7caa772a61210b9d89a74ea5f.tar.gz
hostap-d33fef57a4d255e7caa772a61210b9d89a74ea5f.tar.bz2
wlantest: Add support for log output into a file
This allows wlantest debug log output to be directed to a file so that RELOG command can be used to rotate files more easily than stdout. Signed-hostap: Jouni Malinen <j@w1.fi>
Diffstat (limited to 'wlantest')
-rw-r--r--wlantest/Makefile1
-rw-r--r--wlantest/wlantest.c15
2 files changed, 14 insertions, 2 deletions
diff --git a/wlantest/Makefile b/wlantest/Makefile
index 6594b34..a08fd54 100644
--- a/wlantest/Makefile
+++ b/wlantest/Makefile
@@ -42,6 +42,7 @@ OBJS_lib += ../src/crypto/libcrypto.a
CFLAGS += -DCONFIG_PEERKEY
CFLAGS += -DCONFIG_IEEE80211W
CFLAGS += -DCONFIG_IEEE80211R
+CFLAGS += -DCONFIG_DEBUG_FILE
OBJS += ../src/common/ieee802_11_common.o
OBJS += ../src/common/wpa_common.o
diff --git a/wlantest/wlantest.c b/wlantest/wlantest.c
index 2966458..57c8be0 100644
--- a/wlantest/wlantest.c
+++ b/wlantest/wlantest.c
@@ -30,7 +30,8 @@ static void usage(void)
" [-I<wired ifname>] [-R<wired pcap file>] "
"[-P<RADIUS shared secret>]\n"
" [-n<write pcapng file>]\n"
- " [-w<write pcap file>] [-f<MSK/PMK file>]\n");
+ " [-w<write pcap file>] [-f<MSK/PMK file>]\n"
+ " [-L<log file>]\n");
}
@@ -250,6 +251,8 @@ int wlantest_relog(struct wlantest *wt)
int ret = 0;
wpa_printf(MSG_INFO, "Re-open log/capture files");
+ if (wpa_debug_reopen_file())
+ ret = -1;
if (wt->write_file) {
write_pcap_deinit(wt);
@@ -274,6 +277,7 @@ int main(int argc, char *argv[])
const char *read_wired_file = NULL;
const char *ifname = NULL;
const char *ifname_wired = NULL;
+ const char *logfile = NULL;
struct wlantest wt;
int ctrl_iface = 0;
@@ -286,7 +290,7 @@ int main(int argc, char *argv[])
wlantest_init(&wt);
for (;;) {
- c = getopt(argc, argv, "cdf:Fhi:I:n:p:P:qr:R:w:W:");
+ c = getopt(argc, argv, "cdf:Fhi:I:L:n:p:P:qr:R:w:W:");
if (c < 0)
break;
switch (c) {
@@ -313,6 +317,9 @@ int main(int argc, char *argv[])
case 'I':
ifname_wired = optarg;
break;
+ case 'L':
+ logfile = optarg;
+ break;
case 'n':
wt.pcapng_file = optarg;
break;
@@ -353,6 +360,9 @@ int main(int argc, char *argv[])
if (eloop_init())
return -1;
+ if (logfile)
+ wpa_debug_open_file(logfile);
+
if (wt.write_file && write_pcap_init(&wt, wt.write_file) < 0)
return -1;
@@ -384,6 +394,7 @@ int main(int argc, char *argv[])
wlantest_deinit(&wt);
+ wpa_debug_close_file();
eloop_destroy();
os_program_deinit();