blob: 28eea48744a9a8f409ff9eda938bf9942124efd3 [file] [log] [blame]
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +09001//
2// Copyright (C) 2018 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
17// AIDL interfaces between the core system and the networking mainline module.
18aidl_interface {
19 name: "ipmemorystore-aidl-interfaces",
20 local_include_dir: "src",
21 srcs: [
22 "src/android/net/IIpMemoryStore.aidl",
23 "src/android/net/IIpMemoryStoreCallbacks.aidl",
24 "src/android/net/ipmemorystore/**/*.aidl",
Xiao Ma75bba8c2020-10-23 11:36:10 +090025 // New AIDL classes should go into android.net.networkstack.aidl so they can be clearly
26 // identified
27 "src/android/net/networkstack/aidl/quirks/IPv6ProvisioningLossQuirkParcelable.aidl",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090028 ],
29 backend: {
Xiao Ma2eb7b002019-12-26 14:10:59 +090030 java: {
Jiyong Parke1140ae2020-04-10 18:48:33 +090031 apex_available: [
32 "//apex_available:platform",
33 "com.android.wifi",
Remi NGUYEN VANb8fcdb92020-06-15 05:01:07 +000034 "com.android.bluetooth.updatable",
Jeongik Cha0f377a02020-08-11 13:09:37 +090035 "com.android.tethering",
Jiyong Parke1140ae2020-04-10 18:48:33 +090036 ],
Jooyung Han2848d0a2020-06-16 01:50:53 +090037 // this is part of updatable modules(NetworkStack) which targets 29(Q)
38 min_sdk_version: "29",
Xiao Ma2eb7b002019-12-26 14:10:59 +090039 },
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090040 ndk: {
41 enabled: false,
42 },
43 cpp: {
44 enabled: false,
45 },
46 },
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090047 versions: [
48 "1",
49 "2",
50 "3",
Remi NGUYEN VAN4c295232019-11-12 11:10:57 +090051 "4",
Xiao Ma2eb7b002019-12-26 14:10:59 +090052 "5",
Chalard Jeanb2896832020-05-13 19:16:49 +090053 "6",
Chalard Jean01c32e42020-05-14 02:47:09 +090054 "7",
Remi NGUYEN VAN2cefa2f2020-08-25 09:23:09 +090055 "8",
Xiao Ma394d0c72020-10-23 12:00:51 +090056 "9",
Lorenzo Colitti9426dbe2020-11-18 17:25:50 +090057 "10",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090058 ],
Remi NGUYEN VAN40525472020-01-07 09:55:38 +090059 visibility: [
Lorenzo Colitti9e004b32020-05-01 12:20:12 +090060 "//system/tools/aidl/build",
Remi NGUYEN VAN40525472020-01-07 09:55:38 +090061 ],
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090062}
63
64aidl_interface {
65 name: "networkstack-aidl-interfaces",
66 local_include_dir: "src",
Cody Kesting33f2e3b2020-01-05 15:23:15 -080067 include_dirs: [
Remi NGUYEN VAN0d6ce632021-01-15 18:49:39 +090068 // For framework parcelables.
69 "frameworks/base/core/java",
70 // For API parcelables in connectivity
71 "frameworks/base/packages/Connectivity/framework/src",
Jeongik Cha633b2b72020-04-07 13:33:02 +090072 "frameworks/native/aidl/binder", // For PersistableBundle.aidl
Cody Kesting33f2e3b2020-01-05 15:23:15 -080073 ],
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090074 srcs: [
Remi NGUYEN VAN0402afc2020-04-15 18:56:59 +090075 "src/android/net/DataStallReportParcelable.aidl",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090076 "src/android/net/DhcpResultsParcelable.aidl",
77 "src/android/net/INetworkMonitor.aidl",
78 "src/android/net/INetworkMonitorCallbacks.aidl",
79 "src/android/net/INetworkStackConnector.aidl",
80 "src/android/net/INetworkStackStatusCallback.aidl",
81 "src/android/net/InitialConfigurationParcelable.aidl",
Xiao Mac3a28322020-01-30 17:00:05 +090082 "src/android/net/InformationElementParcelable.aidl",
Xiao Maa7206162020-03-26 12:43:21 +090083 "src/android/net/Layer2InformationParcelable.aidl",
Xiao Ma4a8d1d42019-07-19 10:39:06 +090084 "src/android/net/Layer2PacketParcelable.aidl",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090085 "src/android/net/NattKeepalivePacketDataParcelable.aidl",
Remi NGUYEN VAN0402afc2020-04-15 18:56:59 +090086 "src/android/net/NetworkTestResultParcelable.aidl",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090087 "src/android/net/PrivateDnsConfigParcel.aidl",
88 "src/android/net/ProvisioningConfigurationParcelable.aidl",
Xiao Mac3a28322020-01-30 17:00:05 +090089 "src/android/net/ScanResultInfoParcelable.aidl",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090090 "src/android/net/TcpKeepalivePacketDataParcelable.aidl",
Lorenzo Colittib4af8532020-02-18 00:47:21 +090091 "src/android/net/dhcp/DhcpLeaseParcelable.aidl",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090092 "src/android/net/dhcp/DhcpServingParamsParcel.aidl",
Xiao Ma7d003872020-04-03 17:09:42 +090093 "src/android/net/dhcp/IDhcpEventCallbacks.aidl",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +090094 "src/android/net/dhcp/IDhcpServer.aidl",
95 "src/android/net/dhcp/IDhcpServerCallbacks.aidl",
96 "src/android/net/ip/IIpClient.aidl",
97 "src/android/net/ip/IIpClientCallbacks.aidl",
Remi NGUYEN VAN9e6aeea2020-07-06 09:29:06 +090098 // New AIDL classes should go into android.net.networkstack.aidl so they can be clearly
99 // identified
Xiao Mae31734e2020-12-10 21:09:26 +0900100 "src/android/net/networkstack/aidl/dhcp/DhcpOption.aidl",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +0900101 ],
102 backend: {
Jeongik Cha49d13922020-05-04 16:14:50 +0900103 java: {
104 apex_available: [
105 "//apex_available:platform",
106 "com.android.bluetooth.updatable",
107 "com.android.wifi",
Remi NGUYEN VANb8fcdb92020-06-15 05:01:07 +0000108 "com.android.tethering",
Jeongik Cha49d13922020-05-04 16:14:50 +0900109 ],
Jooyung Han2848d0a2020-06-16 01:50:53 +0900110 // this is part of updatable modules(NetworkStack) which targets 29(Q)
111 min_sdk_version: "29",
Jeongik Cha49d13922020-05-04 16:14:50 +0900112 },
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +0900113 ndk: {
114 enabled: false,
115 },
116 cpp: {
117 enabled: false,
118 },
119 },
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +0900120 imports: ["ipmemorystore-aidl-interfaces"],
121 versions: [
122 "1",
123 "2",
124 "3",
Remi NGUYEN VAN4c295232019-11-12 11:10:57 +0900125 "4",
Xiao Ma2eb7b002019-12-26 14:10:59 +0900126 "5",
Lorenzo Colitti9e004b32020-05-01 12:20:12 +0900127 "6",
Chalard Jeanb2896832020-05-13 19:16:49 +0900128 "7",
Remi NGUYEN VAN2cefa2f2020-08-25 09:23:09 +0900129 "8",
Lorenzo Colitti9426dbe2020-11-18 17:25:50 +0900130 "9",
Xiao Ma9b3cb222020-12-22 04:41:51 +0000131 "10",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +0900132 ],
Remi NGUYEN VAN40525472020-01-07 09:55:38 +0900133 // TODO: have tethering depend on networkstack-client and set visibility to private
134 visibility: [
135 "//system/tools/aidl/build",
Lorenzo Colitti9e004b32020-05-01 12:20:12 +0900136 "//frameworks/base/packages/Tethering",
Baligh Uddin1151e2e2020-10-29 02:12:29 +0000137 "//packages/modules/Connectivity/Tethering",
Remi NGUYEN VAN40525472020-01-07 09:55:38 +0900138 ],
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +0900139}
140
141java_library {
142 name: "networkstack-client",
143 sdk_version: "system_current",
Jooyung Han2848d0a2020-06-16 01:50:53 +0900144 // this is part of updatable modules(NetworkStack) which targets 29(Q)
145 min_sdk_version: "29",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +0900146 srcs: [
147 ":framework-annotations",
148 "src/android/net/IpMemoryStoreClient.java",
149 "src/android/net/ipmemorystore/**/*.java",
Remi NGUYEN VAN40525472020-01-07 09:55:38 +0900150 "src/android/net/networkstack/**/*.java",
Xiao Ma75bba8c2020-10-23 11:36:10 +0900151 "src/android/net/networkstack/aidl/quirks/**/*.java",
Remi NGUYEN VANc2ec05d2020-04-06 16:22:56 +0900152 "src/android/net/shared/**/*.java",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +0900153 ],
154 static_libs: [
Jeongik Cha44c15f12021-01-26 22:35:03 +0900155 "ipmemorystore-aidl-interfaces-V10-java",
156 "networkstack-aidl-interfaces-V10-java",
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +0900157 ],
Remi NGUYEN VAN40525472020-01-07 09:55:38 +0900158 visibility: [
159 "//frameworks/base/packages/Tethering",
Baligh Uddin1151e2e2020-10-29 02:12:29 +0000160 "//packages/modules/Connectivity/Tethering",
Remi NGUYEN VAN40525472020-01-07 09:55:38 +0900161 "//frameworks/base/services/net",
162 "//frameworks/opt/net/wifi/service",
163 "//packages/modules/NetworkStack",
Lorenzo Colitti9e004b32020-05-01 12:20:12 +0900164 ],
Remi NGUYEN VANbbb97032019-08-08 15:53:54 +0900165}