From 0aad5de37cf518ab1d6cc7bc5d813c41e64ce9b8 Mon Sep 17 00:00:00 2001 From: Cy Schubert Date: Sat, 17 Apr 2021 08:44:52 -0700 Subject: [PATCH] Revert wpa import. b51f459a2098622c31ed54f5c1bf0e03efce403b resulted in a mismerge due to having to do a remerge because my tree was over a week out of date. Changes that were made to fix the build were lost in the remerge resulting in build errors that were fixed a week ago. --- contrib/wpa/.gitignore | 8 - contrib/wpa/Android.mk | 10 - contrib/wpa/build_release | 47 - contrib/wpa/doc/.gitignore | 14 - contrib/wpa/doc/Makefile | 42 - contrib/wpa/doc/code_structure.doxygen | 315 - contrib/wpa/doc/ctrl_iface.doxygen | 1054 -- contrib/wpa/doc/dbus.doxygen | 2394 ---- contrib/wpa/doc/directories.doxygen | 90 - contrib/wpa/doc/doxygen.conf | 1547 --- contrib/wpa/doc/driver_wrapper.doxygen | 180 - contrib/wpa/doc/eap.doxygen | 87 - contrib/wpa/doc/eap_server.doxygen | 56 - contrib/wpa/doc/hostapd.fig | 264 - contrib/wpa/doc/hostapd_ctrl_iface.doxygen | 66 - contrib/wpa/doc/mainpage.doxygen | 95 - contrib/wpa/doc/p2p.doxygen | 471 - contrib/wpa/doc/p2p_arch.dot | 85 - contrib/wpa/doc/p2p_arch2.dot | 85 - contrib/wpa/doc/p2p_sm.dot | 62 - contrib/wpa/doc/porting.doxygen | 209 - contrib/wpa/doc/testing_tools.doxygen | 201 - contrib/wpa/doc/wpa_supplicant.fig | 247 - contrib/wpa/eap_example/.gitignore | 4 - contrib/wpa/eap_example/Makefile | 119 - contrib/wpa/eap_example/README | 42 - contrib/wpa/eap_example/ca.pem | 55 - contrib/wpa/eap_example/dh.conf | 5 - contrib/wpa/eap_example/eap_example.c | 47 - contrib/wpa/eap_example/eap_example_peer.c | 377 - contrib/wpa/eap_example/eap_example_server.c | 300 - contrib/wpa/eap_example/server-key.pem | 15 - contrib/wpa/eap_example/server.key | 16 - contrib/wpa/eap_example/server.pem | 64 - contrib/wpa/hostapd/.gitignore | 5 - contrib/wpa/hostapd/sae_pk_gen.c | 196 - contrib/wpa/hs20/server/.gitignore | 1 - contrib/wpa/hs20/server/Makefile | 42 - contrib/wpa/hs20/server/ca/clean.sh | 13 - contrib/wpa/hs20/server/ca/est-csrattrs.cnf | 17 - contrib/wpa/hs20/server/ca/est-csrattrs.sh | 4 - contrib/wpa/hs20/server/ca/hs20.oid | 7 - contrib/wpa/hs20/server/ca/ocsp-req.sh | 11 - .../wpa/hs20/server/ca/ocsp-responder-ica.sh | 3 - contrib/wpa/hs20/server/ca/ocsp-responder.sh | 3 - .../wpa/hs20/server/ca/ocsp-update-cache.sh | 11 - contrib/wpa/hs20/server/ca/openssl-root.cnf | 125 - contrib/wpa/hs20/server/ca/openssl.cnf | 200 - contrib/wpa/hs20/server/ca/setup.sh | 209 - contrib/wpa/hs20/server/hs20-osu-server.txt | 262 - contrib/wpa/hs20/server/hs20_spp_server.c | 207 - contrib/wpa/hs20/server/spp_server.c | 2933 ----- contrib/wpa/hs20/server/spp_server.h | 36 - contrib/wpa/hs20/server/sql-example.txt | 17 - contrib/wpa/hs20/server/sql.txt | 108 - contrib/wpa/hs20/server/www/add-free.php | 50 - contrib/wpa/hs20/server/www/add-mo.php | 56 - contrib/wpa/hs20/server/www/cert-enroll.php | 39 - contrib/wpa/hs20/server/www/config.php | 7 - contrib/wpa/hs20/server/www/est.php | 232 - .../wpa/hs20/server/www/free-remediation.php | 19 - contrib/wpa/hs20/server/www/free.php | 23 - contrib/wpa/hs20/server/www/redirect.php | 32 - .../wpa/hs20/server/www/remediation-pw.php | 41 - contrib/wpa/hs20/server/www/remediation.php | 55 - contrib/wpa/hs20/server/www/signup.php | 59 - contrib/wpa/hs20/server/www/spp.php | 168 - contrib/wpa/hs20/server/www/terms.php | 87 - contrib/wpa/hs20/server/www/users.php | 377 - contrib/wpa/radius_example/.gitignore | 2 - contrib/wpa/radius_example/Makefile | 28 - contrib/wpa/radius_example/README | 35 - contrib/wpa/radius_example/radius_example.c | 153 - contrib/wpa/src/build.rules | 109 - contrib/wpa/src/common/brcm_vendor.h | 156 - contrib/wpa/src/common/dpp_auth.c | 1977 --- contrib/wpa/src/common/dpp_backup.c | 1265 -- contrib/wpa/src/common/dpp_crypto.c | 3329 ----- contrib/wpa/src/common/dpp_i.h | 160 - contrib/wpa/src/common/dpp_pkex.c | 1324 -- contrib/wpa/src/common/dpp_reconfig.c | 958 -- contrib/wpa/src/common/dpp_tcp.c | 1794 --- contrib/wpa/src/common/ptksa_cache.c | 321 - contrib/wpa/src/common/ptksa_cache.h | 79 - contrib/wpa/src/common/sae_pk.c | 884 -- contrib/wpa/src/crypto/sha384-tlsprf.c | 71 - contrib/wpa/src/eap_peer/.gitignore | 1 - contrib/wpa/src/objs.mk | 3 - contrib/wpa/src/utils/config.c | 97 - contrib/wpa/src/utils/config.h | 29 - contrib/wpa/src/utils/ext_password_file.c | 136 - contrib/wpa/tests/.gitignore | 3 - contrib/wpa/tests/Makefile | 99 - contrib/wpa/tests/README | 123 - .../wpa/tests/cipher-and-key-mgmt-testing.txt | 377 - contrib/wpa/tests/fuzzing/README | 23 - contrib/wpa/tests/fuzzing/ap-mgmt/.gitignore | 1 - contrib/wpa/tests/fuzzing/ap-mgmt/Makefile | 44 - contrib/wpa/tests/fuzzing/ap-mgmt/ap-mgmt.c | 167 - contrib/wpa/tests/fuzzing/asn1/.gitignore | 1 - contrib/wpa/tests/fuzzing/asn1/Makefile | 23 - contrib/wpa/tests/fuzzing/asn1/asn1.c | 184 - contrib/wpa/tests/fuzzing/build-test.sh | 19 - contrib/wpa/tests/fuzzing/dpp-uri/.gitignore | 1 - contrib/wpa/tests/fuzzing/dpp-uri/Makefile | 43 - .../wpa/tests/fuzzing/dpp-uri/corpus/1.dat | 1 - .../wpa/tests/fuzzing/dpp-uri/corpus/2.dat | 1 - .../wpa/tests/fuzzing/dpp-uri/corpus/3.dat | 1 - contrib/wpa/tests/fuzzing/dpp-uri/dpp-uri.c | 51 - .../wpa/tests/fuzzing/eap-aka-peer/.gitignore | 1 - .../wpa/tests/fuzzing/eap-aka-peer/Makefile | 26 - .../tests/fuzzing/eap-aka-peer/eap-aka-peer.c | 131 - .../fuzzing/eap-mschapv2-peer/.gitignore | 1 - .../tests/fuzzing/eap-mschapv2-peer/Makefile | 25 - .../eap-mschapv2-peer/eap-mschapv2-peer.c | 152 - .../wpa/tests/fuzzing/eap-sim-peer/.gitignore | 1 - .../wpa/tests/fuzzing/eap-sim-peer/Makefile | 26 - .../tests/fuzzing/eap-sim-peer/eap-sim-peer.c | 125 - .../tests/fuzzing/eapol-key-auth/.gitignore | 1 - .../wpa/tests/fuzzing/eapol-key-auth/Makefile | 34 - .../fuzzing/eapol-key-auth/eapol-key-auth.c | 328 - .../tests/fuzzing/eapol-key-supp/.gitignore | 1 - .../wpa/tests/fuzzing/eapol-key-supp/Makefile | 30 - .../fuzzing/eapol-key-supp/eapol-key-supp.c | 331 - .../wpa/tests/fuzzing/eapol-supp/.gitignore | 1 - contrib/wpa/tests/fuzzing/eapol-supp/Makefile | 28 - .../wpa/tests/fuzzing/eapol-supp/eapol-supp.c | 198 - contrib/wpa/tests/fuzzing/fuzzer-common.c | 56 - contrib/wpa/tests/fuzzing/fuzzer-common.h | 14 - contrib/wpa/tests/fuzzing/json/.gitignore | 1 - contrib/wpa/tests/fuzzing/json/Makefile | 23 - contrib/wpa/tests/fuzzing/json/corpus/1.json | 1 - contrib/wpa/tests/fuzzing/json/corpus/2.json | 1 - contrib/wpa/tests/fuzzing/json/corpus/3.json | 1 - contrib/wpa/tests/fuzzing/json/json.c | 38 - contrib/wpa/tests/fuzzing/p2p/.gitignore | 1 - contrib/wpa/tests/fuzzing/p2p/Makefile | 23 - contrib/wpa/tests/fuzzing/p2p/p2p.c | 178 - contrib/wpa/tests/fuzzing/rules.include | 31 - contrib/wpa/tests/fuzzing/sae/.gitignore | 1 - contrib/wpa/tests/fuzzing/sae/Makefile | 28 - contrib/wpa/tests/fuzzing/sae/sae.c | 39 - .../wpa/tests/fuzzing/tls-client/.gitignore | 1 - contrib/wpa/tests/fuzzing/tls-client/Makefile | 32 - .../wpa/tests/fuzzing/tls-client/tls-client.c | 154 - .../wpa/tests/fuzzing/tls-server/.gitignore | 1 - contrib/wpa/tests/fuzzing/tls-server/Makefile | 32 - .../wpa/tests/fuzzing/tls-server/tls-server.c | 157 - contrib/wpa/tests/fuzzing/wnm/.gitignore | 1 - contrib/wpa/tests/fuzzing/wnm/Makefile | 60 - contrib/wpa/tests/fuzzing/wnm/wnm.c | 99 - contrib/wpa/tests/fuzzing/x509/.gitignore | 1 - contrib/wpa/tests/fuzzing/x509/Makefile | 27 - .../tests/fuzzing/x509/corpus/oss-fuzz-15408 | 1 - contrib/wpa/tests/fuzzing/x509/x509.c | 25 - contrib/wpa/tests/hwsim/.gitignore | 1 - contrib/wpa/tests/hwsim/README | 220 - contrib/wpa/tests/hwsim/auth_serv/as.conf | 27 - contrib/wpa/tests/hwsim/auth_serv/as2.conf | 24 - .../hwsim/auth_serv/ca-and-crl-expired.pem | 90 - .../wpa/tests/hwsim/auth_serv/ca-and-crl.pem | 90 - .../hwsim/auth_serv/ca-incorrect-key.pem | 28 - .../tests/hwsim/auth_serv/ca-incorrect.pem | 79 - contrib/wpa/tests/hwsim/auth_serv/ca-key.pem | 28 - contrib/wpa/tests/hwsim/auth_serv/ca.pem | 79 - contrib/wpa/tests/hwsim/auth_serv/dh.conf | 8 - contrib/wpa/tests/hwsim/auth_serv/dh2.conf | 8 - .../tests/hwsim/auth_serv/dh_param_3072.pem | 11 - .../wpa/tests/hwsim/auth_serv/dsaparam.pem | 14 - .../wpa/tests/hwsim/auth_serv/eap_user.conf | 167 - .../tests/hwsim/auth_serv/eap_user_vlan.conf | 7 - .../tests/hwsim/auth_serv/ec-ca-openssl.cnf | 111 - contrib/wpa/tests/hwsim/auth_serv/ec-ca.key | 8 - contrib/wpa/tests/hwsim/auth_serv/ec-ca.pem | 13 - .../wpa/tests/hwsim/auth_serv/ec-generate.sh | 53 - .../wpa/tests/hwsim/auth_serv/ec-server.key | 8 - .../wpa/tests/hwsim/auth_serv/ec-server.pem | 53 - contrib/wpa/tests/hwsim/auth_serv/ec-user.key | 8 - contrib/wpa/tests/hwsim/auth_serv/ec-user.pem | 52 - contrib/wpa/tests/hwsim/auth_serv/ec2-ca.key | 9 - contrib/wpa/tests/hwsim/auth_serv/ec2-ca.pem | 15 - .../wpa/tests/hwsim/auth_serv/ec2-generate.sh | 67 - .../wpa/tests/hwsim/auth_serv/ec2-server.key | 9 - .../wpa/tests/hwsim/auth_serv/ec2-server.pem | 58 - .../tests/hwsim/auth_serv/ec2-user-p256.key | 8 - .../tests/hwsim/auth_serv/ec2-user-p256.pem | 56 - .../wpa/tests/hwsim/auth_serv/ec2-user.key | 9 - .../wpa/tests/hwsim/auth_serv/ec2-user.pem | 57 - .../wpa/tests/hwsim/auth_serv/hlr_auc_gw.gsm | 17 - .../hwsim/auth_serv/hlr_auc_gw.milenage_db | 16 - .../auth_serv/iCA-server/ca-and-root.pem | 160 - .../hwsim/auth_serv/iCA-server/cacert.pem | 81 - .../hwsim/auth_serv/iCA-server/careq.pem | 16 - .../hwsim/auth_serv/iCA-server/index.txt | 2 - .../hwsim/auth_serv/iCA-server/index.txt.attr | 1 - .../auth_serv/iCA-server/private/cakey.pem | 28 - .../tests/hwsim/auth_serv/iCA-server/serial | 1 - .../auth_serv/iCA-server/server-revoked.key | 28 - .../auth_serv/iCA-server/server-revoked.pem | 86 - .../auth_serv/iCA-server/server-revoked.req | 16 - .../iCA-server/server-revoked_and_ica.pem | 167 - .../hwsim/auth_serv/iCA-server/server.key | 28 - .../hwsim/auth_serv/iCA-server/server.pem | 86 - .../hwsim/auth_serv/iCA-server/server.req | 16 - .../auth_serv/iCA-server/server_and_ica.pem | 167 - .../hwsim/auth_serv/iCA-user/ca-and-root.pem | 160 - .../tests/hwsim/auth_serv/iCA-user/cacert.pem | 81 - .../tests/hwsim/auth_serv/iCA-user/careq.pem | 16 - .../tests/hwsim/auth_serv/iCA-user/index.txt | 1 - .../hwsim/auth_serv/iCA-user/index.txt.attr | 1 - .../auth_serv/iCA-user/private/cakey.pem | 28 - .../wpa/tests/hwsim/auth_serv/iCA-user/serial | 1 - .../tests/hwsim/auth_serv/iCA-user/user.key | 28 - .../tests/hwsim/auth_serv/iCA-user/user.pem | 85 - .../tests/hwsim/auth_serv/iCA-user/user.req | 16 - .../hwsim/auth_serv/iCA-user/user_and_ica.pem | 166 - .../wpa/tests/hwsim/auth_serv/ica-generate.sh | 87 - .../tests/hwsim/auth_serv/index-revoked.txt | 8 - .../tests/hwsim/auth_serv/index-unknown.txt | 1 - contrib/wpa/tests/hwsim/auth_serv/index.txt | 8 - .../tests/hwsim/auth_serv/ocsp-responder.csr | 16 - .../tests/hwsim/auth_serv/ocsp-responder.key | 28 - .../tests/hwsim/auth_serv/ocsp-responder.pem | 76 - .../wpa/tests/hwsim/auth_serv/openssl2.cnf | 147 - .../tests/hwsim/auth_serv/radius_clients.conf | 1 - .../hwsim/auth_serv/radius_clients_ipv6.conf | 1 - .../hwsim/auth_serv/radius_clients_none.conf | 4 - .../tests/hwsim/auth_serv/rootCA/index.txt | 6 - .../hwsim/auth_serv/rootCA/index.txt.attr | 1 - .../wpa/tests/hwsim/auth_serv/rootCA/serial | 1 - .../wpa/tests/hwsim/auth_serv/rsa3072-ca.key | 40 - .../wpa/tests/hwsim/auth_serv/rsa3072-ca.pem | 27 - .../tests/hwsim/auth_serv/rsa3072-generate.sh | 83 - .../tests/hwsim/auth_serv/rsa3072-server.key | 40 - .../tests/hwsim/auth_serv/rsa3072-server.pem | 106 - .../tests/hwsim/auth_serv/rsa3072-server.req | 22 - .../hwsim/auth_serv/rsa3072-user-rsa2048.key | 28 - .../hwsim/auth_serv/rsa3072-user-rsa2048.pem | 96 - .../hwsim/auth_serv/rsa3072-user-rsa2048.req | 16 - .../tests/hwsim/auth_serv/rsa3072-user.key | 40 - .../tests/hwsim/auth_serv/rsa3072-user.pem | 106 - .../tests/hwsim/auth_serv/rsa3072-user.req | 21 - .../tests/hwsim/auth_serv/server-certpol.csr | 22 - .../tests/hwsim/auth_serv/server-certpol.key | 40 - .../tests/hwsim/auth_serv/server-certpol.pem | 102 - .../tests/hwsim/auth_serv/server-certpol2.csr | 22 - .../tests/hwsim/auth_serv/server-certpol2.key | 40 - .../tests/hwsim/auth_serv/server-certpol2.pem | 102 - .../auth_serv/server-eku-client-server.csr | 16 - .../auth_serv/server-eku-client-server.key | 28 - .../auth_serv/server-eku-client-server.pem | 85 - .../hwsim/auth_serv/server-eku-client.csr | 16 - .../hwsim/auth_serv/server-eku-client.key | 28 - .../hwsim/auth_serv/server-eku-client.pem | 85 - .../tests/hwsim/auth_serv/server-expired.csr | 16 - .../tests/hwsim/auth_serv/server-expired.key | 28 - .../tests/hwsim/auth_serv/server-expired.pem | 85 - .../hwsim/auth_serv/server-long-duration.csr | 27 - .../hwsim/auth_serv/server-long-duration.key | 52 - .../hwsim/auth_serv/server-long-duration.pem | 107 - .../hwsim/auth_serv/server-no-dnsname.csr | 16 - .../hwsim/auth_serv/server-no-dnsname.key | 28 - .../hwsim/auth_serv/server-no-dnsname.pem | 85 - contrib/wpa/tests/hwsim/auth_serv/server.csr | 16 - contrib/wpa/tests/hwsim/auth_serv/server.key | 28 - contrib/wpa/tests/hwsim/auth_serv/server.pem | 87 - .../tests/hwsim/auth_serv/sha384-server.key | 40 - .../tests/hwsim/auth_serv/sha384-server.pem | 115 - .../wpa/tests/hwsim/auth_serv/sha384-user.key | 38 - .../wpa/tests/hwsim/auth_serv/sha384-user.pem | 113 - .../wpa/tests/hwsim/auth_serv/sha512-ca.key | 52 - .../wpa/tests/hwsim/auth_serv/sha512-ca.pem | 32 - .../tests/hwsim/auth_serv/sha512-generate.sh | 75 - .../tests/hwsim/auth_serv/sha512-server.key | 45 - .../tests/hwsim/auth_serv/sha512-server.pem | 120 - .../wpa/tests/hwsim/auth_serv/sha512-user.key | 44 - .../wpa/tests/hwsim/auth_serv/sha512-user.pem | 119 - contrib/wpa/tests/hwsim/auth_serv/update.sh | 181 - contrib/wpa/tests/hwsim/auth_serv/user.csr | 16 - contrib/wpa/tests/hwsim/auth_serv/user.key | 28 - .../wpa/tests/hwsim/auth_serv/user.key.pkcs8 | 30 - .../hwsim/auth_serv/user.key.pkcs8.pkcs5v15 | 29 - contrib/wpa/tests/hwsim/auth_serv/user.pem | 85 - .../wpa/tests/hwsim/auth_serv/user.rsa-key | 27 - contrib/wpa/tests/hwsim/build.sh | 83 - contrib/wpa/tests/hwsim/check_kernel.py | 31 - contrib/wpa/tests/hwsim/devdetail.xml | 47 - contrib/wpa/tests/hwsim/devinfo.xml | 7 - contrib/wpa/tests/hwsim/dictionary.radius | 20 - .../wpa/tests/hwsim/example-hostapd.config | 116 - contrib/wpa/tests/hwsim/example-setup.txt | 191 - .../tests/hwsim/example-wpa_supplicant.config | 160 - contrib/wpa/tests/hwsim/fst_module_aux.py | 832 -- contrib/wpa/tests/hwsim/fst_test_common.py | 97 - contrib/wpa/tests/hwsim/hostapd.py | 882 -- contrib/wpa/tests/hwsim/hostapd.vlan | 2 - contrib/wpa/tests/hwsim/hostapd.vlan2 | 3 - contrib/wpa/tests/hwsim/hostapd.wlan3.vlan | 2 - contrib/wpa/tests/hwsim/hostapd.wlan4.vlan | 2 - contrib/wpa/tests/hwsim/hostapd.wpa_psk | 5 - contrib/wpa/tests/hwsim/hwsim.py | 114 - contrib/wpa/tests/hwsim/hwsim_utils.py | 246 - contrib/wpa/tests/hwsim/multi-bss-acs.conf | 28 - .../hwsim/multi-bss-iface-per_sta_vif.conf | 42 - contrib/wpa/tests/hwsim/multi-bss-iface.conf | 40 - contrib/wpa/tests/hwsim/multi-bss.conf | 21 - contrib/wpa/tests/hwsim/netlink.py | 237 - contrib/wpa/tests/hwsim/nl80211.py | 357 - contrib/wpa/tests/hwsim/owe-bss-1.conf | 12 - contrib/wpa/tests/hwsim/owe-bss-2.conf | 16 - contrib/wpa/tests/hwsim/p2p0.conf | 3 - contrib/wpa/tests/hwsim/p2p1.conf | 3 - contrib/wpa/tests/hwsim/p2p2.conf | 3 - contrib/wpa/tests/hwsim/p2p_utils.py | 394 - contrib/wpa/tests/hwsim/pps-mo-1.xml | 62 - contrib/wpa/tests/hwsim/radius_das.py | 47 - contrib/wpa/tests/hwsim/remotehost.py | 258 - contrib/wpa/tests/hwsim/rfkill.py | 152 - contrib/wpa/tests/hwsim/run-all.sh | 162 - contrib/wpa/tests/hwsim/run-tests.py | 692 - contrib/wpa/tests/hwsim/start.sh | 213 - contrib/wpa/tests/hwsim/stop.sh | 80 - contrib/wpa/tests/hwsim/test_ap_acs.py | 688 - contrib/wpa/tests/hwsim/test_ap_ciphers.py | 1200 -- contrib/wpa/tests/hwsim/test_ap_config.py | 581 - contrib/wpa/tests/hwsim/test_ap_csa.py | 189 - contrib/wpa/tests/hwsim/test_ap_dynamic.py | 586 - contrib/wpa/tests/hwsim/test_ap_eap.py | 7492 ----------- contrib/wpa/tests/hwsim/test_ap_ft.py | 3461 ----- contrib/wpa/tests/hwsim/test_ap_hs20.py | 6496 ---------- contrib/wpa/tests/hwsim/test_ap_ht.py | 1644 --- contrib/wpa/tests/hwsim/test_ap_mixed.py | 101 - contrib/wpa/tests/hwsim/test_ap_open.py | 1017 -- contrib/wpa/tests/hwsim/test_ap_params.py | 972 -- contrib/wpa/tests/hwsim/test_ap_pmf.py | 1204 -- contrib/wpa/tests/hwsim/test_ap_psk.py | 3553 ------ contrib/wpa/tests/hwsim/test_ap_qosmap.py | 169 - contrib/wpa/tests/hwsim/test_ap_roam.py | 395 - contrib/wpa/tests/hwsim/test_ap_tdls.py | 652 - contrib/wpa/tests/hwsim/test_ap_track.py | 437 - contrib/wpa/tests/hwsim/test_ap_vht.py | 1333 -- contrib/wpa/tests/hwsim/test_ap_vlan.py | 807 -- contrib/wpa/tests/hwsim/test_ap_wps.py | 10568 ---------------- contrib/wpa/tests/hwsim/test_authsrv.py | 262 - contrib/wpa/tests/hwsim/test_autoscan.py | 81 - contrib/wpa/tests/hwsim/test_bgscan.py | 315 - contrib/wpa/tests/hwsim/test_cert_check.py | 312 - contrib/wpa/tests/hwsim/test_cfg80211.py | 150 - contrib/wpa/tests/hwsim/test_connect_cmd.py | 235 - contrib/wpa/tests/hwsim/test_dbus.py | 6093 --------- contrib/wpa/tests/hwsim/test_dfs.py | 767 -- contrib/wpa/tests/hwsim/test_dpp.py | 6874 ---------- contrib/wpa/tests/hwsim/test_eap.py | 602 - contrib/wpa/tests/hwsim/test_eap_proto.py | 10377 --------------- contrib/wpa/tests/hwsim/test_erp.py | 741 -- contrib/wpa/tests/hwsim/test_ext_password.py | 112 - contrib/wpa/tests/hwsim/test_fils.py | 2411 ---- contrib/wpa/tests/hwsim/test_fst_config.py | 553 - contrib/wpa/tests/hwsim/test_fst_module.py | 2825 ----- contrib/wpa/tests/hwsim/test_gas.py | 2053 --- contrib/wpa/tests/hwsim/test_hapd_ctrl.py | 1071 -- contrib/wpa/tests/hwsim/test_he.py | 1188 -- contrib/wpa/tests/hwsim/test_hostapd_oom.py | 173 - contrib/wpa/tests/hwsim/test_hs20_filter.py | 205 - contrib/wpa/tests/hwsim/test_hs20_pps_mo.py | 43 - contrib/wpa/tests/hwsim/test_ibss.py | 601 - contrib/wpa/tests/hwsim/test_ieee8021x.py | 531 - contrib/wpa/tests/hwsim/test_kernel.py | 128 - contrib/wpa/tests/hwsim/test_macsec.py | 890 -- contrib/wpa/tests/hwsim/test_mbo.py | 613 - contrib/wpa/tests/hwsim/test_module_tests.py | 28 - .../wpa/tests/hwsim/test_monitor_interface.py | 94 - contrib/wpa/tests/hwsim/test_mscs.py | 231 - contrib/wpa/tests/hwsim/test_multi_ap.py | 363 - contrib/wpa/tests/hwsim/test_nfc_p2p.py | 848 -- contrib/wpa/tests/hwsim/test_nfc_wps.py | 709 -- contrib/wpa/tests/hwsim/test_oce.py | 185 - contrib/wpa/tests/hwsim/test_ocv.py | 1247 -- contrib/wpa/tests/hwsim/test_offchannel_tx.py | 50 - contrib/wpa/tests/hwsim/test_owe.py | 928 -- contrib/wpa/tests/hwsim/test_p2p_autogo.py | 936 -- contrib/wpa/tests/hwsim/test_p2p_channel.py | 1384 -- .../wpa/tests/hwsim/test_p2p_concurrency.py | 286 - contrib/wpa/tests/hwsim/test_p2p_device.py | 552 - contrib/wpa/tests/hwsim/test_p2p_discovery.py | 871 -- contrib/wpa/tests/hwsim/test_p2p_ext.py | 384 - contrib/wpa/tests/hwsim/test_p2p_grpform.py | 1185 -- .../wpa/tests/hwsim/test_p2p_invitation.py | 195 - contrib/wpa/tests/hwsim/test_p2p_messages.py | 2143 ---- .../wpa/tests/hwsim/test_p2p_persistent.py | 676 - contrib/wpa/tests/hwsim/test_p2p_service.py | 586 - contrib/wpa/tests/hwsim/test_p2p_set.py | 128 - .../wpa/tests/hwsim/test_p2p_wifi_display.py | 475 - contrib/wpa/tests/hwsim/test_p2ps.py | 1689 --- contrib/wpa/tests/hwsim/test_pasn.py | 850 -- contrib/wpa/tests/hwsim/test_pmksa_cache.py | 1267 -- contrib/wpa/tests/hwsim/test_radio_work.py | 133 - contrib/wpa/tests/hwsim/test_radius.py | 1710 --- contrib/wpa/tests/hwsim/test_rfkill.py | 242 - contrib/wpa/tests/hwsim/test_rrm.py | 2142 ---- contrib/wpa/tests/hwsim/test_sae.py | 2722 ---- contrib/wpa/tests/hwsim/test_sae_pk.py | 462 - contrib/wpa/tests/hwsim/test_scan.py | 2025 --- contrib/wpa/tests/hwsim/test_sigma_dut.py | 5264 -------- contrib/wpa/tests/hwsim/test_ssid.py | 127 - contrib/wpa/tests/hwsim/test_sta_dynamic.py | 329 - contrib/wpa/tests/hwsim/test_suite_b.py | 739 -- contrib/wpa/tests/hwsim/test_tnc.py | 194 - contrib/wpa/tests/hwsim/test_wep.py | 172 - contrib/wpa/tests/hwsim/test_wext.py | 254 - contrib/wpa/tests/hwsim/test_wmediumd.py | 480 - contrib/wpa/tests/hwsim/test_wnm.py | 1984 --- contrib/wpa/tests/hwsim/test_wpas_ap.py | 905 -- contrib/wpa/tests/hwsim/test_wpas_config.py | 656 - contrib/wpa/tests/hwsim/test_wpas_ctrl.py | 2159 ---- contrib/wpa/tests/hwsim/test_wpas_mesh.py | 2534 ---- contrib/wpa/tests/hwsim/test_wpas_wmm_ac.py | 400 - contrib/wpa/tests/hwsim/tnc/.gitignore | 4 - contrib/wpa/tests/hwsim/tnc/Makefile | 23 - contrib/wpa/tests/hwsim/tnc/hostap2_imc.c | 183 - contrib/wpa/tests/hwsim/tnc/hostap2_imv.c | 203 - contrib/wpa/tests/hwsim/tnc/hostap_imc.c | 72 - contrib/wpa/tests/hwsim/tnc/hostap_imv.c | 66 - contrib/wpa/tests/hwsim/tnc/tnc_config | 4 - contrib/wpa/tests/hwsim/tshark.py | 124 - contrib/wpa/tests/hwsim/utils.py | 314 - contrib/wpa/tests/hwsim/vm/.gitignore | 1 - contrib/wpa/tests/hwsim/vm/README | 80 - contrib/wpa/tests/hwsim/vm/bisect-run.sh | 43 - contrib/wpa/tests/hwsim/vm/build-codecov.sh | 57 - contrib/wpa/tests/hwsim/vm/combine-codecov.sh | 39 - contrib/wpa/tests/hwsim/vm/dbus.conf | 34 - .../wpa/tests/hwsim/vm/example-vm-setup.txt | 95 - contrib/wpa/tests/hwsim/vm/inside.sh | 169 - contrib/wpa/tests/hwsim/vm/kernel-config | 175 - contrib/wpa/tests/hwsim/vm/kernel-config.uml | 131 - contrib/wpa/tests/hwsim/vm/parallel-vm.py | 669 - contrib/wpa/tests/hwsim/vm/process-codecov.sh | 36 - contrib/wpa/tests/hwsim/vm/uevent.sh | 9 - contrib/wpa/tests/hwsim/vm/vm-run.sh | 202 - contrib/wpa/tests/hwsim/wlantest.py | 277 - contrib/wpa/tests/hwsim/wpasupplicant.py | 1649 --- contrib/wpa/tests/remote/config.py | 87 - contrib/wpa/tests/remote/hwsim_wrapper.py | 126 - contrib/wpa/tests/remote/monitor.py | 193 - contrib/wpa/tests/remote/run-tests.py | 408 - contrib/wpa/tests/remote/rutils.py | 567 - contrib/wpa/tests/remote/test_devices.py | 124 - contrib/wpa/tests/remote/test_example.py | 141 - contrib/wpa/tests/remote/test_monitor.py | 52 - contrib/wpa/tests/test-aes.c | 624 - contrib/wpa/tests/test-base64.c | 42 - contrib/wpa/tests/test-https.c | 225 - contrib/wpa/tests/test-https_server.c | 275 - contrib/wpa/tests/test-list.c | 72 - contrib/wpa/tests/test-md4.c | 93 - contrib/wpa/tests/test-milenage.c | 814 -- contrib/wpa/tests/test-rc4.c | 250 - contrib/wpa/tests/test-rsa-sig-ver.c | 206 - contrib/wpa/tests/test-sha1.c | 119 - contrib/wpa/tests/test-sha256.c | 119 - contrib/wpa/tests/test-x509v3.c | 62 - contrib/wpa/tests/test_x509v3_nist.sh | 144 - contrib/wpa/tests/test_x509v3_nist2.sh | 177 - contrib/wpa/wlantest/.gitignore | 4 - contrib/wpa/wlantest/Makefile | 87 - contrib/wpa/wlantest/bip.c | 133 - contrib/wpa/wlantest/bss.c | 373 - contrib/wpa/wlantest/ccmp.c | 367 - contrib/wpa/wlantest/ctrl.c | 1471 --- contrib/wpa/wlantest/gcmp.c | 160 - contrib/wpa/wlantest/inject.c | 341 - contrib/wpa/wlantest/monitor.c | 172 - contrib/wpa/wlantest/process.c | 409 - contrib/wpa/wlantest/readpcap.c | 190 - contrib/wpa/wlantest/rx_data.c | 904 -- contrib/wpa/wlantest/rx_eapol.c | 1317 -- contrib/wpa/wlantest/rx_ip.c | 184 - contrib/wpa/wlantest/rx_mgmt.c | 2642 ---- contrib/wpa/wlantest/rx_tdls.c | 618 - contrib/wpa/wlantest/sta.c | 232 - contrib/wpa/wlantest/test_vectors.c | 937 -- contrib/wpa/wlantest/tkip.c | 428 - contrib/wpa/wlantest/wep.c | 104 - contrib/wpa/wlantest/wired.c | 295 - contrib/wpa/wlantest/wlantest.c | 505 - contrib/wpa/wlantest/wlantest.h | 336 - contrib/wpa/wlantest/wlantest_cli.c | 1865 --- contrib/wpa/wlantest/wlantest_ctrl.h | 171 - contrib/wpa/wlantest/writepcap.c | 373 - contrib/wpa/wpa_supplicant/bssid_ignore.c | 221 - contrib/wpa/wpa_supplicant/bssid_ignore.h | 33 - .../wpa/wpa_supplicant/examples/dpp-nfc.py | 1186 -- contrib/wpa/wpa_supplicant/pasn_supplicant.c | 1710 --- contrib/wpa/wpa_supplicant/robust_av.c | 155 - contrib/wpa/wpa_supplicant/twt.c | 142 - .../wpa_gui-qt4/icons/.gitignore | 2 - contrib/wpa/wpadebug/.gitignore | 4 - contrib/wpa/wpadebug/AndroidManifest.xml | 86 - contrib/wpa/wpadebug/README | 78 - contrib/wpa/wpadebug/build.xml | 17 - contrib/wpa/wpadebug/project.properties | 2 - contrib/wpa/wpadebug/res/layout/cred_edit.xml | 117 - contrib/wpa/wpadebug/res/layout/input_uri.xml | 26 - contrib/wpa/wpadebug/res/layout/main.xml | 160 - contrib/wpa/wpadebug/res/layout/qrcode.xml | 13 - .../wpa/wpadebug/res/raw/shell_commands.txt | 2 - contrib/wpa/wpadebug/res/raw/wpa_commands.txt | 9 - .../w1/fi/wpadebug/CommandListActivity.java | 130 - .../fi/wpadebug/DisplayMessageActivity.java | 49 - .../wpadebug/src/w1/fi/wpadebug/InputUri.java | 108 - .../src/w1/fi/wpadebug/MainActivity.java | 209 - .../w1/fi/wpadebug/QrCodeDisplayActivity.java | 109 - .../w1/fi/wpadebug/QrCodeReadActivity.java | 40 - .../w1/fi/wpadebug/QrCodeScannerActivity.java | 82 - .../src/w1/fi/wpadebug/WifiReceiver.java | 95 - .../fi/wpadebug/WpaCommandListActivity.java | 112 - .../src/w1/fi/wpadebug/WpaCredActivity.java | 263 - .../w1/fi/wpadebug/WpaCredEditActivity.java | 55 - .../src/w1/fi/wpadebug/WpaNfcActivity.java | 131 - .../w1/fi/wpadebug/WpaWebViewActivity.java | 146 - contrib/wpa/wpaspy/Makefile | 15 - contrib/wpa/wpaspy/setup.py | 22 - contrib/wpa/wpaspy/test.py | 82 - contrib/wpa/wpaspy/wpaspy.c | 245 - contrib/wpa/wpaspy/wpaspy.py | 149 - usr.sbin/wpa/Makefile.inc | 1 - usr.sbin/wpa/hostapd/Makefile | 2 + usr.sbin/wpa/hostapd_cli/Makefile | 3 +- usr.sbin/wpa/wpa_cli/Makefile | 9 +- usr.sbin/wpa/wpa_passphrase/Makefile | 3 +- usr.sbin/wpa/wpa_priv/Makefile | 1 + usr.sbin/wpa/wpa_supplicant/Makefile | 13 +- 533 files changed, 24 insertions(+), 200748 deletions(-) diff --git a/contrib/wpa/.gitignore b/contrib/wpa/.gitignore index b064303ced30..e69de29bb2d1 100644 --- a/contrib/wpa/.gitignore +++ b/contrib/wpa/.gitignore @@ -1,8 +0,0 @@ -*.pyc -*~ -tests/hwsim/logs -tests/remote/logs -wpaspy/build -**/parallel-vm.log -tags -build/ diff --git a/contrib/wpa/Android.mk b/contrib/wpa/Android.mk index bd7a4097444b..e69de29bb2d1 100644 --- a/contrib/wpa/Android.mk +++ b/contrib/wpa/Android.mk @@ -1,10 +0,0 @@ -LOCAL_PATH:= $(call my-dir) - -ifneq ($(filter VER_0_8_X VER_2_1_DEVEL,$(WPA_SUPPLICANT_VERSION)),) -# The order of the 2 Android.mks does matter! -# TODO: Clean up the Android.mks, reset all the temporary variables at the -# end of each Android.mk, so that one Android.mk doesn't depend on variables -# set up in the other Android.mk. -include $(LOCAL_PATH)/hostapd/Android.mk \ - $(LOCAL_PATH)/wpa_supplicant/Android.mk -endif diff --git a/contrib/wpa/build_release b/contrib/wpa/build_release index 3aa9bf31963a..e69de29bb2d1 100755 --- a/contrib/wpa/build_release +++ b/contrib/wpa/build_release @@ -1,47 +0,0 @@ -#!/bin/sh - -set -e - -if [ -z "$1" ]; then - echo "build_release " - exit 1 -fi - -TMP=tmp.build_release -RELDIR=`pwd`/Release -VER=$1 -NOW=`date +%Y-%m-%d` - -echo "Version: $VER - $NOW" - -DATEw=`head -n 3 wpa_supplicant/ChangeLog | tail -n 1 | sed "s/ .*//"` -DATEh=`head -n 3 hostapd/ChangeLog | tail -n 1 | sed "s/ .*//"` - -if [ "$DATEw" != "$NOW" -o "$DATEh" != "$NOW" ]; then - echo "NOTE! Date mismatch in ChangeLog: wpa_supplicant $DATEw hostapd $DATEh != $NOW" -fi - -if [ -r $TMP ]; then - echo "Temporary directory '$TMP' exists. Remove it before running this." - exit 1 -fi - -mkdir $TMP -mkdir -p $RELDIR - -git archive --format=tar --prefix=wpa-$VER/ HEAD \ - README COPYING CONTRIBUTIONS src wpa_supplicant hostapd hs20 | - gzip > $RELDIR/wpa-$VER.tar.gz -git archive --format=tar --prefix=hostapd-$VER/ HEAD \ - README COPYING CONTRIBUTIONS src hostapd | - gzip > $RELDIR/hostapd-$VER.tar.gz -git archive --format=tar --prefix=wpa_supplicant-$VER/ HEAD \ - README COPYING CONTRIBUTIONS src wpa_supplicant hs20/client | - tar --directory=$TMP -xf - - -cd $TMP -make -C wpa_supplicant-$VER/wpa_supplicant/doc/docbook man -rm -f wpa_supplicant-$VER/wpa_supplicant/doc/docbook/manpage.{links,refs} -tar czf $RELDIR/wpa_supplicant-$VER.tar.gz wpa_supplicant-$VER -cd .. -rm -r $TMP diff --git a/contrib/wpa/doc/.gitignore b/contrib/wpa/doc/.gitignore index 28c3fe4e99c3..e69de29bb2d1 100644 --- a/contrib/wpa/doc/.gitignore +++ b/contrib/wpa/doc/.gitignore @@ -1,14 +0,0 @@ -doxygen.warnings -hostapd.eps -hostapd.png -html -latex -p2p_arch.eps -p2p_arch.png -p2p_arch2.eps -p2p_arch2.png -p2p_sm.eps -p2p_sm.png -wpa_supplicant.eps -wpa_supplicant.png -wpa_supplicant-devel.pdf diff --git a/contrib/wpa/doc/Makefile b/contrib/wpa/doc/Makefile index 62af04a74f1f..e69de29bb2d1 100644 --- a/contrib/wpa/doc/Makefile +++ b/contrib/wpa/doc/Makefile @@ -1,42 +0,0 @@ -all: docs - -%.eps: %.fig - fig2dev -L eps $*.fig $*.eps - -%.png: %.fig - fig2dev -L png -m 3 $*.fig | pngtopnm | pnmscale 0.4 | pnmtopng \ - > $*.png - -%.png: %.dot - dot $*.dot -Tpng -o $*.png - -%.eps: %.dot - dot $*.dot -Tps -o $*.eps - -_wpa_supplicant.png: wpa_supplicant.png - cp $< $@ - -_wpa_supplicant.eps: wpa_supplicant.eps - cp $< $@ - -docs-pics: wpa_supplicant.png wpa_supplicant.eps hostapd.png hostapd.eps p2p_sm.png p2p_sm.eps p2p_arch.png p2p_arch.eps p2p_arch2.png p2p_arch2.eps _wpa_supplicant.png _wpa_supplicant.eps - -docs: docs-pics - (cd ..; doxygen doc/doxygen.conf; cd doc) - $(MAKE) -C latex - cp latex/refman.pdf wpa_supplicant-devel.pdf - -html: docs-pics - (cd ..; doxygen doc/doxygen.conf; cd doc) - -clean: - rm -f *~ - rm -f wpa_supplicant.eps wpa_supplicant.png - rm -f _wpa_supplicant.png _wpa_supplicant.eps - rm -f hostapd.eps hostapd.png - rm -f p2p_sm.eps p2p_sm.png - rm -f p2p_arch.eps p2p_arch.png - rm -f p2p_arch2.eps p2p_arch2.png - rm -f doxygen.warnings - rm -rf html latex - rm -f wpa_supplicant-devel.pdf diff --git a/contrib/wpa/doc/code_structure.doxygen b/contrib/wpa/doc/code_structure.doxygen index 454f179753d3..e69de29bb2d1 100644 --- a/contrib/wpa/doc/code_structure.doxygen +++ b/contrib/wpa/doc/code_structure.doxygen @@ -1,315 +0,0 @@ -/** -\page code_structure Structure of the source code - -[ \ref _wpa_supplicant_core "wpa_supplicant core functionality" | -\ref generic_helper_func "Generic helper functions" | -\ref crypto_func "Cryptographic functions" | -\ref tls_func "TLS library" | -\ref configuration "Configuration" | -\ref ctrl_iface "Control interface" | -\ref wpa_code "WPA supplicant" | -\ref eap_peer "EAP peer" | -\ref eapol_supp "EAPOL supplicant" | -\ref win_port "Windows port" | -\ref test_programs "Test programs" ] - -wpa_supplicant implementation is divided into number of independent -modules. Core code includes functionality for controlling the network -selection, association, and configuration. Independent modules include -WPA code (key handshake, PMKSA caching, pre-authentication), EAPOL -state machine, and EAP state machine and methods. In addition, there -are number of separate files for generic helper functions. - -Both WPA and EAPOL/EAP state machines can be used separately in other -programs than wpa_supplicant. As an example, the included test -programs eapol_test and preauth_test are using these modules. - -\ref driver_wrapper "Driver interface API" is defined in \ref driver.h and -all hardware/driver dependent functionality is implemented in -driver_*.c. - - -\section _wpa_supplicant_core wpa_supplicant core functionality - -\ref wpa_supplicant.c - Program initialization, main control loop - -\ref wpa_supplicant/main.c - main() for UNIX-like operating systems and MinGW (Windows); this - uses command line arguments to configure wpa_supplicant - -\ref events.c - Driver event processing; \ref wpa_supplicant_event() and related functions - -\ref wpa_supplicant_i.h - Internal definitions for wpa_supplicant core; should not be - included into independent modules - - -\section generic_helper_func Generic helper functions - -wpa_supplicant uses generic helper functions some of which are shared -with with hostapd. The following C files are currently used: - -\ref eloop.c and \ref eloop.h - Event loop (select() loop with registerable timeouts, socket read - callbacks, and signal callbacks) - -\ref common.c and \ref common.h - Common helper functions - -\ref defs.h - Definitions shared by multiple files - -\ref l2_packet.h, \ref l2_packet_linux.c, and \ref l2_packet_pcap.c - Layer 2 (link) access wrapper (includes native Linux implementation - and wrappers for libdnet/libpcap). A new l2_packet implementation - may need to be added when porting to new operating systems that are - not supported by libdnet/libpcap. Makefile can be used to select which - l2_packet implementation is included. \ref l2_packet_linux.c uses Linux - packet sockets and \ref l2_packet_pcap.c has a more portable version using - libpcap and libdnet. - -\ref pcsc_funcs.c and \ref pcsc_funcs.h - Wrapper for PC/SC lite SIM and smart card readers - -\ref priv_netlink.h - Private version of netlink definitions from Linux kernel header files; - this could be replaced with C library header file once suitable - version becomes commonly available - -\ref version.h - Version number definitions - - -\section crypto_func Cryptographic functions - -\ref md5.c and \ref md5.h - MD5 (replaced with a crypto library if TLS support is included) - HMAC-MD5 (keyed checksum for message authenticity validation) - -\ref rc4.c and \ref rc4.h - RC4 (broadcast/default key encryption) - -\ref sha1.c and \ref sha1.h - SHA-1 (replaced with a crypto library if TLS support is included) - HMAC-SHA-1 (keyed checksum for message authenticity validation) - PRF-SHA-1 (pseudorandom (key/nonce generation) function) - PBKDF2-SHA-1 (ASCII passphrase to shared secret) - T-PRF (for EAP-FAST) - TLS-PRF (RFC 2246) - -\ref sha256.c and \ref sha256.h - SHA-256 (replaced with a crypto library if TLS support is included) - -\ref aes-wrap.c, \ref aes_wrap.h, \ref aes.c - AES (replaced with a crypto library if TLS support is included), - AES Key Wrap Algorithm with 128-bit KEK, RFC3394 (broadcast/default - key encryption), - One-Key CBC MAC (OMAC1) hash with AES-128, - AES-128 CTR mode encryption, - AES-128 EAX mode encryption/decryption, - AES-128 CBC - -\ref crypto.h - Definition of crypto library wrapper - -\ref crypto_openssl.c - Wrapper functions for libcrypto (OpenSSL) - -\ref crypto_internal.c - Wrapper functions for internal crypto implementation - -\ref crypto_gnutls.c - Wrapper functions for libgcrypt (used by GnuTLS) - -\ref ms_funcs.c and \ref ms_funcs.h - Helper functions for MSCHAPV2 and LEAP - -\ref tls.h - Definition of TLS library wrapper - -\ref tls_none.c - Dummy implementation of TLS library wrapper for cases where TLS - functionality is not included. - -\ref tls_openssl.c - TLS library wrapper for openssl - -\ref tls_internal.c - TLS library for internal TLS implementation - -\ref tls_gnutls.c - TLS library wrapper for GnuTLS - - -\section tls_func TLS library - -\ref asn1.c and \ref asn1.h - ASN.1 DER parsing - -\ref bignum.c and \ref bignum.h - Big number math - -\ref rsa.c and \ref rsa.h - RSA - -\ref x509v3.c and \ref x509v3.h - X.509v3 certificate parsing and processing - -\ref tlsv1_client.c, \ref tlsv1_client.h - TLSv1 client (RFC 2246) - -\ref tlsv1_client_i.h - Internal structures for TLSv1 client - -\ref tlsv1_client_read.c - TLSv1 client: read handshake messages - -\ref tlsv1_client_write.c - TLSv1 client: write handshake messages - -\ref tlsv1_common.c and \ref tlsv1_common.h - Common TLSv1 routines and definitions - -\ref tlsv1_cred.c and \ref tlsv1_cred.h - TLSv1 credentials - -\ref tlsv1_record.c and \ref tlsv1_record.h - TLSv1 record protocol - - -\section configuration Configuration - -\ref config_ssid.h - Definition of per network configuration items - -\ref config.h - Definition of the wpa_supplicant configuration - -\ref config.c - Configuration parser and common functions - -\ref wpa_supplicant/config_file.c - Configuration backend for text files (e.g., wpa_supplicant.conf) - -\ref config_winreg.c - Configuration backend for Windows registry - - -\section ctrl_iface Control interface - -wpa_supplicant has a \ref ctrl_iface_page "control interface" -that can be used to get status -information and manage operations from external programs. An example -command line interface (wpa_cli) and GUI (wpa_gui) for this interface -are included in the wpa_supplicant distribution. - -\ref wpa_supplicant/ctrl_iface.c and \ref wpa_supplicant/ctrl_iface.h - wpa_supplicant-side of the control interface - -\ref ctrl_iface_unix.c - UNIX domain sockets -based control interface backend - -\ref ctrl_iface_udp.c - UDP sockets -based control interface backend - -\ref ctrl_iface_named_pipe.c - Windows named pipes -based control interface backend - -\ref wpa_ctrl.c and \ref wpa_ctrl.h - Library functions for external programs to provide access to the - wpa_supplicant control interface - -\ref wpa_cli.c - Example program for using wpa_supplicant control interface - - -\section wpa_code WPA supplicant - -\ref wpa.c and \ref wpa.h - WPA state machine and 4-Way/Group Key Handshake processing - -\ref preauth.c and \ref preauth.h - PMKSA caching and pre-authentication (RSN/WPA2) - -\ref wpa_i.h - Internal definitions for WPA code; not to be included to other modules. - -\section eap_peer EAP peer - -\ref eap_peer_module "EAP peer implementation" is a separate module that -can be used by other programs than just wpa_supplicant. - -\ref eap.c and \ref eap.h - EAP state machine and method interface - -\ref eap_defs.h - Common EAP definitions - -\ref eap_i.h - Internal definitions for EAP state machine and EAP methods; not to be - included in other modules - -\ref eap_sim_common.c and \ref eap_sim_common.h - Common code for EAP-SIM and EAP-AKA - -\ref eap_tls_common.c and \ref eap_tls_common.h - Common code for EAP-PEAP, EAP-TTLS, and EAP-FAST - -\ref eap_ttls.c and \ref eap_ttls.h - EAP-TTLS - -\ref eap_pax.c, \ref eap_pax_common.h, \ref eap_pax_common.c - EAP-PAX - -\ref eap_psk.c, \ref eap_psk_common.h, \ref eap_psk_common.c - EAP-PSK (note: this is not needed for WPA-PSK) - -\ref eap_sake.c, \ref eap_sake_common.h, \ref eap_sake_common.c - EAP-SAKE - -\ref eap_gpsk.c, \ref eap_gpsk_common.h, \ref eap_gpsk_common.c - EAP-GPSK - -\ref eap_aka.c, \ref eap_fast.c, \ref eap_gtc.c, \ref eap_leap.c, -\ref eap_md5.c, \ref eap_mschapv2.c, \ref eap_otp.c, \ref eap_peap.c, -\ref eap_sim.c, \ref eap_tls.c - Other EAP method implementations - - -\section eapol_supp EAPOL supplicant - -\ref eapol_supp_sm.c and \ref eapol_supp_sm.h - EAPOL supplicant state machine and IEEE 802.1X processing - - -\section win_port Windows port - -\ref ndis_events.c - Code for receiving NdisMIndicateStatus() events and delivering them to - wpa_supplicant \ref driver_ndis.c in more easier to use form - -\ref win_if_list.c - External program for listing current network interface - - -\section test_programs Test programs - -\ref radius_client.c and \ref radius_client.h - RADIUS authentication client implementation for eapol_test - -\ref radius.c and \ref radius.h - RADIUS message processing for eapol_test - -\ref eapol_test.c - Standalone EAP testing tool with integrated RADIUS authentication - client - -\ref preauth_test.c - Standalone RSN pre-authentication tool - -\ref wpa_passphrase.c - WPA ASCII passphrase to PSK conversion - -*/ diff --git a/contrib/wpa/doc/ctrl_iface.doxygen b/contrib/wpa/doc/ctrl_iface.doxygen index 7dccdc797ef3..e69de29bb2d1 100644 --- a/contrib/wpa/doc/ctrl_iface.doxygen +++ b/contrib/wpa/doc/ctrl_iface.doxygen @@ -1,1054 +0,0 @@ -/** -\page ctrl_iface_page wpa_supplicant control interface - -wpa_supplicant implements a control interface that can be used by -external programs to control the operations of the wpa_supplicant -daemon and to get status information and event notifications. There is -a small C library, in a form of a single C file, \ref wpa_ctrl.c, that -provides helper functions to facilitate the use of the control -interface. External programs can link this file into them and then use -the library functions documented in \ref wpa_ctrl.h to interact with -wpa_supplicant. This library can also be used with C++. \ref wpa_cli.c and -wpa_gui are example programs using this library. - -There are multiple mechanisms for inter-process communication. For -example, Linux version of wpa_supplicant is using UNIX domain sockets -for the control interface and Windows version UDP sockets. The use of -the functions defined in \ref wpa_ctrl.h can be used to hide the details of -the used IPC from external programs. - - -\section using_ctrl_iface Using the control interface - -External programs, e.g., a GUI or a configuration utility, that need to -communicate with wpa_supplicant should link in \ref wpa_ctrl.c. This -allows them to use helper functions to open connection to the control -interface with \ref wpa_ctrl_open() and to send commands with -\ref wpa_ctrl_request(). - -wpa_supplicant uses the control interface for two types of communication: -commands and unsolicited event messages. Commands are a pair of -messages, a request from the external program and a response from -wpa_supplicant. These can be executed using \ref wpa_ctrl_request(). -Unsolicited event messages are sent by wpa_supplicant to the control -interface connection without specific request from the external program -for receiving each message. However, the external program needs to -attach to the control interface with \ref wpa_ctrl_attach() to receive these -unsolicited messages. - -If the control interface connection is used both for commands and -unsolicited event messages, there is potential for receiving an -unsolicited message between the command request and response. -\ref wpa_ctrl_request() caller will need to supply a callback, msg_cb, -for processing these messages. Often it is easier to open two -control interface connections by calling \ref wpa_ctrl_open() twice and -then use one of the connections for commands and the other one for -unsolicited messages. This way command request/response pairs will -not be broken by unsolicited messages. wpa_cli is an example of how -to use only one connection for both purposes and wpa_gui demonstrates -how to use two separate connections. - -Once the control interface connection is not needed anymore, it should -be closed by calling \ref wpa_ctrl_close(). If the connection was used for -unsolicited event messages, it should be first detached by calling -\ref wpa_ctrl_detach(). - - -\section ctrl_iface_cmds Control interface commands - -Following commands can be used with \ref wpa_ctrl_request(): - -\subsection ctrl_iface_PING PING - -This command can be used to test whether wpa_supplicant is replying -to the control interface commands. The expected reply is \c PONG if the -connection is open and wpa_supplicant is processing commands. - - -\subsection ctrl_iface_MIB MIB - -Request a list of MIB variables (dot1x, dot11). The output is a text -block with each line in \c variable=value format. For example: - -\verbatim -dot11RSNAOptionImplemented=TRUE -dot11RSNAPreauthenticationImplemented=TRUE -dot11RSNAEnabled=FALSE -dot11RSNAPreauthenticationEnabled=FALSE -dot11RSNAConfigVersion=1 -dot11RSNAConfigPairwiseKeysSupported=5 -dot11RSNAConfigGroupCipherSize=128 -dot11RSNAConfigPMKLifetime=43200 -dot11RSNAConfigPMKReauthThreshold=70 -dot11RSNAConfigNumberOfPTKSAReplayCounters=1 -dot11RSNAConfigSATimeout=60 -dot11RSNAAuthenticationSuiteSelected=00-50-f2-2 -dot11RSNAPairwiseCipherSelected=00-50-f2-4 -dot11RSNAGroupCipherSelected=00-50-f2-4 -dot11RSNAPMKIDUsed= -dot11RSNAAuthenticationSuiteRequested=00-50-f2-2 -dot11RSNAPairwiseCipherRequested=00-50-f2-4 -dot11RSNAGroupCipherRequested=00-50-f2-4 -dot11RSNAConfigNumberOfGTKSAReplayCounters=0 -dot11RSNA4WayHandshakeFailures=0 -dot1xSuppPaeState=5 -dot1xSuppHeldPeriod=60 -dot1xSuppAuthPeriod=30 -dot1xSuppStartPeriod=30 -dot1xSuppMaxStart=3 -dot1xSuppSuppControlledPortStatus=Authorized -dot1xSuppBackendPaeState=2 -dot1xSuppEapolFramesRx=0 -dot1xSuppEapolFramesTx=440 -dot1xSuppEapolStartFramesTx=2 -dot1xSuppEapolLogoffFramesTx=0 -dot1xSuppEapolRespFramesTx=0 -dot1xSuppEapolReqIdFramesRx=0 -dot1xSuppEapolReqFramesRx=0 -dot1xSuppInvalidEapolFramesRx=0 -dot1xSuppEapLengthErrorFramesRx=0 -dot1xSuppLastEapolFrameVersion=0 -dot1xSuppLastEapolFrameSource=00:00:00:00:00:00 -\endverbatim - - -\subsection ctrl_iface_STATUS STATUS - -Request current WPA/EAPOL/EAP status information. The output is a text -block with each line in \c variable=value format. For example: - -\verbatim -bssid=02:00:01:02:03:04 -ssid=test network -pairwise_cipher=CCMP -group_cipher=CCMP -key_mgmt=WPA-PSK -wpa_state=COMPLETED -ip_address=192.168.1.21 -Supplicant PAE state=AUTHENTICATED -suppPortStatus=Authorized -EAP state=SUCCESS -\endverbatim - - -\subsection ctrl_iface_STATUS-VERBOSE STATUS-VERBOSE - -Same as STATUS, but with more verbosity (i.e., more \c variable=value pairs). - -\verbatim -bssid=02:00:01:02:03:04 -ssid=test network -id=0 -pairwise_cipher=CCMP -group_cipher=CCMP -key_mgmt=WPA-PSK -wpa_state=COMPLETED -ip_address=192.168.1.21 -Supplicant PAE state=AUTHENTICATED -suppPortStatus=Authorized -heldPeriod=60 -authPeriod=30 -startPeriod=30 -maxStart=3 -portControl=Auto -Supplicant Backend state=IDLE -EAP state=SUCCESS -reqMethod=0 -methodState=NONE -decision=COND_SUCC -ClientTimeout=60 -\endverbatim - - -\subsection ctrl_iface_PMKSA PMKSA - -Show PMKSA cache - -\verbatim -Index / AA / PMKID / expiration (in seconds) / opportunistic -1 / 02:00:01:02:03:04 / 000102030405060708090a0b0c0d0e0f / 41362 / 0 -2 / 02:00:01:33:55:77 / 928389281928383b34afb34ba4212345 / 362 / 1 -\endverbatim - - -\subsection ctrl_iface_SET SET - -Set variables: -- EAPOL::heldPeriod -- EAPOL::authPeriod -- EAPOL::startPeriod -- EAPOL::maxStart -- dot11RSNAConfigPMKLifetime -- dot11RSNAConfigPMKReauthThreshold -- dot11RSNAConfigSATimeout - -Example command: -\verbatim -SET EAPOL::heldPeriod 45 -\endverbatim - - -\subsection ctrl_iface_LOGON LOGON - -IEEE 802.1X EAPOL state machine logon. - - -\subsection ctrl_iface_LOGOFF LOGOFF - -IEEE 802.1X EAPOL state machine logoff. - - -\subsection ctrl_iface_REASSOCIATE REASSOCIATE - -Force reassociation. - - -\subsection ctrl_iface_RECONNECT RECONNECT - -Connect if disconnected (i.e., like \c REASSOCIATE, but only connect -if in disconnected state). - - -\subsection ctrl_iface_PREAUTH PREAUTH - -Start pre-authentication with the given BSSID. - - -\subsection ctrl_iface_ATTACH ATTACH - -Attach the connection as a monitor for unsolicited events. This can -be done with \ref wpa_ctrl_attach(). - - -\subsection ctrl_iface_DETACH DETACH - -Detach the connection as a monitor for unsolicited events. This can -be done with \ref wpa_ctrl_detach(). - - -\subsection ctrl_iface_LEVEL LEVEL - -Change debug level. - - -\subsection ctrl_iface_RECONFIGURE RECONFIGURE - -Force wpa_supplicant to re-read its configuration data. - - -\subsection ctrl_iface_TERMINATE TERMINATE - -Terminate wpa_supplicant process. - - -\subsection ctrl_iface_BSSID BSSID - -Set preferred BSSID for a network. Network id can be received from the -\c LIST_NETWORKS command output. - - -\subsection ctrl_iface_LIST_NETWORKS LIST_NETWORKS - -List configured networks. - -\verbatim -network id / ssid / bssid / flags -0 example network any [CURRENT] -\endverbatim - -(note: fields are separated with tabs) - - -\subsection ctrl_iface_DISCONNECT DISCONNECT - -Disconnect and wait for \c REASSOCIATE or \c RECONNECT command before -connecting. - - -\subsection ctrl_iface_SCAN SCAN - -Request a new BSS scan. - - -\subsection ctrl_iface_SCAN_RESULTS SCAN_RESULTS - -Get the latest scan results. - -\verbatim -bssid / frequency / signal level / flags / ssid -00:09:5b:95:e0:4e 2412 208 [WPA-PSK-CCMP] jkm private -02:55:24:33:77:a3 2462 187 [WPA-PSK-TKIP] testing -00:09:5b:95:e0:4f 2412 209 jkm guest -\endverbatim - -(note: fields are separated with tabs) - - -\subsection ctrl_iface_BSS BSS - -Get detailed per-BSS scan results. \c BSS command can be used to -iterate through scan results one BSS at a time and to fetch all -information from the found BSSes. This provides access to the same -data that is available through \c SCAN_RESULTS but in a way that -avoids problems with large number of scan results not fitting in the -ctrl_iface messages. - -There are two options for selecting the BSS with the \c BSS command: -"BSS " requests information for the BSS identified by the index -(0 .. size-1) in the scan results table and "BSS " requests -information for the given BSS (based on BSSID in 00:01:02:03:04:05 -format). - -BSS information is presented in following format. Please note that new -fields may be added to this field=value data, so the ctrl_iface user -should be prepared to ignore values it does not understand. - -\verbatim -bssid=00:09:5b:95:e0:4e -freq=2412 -beacon_int=0 -capabilities=0x0011 -qual=51 -noise=161 -level=212 -tsf=0000000000000000 -ie=000b6a6b6d2070726976617465010180dd180050f20101000050f20401000050f20401000050f2020000 -ssid=jkm private -\endverbatim - - - -\subsection ctrl_iface_SELECT_NETWORK SELECT_NETWORK - -Select a network (disable others). Network id can be received from the -\c LIST_NETWORKS command output. - - -\subsection ctrl_iface_ENABLE_NETWORK ENABLE_NETWORK - -Enable a network. Network id can be received from the -\c LIST_NETWORKS command output. Special network id \c all can be -used to enable all network. - - -\subsection ctrl_iface_DISABLE_NETWORK DISABLE_NETWORK - -Disable a network. Network id can be received from the -\c LIST_NETWORKS command output. Special network id \c all can be -used to disable all network. - - -\subsection ctrl_iface_ADD_NETWORK ADD_NETWORK - -Add a new network. This command creates a new network with empty -configuration. The new network is disabled and once it has been -configured it can be enabled with \c ENABLE_NETWORK command. \c ADD_NETWORK -returns the network id of the new network or FAIL on failure. - - -\subsection ctrl_iface_REMOVE_NETWORK REMOVE_NETWORK - -Remove a network. Network id can be received from the -\c LIST_NETWORKS command output. Special network id \c all can be -used to remove all network. - - -\subsection ctrl_iface_SET_NETWORK SET_NETWORK - -Set network variables. Network id can be received from the -\c LIST_NETWORKS command output. - -This command uses the same variables and data formats as the -configuration file. See example wpa_supplicant.conf for more details. - -- ssid (network name, SSID) -- psk (WPA passphrase or pre-shared key) -- key_mgmt (key management protocol) -- identity (EAP identity) -- password (EAP password) -- ... - - -\subsection ctrl_iface_GET_NETWORK GET_NETWORK - -Get network variables. Network id can be received from the -\c LIST_NETWORKS command output. - - -\subsection ctrl_iface_SAVE_CONFIG SAVE_CONFIG - -Save the current configuration. - - -\subsection ctrl_iface_P2P_FIND P2P_FIND - -Start P2P device discovery. Optional parameter can be used to specify -the duration for the discovery in seconds (e.g., "P2P_FIND 5"). If the -duration is not specified, discovery will be started for indefinite -time, i.e., until it is terminated by P2P_STOP_FIND or P2P_CONNECT (to -start group formation with a discovered peer). - -The default search type is to first run a full scan of all channels -and then continue scanning only social channels (1, 6, 11). This -behavior can be changed by specifying a different search type: social -(e.g., "P2P_FIND 5 type=social") will skip the initial full scan and -only search social channels; progressive (e.g., "P2P_FIND -type=progressive") starts with a full scan and then searches -progressively through all channels one channel at the time with the -social channel scans. Progressive device discovery can be used to find -new groups (and groups that were not found during the initial scan, -e.g., due to the GO being asleep) over time without adding -considerable extra delay for every Search state round. - - -\subsection ctrl_iface_P2P_STOP_FIND P2P_STOP_FIND - -Stop ongoing P2P device discovery or other operation (connect, listen -mode). - - -\subsection ctrl_iface_P2P_CONNECT P2P_CONNECT - -Start P2P group formation with a discovered P2P peer. This includes -group owner negotiation, group interface setup, provisioning, and -establishing data connection. - -P2P_CONNECT -[label|display|keypad] [persistent] [join|auth] [go_intent=<0..15>] - -Start P2P group formation with a discovered P2P peer. This includes -optional group owner negotiation, group interface setup, provisioning, -and establishing data connection. - -The parameter specifies the WPS provisioning -method. "pbc" string starts pushbutton method, "pin" string start PIN -method using an automatically generated PIN (which will be returned as -the command return code), PIN# means that a pre-selected PIN can be -used (e.g., 12345670). [label|display|keypad] is used with PIN method -to specify which PIN is used (label=PIN from local label, -display=dynamically generated random PIN from local display, -keypad=PIN entered from peer device label or display). "persistent" -parameter can be used to request a persistent group to be formed. - -"join" indicates that this is a command to join an existing group as a -client. It skips the GO Negotiation part. - -"auth" indicates that the WPS parameters are authorized for the peer -device without actually starting GO Negotiation (i.e., the peer is -expected to initiate GO Negotiation). This is mainly for testing -purposes. - -The optional "go_intent" parameter can be used to override the default -GO Intent value. - - -\subsection ctrl_iface_P2P_LISTEN P2P_LISTEN - -Start Listen-only state. Optional parameter can be used to specify the -duration for the Listen operation in seconds. This command may not -be of that much use during normal operations and is mainly designed -for testing. It can also be used to keep the device discoverable -without having to maintain a group. - - -\subsection ctrl_iface_P2P_GROUP_REMOVE P2P_GROUP_REMOVE - -Terminate a P2P group. If a new virtual network interface was used for -the group, it will also be removed. The network interface name of the -group interface is used as a parameter for this command. - - -\subsection ctrl_iface_P2P_GROUP_ADD P2P_GROUP_ADD - -Set up a P2P group owner manually (i.e., without group owner -negotiation with a specific peer). This is also known as autonomous -GO. Optional persistent= can be used to specify restart of -a persistent group. - - -\subsection ctrl_iface_P2P_PROV_DISC P2P_PROV_DISC - -Send P2P provision discovery request to the specified peer. The -parameters for this command are the P2P device address of the peer and -the desired configuration method. For example, "P2P_PROV_DISC -02:01:02:03:04:05 display" would request the peer to display a PIN for -us and "P2P_PROV_DISC 02:01:02:03:04:05 keypad" would request the peer -to enter a PIN that we display. - - -\subsection ctrl_iface_P2P_GET_PASSPHRASE P2P_GET_PASSPHRASE - -Get the passphrase for a group (only available when acting as a GO). - - -\subsection ctrl_iface_P2P_SERV_DISC_REQ P2P_SERV_DISC_REQ - -Schedule a P2P service discovery request. The parameters for this -command are the device address of the peer device (or 00:00:00:00:00:00 -for wildcard query that is sent to every discovered P2P peer that -supports service discovery) and P2P Service Query TLV(s) as hexdump. -For example, "P2P_SERV_DISC_REQ 00:00:00:00:00:00 02000001" schedules -a request for listing all supported service discovery protocols and -requests this to be sent to all discovered peers. The pending requests -are sent during device discovery (see \ref ctrl_iface_P2P_FIND). - -This command returns an identifier for the pending query (e.g., -"1f77628") that can be used to cancel the request. Directed requests -will be automatically removed when the specified peer has replied to -it. - - -\subsection ctrl_iface_P2P_SERV_DISC_CANCEL_REQ P2P_SERV_DISC_CANCEL_REQ - -Cancel a pending P2P service discovery request. This command takes a -single parameter: identifier for the pending query (the value returned -by \ref ctrl_iface_P2P_SERV_DISC_REQ), e.g., -"P2P_SERV_DISC_CANCEL_REQ 1f77628". - - -\subsection ctrl_iface_P2P_SERV_DISC_RESP P2P_SERV_DISC_RESP - -Reply to a service discovery query. This command takes following -parameters: frequency in MHz, destination address, dialog token, -response TLV(s). The first three parameters are copied from the -request event. For example, -"P2P_SERV_DISC_RESP 2437 02:40:61:c2:f3:b7 1 0300000101". - - -\subsection ctrl_iface_P2P_SERVICE_UPDATE P2P_SERVICE_UPDATE - -Indicate that local services have changed. This is used to increment -the P2P service indicator value so that peers know when previously -cached information may have changed. - - -\subsection ctrl_iface_P2P_SERV_DISC_EXTERNAL P2P_SERV_DISC_EXTERNAL - -Configure external processing of P2P service requests: 0 (default) = -no external processing of requests (i.e., internal code will reject -each request), 1 = external processing of requests (external program -is responsible for replying to service discovery requests with -\ref ctrl_iface_P2P_SERV_DISC_RESP). - - -\subsection ctrl_iface_P2P_REJECT P2P_REJECT - -Reject connection attempt from a peer (specified with a device -address). This is a mechanism to reject a pending GO Negotiation with -a peer and request to automatically block any further connection or -discovery of the peer. - - -\subsection ctrl_iface_P2P_INVITE P2P_INVITE - -Invite a peer to join a group or to (re)start a persistent group. - - -\subsection ctrl_iface_P2P_PEER P2P_PEER - -Fetch information about a discovered peer. This command takes in an -argument specifying which peer to select: P2P Device Address of the -peer, "FIRST" to indicate the first peer in the list, or "NEXT-" to indicate the entry following the specified peer -(to allow for iterating through the list). - - -\subsection ctrl_iface_P2P_EXT_LISTEN P2P_EXT_LISTEN - -Enable/disable extended listen timing. Without parameters, this -command disables extended listen timing. When enabling the feature, -two parameters are used: availability period and availability interval -(both in milliseconds and with range of 1-65535). - - -\section ctrl_iface_interactive Interactive requests - -If wpa_supplicant needs additional information during authentication -(e.g., password), it will use a specific prefix, \c CTRL-REQ- -(\a WPA_CTRL_REQ macro) in an unsolicited event message. An external -program, e.g., a GUI, can provide such information by using -\c CTRL-RSP- (\a WPA_CTRL_RSP macro) prefix in a command with matching -field name. - -The following fields can be requested in this way from the user: -- IDENTITY (EAP identity/user name) -- PASSWORD (EAP password) -- NEW_PASSWORD (New password if the server is requesting password change) -- PIN (PIN code for accessing a SIM or smartcard) -- OTP (one-time password; like password, but the value is used only once) -- PASSPHRASE (passphrase for a private key file) - -\verbatim -CTRL-REQ--- -CTRL-RSP--- -\endverbatim - -For example, request from wpa_supplicant: -\verbatim -CTRL-REQ-PASSWORD-1-Password needed for SSID test-network -\endverbatim - -And a matching reply from the GUI: -\verbatim -CTRL-RSP-PASSWORD-1-secret -\endverbatim - - -\subsection ctrl_iface_GET_CAPABILITY GET_CAPABILITY