Estamos buscando um especialista em desenvolvimento Android e SELinux para resolver um problema de configuração em uma ROM customizada LineageOS para o dispositivo Samsung Galaxy A71. O objetivo é integrar uma câmera virtual (fake camera) que atualmente falha ao registrar seu serviço no ServiceManager devido a políticas SELinux restritivas. O serviço de câmera HAL customizado (
vendor.camera.provider.fake) inicia corretamente, mas é bloqueado ao tentar adicionar o serviço
android.hardware.camera.provider.ICameraProvider/fake/0.
O erro específico é um "SELinux: avc: denied { add }" para o nome do serviço, com scontext=u:r:hal_camera_fakecamera:s0 e tcontext=u:object_r:default_android_service:s0.
Escopo do trabalho:
- Criar ou ajustar as políticas SELinux (sepolicy) necessárias para permitir que o contexto hal_camera_fakecamera registre o serviço no ServiceManager.
- Definir um service_context apropriado e específico para o serviço da câmera virtual (fake camera), substituindo o uso de default_android_service.
- Resolver quaisquer negações secundárias de acesso, como as relacionadas à propriedade
service.camera.client pelo HAL de câmera Samsung (hal_camera_default).
- Testar e validar exaustivamente para garantir que o serviço da câmera virtual registre corretamente e funcione conforme o esperado na ROM compilada.
Arquivos provavelmente envolvidos:
- device/<manufacturer>/<device>/sepolicy/ (diretório de políticas SELinux do dispositivo)
- service_contexts
-
hal_camera_fakecamera.te
- file_contexts
- Possivelmente property_contexts
Requisitos do candidato:
- Experiência comprovada com desenvolvimento Android AOSP/LineageOS.
- Conhecimento sólido de SELinux no Android, incluindo a escrita e depuração de políticas (.te, contextos).
- Familiaridade com a arquitetura Camera HAL e o ServiceManager do Android.
- Capacidade de compilar e testar ROMs customizadas de forma independente.
Entregáveis:
- Arquivos de política SELinux funcionais e otimizados para o problema descrito.
- Documentação clara das mudanças implementadas e justificativas.
- Uma ROM compilada e testada, demonstrando o funcionamento correto da câmera virtual.
Informações adicionais disponíveis:
- Logs completos do sistema para análise detalhada.
- Código fonte atual do fake camera HAL.
- Acesso ao device tree completo do dispositivo para referência.
Prazo de Entrega: Não estabelecido