Bob Badour | 4114d1a | 2021-02-12 15:38:42 -0800 | [diff] [blame] | 1 | package { |
Aditya Choudhary | f7e2afb | 2024-01-30 13:47:16 +0000 | [diff] [blame] | 2 | default_team: "trendy_team_fwk_core_networking", |
Bob Badour | 4114d1a | 2021-02-12 15:38:42 -0800 | [diff] [blame] | 3 | // See: http://go/android-license-faq |
| 4 | // A large-scale-change added 'default_applicable_licenses' to import |
| 5 | // all of the 'license_kinds' from "system_netd_license" |
| 6 | // to get the below license kinds: |
| 7 | // SPDX-license-identifier-Apache-2.0 |
| 8 | default_applicable_licenses: ["system_netd_license"], |
| 9 | } |
| 10 | |
Lorenzo Colitti | c3bc584 | 2020-04-28 16:52:21 +0900 | [diff] [blame] | 11 | aidl_interface { |
Luke Huang | 2ff8b34 | 2019-04-30 15:33:33 +0800 | [diff] [blame] | 12 | // This interface is for OEM calls to netd and vice versa that do not exist in AOSP. |
| 13 | // Those calls cannot be part of INetd.aidl and INetdUnsolicitedEventListener.aidl |
| 14 | // because those interfaces are versioned. |
| 15 | // 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] | 16 | name: "oemnetd_aidl_interface", |
Jiyong Park | cfdd338 | 2020-04-13 15:09:35 +0900 | [diff] [blame] | 17 | unstable: true, |
Luke Huang | 0e5e69d | 2019-03-06 15:42:38 +0800 | [diff] [blame] | 18 | local_include_dir: "binder", |
| 19 | srcs: [ |
| 20 | "binder/com/android/internal/net/IOemNetd.aidl", |
Luke Huang | 2ff8b34 | 2019-04-30 15:33:33 +0800 | [diff] [blame] | 21 | "binder/com/android/internal/net/IOemNetdUnsolicitedEventListener.aidl", |
Luke Huang | 0e5e69d | 2019-03-06 15:42:38 +0800 | [diff] [blame] | 22 | ], |
| 23 | } |
| 24 | |
Lorenzo Colitti | c3bc584 | 2020-04-28 16:52:21 +0900 | [diff] [blame] | 25 | // These are used in netd_integration_test |
| 26 | // TODO: fold these into a cc_library_static after converting netd/server to Android.bp |
| 27 | filegroup { |
| 28 | name: "netd_integration_test_shared", |
| 29 | srcs: [ |
| 30 | "NetdConstants.cpp", |
| 31 | "InterfaceController.cpp", |
| 32 | "NetlinkCommands.cpp", |
Lorenzo Colitti | c3bc584 | 2020-04-28 16:52:21 +0900 | [diff] [blame] | 33 | "SockDiag.cpp", |
| 34 | "XfrmController.cpp", |
Lorenzo Colitti | c3bc584 | 2020-04-28 16:52:21 +0900 | [diff] [blame] | 35 | ], |
| 36 | } |
| 37 | |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 38 | // Modules common to both netd and netd_unit_test |
| 39 | cc_library_static { |
| 40 | name: "libnetd_server", |
Ken Chen | b2d8888 | 2022-04-20 15:10:31 +0800 | [diff] [blame] | 41 | defaults: [ |
| 42 | "netd_aidl_interface_lateststable_cpp_shared", |
| 43 | "netd_defaults", |
| 44 | ], |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 45 | include_dirs: [ |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 46 | "system/netd/include", |
| 47 | "system/netd/server/binder", |
| 48 | ], |
| 49 | srcs: [ |
| 50 | "BandwidthController.cpp", |
| 51 | "Controllers.cpp", |
| 52 | "NetdConstants.cpp", |
| 53 | "FirewallController.cpp", |
| 54 | "IdletimerController.cpp", |
| 55 | "InterfaceController.cpp", |
| 56 | "IptablesRestoreController.cpp", |
| 57 | "NFLogListener.cpp", |
| 58 | "NetlinkCommands.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 59 | "NetlinkManager.cpp", |
| 60 | "RouteController.cpp", |
| 61 | "SockDiag.cpp", |
| 62 | "StrictController.cpp", |
| 63 | "TcpSocketMonitor.cpp", |
| 64 | "TetherController.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 65 | "UidRanges.cpp", |
| 66 | "WakeupController.cpp", |
| 67 | "XfrmController.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 68 | ], |
| 69 | shared_libs: [ |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 70 | "libbase", |
| 71 | "libbinder", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 72 | "libnetutils", |
| 73 | "libnetdutils", |
| 74 | "libpcap", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 75 | "libssl", |
Elliott Hughes | ab68352 | 2020-08-20 15:15:45 -0700 | [diff] [blame] | 76 | "libsysutils", |
Jeongik Cha | 5f72c8f | 2021-01-26 22:35:13 +0900 | [diff] [blame] | 77 | "netd_event_listener_interface-V1-cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 78 | ], |
Lorenzo Colitti | f2bd0d7 | 2021-12-09 16:18:48 +0900 | [diff] [blame] | 79 | static_libs: [ |
| 80 | "libip_checksum", |
Patrick Rohr | b791bd6 | 2022-03-29 21:18:31 +0200 | [diff] [blame] | 81 | "libtcutils", |
Lorenzo Colitti | f2bd0d7 | 2021-12-09 16:18:48 +0900 | [diff] [blame] | 82 | ], |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 83 | aidl: { |
| 84 | export_aidl_headers: true, |
| 85 | local_include_dirs: ["binder"], |
| 86 | }, |
| 87 | } |
| 88 | |
Pawan Wagh | 3eb3bc4 | 2023-02-27 03:44:46 +0000 | [diff] [blame] | 89 | cc_defaults { |
| 90 | name: "netd_default_sources", |
Ken Chen | b2d8888 | 2022-04-20 15:10:31 +0800 | [diff] [blame] | 91 | defaults: [ |
| 92 | "netd_aidl_interface_lateststable_cpp_shared", |
| 93 | "netd_defaults", |
| 94 | ], |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 95 | include_dirs: [ |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 96 | "system/netd/include", |
| 97 | ], |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 98 | shared_libs: [ |
| 99 | "android.system.net.netd@1.0", |
| 100 | "android.system.net.netd@1.1", |
Devin Moore | c304b47 | 2022-04-08 21:42:50 +0000 | [diff] [blame] | 101 | "android.system.net.netd-V1-ndk", |
Bernie Innocenti | f89b351 | 2018-08-30 07:34:37 +0900 | [diff] [blame] | 102 | "libbase", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 103 | "libbinder", |
Devin Moore | c304b47 | 2022-04-08 21:42:50 +0000 | [diff] [blame] | 104 | "libbinder_ndk", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 105 | "libcutils", |
| 106 | "libdl", |
| 107 | "libhidlbase", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 108 | "liblog", |
Ken Chen | ebdeba8 | 2021-10-28 09:54:46 +0800 | [diff] [blame] | 109 | "libnetd_updatable", |
Jooyung Han | 3e64aa1 | 2019-11-27 15:36:29 +0900 | [diff] [blame] | 110 | "libnetd_resolv", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 111 | "libnetdutils", |
Bernie Innocenti | f89b351 | 2018-08-30 07:34:37 +0900 | [diff] [blame] | 112 | "libnetutils", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 113 | "libpcap", |
Suren Baghdasaryan | e072a3c | 2019-01-16 14:36:07 -0800 | [diff] [blame] | 114 | "libprocessgroup", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 115 | "libselinux", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 116 | "libsysutils", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 117 | "libutils", |
Remi NGUYEN VAN | f23c838 | 2024-02-06 02:57:52 +0000 | [diff] [blame] | 118 | "mdns_aidl_interface-V1-cpp", |
Jeongik Cha | 5f72c8f | 2021-01-26 22:35:13 +0900 | [diff] [blame] | 119 | "netd_event_listener_interface-V1-cpp", |
Luke Huang | 0e5e69d | 2019-03-06 15:42:38 +0800 | [diff] [blame] | 120 | "oemnetd_aidl_interface-cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 121 | ], |
| 122 | static_libs: [ |
Lorenzo Colitti | f2bd0d7 | 2021-12-09 16:18:48 +0900 | [diff] [blame] | 123 | "libip_checksum", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 124 | "libnetd_server", |
Patrick Rohr | b791bd6 | 2022-03-29 21:18:31 +0200 | [diff] [blame] | 125 | "libtcutils", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 126 | ], |
| 127 | srcs: [ |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 128 | "DummyNetwork.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 129 | "EventReporter.cpp", |
| 130 | "FwmarkServer.cpp", |
| 131 | "LocalNetwork.cpp", |
Remi NGUYEN VAN | f23c838 | 2024-02-06 02:57:52 +0000 | [diff] [blame] | 132 | "MDnsService.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 133 | "NetdCommand.cpp", |
Devin Moore | c304b47 | 2022-04-08 21:42:50 +0000 | [diff] [blame] | 134 | "NetdHwAidlService.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 135 | "NetdHwService.cpp", |
| 136 | "NetdNativeService.cpp", |
| 137 | "NetlinkHandler.cpp", |
| 138 | "Network.cpp", |
| 139 | "NetworkController.cpp", |
Luke Huang | 0e5e69d | 2019-03-06 15:42:38 +0800 | [diff] [blame] | 140 | "OemNetdListener.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 141 | "PhysicalNetwork.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 142 | "Process.cpp", |
Ken Chen | 4e8ef9b | 2021-03-17 01:57:19 +0800 | [diff] [blame] | 143 | "UnreachableNetwork.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 144 | "VirtualNetwork.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 145 | "oem_iptables_hook.cpp", |
| 146 | ], |
Pawan Wagh | 3eb3bc4 | 2023-02-27 03:44:46 +0000 | [diff] [blame] | 147 | } |
| 148 | |
| 149 | cc_binary { |
| 150 | name: "netd", |
| 151 | defaults: [ |
| 152 | "netd_default_sources", |
| 153 | ], |
| 154 | init_rc: ["netd.rc"], |
| 155 | vintf_fragments: ["android.system.net.netd-service.xml"], |
| 156 | required: [ |
Maciej Żenczykowski | 993adf4 | 2024-02-23 20:28:02 -0800 | [diff] [blame] | 157 | "mainline_tethering_platform_components", |
Pawan Wagh | 3eb3bc4 | 2023-02-27 03:44:46 +0000 | [diff] [blame] | 158 | ], |
| 159 | srcs: [ |
| 160 | "main.cpp", |
| 161 | ], |
Ken Chen | 2e413c3 | 2020-01-13 11:59:53 +0800 | [diff] [blame] | 162 | sanitize: { |
| 163 | cfi: true, |
Ken Chen | 2e413c3 | 2020-01-13 11:59:53 +0800 | [diff] [blame] | 164 | }, |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 165 | } |
| 166 | |
| 167 | cc_binary { |
| 168 | name: "ndc", |
Ken Chen | b2d8888 | 2022-04-20 15:10:31 +0800 | [diff] [blame] | 169 | defaults: [ |
| 170 | "netd_aidl_interface_lateststable_cpp_shared", |
| 171 | "netd_defaults", |
| 172 | ], |
Luke Huang | cfd04b2 | 2019-03-18 15:53:21 +0800 | [diff] [blame] | 173 | include_dirs: [ |
| 174 | "system/netd/include", |
| 175 | ], |
| 176 | header_libs: [ |
| 177 | "libnetd_client_headers", |
| 178 | ], |
| 179 | shared_libs: [ |
| 180 | "libbase", |
| 181 | "libnetdutils", |
| 182 | "libnetutils", |
| 183 | "libcutils", |
| 184 | "liblog", |
| 185 | "libutils", |
| 186 | "libbinder", |
Jeongik Cha | 5f72c8f | 2021-01-26 22:35:13 +0900 | [diff] [blame] | 187 | "dnsresolver_aidl_interface-V7-cpp", |
Luke Huang | cfd04b2 | 2019-03-18 15:53:21 +0800 | [diff] [blame] | 188 | ], |
| 189 | srcs: [ |
| 190 | "ndc.cpp", |
| 191 | "UidRanges.cpp", |
| 192 | "NdcDispatcher.cpp", |
| 193 | ], |
Ken Chen | 2e413c3 | 2020-01-13 11:59:53 +0800 | [diff] [blame] | 194 | sanitize: { |
| 195 | cfi: true, |
Ken Chen | 2e413c3 | 2020-01-13 11:59:53 +0800 | [diff] [blame] | 196 | }, |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 197 | } |
| 198 | |
| 199 | cc_test { |
| 200 | name: "netd_unit_test", |
Ken Chen | b2d8888 | 2022-04-20 15:10:31 +0800 | [diff] [blame] | 201 | defaults: [ |
| 202 | "netd_aidl_interface_lateststable_cpp_static", |
| 203 | "netd_defaults", |
| 204 | ], |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 205 | test_suites: ["device-tests"], |
Bernie Innocenti | 83a67ca | 2019-06-19 16:28:05 +0900 | [diff] [blame] | 206 | require_root: true, |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 207 | include_dirs: [ |
| 208 | "system/netd/include", |
| 209 | "system/netd/server/binder", |
| 210 | "system/netd/tests", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 211 | ], |
Chih-Hung Hsieh | f1ecd6d | 2022-02-17 17:29:33 -0800 | [diff] [blame] | 212 | tidy_timeout_srcs: [ |
| 213 | "BandwidthControllerTest.cpp", |
| 214 | "InterfaceControllerTest.cpp", |
| 215 | "XfrmControllerTest.cpp", |
| 216 | ], |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 217 | srcs: [ |
| 218 | "BandwidthControllerTest.cpp", |
| 219 | "ControllersTest.cpp", |
| 220 | "FirewallControllerTest.cpp", |
| 221 | "IdletimerControllerTest.cpp", |
| 222 | "InterfaceControllerTest.cpp", |
| 223 | "IptablesBaseTest.cpp", |
| 224 | "IptablesRestoreControllerTest.cpp", |
| 225 | "NFLogListenerTest.cpp", |
| 226 | "RouteControllerTest.cpp", |
| 227 | "SockDiagTest.cpp", |
| 228 | "StrictControllerTest.cpp", |
| 229 | "TetherControllerTest.cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 230 | "XfrmControllerTest.cpp", |
| 231 | "WakeupControllerTest.cpp", |
| 232 | ], |
| 233 | static_libs: [ |
| 234 | "libgmock", |
Lorenzo Colitti | f2bd0d7 | 2021-12-09 16:18:48 +0900 | [diff] [blame] | 235 | "libip_checksum", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 236 | "libnetd_server", |
| 237 | "libnetd_test_tun_interface", |
Patrick Rohr | b791bd6 | 2022-03-29 21:18:31 +0200 | [diff] [blame] | 238 | "libtcutils", |
Jeongik Cha | 5f72c8f | 2021-01-26 22:35:13 +0900 | [diff] [blame] | 239 | "netd_event_listener_interface-V1-cpp", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 240 | ], |
| 241 | shared_libs: [ |
| 242 | "libbase", |
| 243 | "libbinder", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 244 | "libcrypto", |
| 245 | "libcutils", |
| 246 | "liblog", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 247 | "libnetdutils", |
| 248 | "libnetutils", |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 249 | "libsysutils", |
| 250 | "libutils", |
| 251 | ], |
Lorenzo Colitti | 10819c5 | 2020-09-17 21:32:44 +0900 | [diff] [blame] | 252 | // tidy: false, // cuts test build time by almost 1 minute |
Bernie Innocenti | 9895179 | 2018-06-26 17:13:44 +0900 | [diff] [blame] | 253 | } |
Pawan Wagh | 7739344 | 2023-02-17 22:14:06 +0000 | [diff] [blame] | 254 | |
| 255 | cc_defaults { |
| 256 | name: "netd_aidl_fuzzer_defaults", |
| 257 | defaults: [ |
Pawan Wagh | 3eb3bc4 | 2023-02-27 03:44:46 +0000 | [diff] [blame] | 258 | "netd_default_sources", |
Pawan Wagh | fba7300 | 2023-05-05 21:56:19 +0000 | [diff] [blame] | 259 | "fuzzer_disable_leaks", |
Pawan Wagh | 7739344 | 2023-02-17 22:14:06 +0000 | [diff] [blame] | 260 | ], |
| 261 | srcs: [ |
Pawan Wagh | 7739344 | 2023-02-17 22:14:06 +0000 | [diff] [blame] | 262 | "Controllers.cpp", |
| 263 | ], |
| 264 | fuzz_config: { |
| 265 | cc: [ |
| 266 | "cken@google.com", |
Pawan Wagh | 7739344 | 2023-02-17 22:14:06 +0000 | [diff] [blame] | 267 | ], |
Pawan Wagh | fba7300 | 2023-05-05 21:56:19 +0000 | [diff] [blame] | 268 | triage_assignee: "waghpawan@google.com", |
Aditya Choudhary | f7e2afb | 2024-01-30 13:47:16 +0000 | [diff] [blame] | 269 | }, |
Pawan Wagh | 7739344 | 2023-02-17 22:14:06 +0000 | [diff] [blame] | 270 | } |
| 271 | |
| 272 | cc_fuzz { |
Pawan Wagh | 5d44be7 | 2023-02-17 22:36:23 +0000 | [diff] [blame] | 273 | name: "netd_hw_service_fuzzer", |
| 274 | defaults: [ |
| 275 | "service_fuzzer_defaults", |
| 276 | "netd_aidl_fuzzer_defaults", |
| 277 | ], |
| 278 | srcs: [ |
| 279 | "aidl-fuzzers/NetdHwAidlServiceFuzzer.cpp", |
| 280 | ], |
| 281 | } |
Pawan Wagh | 7f3ca96 | 2023-02-17 22:57:53 +0000 | [diff] [blame] | 282 | |
| 283 | cc_fuzz { |
| 284 | name: "netd_native_service_fuzzer", |
| 285 | defaults: [ |
| 286 | "service_fuzzer_defaults", |
| 287 | "netd_aidl_fuzzer_defaults", |
| 288 | ], |
| 289 | srcs: [ |
| 290 | "aidl-fuzzers/NetdNativeServiceFuzzer.cpp", |
| 291 | ], |
| 292 | } |