diff --git a/private/compat/29.0/29.0.ignore.cil b/private/compat/29.0/29.0.ignore.cil index c13c337e1..281168343 100644 --- a/private/compat/29.0/29.0.ignore.cil +++ b/private/compat/29.0/29.0.ignore.cil @@ -32,6 +32,7 @@ gmscore_app hal_can_bus_hwservice hal_can_controller_hwservice + hal_identity_hwservice hal_rebootescrow_service hal_tv_tuner_hwservice hal_vibrator_service diff --git a/private/hwservice_contexts b/private/hwservice_contexts index d72231b49..96b2760c3 100644 --- a/private/hwservice_contexts +++ b/private/hwservice_contexts @@ -24,6 +24,7 @@ android.hardware.broadcastradio::IBroadcastRadioFactory u:object_r:hal_b android.hardware.camera.provider::ICameraProvider u:object_r:hal_camera_hwservice:s0 android.hardware.configstore::ISurfaceFlingerConfigs u:object_r:hal_configstore_ISurfaceFlingerConfigs:s0 android.hardware.confirmationui::IConfirmationUI u:object_r:hal_confirmationui_hwservice:s0 +android.hardware.identity::IIdentityCredentialStore u:object_r:hal_identity_hwservice:s0 android.hardware.contexthub::IContexthub u:object_r:hal_contexthub_hwservice:s0 android.hardware.cas::IMediaCasService u:object_r:hal_cas_hwservice:s0 android.hardware.drm::ICryptoFactory u:object_r:hal_drm_hwservice:s0 diff --git a/public/attributes b/public/attributes index 0fd2be2f9..dcbe9c0e0 100644 --- a/public/attributes +++ b/public/attributes @@ -313,6 +313,7 @@ hal_attribute(graphics_allocator); hal_attribute(graphics_composer); hal_attribute(health); hal_attribute(health_storage); +hal_attribute(identity); hal_attribute(input_classifier); hal_attribute(ir); hal_attribute(keymaster); diff --git a/public/hal_identity.te b/public/hal_identity.te new file mode 100644 index 000000000..a8df186fb --- /dev/null +++ b/public/hal_identity.te @@ -0,0 +1,4 @@ +# HwBinder IPC from client to server +binder_call(hal_identity_client, hal_identity_server) + +hal_attribute_hwservice(hal_identity, hal_identity_hwservice) diff --git a/public/hwservice.te b/public/hwservice.te index 2cd582b2a..5085ea588 100644 --- a/public/hwservice.te +++ b/public/hwservice.te @@ -27,6 +27,7 @@ type hal_gnss_hwservice, hwservice_manager_type, protected_hwservice; type hal_graphics_composer_hwservice, hwservice_manager_type, protected_hwservice; type hal_health_hwservice, hwservice_manager_type, protected_hwservice; type hal_health_storage_hwservice, hwservice_manager_type, protected_hwservice; +type hal_identity_hwservice, hwservice_manager_type, protected_hwservice; type hal_input_classifier_hwservice, hwservice_manager_type, protected_hwservice; type hal_ir_hwservice, hwservice_manager_type, protected_hwservice; type hal_keymaster_hwservice, hwservice_manager_type, protected_hwservice; diff --git a/vendor/file_contexts b/vendor/file_contexts index a3726cad1..8a9b98075 100644 --- a/vendor/file_contexts +++ b/vendor/file_contexts @@ -35,6 +35,7 @@ /(vendor|system/vendor)/bin/hw/android\.hardware\.health@2\.0-service u:object_r:hal_health_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.health@2\.1-service u:object_r:hal_health_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.health\.storage@1\.0-service u:object_r:hal_health_storage_default_exec:s0 +/(vendor|sustem/vendor)/bin/hw/android\.hardware\.identity@1\.0-service.example u:object_r:hal_identity_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.input\.classifier@1\.0-service u:object_r:hal_input_classifier_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.ir@1\.0-service u:object_r:hal_ir_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.keymaster@3\.0-service u:object_r:hal_keymaster_default_exec:s0 diff --git a/vendor/hal_identity_default.te b/vendor/hal_identity_default.te new file mode 100644 index 000000000..7f846872b --- /dev/null +++ b/vendor/hal_identity_default.te @@ -0,0 +1,5 @@ +type hal_identity_default, domain; +hal_server_domain(hal_identity_default, hal_identity) + +type hal_identity_default_exec, exec_type, vendor_file_type, file_type; +init_daemon_domain(hal_identity_default)