ASR_BASE

Change-Id: Icf3719cc0afe3eeb3edc7fa80a2eb5199ca9dda1
diff --git a/package/kernel/asr-wl/asr-hostapd/asr-hostapd-2023-06-22/wpaspy/test.py b/package/kernel/asr-wl/asr-hostapd/asr-hostapd-2023-06-22/wpaspy/test.py
new file mode 100644
index 0000000..5e18fb2
--- /dev/null
+++ b/package/kernel/asr-wl/asr-hostapd/asr-hostapd-2023-06-22/wpaspy/test.py
@@ -0,0 +1,82 @@
+#!/usr/bin/python
+#
+# Test script for wpaspy
+# Copyright (c) 2013, Jouni Malinen <j@w1.fi>
+#
+# This software may be distributed under the terms of the BSD license.
+# See README for more details.
+
+import os
+import sys
+import time
+import wpaspy
+
+wpas_ctrl = '/var/run/wpa_supplicant'
+
+def wpas_connect(host=None, port=9877):
+    ifaces = []
+
+    if host != None:
+        try:
+            wpas = wpaspy.Ctrl(host, port)
+            return wpas
+        except:
+            print("Could not connect to host: ", host)
+            return None
+
+    if os.path.isdir(wpas_ctrl):
+        try:
+            ifaces = [os.path.join(wpas_ctrl, i) for i in os.listdir(wpas_ctrl)]
+        except OSError as error:
+            print("Could not find wpa_supplicant: ", error)
+            return None
+
+    if len(ifaces) < 1:
+        print("No wpa_supplicant control interface found")
+        return None
+
+    for ctrl in ifaces:
+        try:
+            wpas = wpaspy.Ctrl(ctrl)
+            return wpas
+        except Exception as e:
+            pass
+    return None
+
+
+def main(host=None, port=9877):
+    print("Testing wpa_supplicant control interface connection")
+    wpas = wpas_connect(host, port)
+    if wpas is None:
+        return
+    print("Connected to wpa_supplicant")
+    print(wpas.request('PING'))
+
+    mon = wpas_connect(host, port)
+    if mon is None:
+        print("Could not open event monitor connection")
+        return
+
+    mon.attach()
+    print("Scan")
+    print(wpas.request('SCAN'))
+
+    count = 0
+    while count < 10:
+        count += 1
+        time.sleep(1)
+        while mon.pending():
+            ev = mon.recv()
+            print(ev)
+            if 'CTRL-EVENT-SCAN-RESULTS' in ev:
+                print('Scan completed')
+                print(wpas.request('SCAN_RESULTS'))
+                count = 10
+                pass
+
+
+if __name__ == "__main__":
+    if len(sys.argv) > 2:
+        main(host=sys.argv[1], port=int(sys.argv[2]))
+    else:
+        main()