diff --git a/private/hwservice_contexts b/private/hwservice_contexts index aa4af296dfb233e3dcc9beb74e60b795e87df2dd..107e483922a67891d9468cb11f9977c300dd33c3 100644 --- a/private/hwservice_contexts +++ b/private/hwservice_contexts @@ -52,5 +52,6 @@ android.hidl.base::IBase u:object_r:hidl_ android.hidl.manager::IServiceManager u:object_r:hidl_manager_hwservice:s0 android.hidl.memory::IMapper u:object_r:hidl_memory_hwservice:s0 android.hidl.token::ITokenManager u:object_r:hidl_token_hwservice:s0 +android.system.net.netd::INetd u:object_r:system_net_netd_hwservice:s0 android.system.wifi.keystore::IKeystore u:object_r:system_wifi_keystore_hwservice:s0 * u:object_r:default_android_hwservice:s0 diff --git a/public/hwservice.te b/public/hwservice.te index 232f07fa0ed5d747324c8d01e877713c4261a998..1b11678dfb657e0820cdec09ea94020c788f050e 100644 --- a/public/hwservice.te +++ b/public/hwservice.te @@ -46,5 +46,6 @@ type hidl_base_hwservice, hwservice_manager_type; type hidl_manager_hwservice, hwservice_manager_type, coredomain_hwservice; type hidl_memory_hwservice, hwservice_manager_type, coredomain_hwservice; type hidl_token_hwservice, hwservice_manager_type, coredomain_hwservice; +type system_net_netd_hwservice, hwservice_manager_type, coredomain_hwservice; type system_wifi_keystore_hwservice, hwservice_manager_type, coredomain_hwservice; type thermalcallback_hwservice, hwservice_manager_type; diff --git a/public/netd.te b/public/netd.te index 11e0e5cba8449c44df519ccce776c4cddbe6ee05..aa99da21a8a61f3a4b74309469d42f14568aeb34 100644 --- a/public/netd.te +++ b/public/netd.te @@ -91,6 +91,11 @@ allow netd netdomain:fd use; # give netd permission to read and write netlink xfrm allow netd self:netlink_xfrm_socket { create_socket_perms_no_ioctl nlmsg_write nlmsg_read }; +# Allow netd to register as hal server. +add_hwservice(netd, system_net_netd_hwservice) +hwbinder_use(netd) +get_prop(netd, hwservicemanager_prop) + ### ### Neverallow rules ###