Colin Cross | 1a8e797 | 2017-12-05 22:35:52 -0800 | [diff] [blame] | 1 | // AIDL interface between netd and services.core |
Lorenzo Colitti | 57bca9f | 2018-12-11 13:02:05 +0900 | [diff] [blame] | 2 | aidl_interface { |
| 3 | name: "netd_event_listener_interface", |
| 4 | local_include_dir: "binder", |
| 5 | srcs: [ |
Remi NGUYEN VAN | 6b91b49 | 2019-04-09 13:57:03 +0900 | [diff] [blame] | 6 | "binder/android/net/metrics/INetdEventListener.aidl", |
Lorenzo Colitti | 57bca9f | 2018-12-11 13:02:05 +0900 | [diff] [blame] | 7 | ], |
Lorenzo Colitti | 866a03a | 2019-05-22 15:46:05 +0900 | [diff] [blame] | 8 | versions: ["1"], |
Colin Cross | 1a8e797 | 2017-12-05 22:35:52 -0800 | [diff] [blame] | 9 | } |
Steven Moreland | 0b7e380 | 2018-03-02 12:41:52 -0800 | [diff] [blame] | 10 | |
Bernie Innocenti | 37ceb53 | 2018-06-11 21:10:44 +0900 | [diff] [blame] | 11 | // These are used in netd_integration_test |
| 12 | // TODO: fold these into a cc_library_static after converting netd/server to Android.bp |
| 13 | filegroup { |
| 14 | name: "netd_integration_test_shared", |
| 15 | srcs: [ |
| 16 | "NetdConstants.cpp", |
| 17 | "InterfaceController.cpp", |
| 18 | "NetlinkCommands.cpp", |
Chenbo Feng | 4958664 | 2018-08-30 18:01:53 -0700 | [diff] [blame] | 19 | "NetlinkListener.cpp", |
Bernie Innocenti | 37ceb53 | 2018-06-11 21:10:44 +0900 | [diff] [blame] | 20 | "XfrmController.cpp", |
Chenbo Feng | 4958664 | 2018-08-30 18:01:53 -0700 | [diff] [blame] | 21 | "TrafficController.cpp", |
Bernie Innocenti | 37ceb53 | 2018-06-11 21:10:44 +0900 | [diff] [blame] | 22 | ], |
| 23 | } |
| 24 | |
Luke Huang | caebcbb | 2018-09-27 20:37:14 +0800 | [diff] [blame] | 25 | aidl_interface { |
| 26 | name: "netd_aidl_interface", |
| 27 | local_include_dir: "binder", |
| 28 | srcs: [ |
Luke Huang | 03074eb | 2018-11-23 17:03:03 +0800 | [diff] [blame] | 29 | "binder/android/net/INetd.aidl", |
Luke Huang | 528af60 | 2018-08-29 19:06:05 +0800 | [diff] [blame] | 30 | // AIDL interface that callers can implement to receive networking events from netd. |
| 31 | "binder/android/net/INetdUnsolicitedEventListener.aidl", |
Luke Huang | 03074eb | 2018-11-23 17:03:03 +0800 | [diff] [blame] | 32 | "binder/android/net/InterfaceConfigurationParcel.aidl", |
Chiachang Wang | 00fc62f | 2019-12-04 20:38:26 +0800 | [diff] [blame] | 33 | "binder/android/net/MarkMaskParcel.aidl", |
Tyler Wear | fa94a27 | 2019-12-05 15:01:48 -0800 | [diff] [blame] | 34 | "binder/android/net/RouteInfoParcel.aidl", |
Chiachang Wang | 08cb211 | 2019-12-10 09:53:24 +0800 | [diff] [blame] | 35 | "binder/android/net/TetherConfigParcel.aidl", |
Lorenzo Colitti | f0e051c | 2020-04-06 09:19:57 +0000 | [diff] [blame] | 36 | "binder/android/net/TetherOffloadRuleParcel.aidl", |
Luke Huang | caebcbb | 2018-09-27 20:37:14 +0800 | [diff] [blame] | 37 | "binder/android/net/TetherStatsParcel.aidl", |
Luke Huang | 94658ac | 2018-10-18 19:35:12 +0900 | [diff] [blame] | 38 | "binder/android/net/UidRangeParcel.aidl", |
Luke Huang | caebcbb | 2018-09-27 20:37:14 +0800 | [diff] [blame] | 39 | ], |
Luke Huang | f778204 | 2018-08-08 13:13:04 +0800 | [diff] [blame] | 40 | backend: { |
Xiao Ma | 33d562a | 2018-12-16 16:27:38 +0900 | [diff] [blame] | 41 | cpp: { |
| 42 | gen_log: true, |
| 43 | }, |
Luke Huang | 6764931 | 2020-04-01 01:17:42 +0800 | [diff] [blame] | 44 | java: { |
| 45 | apex_available: [ |
| 46 | "com.android.bluetooth.updatable", |
| 47 | "com.android.wifi", |
| 48 | ], |
| 49 | }, |
Luke Huang | f778204 | 2018-08-08 13:13:04 +0800 | [diff] [blame] | 50 | }, |
Luke Huang | 0068128 | 2019-04-26 12:09:05 +0800 | [diff] [blame] | 51 | versions: [ |
| 52 | "1", |
| 53 | "2", |
Luke Huang | 29e5fdf | 2020-04-07 16:15:23 +0000 | [diff] [blame^] | 54 | "3", |
Luke Huang | 0068128 | 2019-04-26 12:09:05 +0800 | [diff] [blame] | 55 | ], |
Luke Huang | caebcbb | 2018-09-27 20:37:14 +0800 | [diff] [blame] | 56 | } |
| 57 | |
Luke Huang | 0e5e69d | 2019-03-06 15:42:38 +0800 | [diff] [blame] | 58 | aidl_interface { |
Luke Huang | 2ff8b34 | 2019-04-30 15:33:33 +0800 | [diff] [blame] | 59 | // This interface is for OEM calls to netd and vice versa that do not exist in AOSP. |
| 60 | // Those calls cannot be part of INetd.aidl and INetdUnsolicitedEventListener.aidl |
| 61 | // because those interfaces are versioned. |
| 62 | // These interfaces must never be versioned or OEMs will not be able to change them. |
Luke Huang | 0e5e69d | 2019-03-06 15:42:38 +0800 | [diff] [blame] | 63 | name: "oemnetd_aidl_interface", |
| 64 | local_include_dir: "binder", |
| 65 | srcs: [ |
| 66 | "binder/com/android/internal/net/IOemNetd.aidl", |
Luke Huang | 2ff8b34 | 2019-04-30 15:33:33 +0800 | [diff] [blame] | 67 | "binder/com/android/internal/net/IOemNetdUnsolicitedEventListener.aidl", |
Luke Huang | 0e5e69d | 2019-03-06 15:42:38 +0800 | [diff] [blame] | 68 | ], |
| 69 | } |
| 70 | |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 71 | // Modules common to both netd and netd_unit_test |
| 72 | cc_library_static { |
| 73 | name: "libnetd_server", |
| 74 | defaults: ["netd_defaults"], |
| 75 | include_dirs: [ |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 76 | "system/netd/include", |
| 77 | "system/netd/server/binder", |
| 78 | ], |
| 79 | srcs: [ |
| 80 | "BandwidthController.cpp", |
Lorenzo Colitti | 7ef8c0f | 2019-01-11 22:34:58 +0900 | [diff] [blame] | 81 | "ClatdController.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 82 | "Controllers.cpp", |
| 83 | "NetdConstants.cpp", |
| 84 | "FirewallController.cpp", |
| 85 | "IdletimerController.cpp", |
| 86 | "InterfaceController.cpp", |
| 87 | "IptablesRestoreController.cpp", |
| 88 | "NFLogListener.cpp", |
| 89 | "NetlinkCommands.cpp", |
| 90 | "NetlinkListener.cpp", |
| 91 | "NetlinkManager.cpp", |
Maciej Żenczykowski | eec7208 | 2020-02-04 23:29:41 -0800 | [diff] [blame] | 92 | "OffloadUtils.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 93 | "RouteController.cpp", |
| 94 | "SockDiag.cpp", |
| 95 | "StrictController.cpp", |
| 96 | "TcpSocketMonitor.cpp", |
| 97 | "TetherController.cpp", |
| 98 | "TrafficController.cpp", |
| 99 | "UidRanges.cpp", |
| 100 | "WakeupController.cpp", |
| 101 | "XfrmController.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 102 | ], |
| 103 | shared_libs: [ |
Chenbo Feng | a54aaf5 | 2018-11-07 17:51:51 -0800 | [diff] [blame] | 104 | "libbpf_android", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 105 | "libbase", |
| 106 | "libbinder", |
Chenbo Feng | d6104d1 | 2018-10-16 20:29:29 -0700 | [diff] [blame] | 107 | "libnetdbpf", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 108 | "libnetutils", |
| 109 | "libnetdutils", |
| 110 | "libpcap", |
| 111 | "libqtaguid", |
| 112 | "libssl", |
Lorenzo Colitti | f0e051c | 2020-04-06 09:19:57 +0000 | [diff] [blame] | 113 | "netd_aidl_interface-unstable-cpp", |
Jeongik Cha | b54ecec | 2019-10-15 17:06:59 +0900 | [diff] [blame] | 114 | "netd_event_listener_interface-cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 115 | ], |
| 116 | aidl: { |
| 117 | export_aidl_headers: true, |
| 118 | local_include_dirs: ["binder"], |
| 119 | }, |
| 120 | } |
| 121 | |
| 122 | cc_binary { |
| 123 | name: "netd", |
| 124 | defaults: ["netd_defaults"], |
| 125 | include_dirs: [ |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 126 | "external/mdnsresponder/mDNSShared", |
| 127 | "system/netd/include", |
| 128 | ], |
| 129 | init_rc: ["netd.rc"], |
Maciej Żenczykowski | f428d6e | 2020-02-19 10:26:35 -0800 | [diff] [blame] | 130 | required: [ |
| 131 | "bpfloader", |
| 132 | "clatd.o", |
| 133 | "netd.o", |
| 134 | "offload.o", |
| 135 | ], |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 136 | shared_libs: [ |
| 137 | "android.system.net.netd@1.0", |
| 138 | "android.system.net.netd@1.1", |
Bernie Innocenti | f89b351 | 2018-08-30 07:34:37 +0900 | [diff] [blame] | 139 | "libbase", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 140 | "libbinder", |
Chenbo Feng | a54aaf5 | 2018-11-07 17:51:51 -0800 | [diff] [blame] | 141 | "libbpf_android", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 142 | "libcutils", |
| 143 | "libdl", |
| 144 | "libhidlbase", |
Jeongik Cha | 0f750c2 | 2019-02-22 18:43:44 +0900 | [diff] [blame] | 145 | "libjsoncpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 146 | "liblog", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 147 | "libmdnssd", |
Jooyung Han | 3e64aa1 | 2019-11-27 15:36:29 +0900 | [diff] [blame] | 148 | "libnetd_resolv", |
Chenbo Feng | d6104d1 | 2018-10-16 20:29:29 -0700 | [diff] [blame] | 149 | "libnetdbpf", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 150 | "libnetdutils", |
Bernie Innocenti | f89b351 | 2018-08-30 07:34:37 +0900 | [diff] [blame] | 151 | "libnetutils", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 152 | "libpcap", |
Suren Baghdasaryan | e072a3c | 2019-01-16 14:36:07 -0800 | [diff] [blame] | 153 | "libprocessgroup", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 154 | "libqtaguid", |
| 155 | "libselinux", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 156 | "libsysutils", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 157 | "libutils", |
Luke Huang | 29e5fdf | 2020-04-07 16:15:23 +0000 | [diff] [blame^] | 158 | "netd_aidl_interface-cpp", |
Jeongik Cha | b54ecec | 2019-10-15 17:06:59 +0900 | [diff] [blame] | 159 | "netd_event_listener_interface-cpp", |
Luke Huang | 0e5e69d | 2019-03-06 15:42:38 +0800 | [diff] [blame] | 160 | "oemnetd_aidl_interface-cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 161 | ], |
| 162 | static_libs: [ |
| 163 | "libnetd_server", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 164 | ], |
| 165 | srcs: [ |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 166 | "DummyNetwork.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 167 | "EventReporter.cpp", |
| 168 | "FwmarkServer.cpp", |
| 169 | "LocalNetwork.cpp", |
| 170 | "MDnsSdListener.cpp", |
| 171 | "NetdCommand.cpp", |
| 172 | "NetdHwService.cpp", |
| 173 | "NetdNativeService.cpp", |
| 174 | "NetlinkHandler.cpp", |
| 175 | "Network.cpp", |
| 176 | "NetworkController.cpp", |
Luke Huang | 0e5e69d | 2019-03-06 15:42:38 +0800 | [diff] [blame] | 177 | "OemNetdListener.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 178 | "PhysicalNetwork.cpp", |
| 179 | "PppController.cpp", |
| 180 | "Process.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 181 | "VirtualNetwork.cpp", |
| 182 | "main.cpp", |
| 183 | "oem_iptables_hook.cpp", |
| 184 | ], |
Ken Chen | 2e413c3 | 2020-01-13 11:59:53 +0800 | [diff] [blame] | 185 | sanitize: { |
| 186 | cfi: true, |
Ken Chen | 2e413c3 | 2020-01-13 11:59:53 +0800 | [diff] [blame] | 187 | }, |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 188 | } |
| 189 | |
| 190 | cc_binary { |
| 191 | name: "ndc", |
| 192 | defaults: ["netd_defaults"], |
Luke Huang | cfd04b2 | 2019-03-18 15:53:21 +0800 | [diff] [blame] | 193 | include_dirs: [ |
| 194 | "system/netd/include", |
| 195 | ], |
| 196 | header_libs: [ |
| 197 | "libnetd_client_headers", |
| 198 | ], |
| 199 | shared_libs: [ |
| 200 | "libbase", |
| 201 | "libnetdutils", |
| 202 | "libnetutils", |
| 203 | "libcutils", |
| 204 | "liblog", |
| 205 | "libutils", |
| 206 | "libbinder", |
Jeongik Cha | b54ecec | 2019-10-15 17:06:59 +0900 | [diff] [blame] | 207 | "dnsresolver_aidl_interface-cpp", |
| 208 | "netd_aidl_interface-cpp", |
Luke Huang | cfd04b2 | 2019-03-18 15:53:21 +0800 | [diff] [blame] | 209 | ], |
| 210 | srcs: [ |
| 211 | "ndc.cpp", |
| 212 | "UidRanges.cpp", |
| 213 | "NdcDispatcher.cpp", |
| 214 | ], |
Ken Chen | 2e413c3 | 2020-01-13 11:59:53 +0800 | [diff] [blame] | 215 | sanitize: { |
| 216 | cfi: true, |
Ken Chen | 2e413c3 | 2020-01-13 11:59:53 +0800 | [diff] [blame] | 217 | }, |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 218 | } |
| 219 | |
| 220 | cc_test { |
| 221 | name: "netd_unit_test", |
| 222 | defaults: ["netd_defaults"], |
| 223 | test_suites: ["device-tests"], |
Bernie Innocenti | 83a67ca | 2019-06-19 16:28:05 +0900 | [diff] [blame] | 224 | require_root: true, |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 225 | include_dirs: [ |
| 226 | "system/netd/include", |
| 227 | "system/netd/server/binder", |
| 228 | "system/netd/tests", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 229 | ], |
| 230 | srcs: [ |
| 231 | "BandwidthControllerTest.cpp", |
Lorenzo Colitti | 7ef8c0f | 2019-01-11 22:34:58 +0900 | [diff] [blame] | 232 | "ClatdControllerTest.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 233 | "ControllersTest.cpp", |
| 234 | "FirewallControllerTest.cpp", |
| 235 | "IdletimerControllerTest.cpp", |
| 236 | "InterfaceControllerTest.cpp", |
| 237 | "IptablesBaseTest.cpp", |
| 238 | "IptablesRestoreControllerTest.cpp", |
| 239 | "NFLogListenerTest.cpp", |
Maciej Żenczykowski | eec7208 | 2020-02-04 23:29:41 -0800 | [diff] [blame] | 240 | "OffloadUtilsTest.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 241 | "RouteControllerTest.cpp", |
| 242 | "SockDiagTest.cpp", |
| 243 | "StrictControllerTest.cpp", |
| 244 | "TetherControllerTest.cpp", |
| 245 | "TrafficControllerTest.cpp", |
| 246 | "XfrmControllerTest.cpp", |
| 247 | "WakeupControllerTest.cpp", |
| 248 | ], |
| 249 | static_libs: [ |
| 250 | "libgmock", |
| 251 | "libnetd_server", |
| 252 | "libnetd_test_tun_interface", |
Lorenzo Colitti | 3f52fae | 2019-06-27 18:46:22 +0900 | [diff] [blame] | 253 | "libqtaguid", |
Lorenzo Colitti | f0e051c | 2020-04-06 09:19:57 +0000 | [diff] [blame] | 254 | "netd_aidl_interface-unstable-cpp", |
Jeongik Cha | b54ecec | 2019-10-15 17:06:59 +0900 | [diff] [blame] | 255 | "netd_event_listener_interface-cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 256 | ], |
| 257 | shared_libs: [ |
| 258 | "libbase", |
| 259 | "libbinder", |
Chenbo Feng | a54aaf5 | 2018-11-07 17:51:51 -0800 | [diff] [blame] | 260 | "libbpf_android", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 261 | "libcrypto", |
| 262 | "libcutils", |
| 263 | "liblog", |
Chenbo Feng | d6104d1 | 2018-10-16 20:29:29 -0700 | [diff] [blame] | 264 | "libnetdbpf", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 265 | "libnetdutils", |
| 266 | "libnetutils", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 267 | "libsysutils", |
| 268 | "libutils", |
| 269 | ], |
| 270 | } |