tests: Declare module test functions in a header file
[mech_eap.git] / src / common / common_module_tests.c
index 56b1122..e0769c0 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * common module tests
- * Copyright (c) 2014, Jouni Malinen <j@w1.fi>
+ * Copyright (c) 2014-2015, Jouni Malinen <j@w1.fi>
  *
  * This software may be distributed under the terms of the BSD license.
  * See README for more details.
@@ -9,7 +9,10 @@
 #include "utils/includes.h"
 
 #include "utils/common.h"
+#include "utils/module_tests.h"
 #include "ieee802_11_common.h"
+#include "ieee802_11_defs.h"
+#include "gas.h"
 #include "wpa_common.h"
 
 
@@ -46,6 +49,10 @@ static const struct ieee802_11_parse_test_data parse_tests[] = {
        { (u8 *) "\x6e\x00", 2, ParseOK, 1 },
        { (u8 *) "\xc7\x00", 2, ParseOK, 1 },
        { (u8 *) "\xc7\x01\x00", 3, ParseOK, 1 },
+       { (u8 *) "\x03\x00\x2a\x00\x36\x00\x37\x00\x38\x00\x2d\x00\x3d\x00\xbf\x00\xc0\x00",
+         18, ParseOK, 9 },
+       { (u8 *) "\x8b\x00", 2, ParseOK, 1 },
+       { (u8 *) "\xdd\x04\x00\x90\x4c\x04", 6, ParseUnknown, 1 },
        { NULL, 0, ParseOK, 0 }
 };
 
@@ -158,6 +165,34 @@ static int rsn_ie_parse_tests(void)
 }
 
 
+static int gas_tests(void)
+{
+       struct wpabuf *buf;
+
+       wpa_printf(MSG_INFO, "gas tests");
+       gas_anqp_set_len(NULL);
+
+       buf = wpabuf_alloc(1);
+       if (buf == NULL)
+               return -1;
+       gas_anqp_set_len(buf);
+       wpabuf_free(buf);
+
+       buf = wpabuf_alloc(20);
+       if (buf == NULL)
+               return -1;
+       wpabuf_put_u8(buf, WLAN_ACTION_PUBLIC);
+       wpabuf_put_u8(buf, WLAN_PA_GAS_INITIAL_REQ);
+       wpabuf_put_u8(buf, 0);
+       wpabuf_put_be32(buf, 0);
+       wpabuf_put_u8(buf, 0);
+       gas_anqp_set_len(buf);
+       wpabuf_free(buf);
+
+       return 0;
+}
+
+
 int common_module_tests(void)
 {
        int ret = 0;
@@ -165,6 +200,7 @@ int common_module_tests(void)
        wpa_printf(MSG_INFO, "common module tests");
 
        if (ieee802_11_parse_tests() < 0 ||
+           gas_tests() < 0 ||
            rsn_ie_parse_tests() < 0)
                ret = -1;