Selinux отказывается от запуска сервиса на Android 8

Недавно я работаю на Android 8 и заблокирован проблемой selinux…

Я создаю службу «ppp» в init.rc для запуска pppd, как показано ниже:

service ppp /system/bin/pppd call gprs
user root
group system radio
disabled
oneshot

Но это не удалось при запуске этой службы с помощью команды «setprop ctl.start ppp».

Selinux уже установлен в разрешающий режим, но все равно показывает следующее, а служба не запускается:

console: / # [430.567622] init: не удалось ctl.start для службы ppp: Файл / system / bin / pppd (с меткой «u: object_r: ppp_exec: s0») имеет неверную метку или нет перехода домена от u: r: init : s0 в другой определенный домен SELinux. Правильно ли вы настроили свой сервис? https://source.android.com/security/selinux/device-policy#label_new_services_and_address_denials

Ppp.te и file_contexts не изменены:

ppp.te:

typeattribute ppp coredomain;

domain_auto_trans(mtp, ppp_exec, ppp)

file_contexts:

/system/bin/pppd    u:object_r:ppp_exec:s0

Любая информация для решения этой проблемы приветствуется, спасибо заранее!

1

Решение

Когда вы используете «setprop ctl.start ppp», служба запускается из init.

Попробуйте с этой политикой:

domain_auto_trans(init, ppp_exec, ppp)
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]