debuggerd_handler: don't dump PR_NO_NEW_PRIVS processes.
We can't do an selinux transition when this is on. Bug: http://b/34472671 Test: logcat -c; debuggerd `pidof media.codec`; logcat Change-Id: Ie6c1832ab838df48879c32a86126862de9a15420
This commit is contained in:
parent
529b3066d5
commit
7e14d020f1
1 changed files with 7 additions and 0 deletions
|
|
@ -301,7 +301,14 @@ static void debuggerd_signal_handler(int signal_number, siginfo_t* info, void*)
|
||||||
// The process has disabled core dumps and PTRACE_ATTACH, and does not want to be dumped.
|
// The process has disabled core dumps and PTRACE_ATTACH, and does not want to be dumped.
|
||||||
__libc_format_log(ANDROID_LOG_INFO, "libc",
|
__libc_format_log(ANDROID_LOG_INFO, "libc",
|
||||||
"Suppressing debuggerd output because prctl(PR_GET_DUMPABLE)==0");
|
"Suppressing debuggerd output because prctl(PR_GET_DUMPABLE)==0");
|
||||||
|
resend_signal(info, false);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (prctl(PR_GET_NO_NEW_PRIVS, 0, 0, 0, 0) == 1) {
|
||||||
|
// The process has NO_NEW_PRIVS enabled, so we can't transition to the crash_dump context.
|
||||||
|
__libc_format_log(ANDROID_LOG_INFO, "libc",
|
||||||
|
"Suppressing debuggerd output because prctl(PR_GET_NO_NEW_PRIVS)==1");
|
||||||
resend_signal(info, false);
|
resend_signal(info, false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue