blob: f66d45b73ca8a32203303df046f61b10c8aaade8 [file] [log] [blame]
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package {
default_applicable_licenses: [
// Inherits SPDX-license-identifier-BSD-3-Clause
"external_wpa_supplicant_8_license",
],
}
// See: http://go/android-license-faq
license {
name: "external_wpa_supplicant_8_wpa_supplicant_icons_license",
license_kinds: ["SPDX-license-identifier-CC0-1.0"],
license_text: ["wpa_gui-qt4/icons/LICENSE"],
}
// Ostensibly unused.
filegroup {
name: "wpa_supplicant_gui_qt4_icons",
srcs: ["wpa_gui-qt4/icons/*.svg"],
licenses: [
"external_wpa_supplicant_8_license",
"external_wpa_supplicant_8_wpa_supplicant_icons_license",
],
}
cc_library_headers {
name: "wpa_supplicant_headers",
export_include_dirs: [
".",
"src",
"src/common",
"src/drivers",
"src/eap_common",
"src/eapol_supp",
"src/eap_peer",
"src/eap_server",
"src/l2_packet",
"src/radius",
"src/rsn_supp",
"src/tls",
"src/utils",
"src/wps",
],
soc_specific: true,
}
cc_library_headers {
name: "wpa_supplicant_headers_mainline",
export_include_dirs: [
".",
"src",
"src/common",
"src/drivers",
"src/eap_common",
"src/eapol_supp",
"src/eap_peer",
"src/eap_server",
"src/l2_packet",
"src/radius",
"src/rsn_supp",
"src/tls",
"src/utils",
"src/wps",
],
apex_available: [
"//apex_available:platform",
"com.android.wifi",
],
min_sdk_version: "30",
}
filegroup {
name: "wpa_supplicant_template.conf",
srcs: ["wpa_supplicant_template.conf"],
}
cc_defaults {
name: "wpa_supplicant_defaults",
defaults: ["wpa_supplicant_cflags_defaults"],
srcs: [":wpa_supplicant_srcs"],
shared_libs: [
"android.hardware.wifi.supplicant-V4-ndk",
"android.system.keystore2-V1-ndk",
"libbase",
"libbinder_ndk",
"libc",
"libcrypto",
"libcutils",
"libkeystore-engine-wifi-hidl",
"liblog",
"libnl",
"libssl",
"libutils",
],
relative_install_path: "hw",
soc_specific: true,
static_libs: [
"libwpa_aidl_bp",
],
header_libs: [
"wpa_supplicant_headers",
"libwpa_aidl_headers",
],
}
cc_defaults {
name: "wpa_supplicant_cflags_defaults",
// Generated by building wpa_supplicant and printing LOCAL_CFLAGS.
cflags: [
"-DANDROID_LOG_NAME=\"wpa_supplicant\"",
"-DANDROID_P2P",
"-DCONFIG_ACS",
"-DCONFIG_ANDROID_LOG",
"-DCONFIG_AP",
"-DCONFIG_BACKEND_FILE",
"-DCONFIG_CTRL_IFACE",
"-DCONFIG_CTRL_IFACE_CLIENT_DIR=\"/data/vendor/wifi/wpa/sockets\"",
"-DCONFIG_CTRL_IFACE_DIR=\"/data/vendor/wifi/wpa/sockets\"",
"-DCONFIG_CTRL_IFACE_AIDL",
"-DCONFIG_CTRL_IFACE_UNIX",
"-DCONFIG_DPP",
"-DCONFIG_DPP2",
"-DCONFIG_DRIVER_NL80211",
"-DCONFIG_ECC",
"-DCONFIG_ERP",
"-DCONFIG_FILS",
"-DCONFIG_GAS",
"-DCONFIG_GAS_SERVER",
"-DCONFIG_AIDL",
"-DCONFIG_HMAC_SHA256_KDF",
"-DCONFIG_HMAC_SHA384_KDF",
"-DCONFIG_HMAC_SHA512_KDF",
"-DCONFIG_HS20",
"-DCONFIG_IEEE80211AC",
"-DCONFIG_IEEE80211R",
"-DCONFIG_INTERWORKING",
"-DCONFIG_IPV6",
"-DCONFIG_JSON",
"-DCONFIG_MBO",
"-DCONFIG_NO_ACCOUNTING",
"-DCONFIG_NO_RADIUS",
"-DCONFIG_NO_RADIUS",
"-DCONFIG_NO_RANDOM_POOL",
"-DCONFIG_NO_VLAN",
"-DCONFIG_OFFCHANNEL",
"-DCONFIG_OWE",
"-DCONFIG_P2P",
"-DCONFIG_SAE",
"-DCONFIG_SAE_PK",
"-DCONFIG_SHA256",
"-DCONFIG_SHA384",
"-DCONFIG_SHA512",
"-DCONFIG_SMARTCARD",
"-DCONFIG_SME",
"-DCONFIG_SUITEB",
"-DCONFIG_SUITEB192",
"-DCONFIG_TDLS",
"-DCONFIG_WEP",
"-DCONFIG_WIFI_DISPLAY",
"-DCONFIG_WNM",
"-DCONFIG_WPA_CLI_HISTORY_DIR=\"/data/vendor/wifi/wpa\"",
"-DCONFIG_WPS",
"-DCONFIG_WPS_ER",
"-DCONFIG_WPS_NFC",
"-DCONFIG_WPS_OOB",
"-DCONFIG_WPS_UPNP",
"-DEAP_AKA",
"-DEAP_AKA_PRIME",
"-DEAP_GTC",
"-DEAP_LEAP",
"-DEAP_MD5",
"-DEAP_MSCHAPv2",
"-DEAP_OTP",
"-DEAP_PEAP",
"-DCONFIG_PTKSA_CACHE",
"-DEAP_PWD",
"-DEAP_SERVER",
"-DEAP_SERVER_IDENTITY",
"-DEAP_SERVER_WSC",
"-DEAP_SIM",
"-DEAP_TLS",
"-DEAP_TLS_OPENSSL",
"-DEAP_TTLS",
"-DEAP_WSC",
"-DIEEE8021X_EAPOL",
"-DNEED_AP_MLME",
"-DPKCS12_FUNCS",
"-DTLS_DEFAULT_CIPHERS=\"DEFAULT:!EXP:!LOW\"",
"-DWPA_IGNORE_CONFIG_ERRORS",
"-Wall",
"-Werror",
"-Wno-error=sometimes-uninitialized",
"-Wno-incompatible-pointer-types",
"-Wno-incompatible-pointer-types-discards-qualifiers",
"-Wno-macro-redefined",
"-Wno-parentheses-equality",
"-Wno-sign-compare",
"-Wno-unused-function",
"-Wno-unused-parameter",
"-Wno-unused-variable",
] +
// Devices that include this module should set these soong config vars appropriately.
// For example:
// $(call soong_config_set, wpa_supplicant, platform_version, $(PLATFORM_VERSION))
// $(call soong_config_set, wpa_supplicant, nl80211_driver, CONFIG_DRIVER_NL80211_QCA)
select(soong_config_variable("wpa_supplicant", "platform_version"), {
any @ version: ["-DVERSION_STR_POSTFIX=\"-" + version + "\""],
default: ["-DVERSION_STR_POSTFIX=\"-Android\""],
}) +
select(soong_config_variable("wpa_supplicant", "nl80211_driver"), {
any @ driver: ["-D" + driver],
// Flag is optional, so no default value provided.
default: [],
}) +
select(soong_config_variable("wpa_supplicant", "roaming"), {
true: [],
default: ["-DCONFIG_NO_ROAMING"],
}) +
select(soong_config_variable("wpa_supplicant", "pasn"), {
false: [],
default: ["-DCONFIG_PASN"],
}) +
select(soong_config_variable("wpa_supplicant", "bgscan_simple"), {
true: [
"-DCONFIG_BGSCAN",
"-DCONFIG_BGSCAN_SIMPLE",
],
default: [],
}),
// Similar to suppressing clang compiler warnings, here we
// suppress clang-tidy warnings to reduce noises in Android build.log.
tidy_checks: [
"-android-cloexec-*",
"-bugprone-branch-clone",
"-bugprone-macro-parentheses",
"-bugprone-misplaced-widening-cast",
"-bugprone-signal-handler",
"-bugprone-signed-char-misuse",
"-bugprone-sizeof-expression",
"-bugprone-suspicious-string-compare",
"-bugprone-too-small-loop-variable",
"-cert-err34-c",
"-cert-msc30-c",
"-cert-msc50-cpp",
"-cert-msc54-cpp",
"-cert-sig30-c",
"-cert-str34-c",
"-clang-analyzer-core.NullDereference",
"-clang-analyzer-core.UndefinedBinaryOperatorResult",
"-clang-analyzer-deadcode.DeadStores",
"-clang-analyzer-optin.performance.Padding",
"-clang-analyzer-optin.portability.UnixAPI",
"-clang-analyzer-security.insecureAPI.UncheckedReturn",
"-clang-analyzer-unix.cstring.NullArg",
"-clang-analyzer-unix.Malloc",
"-clang-diagnostic-unused-but-set-variable",
"-misc-redundant-expression",
],
}
// Generated by building wpa_supplicant and printing LOCAL_SRC_FILES.
filegroup {
name: "wpa_supplicant_srcs",
srcs: [
"ap.c",
"bss.c",
"bssid_ignore.c",
"config.c",
"config_file.c",
"ctrl_iface.c",
"ctrl_iface_unix.c",
"dpp_supplicant.c",
"eap_register.c",
"events.c",
"gas_query.c",
"hs20_supplicant.c",
"interworking.c",
"main.c",
"mbo.c",
"notify.c",
"offchannel.c",
"op_classes.c",
"p2p_supplicant.c",
"p2p_supplicant_sd.c",
"robust_av.c",
"rrm.c",
"scan.c",
"sme.c",
"src/ap/acs.c",
"src/ap/ap_config.c",
"src/ap/ap_drv_ops.c",
"src/ap/ap_list.c",
"src/ap/comeback_token.c",
"src/ap/ap_mlme.c",
"src/ap/authsrv.c",
"src/ap/beacon.c",
"src/ap/bss_load.c",
"src/ap/ctrl_iface_ap.c",
"src/ap/dfs.c",
"src/ap/dpp_hostapd.c",
"src/ap/drv_callbacks.c",
"src/ap/eap_user_db.c",
"src/ap/fils_hlp.c",
"src/ap/gas_query_ap.c",
"src/ap/gas_serv.c",
"src/ap/hostapd.c",
"src/ap/hs20.c",
"src/ap/hw_features.c",
"src/ap/ieee802_11_auth.c",
"src/ap/ieee802_11.c",
"src/ap/ieee802_11_ht.c",
"src/ap/ieee802_11_shared.c",
"src/ap/ieee802_11_vht.c",
"src/ap/ieee802_1x.c",
"src/ap/mbo_ap.c",
"src/ap/neighbor_db.c",
"src/ap/p2p_hostapd.c",
"src/ap/pmksa_cache_auth.c",
"src/ap/rrm.c",
"src/ap/sta_info.c",
"src/ap/tkip_countermeasures.c",
"src/ap/utils.c",
"src/ap/wmm.c",
"src/ap/wpa_auth.c",
"src/ap/wpa_auth_glue.c",
"src/ap/wpa_auth_ie.c",
"src/ap/wps_hostapd.c",
"src/common/ctrl_iface_common.c",
"src/common/dpp_auth.c",
"src/common/dpp_backup.c",
"src/common/dpp.c",
"src/common/dpp_crypto.c",
"src/common/dpp_pkex.c",
"src/common/dpp_reconfig.c",
"src/common/dpp_tcp.c",
"src/common/dragonfly.c",
"src/common/gas.c",
"src/common/gas_server.c",
"src/common/hw_features_common.c",
"src/common/ieee802_11_common.c",
"src/common/sae.c",
"src/common/sae_pk.c",
"src/common/wpa_common.c",
"src/common/ptksa_cache.c",
"src/crypto/aes-ctr.c",
"src/crypto/aes-encblock.c",
"src/crypto/aes-siv.c",
"src/crypto/crypto_openssl.c",
"src/crypto/dh_groups.c",
"src/crypto/fips_prf_openssl.c",
"src/crypto/milenage.c",
"src/crypto/ms_funcs.c",
"src/crypto/sha1-prf.c",
"src/crypto/sha1-tlsprf.c",
"src/crypto/sha256-kdf.c",
"src/crypto/sha256-prf.c",
"src/crypto/sha256-tlsprf.c",
"src/crypto/sha384-kdf.c",
"src/crypto/sha384-prf.c",
"src/crypto/sha512-kdf.c",
"src/crypto/sha512-prf.c",
"src/crypto/tls_openssl.c",
"src/crypto/tls_openssl_ocsp.c",
"src/drivers/driver_common.c",
"src/drivers/driver_nl80211_android.c",
"src/drivers/driver_nl80211.c",
"src/drivers/driver_nl80211_capa.c",
"src/drivers/driver_nl80211_event.c",
"src/drivers/driver_nl80211_monitor.c",
"src/drivers/driver_nl80211_scan.c",
"src/drivers/drivers.c",
"src/drivers/linux_ioctl.c",
"src/drivers/netlink.c",
"src/drivers/rfkill.c",
"src/eap_common/chap.c",
"src/eap_common/eap_common.c",
"src/eap_common/eap_peap_common.c",
"src/eap_common/eap_pwd_common.c",
"src/eap_common/eap_sim_common.c",
"src/eap_common/eap_wsc_common.c",
"src/eapol_auth/eapol_auth_sm.c",
"src/eapol_supp/eapol_supp_sm.c",
"src/eap_peer/eap_aka.c",
"src/eap_peer/eap.c",
"src/eap_peer/eap_gtc.c",
"src/eap_peer/eap_leap.c",
"src/eap_peer/eap_md5.c",
"src/eap_peer/eap_methods.c",
"src/eap_peer/eap_mschapv2.c",
"src/eap_peer/eap_otp.c",
"src/eap_peer/eap_peap.c",
"src/eap_peer/eap_pwd.c",
"src/eap_peer/eap_sim.c",
"src/eap_peer/eap_tls.c",
"src/eap_peer/eap_tls_common.c",
"src/eap_peer/eap_ttls.c",
"src/eap_peer/eap_wsc.c",
"src/eap_peer/mschapv2.c",
"src/eap_server/eap_server.c",
"src/eap_server/eap_server_identity.c",
"src/eap_server/eap_server_methods.c",
"src/eap_server/eap_server_wsc.c",
"src/l2_packet/l2_packet_linux.c",
"src/p2p/p2p_build.c",
"src/p2p/p2p.c",
"src/p2p/p2p_dev_disc.c",
"src/p2p/p2p_go_neg.c",
"src/p2p/p2p_group.c",
"src/p2p/p2p_invitation.c",
"src/p2p/p2p_parse.c",
"src/p2p/p2p_pd.c",
"src/p2p/p2p_sd.c",
"src/p2p/p2p_utils.c",
"src/rsn_supp/pmksa_cache.c",
"src/rsn_supp/preauth.c",
"src/rsn_supp/tdls.c",
"src/rsn_supp/wpa.c",
"src/rsn_supp/wpa_ft.c",
"src/rsn_supp/wpa_ie.c",
"src/tls/asn1.c",
"src/utils/base64.c",
"src/utils/bitfield.c",
"src/utils/common.c",
"src/utils/config.c",
"src/utils/crc32.c",
"src/utils/eloop.c",
"src/utils/ip_addr.c",
"src/utils/json.c",
"src/utils/os_unix.c",
"src/utils/radiotap.c",
"src/utils/uuid.c",
"src/utils/wpabuf.c",
"src/utils/wpa_debug.c",
"src/wps/http_client.c",
"src/wps/httpread.c",
"src/wps/http_server.c",
"src/wps/ndef.c",
"src/wps/upnp_xml.c",
"src/wps/wps_attr_build.c",
"src/wps/wps_attr_parse.c",
"src/wps/wps_attr_process.c",
"src/wps/wps.c",
"src/wps/wps_common.c",
"src/wps/wps_dev_attr.c",
"src/wps/wps_enrollee.c",
"src/wps/wps_er.c",
"src/wps/wps_er_ssdp.c",
"src/wps/wps_registrar.c",
"src/wps/wps_upnp_ap.c",
"src/wps/wps_upnp.c",
"src/wps/wps_upnp_event.c",
"src/wps/wps_upnp_ssdp.c",
"src/wps/wps_upnp_web.c",
"twt.c",
"wifi_display.c",
"wmm_ac.c",
"wnm_sta.c",
"wpas_glue.c",
"wpa_supplicant.c",
"wps_supplicant.c",
] +
select(soong_config_variable("wpa_supplicant", "bgscan_simple"), {
true: [
"bgscan.c",
"bgscan_simple.c",
],
default: [],
}) +
select(soong_config_variable("wpa_supplicant", "pasn"), {
false: [],
default: [
"pasn_supplicant.c",
"src/pasn/pasn_initiator.c",
"src/pasn/pasn_responder.c",
"src/pasn/pasn_common.c",
],
}),
}
// Generated by building wpa_cli and printing LOCAL_SRC_FILES
filegroup {
name: "wpa_cli_srcs",
srcs: [
"src/common/cli.c",
"src/common/wpa_ctrl.c",
"src/utils/common.c",
"src/utils/edit.c",
"src/utils/eloop.c",
"src/utils/os_unix.c",
"src/utils/wpa_debug.c",
"wpa_cli.c",
],
}
// Generated by building libwpa_client and printing LOCAL_SRC_FILES
filegroup {
name: "libwpa_client_srcs",
srcs: [
"src/common/wpa_ctrl.c",
"src/utils/os_unix.c",
],
}
cc_library_headers {
name: "libwpa_client_headers",
export_include_dirs: [
".",
"wpa_client_include/libwpa_client",
],
soc_specific: true,
}
cc_library {
name: "libpasn",
vendor: true,
cflags: [
"-DANDROID_LOG_NAME=\"libpasn\"",
"-DANDROID_P2P",
"-DCONFIG_ACS",
"-DCONFIG_ANDROID_LOG",
"-DCONFIG_AP",
"-DCONFIG_BACKEND_FILE",
"-DCONFIG_CTRL_IFACE",
"-DCONFIG_CTRL_IFACE_CLIENT_DIR=\"/data/vendor/wifi/wpa/sockets\"",
"-DCONFIG_CTRL_IFACE_DIR=\"/data/vendor/wifi/wpa/sockets\"",
"-DCONFIG_CTRL_IFACE_AIDL",
"-DCONFIG_CTRL_IFACE_UNIX",
"-DCONFIG_DPP",
"-DCONFIG_DPP2",
"-DCONFIG_DRIVER_NL80211",
"-DCONFIG_ECC",
"-DCONFIG_ERP",
"-DCONFIG_FILS",
"-DCONFIG_GAS",
"-DCONFIG_GAS_SERVER",
"-DCONFIG_AIDL",
"-DCONFIG_HMAC_SHA256_KDF",
"-DCONFIG_HMAC_SHA384_KDF",
"-DCONFIG_HMAC_SHA512_KDF",
"-DCONFIG_HS20",
"-DCONFIG_IEEE80211AC",
"-DCONFIG_IEEE80211R",
"-DCONFIG_INTERWORKING",
"-DCONFIG_IPV6",
"-DCONFIG_JSON",
"-DCONFIG_MBO",
"-DCONFIG_NO_ACCOUNTING",
"-DCONFIG_NO_RADIUS",
"-DCONFIG_NO_RADIUS",
"-DCONFIG_NO_RANDOM_POOL",
"-DCONFIG_NO_ROAMING",
"-DCONFIG_NO_VLAN",
"-DCONFIG_OFFCHANNEL",
"-DCONFIG_OWE",
"-DCONFIG_P2P",
"-DCONFIG_SAE",
"-DCONFIG_SAE_PK",
"-DCONFIG_SHA256",
"-DCONFIG_SHA384",
"-DCONFIG_SHA512",
"-DCONFIG_SMARTCARD",
"-DCONFIG_SME",
"-DCONFIG_SUITEB",
"-DCONFIG_SUITEB192",
"-DCONFIG_TDLS",
"-DCONFIG_WEP",
"-DCONFIG_WIFI_DISPLAY",
"-DCONFIG_WNM",
"-DCONFIG_WPA_CLI_HISTORY_DIR=\"/data/vendor/wifi/wpa\"",
"-DCONFIG_WPS",
"-DCONFIG_WPS_ER",
"-DCONFIG_WPS_NFC",
"-DCONFIG_WPS_OOB",
"-DCONFIG_WPS_UPNP",
"-DEAP_AKA",
"-DEAP_AKA_PRIME",
"-DEAP_GTC",
"-DEAP_LEAP",
"-DEAP_MD5",
"-DEAP_MSCHAPv2",
"-DEAP_OTP",
"-DEAP_PEAP",
"-DCONFIG_PASN",
"-DCONFIG_PTKSA_CACHE",
"-DEAP_PWD",
"-DEAP_SERVER",
"-DEAP_SERVER_IDENTITY",
"-DEAP_SERVER_WSC",
"-DEAP_SIM",
"-DEAP_TLS",
"-DEAP_TLS_OPENSSL",
"-DEAP_TTLS",
"-DEAP_WSC",
"-DIEEE8021X_EAPOL",
"-DNEED_AP_MLME",
"-DPKCS12_FUNCS",
"-DTLS_DEFAULT_CIPHERS=\"DEFAULT:!EXP:!LOW\"",
"-DWPA_IGNORE_CONFIG_ERRORS",
"-Wall",
"-Werror",
"-Wno-error=sometimes-uninitialized",
"-Wno-incompatible-pointer-types",
"-Wno-incompatible-pointer-types-discards-qualifiers",
"-Wno-macro-redefined",
"-Wno-parentheses-equality",
"-Wno-sign-compare",
"-Wno-unused-function",
"-Wno-unused-parameter",
"-Wno-unused-variable",
],
product_variables: {
debuggable: {
cflags: ["-DLOG_NDEBUG=0"],
},
},
local_include_dirs: [
".",
"src",
"src/common",
"src/drivers",
"src/eap_common",
"src/eapol_supp",
"src/eap_peer",
"src/eap_server",
"src/l2_packet",
"src/radius",
"src/rsn_supp",
"src/tls",
"src/utils",
"src/wps",
],
srcs: [
"src/utils/eloop.c",
"src/utils/wpa_debug.c",
"src/utils/wpabuf.c",
"src/utils/os_unix.c",
"src/utils/config.c",
"src/utils/common.c",
"src/utils/base64.c",
"src/common/sae.c",
"src/common/sae_pk.c",
"src/common/wpa_common.c",
"src/common/ieee802_11_common.c",
"src/common/dragonfly.c",
"src/common/ptksa_cache.c",
"src/rsn_supp/pmksa_cache.c",
"src/rsn_supp/wpa_ie.c",
"src/ap/comeback_token.c",
"src/ap/pmksa_cache_auth.c",
"src/eap_common/eap_common.c",
"src/eap_common/chap.c",
"src/eap_peer/eap.c",
"src/eap_peer/eap_methods.c",
"src/eapol_supp/eapol_supp_sm.c",
"src/crypto/crypto_openssl.c",
"src/crypto/tls_openssl.c",
"src/crypto/tls_openssl_ocsp.c",
"src/crypto/sha256-tlsprf.c",
"src/crypto/sha512-prf.c",
"src/crypto/sha384-prf.c",
"src/crypto/sha256-prf.c",
"src/crypto/sha512-kdf.c",
"src/crypto/sha384-kdf.c",
"src/crypto/sha256-kdf.c",
"src/crypto/dh_groups.c",
"src/crypto/aes-siv.c",
"src/crypto/aes-ctr.c",
"src/crypto/sha1-prf.c",
"src/crypto/sha1-tlsprf.c",
"src/pasn/pasn_initiator.c",
"src/pasn/pasn_responder.c",
"src/pasn/pasn_common.c",
],
shared_libs: [
"libc",
"libcutils",
"liblog",
"libcrypto",
"libssl",
"libkeystore-engine-wifi-hidl",
],
sanitize: {
misc_undefined: [
"unsigned-integer-overflow",
"signed-integer-overflow",
],
cfi: true,
},
}
// For converting the default to soong
cc_defaults {
name: "wpa_supplicant_driver_srcs_default",
srcs: [
"src/drivers/driver_nl80211.c",
"src/drivers/driver_nl80211_android.c",
"src/drivers/driver_nl80211_capa.c",
"src/drivers/driver_nl80211_event.c",
"src/drivers/driver_nl80211_monitor.c",
"src/drivers/driver_nl80211_scan.c",
"src/drivers/linux_ioctl.c",
"src/drivers/netlink.c",
"src/drivers/rfkill.c",
"src/utils/radiotap.c",
],
}
cc_defaults {
name: "wpa_supplicant_driver_cflags_default",
cflags: [
"-DCONFIG_DRIVER_NL80211",
// Because the original Android.mk will call hostapd's Android.mk first and it
// will make the flag share with wpa_supplicant, keep the original logic in hostapd.
] + select(soong_config_variable("wpa_supplicant_8", "board_wlan_device"), {
"bcmdhd": ["-DCONFIG_DRIVER_NL80211_BRCM"],
"synadhd": ["-DCONFIG_DRIVER_NL80211_SYNA"],
"qcwcn": ["-DCONFIG_DRIVER_NL80211_QCA"],
default: ["-DCONFIG_DRIVER_NL80211_QCA"],
}),
}
cc_defaults {
name: "wpa_supplicant_includes_default",
local_include_dirs: [
".",
"src",
"src/common",
"src/drivers",
"src/eap_common",
"src/eap_peer",
"src/eap_server",
"src/eapol_supp",
"src/l2_packet",
"src/pasn",
"src/radius",
"src/rsn_supp",
"src/tls",
"src/utils",
"src/wps",
],
include_dirs: [
// There's an if condition for external/libnl but current code base should always have this.
"external/libnl/include",
"system/security/keystore/include",
],
}
soong_config_module_type {
name: "wpa_supplicant_cc_defaults_type",
module_type: "cc_defaults",
config_namespace: "wpa_supplicant_8",
value_variables: [
"platform_version",
],
properties: ["cflags"],
}
// Hostap related module share the same CFLAGS
wpa_supplicant_cc_defaults_type {
name: "wpa_supplicant_no_aidl_cflags_default",
cflags: [
"-DANDROID_LOG_NAME=\"wpa_supplicant\"",
"-DANDROID_P2P",
"-DCONFIG_ACS",
"-DCONFIG_ANDROID_LOG",
"-DCONFIG_AP",
"-DCONFIG_BACKEND_FILE",
"-DCONFIG_CTRL_IFACE",
"-DCONFIG_CTRL_IFACE_CLIENT_DIR=\"/data/vendor/wifi/wpa/sockets\"",
"-DCONFIG_CTRL_IFACE_DIR=\"/data/vendor/wifi/wpa/sockets\"",
"-DCONFIG_CTRL_IFACE_UNIX",
"-DCONFIG_DPP",
"-DCONFIG_DPP2",
"-DCONFIG_DRIVER_NL80211",
"-DCONFIG_DRIVER_NL80211_QCA",
"-DCONFIG_ECC",
"-DCONFIG_ERP",
"-DCONFIG_FILS",
"-DCONFIG_GAS",
"-DCONFIG_GAS_SERVER",
"-DCONFIG_HMAC_SHA256_KDF",
"-DCONFIG_HMAC_SHA384_KDF",
"-DCONFIG_HMAC_SHA512_KDF",
"-DCONFIG_HS20",
"-DCONFIG_IEEE80211AC",
"-DCONFIG_IEEE80211R",
"-DCONFIG_INTERWORKING",
"-DCONFIG_IPV6",
"-DCONFIG_JSON",
"-DCONFIG_MBO",
"-DCONFIG_NO_ACCOUNTING",
"-DCONFIG_NO_RADIUS",
"-DCONFIG_NO_RADIUS",
"-DCONFIG_NO_RANDOM_POOL",
"-DCONFIG_NO_ROAMING",
"-DCONFIG_NO_VLAN",
"-DCONFIG_OFFCHANNEL",
"-DCONFIG_OWE",
"-DCONFIG_P2P",
"-DCONFIG_PASN",
"-DCONFIG_PTKSA_CACHE",
"-DCONFIG_SAE",
"-DCONFIG_SAE_PK",
"-DCONFIG_SHA256",
"-DCONFIG_SHA384",
"-DCONFIG_SHA512",
"-DCONFIG_SMARTCARD",
"-DCONFIG_SME",
"-DCONFIG_SUITEB",
"-DCONFIG_SUITEB192",
"-DCONFIG_TDLS",
"-DCONFIG_WEP",
"-DCONFIG_WIFI_DISPLAY",
"-DCONFIG_WNM",
"-DCONFIG_WPA_CLI_HISTORY_DIR=\"/data/vendor/wifi/wpa\"",
"-DCONFIG_WPS",
"-DCONFIG_WPS_ER",
"-DCONFIG_WPS_NFC",
"-DCONFIG_WPS_OOB",
"-DCONFIG_WPS_UPNP",
"-DCRYPTO_RSA_OAEP_SHA256",
"-DEAP_AKA",
"-DEAP_AKA_PRIME",
"-DEAP_GTC",
"-DEAP_LEAP",
"-DEAP_MD5",
"-DEAP_MSCHAPv2",
"-DEAP_OTP",
"-DEAP_PEAP",
"-DEAP_PWD",
"-DEAP_SERVER",
"-DEAP_SERVER_IDENTITY",
"-DEAP_SERVER_WSC",
"-DEAP_SIM",
"-DEAP_TLS",
"-DEAP_TLSV1_3",
"-DEAP_TLS_OPENSSL",
"-DEAP_TTLS",
"-DEAP_WSC",
"-DIEEE8021X_EAPOL",
"-DNEED_AP_MLME",
"-DPKCS12_FUNCS",
"-DTLS_DEFAULT_CIPHERS=\"DEFAULT:!EXP:!LOW\"",
"-DWPA_IGNORE_CONFIG_ERRORS",
"-Wall",
"-Werror",
"-Wno-error=sometimes-uninitialized",
"-Wno-incompatible-pointer-types",
"-Wno-incompatible-pointer-types-discards-qualifiers",
"-Wno-macro-redefined",
"-Wno-parentheses-equality",
"-Wno-sign-compare",
"-Wno-unused-function",
"-Wno-unused-parameter",
"-Wno-unused-variable",
] + select(soong_config_variable("wpa_supplicant_8", "wpa_supplicant_use_stub_lib"), {
true: ["-DANDROID_LIB_STUB"],
default: [],
}) + select(soong_config_variable("wpa_supplicant_8", "board_hostapd_config_80211w_mfp_optional"), {
true: ["-DENABLE_HOSTAPD_CONFIG_80211W_MFP_OPTIONAL"],
default: [],
}) + select(soong_config_variable("wpa_supplicant_8", "board_wpa_supplicant_private_lib_event"), {
true: ["-DANDROID_LIB_EVENT"],
default: [],
}) + select(soong_config_variable("wpa_supplicant_8", "wifi_priv_cmd_update_mbo_cell_status"), {
true: ["-DENABLE_PRIV_CMD_UPDATE_MBO_CELL_STATUS"],
default: [],
}) + select(soong_config_variable("wpa_supplicant_8", "hostapd_11ax"), {
true: ["-DCONFIG_IEEE80211AX"],
default: [],
}) + select(soong_config_variable("wpa_supplicant_8", "wifi_brcm_open_source_multi_akm"), {
true: ["-DWIFI_BRCM_OPEN_SOURCE_MULTI_AKM"],
default: [],
}),
arch: {
arm: {
cflags: [
"-mabi=aapcs-linux",
],
},
},
defaults: [
"wpa_supplicant_driver_cflags_default",
],
soong_config_variables: {
platform_version: {
cflags: ["-DVERSION_STR_POSTFIX=\"-%s\""],
},
},
}
cc_defaults {
name: "wpa_supplicant_cflags_default",
cflags: [
"-DCONFIG_AIDL",
"-DCONFIG_CTRL_IFACE_AIDL",
],
defaults: [
"wpa_supplicant_no_aidl_cflags_default",
],
}
wpa_supplicant_cc_defaults_type {
name: "wpa_supplicant_mainline_cflags_default",
cflags: [
"-DANDROID_LIB_STUB",
"-DANDROID_LOG_NAME=\"mainline_supplicant\"",
"-DCONFIG_ACS",
"-DCONFIG_ANDROID_LOG",
"-DCONFIG_AP",
"-DCONFIG_BACKEND_FILE",
"-DCONFIG_CTRL_IFACE",
"-DCONFIG_CTRL_IFACE_UNIX",
"-DCONFIG_DPP",
"-DCONFIG_DPP2",
"-DCONFIG_DRIVER_NL80211",
"-DCONFIG_DRIVER_NL80211_QCA",
"-DCONFIG_ECC",
"-DCONFIG_ERP",
"-DCONFIG_FILS",
"-DCONFIG_GAS",
"-DCONFIG_GAS_SERVER",
"-DCONFIG_HMAC_SHA256_KDF",
"-DCONFIG_HMAC_SHA384_KDF",
"-DCONFIG_HMAC_SHA512_KDF",
"-DCONFIG_HS20",
"-DCONFIG_IEEE80211AC",
"-DCONFIG_IEEE80211R",
"-DCONFIG_INTERWORKING",
"-DCONFIG_IPV6",
"-DCONFIG_JSON",
"-DCONFIG_MBO",
"-DCONFIG_NO_ACCOUNTING",
"-DCONFIG_NO_RADIUS",
"-DCONFIG_NO_RADIUS",
"-DCONFIG_NO_RANDOM_POOL",
"-DCONFIG_NO_ROAMING",
"-DCONFIG_NO_VLAN",
"-DCONFIG_OFFCHANNEL",
"-DCONFIG_OWE",
"-DCONFIG_P2P",
"-DCONFIG_PASN",
"-DCONFIG_PTKSA_CACHE",
"-DCONFIG_SAE",
"-DCONFIG_SAE_PK",
"-DCONFIG_SHA256",
"-DCONFIG_SHA384",
"-DCONFIG_SHA512",
"-DCONFIG_SMARTCARD",
"-DCONFIG_SME",
"-DCONFIG_SUITEB",
"-DCONFIG_SUITEB192",
"-DCONFIG_TDLS",
"-DCONFIG_WEP",
"-DCONFIG_WIFI_DISPLAY",
"-DCONFIG_WNM",
"-DCONFIG_WPS",
"-DCONFIG_WPS_ER",
"-DCONFIG_WPS_NFC",
"-DCONFIG_WPS_OOB",
"-DCONFIG_WPS_UPNP",
"-DCRYPTO_RSA_OAEP_SHA256",
"-DEAP_AKA",
"-DEAP_AKA_PRIME",
"-DEAP_GTC",
"-DEAP_LEAP",
"-DEAP_MD5",
"-DEAP_MSCHAPv2",
"-DEAP_OTP",
"-DEAP_PEAP",
"-DEAP_PWD",
"-DEAP_SERVER",
"-DEAP_SERVER_IDENTITY",
"-DEAP_SERVER_WSC",
"-DEAP_SIM",
"-DEAP_TLS",
"-DEAP_TLSV1_3",
"-DEAP_TLS_OPENSSL",
"-DEAP_TTLS",
"-DEAP_WSC",
"-DIEEE8021X_EAPOL",
"-DMAINLINE_SUPPLICANT",
"-DNEED_AP_MLME",
"-DOPENSSL_NO_ENGINE",
"-DPKCS12_FUNCS",
"-DTLS_DEFAULT_CIPHERS=\"DEFAULT:!EXP:!LOW\"",
"-DWPA_IGNORE_CONFIG_ERRORS",
"-Wall",
"-Werror",
"-Wno-error=sometimes-uninitialized",
"-Wno-incompatible-pointer-types",
"-Wno-incompatible-pointer-types-discards-qualifiers",
"-Wno-macro-redefined",
"-Wno-parentheses-equality",
"-Wno-sign-compare",
"-Wno-unused-function",
"-Wno-unused-parameter",
"-Wno-unused-variable",
] + select(soong_config_variable("wpa_supplicant_8", "wpa_supplicant_use_stub_lib"), {
true: ["-DANDROID_LIB_STUB"],
default: [],
}) + select(soong_config_variable("wpa_supplicant_8", "board_hostapd_config_80211w_mfp_optional"), {
true: ["-DENABLE_HOSTAPD_CONFIG_80211W_MFP_OPTIONAL"],
default: [],
}) + select(soong_config_variable("wpa_supplicant_8", "wifi_priv_cmd_update_mbo_cell_status"), {
true: ["-DENABLE_PRIV_CMD_UPDATE_MBO_CELL_STATUS"],
default: [],
}) + select(soong_config_variable("wpa_supplicant_8", "hostapd_11ax"), {
true: ["-DCONFIG_IEEE80211AX"],
default: [],
}) + select(soong_config_variable("wpa_supplicant_8", "wifi_brcm_open_source_multi_akm"), {
true: ["-DWIFI_BRCM_OPEN_SOURCE_MULTI_AKM"],
default: [],
}),
}
cc_defaults {
name: "wpa_supplicant_srcs_default",
srcs: [
"ap.c",
"bss.c",
"bssid_ignore.c",
"config.c",
"config_file.c",
"ctrl_iface.c",
"ctrl_iface_unix.c",
"dpp_supplicant.c",
"eap_register.c",
"events.c",
"gas_query.c",
"hs20_supplicant.c",
"interworking.c",
"main.c",
"mbo.c",
"notify.c",
"offchannel.c",
"op_classes.c",
"p2p_supplicant.c",
"p2p_supplicant_sd.c",
"pasn_supplicant.c",
"robust_av.c",
"rrm.c",
"scan.c",
"sme.c",
"twt.c",
"wifi_display.c",
"wmm_ac.c",
"wnm_sta.c",
"wpa_supplicant.c",
"wpas_glue.c",
"wps_supplicant.c",
"src/ap/acs.c",
"src/ap/ap_config.c",
"src/ap/ap_drv_ops.c",
"src/ap/ap_list.c",
"src/ap/ap_mlme.c",
"src/ap/authsrv.c",
"src/ap/beacon.c",
"src/ap/bss_load.c",
"src/ap/comeback_token.c",
"src/ap/ctrl_iface_ap.c",
"src/ap/dfs.c",
"src/ap/dpp_hostapd.c",
"src/ap/drv_callbacks.c",
"src/ap/eap_user_db.c",
"src/ap/fils_hlp.c",
"src/ap/gas_query_ap.c",
"src/ap/gas_serv.c",
"src/ap/hostapd.c",
"src/ap/hs20.c",
"src/ap/hw_features.c",
"src/ap/ieee802_11.c",
"src/ap/ieee802_11_auth.c",
"src/ap/ieee802_11_ht.c",
"src/ap/ieee802_11_shared.c",
"src/ap/ieee802_11_vht.c",
"src/ap/ieee802_1x.c",
"src/ap/mbo_ap.c",
"src/ap/neighbor_db.c",
"src/ap/p2p_hostapd.c",
"src/ap/pmksa_cache_auth.c",
"src/ap/rrm.c",
"src/ap/sta_info.c",
"src/ap/tkip_countermeasures.c",
"src/ap/utils.c",
"src/ap/wmm.c",
"src/ap/wpa_auth.c",
"src/ap/wpa_auth_glue.c",
"src/ap/wpa_auth_ie.c",
"src/ap/wps_hostapd.c",
"src/common/ctrl_iface_common.c",
"src/common/dpp.c",
"src/common/dpp_auth.c",
"src/common/dpp_backup.c",
"src/common/dpp_crypto.c",
"src/common/dpp_pkex.c",
"src/common/dpp_reconfig.c",
"src/common/dpp_tcp.c",
"src/common/dragonfly.c",
"src/common/gas.c",
"src/common/gas_server.c",
"src/common/hw_features_common.c",
"src/common/ieee802_11_common.c",
"src/common/ptksa_cache.c",
"src/common/sae.c",
"src/common/sae_pk.c",
"src/common/wpa_common.c",
"src/crypto/aes-ctr.c",
"src/crypto/aes-siv.c",
"src/crypto/crypto_openssl.c",
"src/crypto/dh_groups.c",
"src/crypto/fips_prf_openssl.c",
"src/crypto/ms_funcs.c",
"src/crypto/sha1-prf.c",
"src/crypto/sha1-tlsprf.c",
"src/crypto/sha256-kdf.c",
"src/crypto/sha256-prf.c",
"src/crypto/sha256-tlsprf.c",
"src/crypto/sha384-kdf.c",
"src/crypto/sha384-prf.c",
"src/crypto/sha512-kdf.c",
"src/crypto/sha512-prf.c",
"src/crypto/tls_openssl.c",
"src/crypto/tls_openssl_ocsp.c",
"src/drivers/driver_common.c",
"src/drivers/driver_nl80211.c",
"src/drivers/driver_nl80211_android.c",
"src/drivers/driver_nl80211_capa.c",
"src/drivers/driver_nl80211_event.c",
"src/drivers/driver_nl80211_monitor.c",
"src/drivers/driver_nl80211_scan.c",
"src/drivers/drivers.c",
"src/drivers/linux_ioctl.c",
"src/drivers/netlink.c",
"src/drivers/rfkill.c",
"src/eap_common/chap.c",
"src/eap_common/eap_common.c",
"src/eap_common/eap_peap_common.c",
"src/eap_common/eap_pwd_common.c",
"src/eap_common/eap_sim_common.c",
"src/eap_common/eap_wsc_common.c",
"src/eap_peer/eap.c",
"src/eap_peer/eap_aka.c",
"src/eap_peer/eap_gtc.c",
"src/eap_peer/eap_leap.c",
"src/eap_peer/eap_md5.c",
"src/eap_peer/eap_methods.c",
"src/eap_peer/eap_mschapv2.c",
"src/eap_peer/eap_otp.c",
"src/eap_peer/eap_peap.c",
"src/eap_peer/eap_pwd.c",
"src/eap_peer/eap_sim.c",
"src/eap_peer/eap_tls.c",
"src/eap_peer/eap_tls_common.c",
"src/eap_peer/eap_ttls.c",
"src/eap_peer/eap_wsc.c",
"src/eap_peer/mschapv2.c",
"src/eap_server/eap_server.c",
"src/eap_server/eap_server_identity.c",
"src/eap_server/eap_server_methods.c",
"src/eap_server/eap_server_wsc.c",
"src/eapol_auth/eapol_auth_sm.c",
"src/eapol_supp/eapol_supp_sm.c",
"src/l2_packet/l2_packet_linux.c",
"src/p2p/p2p.c",
"src/p2p/p2p_build.c",
"src/p2p/p2p_dev_disc.c",
"src/p2p/p2p_go_neg.c",
"src/p2p/p2p_group.c",
"src/p2p/p2p_invitation.c",
"src/p2p/p2p_parse.c",
"src/p2p/p2p_pd.c",
"src/p2p/p2p_sd.c",
"src/p2p/p2p_utils.c",
"src/pasn/pasn_common.c",
"src/pasn/pasn_initiator.c",
"src/pasn/pasn_responder.c",
"src/rsn_supp/pmksa_cache.c",
"src/rsn_supp/preauth.c",
"src/rsn_supp/tdls.c",
"src/rsn_supp/wpa.c",
"src/rsn_supp/wpa_ft.c",
"src/rsn_supp/wpa_ie.c",
"src/tls/asn1.c",
"src/utils/base64.c",
"src/utils/bitfield.c",
"src/utils/common.c",
"src/utils/config.c",
"src/utils/crc32.c",
"src/utils/eloop.c",
"src/utils/ip_addr.c",
"src/utils/json.c",
"src/utils/os_unix.c",
"src/utils/radiotap.c",
"src/utils/uuid.c",
"src/utils/wpa_debug.c",
"src/utils/wpabuf.c",
"src/wps/http_client.c",
"src/wps/http_server.c",
"src/wps/httpread.c",
"src/wps/ndef.c",
"src/wps/upnp_xml.c",
"src/wps/wps.c",
"src/wps/wps_attr_build.c",
"src/wps/wps_attr_parse.c",
"src/wps/wps_attr_process.c",
"src/wps/wps_common.c",
"src/wps/wps_dev_attr.c",
"src/wps/wps_enrollee.c",
"src/wps/wps_er.c",
"src/wps/wps_er_ssdp.c",
"src/wps/wps_registrar.c",
"src/wps/wps_upnp.c",
"src/wps/wps_upnp_ap.c",
"src/wps/wps_upnp_event.c",
"src/wps/wps_upnp_ssdp.c",
"src/wps/wps_upnp_web.c",
] + select(soong_config_variable("wpa_supplicant_8", "hostapd_11ax"), {
true: ["src/ap/ieee802_11_he.c"],
default: [],
}),
defaults: [
"wpa_supplicant_driver_srcs_default",
],
}
cc_binary {
name: "wpa_cli",
proprietary: true,
srcs: [
"wpa_cli.c",
"src/common/cli.c",
"src/common/wpa_ctrl.c",
"src/utils/common.c",
"src/utils/edit.c",
"src/utils/eloop.c",
"src/utils/os_unix.c",
"src/utils/wpa_debug.c",
],
shared_libs: [
"libcutils",
"liblog",
],
defaults: [
"wpa_supplicant_cflags_default",
"wpa_supplicant_includes_default",
],
}
soong_config_module_type {
name: "wpa_supplicant_cc_binary",
module_type: "cc_binary",
config_namespace: "wpa_supplicant_8",
value_variables: [
"board_wpa_supplicant_private_lib",
],
bool_variables: [
"wifi_hidl_unified_supplicant_service_rc_entry",
],
properties: [
"init_rc",
"static_libs",
],
}
wpa_supplicant_cc_binary {
name: "wpa_supplicant",
proprietary: true,
relative_install_path: "hw",
// vintf_fragments: wpa_supplicant only
// vintf_fragments: ["aidl/android.hardware.wifi.supplicant.xml"],
required: [
"android.hardware.wifi.supplicant.xml",
],
// wpa_supplicant only
static_libs: [
"libwpa_aidl",
],
shared_libs: [
// Share between wpa_supplicant and wpa_supplicant_macsec
"libc",
"libcrypto",
"libcutils",
"libkeystore-engine-wifi-hidl",
"liblog",
"libnl",
"libssl",
] + [
// wpa_supplicant only
"android.hardware.wifi.supplicant-V4-ndk",
"android.system.keystore2-V1-ndk",
"libbase",
"libbinder_ndk",
"libutils",
],
defaults: [
"wpa_supplicant_srcs_default",
"wpa_supplicant_cflags_default",
"wpa_supplicant_includes_default",
],
soong_config_variables: {
board_wpa_supplicant_private_lib: {
static_libs: ["%s"],
},
// init_rc: wpa_supplicant only
wifi_hidl_unified_supplicant_service_rc_entry: {
init_rc: ["aidl/vendor/android.hardware.wifi.supplicant-service.rc"],
},
},
}
wpa_supplicant_cc_binary {
name: "wpa_supplicant_macsec",
proprietary: true,
relative_install_path: "hw",
srcs: [
// wpa_supplicant_macsec only
":wpa_supplicant_macsec_extra_driver_srcs",
"wpas_kay.c",
"src/ap/wpa_auth_kay.c",
"src/pae/ieee802_1x_cp.c",
"src/pae/ieee802_1x_kay.c",
"src/pae/ieee802_1x_key.c",
"src/pae/ieee802_1x_secy_ops.c",
"src/pae/aidl/aidl_psk.cpp",
],
shared_libs: [
// Share between wpa_supplicant and wpa_supplicant_macsec
"libc",
"libcrypto",
"libcutils",
"libkeystore-engine-wifi-hidl",
"liblog",
"libnl",
"libssl",
] + [
// wpa_supplicant_macsec only
"android.hardware.macsec-V1-ndk",
"libbinder_ndk",
],
cflags: [
"-DCONFIG_AIDL_MACSEC_PSK_METHODS",
"-DCONFIG_DRIVER_MACSEC_LINUX",
"-DCONFIG_MACSEC",
],
local_include_dirs: [
// wpa_supplicant_macsec only
"aidl",
],
defaults: [
"wpa_supplicant_srcs_default",
"wpa_supplicant_includes_default",
"wpa_supplicant_no_aidl_cflags_default",
],
soong_config_variables: {
board_wpa_supplicant_private_lib: {
static_libs: ["%s"],
},
},
}
wpa_supplicant_cc_binary {
name: "wpa_supplicant_mainline",
shared_libs: [
"android.system.wifi.mainline_supplicant-ndk",
"libbase",
"libbinder_ndk",
"libc",
"libcrypto",
"libcutils_sockets",
"liblog",
"libnl",
"libssl",
],
static_libs: [
"mainline_supplicant_aidl_bp",
],
defaults: [
"wpa_supplicant_srcs_default",
"wpa_supplicant_includes_default",
"wpa_supplicant_mainline_cflags_default",
],
apex_available: [
"//apex_available:platform",
"com.android.wifi",
],
min_sdk_version: "30",
}
cc_library_shared {
name: "libwpa_client",
proprietary: true,
srcs: [
"src/common/wpa_ctrl.c",
"src/utils/os_unix.c",
],
shared_libs: [
"libc",
"libcutils",
"liblog",
],
defaults: [
"wpa_supplicant_cflags_default",
"wpa_supplicant_includes_default",
],
}
cc_fuzz {
name: "mainline_supplicant_service_fuzzer",
team: "trendy_team_fwk_wifi_hal",
srcs: [
"aidl/mainline/fuzzers/mainline_supplicant_service_fuzzer.cpp",
],
defaults: [
"fuzzer_disable_leaks",
"service_fuzzer_defaults",
"wpa_supplicant_includes_default",
"wpa_supplicant_mainline_cflags_default",
"wpa_supplicant_srcs_default",
],
shared_libs: [
"android.system.wifi.mainline_supplicant-ndk",
"libbase",
"libbinder_ndk",
"libc",
"libcrypto",
"libcutils_sockets",
"liblog",
"libnl",
"libssl",
],
static_libs: [
"mainline_supplicant_aidl_bp",
],
cflags: [
"-DSUPPLICANT_SERVICE_FUZZER",
],
fuzz_config: {
triage_assignee: "android-wifi-team@google.com",
},
proto: {
type: "lite",
static: true,
},
}
//## Aidl service library ###
//#######################
cc_library_static {
name: "libwpa_aidl",
vendor: true,
cppflags: [
"-Wall",
"-Werror",
"-Wno-unused-parameter",
"-Wno-unused-private-field",
"-Wno-unused-variable",
],
srcs: [
"aidl/vendor/aidl.cpp",
"aidl/vendor/aidl_manager.cpp",
"aidl/vendor/certificate_utils.cpp",
"aidl/vendor/iface_config_utils.cpp",
"aidl/vendor/p2p_iface.cpp",
"aidl/vendor/p2p_network.cpp",
"aidl/vendor/sta_iface.cpp",
"aidl/vendor/sta_network.cpp",
"aidl/vendor/supplicant.cpp",
],
shared_libs: [
"android.hardware.wifi.supplicant-V4-ndk",
"android.system.keystore2-V1-ndk",
"libbinder_ndk",
"libbase",
"libutils",
"liblog",
"libssl",
],
export_include_dirs: ["aidl"],
defaults: [
"wpa_supplicant_cflags_default",
"wpa_supplicant_includes_default",
],
}