1*8542734aSAndroid Build Coastguard Workerpackage { 2*8542734aSAndroid Build Coastguard Worker default_team: "trendy_team_fwk_core_networking", 3*8542734aSAndroid Build Coastguard Worker // See: http://go/android-license-faq 4*8542734aSAndroid Build Coastguard Worker // A large-scale-change added 'default_applicable_licenses' to import 5*8542734aSAndroid Build Coastguard Worker // all of the 'license_kinds' from "system_netd_license" 6*8542734aSAndroid Build Coastguard Worker // to get the below license kinds: 7*8542734aSAndroid Build Coastguard Worker // SPDX-license-identifier-Apache-2.0 8*8542734aSAndroid Build Coastguard Worker default_applicable_licenses: ["system_netd_license"], 9*8542734aSAndroid Build Coastguard Worker} 10*8542734aSAndroid Build Coastguard Worker 11*8542734aSAndroid Build Coastguard Workeraidl_interface { 12*8542734aSAndroid Build Coastguard Worker // This interface is for OEM calls to netd and vice versa that do not exist in AOSP. 13*8542734aSAndroid Build Coastguard Worker // Those calls cannot be part of INetd.aidl and INetdUnsolicitedEventListener.aidl 14*8542734aSAndroid Build Coastguard Worker // because those interfaces are versioned. 15*8542734aSAndroid Build Coastguard Worker // These interfaces must never be versioned or OEMs will not be able to change them. 16*8542734aSAndroid Build Coastguard Worker name: "oemnetd_aidl_interface", 17*8542734aSAndroid Build Coastguard Worker unstable: true, 18*8542734aSAndroid Build Coastguard Worker local_include_dir: "binder", 19*8542734aSAndroid Build Coastguard Worker srcs: [ 20*8542734aSAndroid Build Coastguard Worker "binder/com/android/internal/net/IOemNetd.aidl", 21*8542734aSAndroid Build Coastguard Worker "binder/com/android/internal/net/IOemNetdUnsolicitedEventListener.aidl", 22*8542734aSAndroid Build Coastguard Worker ], 23*8542734aSAndroid Build Coastguard Worker} 24*8542734aSAndroid Build Coastguard Worker 25*8542734aSAndroid Build Coastguard Worker// These are used in netd_integration_test 26*8542734aSAndroid Build Coastguard Worker// TODO: fold these into a cc_library_static after converting netd/server to Android.bp 27*8542734aSAndroid Build Coastguard Workerfilegroup { 28*8542734aSAndroid Build Coastguard Worker name: "netd_integration_test_shared", 29*8542734aSAndroid Build Coastguard Worker srcs: [ 30*8542734aSAndroid Build Coastguard Worker "NetdConstants.cpp", 31*8542734aSAndroid Build Coastguard Worker "InterfaceController.cpp", 32*8542734aSAndroid Build Coastguard Worker "NetlinkCommands.cpp", 33*8542734aSAndroid Build Coastguard Worker "SockDiag.cpp", 34*8542734aSAndroid Build Coastguard Worker "XfrmController.cpp", 35*8542734aSAndroid Build Coastguard Worker ], 36*8542734aSAndroid Build Coastguard Worker} 37*8542734aSAndroid Build Coastguard Worker 38*8542734aSAndroid Build Coastguard Worker// Modules common to both netd and netd_unit_test 39*8542734aSAndroid Build Coastguard Workercc_library_static { 40*8542734aSAndroid Build Coastguard Worker name: "libnetd_server", 41*8542734aSAndroid Build Coastguard Worker defaults: [ 42*8542734aSAndroid Build Coastguard Worker "netd_aidl_interface_lateststable_cpp_shared", 43*8542734aSAndroid Build Coastguard Worker "netd_defaults", 44*8542734aSAndroid Build Coastguard Worker ], 45*8542734aSAndroid Build Coastguard Worker include_dirs: [ 46*8542734aSAndroid Build Coastguard Worker "system/netd/include", 47*8542734aSAndroid Build Coastguard Worker "system/netd/server/binder", 48*8542734aSAndroid Build Coastguard Worker ], 49*8542734aSAndroid Build Coastguard Worker srcs: [ 50*8542734aSAndroid Build Coastguard Worker "BandwidthController.cpp", 51*8542734aSAndroid Build Coastguard Worker "Controllers.cpp", 52*8542734aSAndroid Build Coastguard Worker "NetdConstants.cpp", 53*8542734aSAndroid Build Coastguard Worker "FirewallController.cpp", 54*8542734aSAndroid Build Coastguard Worker "IdletimerController.cpp", 55*8542734aSAndroid Build Coastguard Worker "InterfaceController.cpp", 56*8542734aSAndroid Build Coastguard Worker "IptablesRestoreController.cpp", 57*8542734aSAndroid Build Coastguard Worker "NFLogListener.cpp", 58*8542734aSAndroid Build Coastguard Worker "NetlinkCommands.cpp", 59*8542734aSAndroid Build Coastguard Worker "NetlinkManager.cpp", 60*8542734aSAndroid Build Coastguard Worker "RouteController.cpp", 61*8542734aSAndroid Build Coastguard Worker "SockDiag.cpp", 62*8542734aSAndroid Build Coastguard Worker "StrictController.cpp", 63*8542734aSAndroid Build Coastguard Worker "TcpSocketMonitor.cpp", 64*8542734aSAndroid Build Coastguard Worker "TetherController.cpp", 65*8542734aSAndroid Build Coastguard Worker "UidRanges.cpp", 66*8542734aSAndroid Build Coastguard Worker "WakeupController.cpp", 67*8542734aSAndroid Build Coastguard Worker "XfrmController.cpp", 68*8542734aSAndroid Build Coastguard Worker ], 69*8542734aSAndroid Build Coastguard Worker shared_libs: [ 70*8542734aSAndroid Build Coastguard Worker "libbase", 71*8542734aSAndroid Build Coastguard Worker "libbinder", 72*8542734aSAndroid Build Coastguard Worker "libnetutils", 73*8542734aSAndroid Build Coastguard Worker "libnetdutils", 74*8542734aSAndroid Build Coastguard Worker "libpcap", 75*8542734aSAndroid Build Coastguard Worker "libssl", 76*8542734aSAndroid Build Coastguard Worker "libsysutils", 77*8542734aSAndroid Build Coastguard Worker "netd_event_listener_interface-V1-cpp", 78*8542734aSAndroid Build Coastguard Worker ], 79*8542734aSAndroid Build Coastguard Worker static_libs: [ 80*8542734aSAndroid Build Coastguard Worker "libip_checksum", 81*8542734aSAndroid Build Coastguard Worker "libtcutils", 82*8542734aSAndroid Build Coastguard Worker ], 83*8542734aSAndroid Build Coastguard Worker aidl: { 84*8542734aSAndroid Build Coastguard Worker export_aidl_headers: true, 85*8542734aSAndroid Build Coastguard Worker local_include_dirs: ["binder"], 86*8542734aSAndroid Build Coastguard Worker }, 87*8542734aSAndroid Build Coastguard Worker} 88*8542734aSAndroid Build Coastguard Worker 89*8542734aSAndroid Build Coastguard Workercc_defaults { 90*8542734aSAndroid Build Coastguard Worker name: "netd_default_sources", 91*8542734aSAndroid Build Coastguard Worker defaults: [ 92*8542734aSAndroid Build Coastguard Worker "netd_aidl_interface_lateststable_cpp_shared", 93*8542734aSAndroid Build Coastguard Worker "netd_defaults", 94*8542734aSAndroid Build Coastguard Worker ], 95*8542734aSAndroid Build Coastguard Worker include_dirs: [ 96*8542734aSAndroid Build Coastguard Worker "system/netd/include", 97*8542734aSAndroid Build Coastguard Worker ], 98*8542734aSAndroid Build Coastguard Worker shared_libs: [ 99*8542734aSAndroid Build Coastguard Worker "[email protected]", 100*8542734aSAndroid Build Coastguard Worker "[email protected]", 101*8542734aSAndroid Build Coastguard Worker "android.system.net.netd-V1-ndk", 102*8542734aSAndroid Build Coastguard Worker "libbase", 103*8542734aSAndroid Build Coastguard Worker "libbinder", 104*8542734aSAndroid Build Coastguard Worker "libbinder_ndk", 105*8542734aSAndroid Build Coastguard Worker "libcutils", 106*8542734aSAndroid Build Coastguard Worker "libdl", 107*8542734aSAndroid Build Coastguard Worker "libhidlbase", 108*8542734aSAndroid Build Coastguard Worker "liblog", 109*8542734aSAndroid Build Coastguard Worker "libnetd_updatable", 110*8542734aSAndroid Build Coastguard Worker "libnetd_resolv", 111*8542734aSAndroid Build Coastguard Worker "libnetdutils", 112*8542734aSAndroid Build Coastguard Worker "libnetutils", 113*8542734aSAndroid Build Coastguard Worker "libpcap", 114*8542734aSAndroid Build Coastguard Worker "libprocessgroup", 115*8542734aSAndroid Build Coastguard Worker "libselinux", 116*8542734aSAndroid Build Coastguard Worker "libsysutils", 117*8542734aSAndroid Build Coastguard Worker "libutils", 118*8542734aSAndroid Build Coastguard Worker "mdns_aidl_interface-V1-cpp", 119*8542734aSAndroid Build Coastguard Worker "netd_event_listener_interface-V1-cpp", 120*8542734aSAndroid Build Coastguard Worker "oemnetd_aidl_interface-cpp", 121*8542734aSAndroid Build Coastguard Worker ], 122*8542734aSAndroid Build Coastguard Worker static_libs: [ 123*8542734aSAndroid Build Coastguard Worker "libip_checksum", 124*8542734aSAndroid Build Coastguard Worker "libnetd_server", 125*8542734aSAndroid Build Coastguard Worker "libtcutils", 126*8542734aSAndroid Build Coastguard Worker ], 127*8542734aSAndroid Build Coastguard Worker srcs: [ 128*8542734aSAndroid Build Coastguard Worker "DummyNetwork.cpp", 129*8542734aSAndroid Build Coastguard Worker "EventReporter.cpp", 130*8542734aSAndroid Build Coastguard Worker "FwmarkServer.cpp", 131*8542734aSAndroid Build Coastguard Worker "LocalNetwork.cpp", 132*8542734aSAndroid Build Coastguard Worker "MDnsService.cpp", 133*8542734aSAndroid Build Coastguard Worker "NetdCommand.cpp", 134*8542734aSAndroid Build Coastguard Worker "NetdHwAidlService.cpp", 135*8542734aSAndroid Build Coastguard Worker "NetdHwService.cpp", 136*8542734aSAndroid Build Coastguard Worker "NetdNativeService.cpp", 137*8542734aSAndroid Build Coastguard Worker "NetlinkHandler.cpp", 138*8542734aSAndroid Build Coastguard Worker "Network.cpp", 139*8542734aSAndroid Build Coastguard Worker "NetworkController.cpp", 140*8542734aSAndroid Build Coastguard Worker "OemNetdListener.cpp", 141*8542734aSAndroid Build Coastguard Worker "PhysicalNetwork.cpp", 142*8542734aSAndroid Build Coastguard Worker "Process.cpp", 143*8542734aSAndroid Build Coastguard Worker "UnreachableNetwork.cpp", 144*8542734aSAndroid Build Coastguard Worker "VirtualNetwork.cpp", 145*8542734aSAndroid Build Coastguard Worker "oem_iptables_hook.cpp", 146*8542734aSAndroid Build Coastguard Worker ], 147*8542734aSAndroid Build Coastguard Worker} 148*8542734aSAndroid Build Coastguard Worker 149*8542734aSAndroid Build Coastguard Workervintf_fragment { 150*8542734aSAndroid Build Coastguard Worker name: "android.system.net.netd-service.xml", 151*8542734aSAndroid Build Coastguard Worker src: "android.system.net.netd-service.xml", 152*8542734aSAndroid Build Coastguard Worker} 153*8542734aSAndroid Build Coastguard Worker 154*8542734aSAndroid Build Coastguard Workercc_binary { 155*8542734aSAndroid Build Coastguard Worker name: "netd", 156*8542734aSAndroid Build Coastguard Worker defaults: [ 157*8542734aSAndroid Build Coastguard Worker "netd_default_sources", 158*8542734aSAndroid Build Coastguard Worker ], 159*8542734aSAndroid Build Coastguard Worker init_rc: ["netd.rc"], 160*8542734aSAndroid Build Coastguard Worker vintf_fragment_modules: ["android.system.net.netd-service.xml"], 161*8542734aSAndroid Build Coastguard Worker required: [ 162*8542734aSAndroid Build Coastguard Worker "mainline_tethering_platform_components", 163*8542734aSAndroid Build Coastguard Worker ], 164*8542734aSAndroid Build Coastguard Worker srcs: [ 165*8542734aSAndroid Build Coastguard Worker "main.cpp", 166*8542734aSAndroid Build Coastguard Worker ], 167*8542734aSAndroid Build Coastguard Worker sanitize: { 168*8542734aSAndroid Build Coastguard Worker cfi: true, 169*8542734aSAndroid Build Coastguard Worker }, 170*8542734aSAndroid Build Coastguard Worker} 171*8542734aSAndroid Build Coastguard Worker 172*8542734aSAndroid Build Coastguard Workercc_binary { 173*8542734aSAndroid Build Coastguard Worker name: "ndc", 174*8542734aSAndroid Build Coastguard Worker defaults: [ 175*8542734aSAndroid Build Coastguard Worker "netd_aidl_interface_lateststable_cpp_shared", 176*8542734aSAndroid Build Coastguard Worker "netd_defaults", 177*8542734aSAndroid Build Coastguard Worker ], 178*8542734aSAndroid Build Coastguard Worker include_dirs: [ 179*8542734aSAndroid Build Coastguard Worker "system/netd/include", 180*8542734aSAndroid Build Coastguard Worker ], 181*8542734aSAndroid Build Coastguard Worker header_libs: [ 182*8542734aSAndroid Build Coastguard Worker "libnetd_client_headers", 183*8542734aSAndroid Build Coastguard Worker ], 184*8542734aSAndroid Build Coastguard Worker shared_libs: [ 185*8542734aSAndroid Build Coastguard Worker "libbase", 186*8542734aSAndroid Build Coastguard Worker "libnetdutils", 187*8542734aSAndroid Build Coastguard Worker "libnetutils", 188*8542734aSAndroid Build Coastguard Worker "libcutils", 189*8542734aSAndroid Build Coastguard Worker "liblog", 190*8542734aSAndroid Build Coastguard Worker "libutils", 191*8542734aSAndroid Build Coastguard Worker "libbinder", 192*8542734aSAndroid Build Coastguard Worker "dnsresolver_aidl_interface-V7-cpp", 193*8542734aSAndroid Build Coastguard Worker ], 194*8542734aSAndroid Build Coastguard Worker srcs: [ 195*8542734aSAndroid Build Coastguard Worker "ndc.cpp", 196*8542734aSAndroid Build Coastguard Worker "UidRanges.cpp", 197*8542734aSAndroid Build Coastguard Worker "NdcDispatcher.cpp", 198*8542734aSAndroid Build Coastguard Worker ], 199*8542734aSAndroid Build Coastguard Worker sanitize: { 200*8542734aSAndroid Build Coastguard Worker cfi: true, 201*8542734aSAndroid Build Coastguard Worker }, 202*8542734aSAndroid Build Coastguard Worker} 203*8542734aSAndroid Build Coastguard Worker 204*8542734aSAndroid Build Coastguard Workercc_test { 205*8542734aSAndroid Build Coastguard Worker name: "netd_unit_test", 206*8542734aSAndroid Build Coastguard Worker defaults: [ 207*8542734aSAndroid Build Coastguard Worker "netd_aidl_interface_lateststable_cpp_static", 208*8542734aSAndroid Build Coastguard Worker "netd_defaults", 209*8542734aSAndroid Build Coastguard Worker ], 210*8542734aSAndroid Build Coastguard Worker test_suites: ["device-tests"], 211*8542734aSAndroid Build Coastguard Worker require_root: true, 212*8542734aSAndroid Build Coastguard Worker include_dirs: [ 213*8542734aSAndroid Build Coastguard Worker "system/netd/include", 214*8542734aSAndroid Build Coastguard Worker "system/netd/server/binder", 215*8542734aSAndroid Build Coastguard Worker "system/netd/tests", 216*8542734aSAndroid Build Coastguard Worker ], 217*8542734aSAndroid Build Coastguard Worker tidy_timeout_srcs: [ 218*8542734aSAndroid Build Coastguard Worker "BandwidthControllerTest.cpp", 219*8542734aSAndroid Build Coastguard Worker "InterfaceControllerTest.cpp", 220*8542734aSAndroid Build Coastguard Worker "XfrmControllerTest.cpp", 221*8542734aSAndroid Build Coastguard Worker ], 222*8542734aSAndroid Build Coastguard Worker srcs: [ 223*8542734aSAndroid Build Coastguard Worker "BandwidthControllerTest.cpp", 224*8542734aSAndroid Build Coastguard Worker "ControllersTest.cpp", 225*8542734aSAndroid Build Coastguard Worker "FirewallControllerTest.cpp", 226*8542734aSAndroid Build Coastguard Worker "IdletimerControllerTest.cpp", 227*8542734aSAndroid Build Coastguard Worker "InterfaceControllerTest.cpp", 228*8542734aSAndroid Build Coastguard Worker "IptablesBaseTest.cpp", 229*8542734aSAndroid Build Coastguard Worker "IptablesRestoreControllerTest.cpp", 230*8542734aSAndroid Build Coastguard Worker "NFLogListenerTest.cpp", 231*8542734aSAndroid Build Coastguard Worker "RouteControllerTest.cpp", 232*8542734aSAndroid Build Coastguard Worker "SockDiagTest.cpp", 233*8542734aSAndroid Build Coastguard Worker "StrictControllerTest.cpp", 234*8542734aSAndroid Build Coastguard Worker "TetherControllerTest.cpp", 235*8542734aSAndroid Build Coastguard Worker "XfrmControllerTest.cpp", 236*8542734aSAndroid Build Coastguard Worker "WakeupControllerTest.cpp", 237*8542734aSAndroid Build Coastguard Worker ], 238*8542734aSAndroid Build Coastguard Worker static_libs: [ 239*8542734aSAndroid Build Coastguard Worker "libgmock", 240*8542734aSAndroid Build Coastguard Worker "libip_checksum", 241*8542734aSAndroid Build Coastguard Worker "libnetd_server", 242*8542734aSAndroid Build Coastguard Worker "libnetd_test_tun_interface", 243*8542734aSAndroid Build Coastguard Worker "libtcutils", 244*8542734aSAndroid Build Coastguard Worker "netd_event_listener_interface-V1-cpp", 245*8542734aSAndroid Build Coastguard Worker ], 246*8542734aSAndroid Build Coastguard Worker shared_libs: [ 247*8542734aSAndroid Build Coastguard Worker "libbase", 248*8542734aSAndroid Build Coastguard Worker "libbinder", 249*8542734aSAndroid Build Coastguard Worker "libcrypto", 250*8542734aSAndroid Build Coastguard Worker "libcutils", 251*8542734aSAndroid Build Coastguard Worker "liblog", 252*8542734aSAndroid Build Coastguard Worker "libnetdutils", 253*8542734aSAndroid Build Coastguard Worker "libnetutils", 254*8542734aSAndroid Build Coastguard Worker "libsysutils", 255*8542734aSAndroid Build Coastguard Worker "libutils", 256*8542734aSAndroid Build Coastguard Worker ], 257*8542734aSAndroid Build Coastguard Worker // tidy: false, // cuts test build time by almost 1 minute 258*8542734aSAndroid Build Coastguard Worker} 259*8542734aSAndroid Build Coastguard Worker 260*8542734aSAndroid Build Coastguard Workercc_defaults { 261*8542734aSAndroid Build Coastguard Worker name: "netd_aidl_fuzzer_defaults", 262*8542734aSAndroid Build Coastguard Worker defaults: [ 263*8542734aSAndroid Build Coastguard Worker "netd_default_sources", 264*8542734aSAndroid Build Coastguard Worker "fuzzer_disable_leaks", 265*8542734aSAndroid Build Coastguard Worker ], 266*8542734aSAndroid Build Coastguard Worker srcs: [ 267*8542734aSAndroid Build Coastguard Worker "Controllers.cpp", 268*8542734aSAndroid Build Coastguard Worker ], 269*8542734aSAndroid Build Coastguard Worker fuzz_config: { 270*8542734aSAndroid Build Coastguard Worker cc: [ 271*8542734aSAndroid Build Coastguard Worker "[email protected]", 272*8542734aSAndroid Build Coastguard Worker ], 273*8542734aSAndroid Build Coastguard Worker triage_assignee: "[email protected]", 274*8542734aSAndroid Build Coastguard Worker }, 275*8542734aSAndroid Build Coastguard Worker} 276*8542734aSAndroid Build Coastguard Worker 277*8542734aSAndroid Build Coastguard Workercc_fuzz { 278*8542734aSAndroid Build Coastguard Worker name: "netd_hw_service_fuzzer", 279*8542734aSAndroid Build Coastguard Worker defaults: [ 280*8542734aSAndroid Build Coastguard Worker "service_fuzzer_defaults", 281*8542734aSAndroid Build Coastguard Worker "netd_aidl_fuzzer_defaults", 282*8542734aSAndroid Build Coastguard Worker ], 283*8542734aSAndroid Build Coastguard Worker srcs: [ 284*8542734aSAndroid Build Coastguard Worker "aidl-fuzzers/NetdHwAidlServiceFuzzer.cpp", 285*8542734aSAndroid Build Coastguard Worker ], 286*8542734aSAndroid Build Coastguard Worker} 287*8542734aSAndroid Build Coastguard Worker 288*8542734aSAndroid Build Coastguard Workercc_fuzz { 289*8542734aSAndroid Build Coastguard Worker name: "netd_native_service_fuzzer", 290*8542734aSAndroid Build Coastguard Worker defaults: [ 291*8542734aSAndroid Build Coastguard Worker "service_fuzzer_defaults", 292*8542734aSAndroid Build Coastguard Worker "netd_aidl_fuzzer_defaults", 293*8542734aSAndroid Build Coastguard Worker ], 294*8542734aSAndroid Build Coastguard Worker srcs: [ 295*8542734aSAndroid Build Coastguard Worker "aidl-fuzzers/NetdNativeServiceFuzzer.cpp", 296*8542734aSAndroid Build Coastguard Worker ], 297*8542734aSAndroid Build Coastguard Worker} 298