Carriers in Mainland China need to customize certain captive portal
urls. The main issue is that google servers are not accessible in
Mainland China.
Added the following captive portal resources to be targeted for overlay.
- config_captive_portal_http_url
- config_captive_portal_https_url
- config_captive_portal_fallback_urls (string-array)
- config_captive_portal_fallback_probe_specs (string-array)
These values can be customized for e g diffent countries
Bug: 111819230
Test: atest FrameworksNetTests NetworkStackTests
Test: Add a product RRO that targets a specific country code,
insert a SIM card that matches that country code and check the log
what URL is used.
Merged-In: I54050b28bbfb93e0b7e509dbe0e987a0b902b7d9
Merged-In: I1f734c5f864bb2f2bc8ba1a66fe33d3480554f69
(cherry picked from commit 2977a40b1e)
Change-Id: I278f2888851d38edb59157f8623541fbe94549b6
107 lines
2.8 KiB
Plaintext
107 lines
2.8 KiB
Plaintext
//
|
|
// Copyright (C) 2018 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.
|
|
//
|
|
|
|
java_library {
|
|
name: "captiveportal-lib",
|
|
srcs: ["common/**/*.java"],
|
|
libs: [
|
|
"androidx.annotation_annotation",
|
|
],
|
|
sdk_version: "system_current",
|
|
}
|
|
|
|
java_defaults {
|
|
name: "NetworkStackCommon",
|
|
sdk_version: "system_current",
|
|
min_sdk_version: "28",
|
|
}
|
|
|
|
// Library including the network stack, used to compile both variants of the network stack
|
|
android_library {
|
|
name: "NetworkStackBase",
|
|
defaults: ["NetworkStackCommon"],
|
|
srcs: [
|
|
"src/**/*.java",
|
|
":framework-networkstack-shared-srcs",
|
|
":services-networkstack-shared-srcs",
|
|
],
|
|
static_libs: [
|
|
"androidx.annotation_annotation",
|
|
"ipmemorystore-client",
|
|
"netd_aidl_interface-java",
|
|
"networkstack-aidl-interfaces-java",
|
|
"datastallprotosnano",
|
|
"networkstackprotosnano",
|
|
"captiveportal-lib",
|
|
],
|
|
manifest: "AndroidManifestBase.xml",
|
|
}
|
|
|
|
cc_library_shared {
|
|
name: "libnetworkstackutilsjni",
|
|
srcs: [
|
|
"jni/network_stack_utils_jni.cpp"
|
|
],
|
|
|
|
shared_libs: [
|
|
"liblog",
|
|
"libcutils",
|
|
"libnativehelper",
|
|
],
|
|
static_libs: [
|
|
"libpcap",
|
|
],
|
|
cflags: [
|
|
"-Wall",
|
|
"-Werror",
|
|
"-Wno-unused-parameter",
|
|
],
|
|
}
|
|
|
|
java_defaults {
|
|
name: "NetworkStackAppCommon",
|
|
defaults: ["NetworkStackCommon"],
|
|
privileged: true,
|
|
static_libs: [
|
|
"NetworkStackBase",
|
|
],
|
|
jni_libs: ["libnetworkstackutilsjni"],
|
|
// Resources already included in NetworkStackBase
|
|
resource_dirs: [],
|
|
jarjar_rules: "jarjar-rules-shared.txt",
|
|
optimize: {
|
|
proguard_flags_files: ["proguard.flags"],
|
|
},
|
|
// The permission configuration *must* be included to ensure security of the device
|
|
required: ["NetworkPermissionConfig"],
|
|
}
|
|
|
|
// Non-updatable network stack running in the system server process for devices not using the module
|
|
android_app {
|
|
name: "InProcessNetworkStack",
|
|
defaults: ["NetworkStackAppCommon"],
|
|
certificate: "platform",
|
|
manifest: "AndroidManifest_InProcess.xml",
|
|
}
|
|
|
|
// Updatable network stack packaged as an application
|
|
android_app {
|
|
name: "NetworkStack",
|
|
defaults: ["NetworkStackAppCommon"],
|
|
certificate: "networkstack",
|
|
manifest: "AndroidManifest.xml",
|
|
}
|