From 1f1e61928273e10b0595eea637071f09729cb1c0 Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Sat, 31 Oct 2015 19:11:09 +0200 Subject: [PATCH] Add test programs for checking libwpa_client linking libwpa_test1 and libwpa_test2 targets can now be used to check libwpa_client linking for static and shared library cases respectively. Signed-off-by: Jouni Malinen --- .gitignore | 2 ++ wpa_supplicant/Makefile | 9 +++++++++ wpa_supplicant/tests/libwpa_test.c | 32 ++++++++++++++++++++++++++++++ 3 files changed, 43 insertions(+) create mode 100644 wpa_supplicant/tests/libwpa_test.c diff --git a/.gitignore b/.gitignore index ae624c91f..1291239ee 100644 --- a/.gitignore +++ b/.gitignore @@ -19,6 +19,8 @@ wpa_supplicant/wpa_gui/Makefile wpa_supplicant/wpa_gui/wpa_gui wpa_supplicant/wpa_gui-qt4/Makefile wpa_supplicant/wpa_gui-qt4/wpa_gui +wpa_supplicant/libwpa_test1 +wpa_supplicant/libwpa_test2 hostapd/hostapd hostapd/hostapd_cli hostapd/hlr_auc_gw diff --git a/wpa_supplicant/Makefile b/wpa_supplicant/Makefile index ad7dd8da2..86bdfc6de 100644 --- a/wpa_supplicant/Makefile +++ b/wpa_supplicant/Makefile @@ -1722,6 +1722,14 @@ libwpa_client.so: $(LIBCTRLSO) @$(E) " CC $@ ($^)" $(Q)$(CC) $(LDFLAGS) -o $@ $(CFLAGS) -shared -fPIC $^ +libwpa_test1: tests/libwpa_test.o libwpa_client.a + $(Q)$(LDO) $(LDFLAGS) -o libwpa_test1 tests/libwpa_test.o libwpa_client.a $(LIBS_c) + @$(E) " LD " $@ + +libwpa_test2: tests/libwpa_test.o libwpa_client.so + $(Q)$(LDO) $(LDFLAGS) -o libwpa_test2 tests/libwpa_test.o -L. -lwpa_client $(LIBS_c) + @$(E) " LD " $@ + link_test: $(OBJS) $(OBJS_h) tests/link_test.o $(Q)$(LDO) $(LDFLAGS) -o link_test $(OBJS) $(OBJS_h) tests/link_test.o $(LIBS) @$(E) " LD " $@ @@ -1843,5 +1851,6 @@ clean: rm -rf lcov-html rm -f libwpa_client.a rm -f libwpa_client.so + rm -f libwpa_test1 libwpa_test2 -include $(OBJS:%.o=%.d) diff --git a/wpa_supplicant/tests/libwpa_test.c b/wpa_supplicant/tests/libwpa_test.c new file mode 100644 index 000000000..e51ab7247 --- /dev/null +++ b/wpa_supplicant/tests/libwpa_test.c @@ -0,0 +1,32 @@ +/* + * libwpa_test - Test program for libwpa_client.* library linking + * Copyright (c) 2015, Jouni Malinen + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#include "includes.h" + +#include "common/wpa_ctrl.h" + +int main(int argc, char *argv[]) +{ + struct wpa_ctrl *ctrl; + + ctrl = wpa_ctrl_open("foo"); + if (!ctrl) + return -1; + if (wpa_ctrl_attach(ctrl) == 0) + wpa_ctrl_detach(ctrl); + if (wpa_ctrl_pending(ctrl)) { + char buf[10]; + size_t len; + + len = sizeof(buf); + wpa_ctrl_recv(ctrl, buf, &len); + } + wpa_ctrl_close(ctrl); + + return 0; +}