Loading debuggerd/debuggerd_test.cpp +23 −0 Original line number Diff line number Diff line Loading @@ -1463,6 +1463,29 @@ TEST_F(CrasherTest, seccomp_tombstone) { ASSERT_BACKTRACE_FRAME(result, "bar"); } TEST_F(CrasherTest, seccomp_tombstone_thread_abort) { int intercept_result; unique_fd output_fd; static const auto dump_type = kDebuggerdTombstone; StartProcess( []() { std::thread abort_thread([] { abort(); }); abort_thread.join(); }, &seccomp_fork); StartIntercept(&output_fd, dump_type); FinishCrasher(); AssertDeath(SIGABRT); FinishIntercept(&intercept_result); ASSERT_EQ(1, intercept_result) << "tombstoned reported failure"; std::string result; ConsumeFd(std::move(output_fd), &result); ASSERT_BACKTRACE_FRAME(result, "abort"); } TEST_F(CrasherTest, seccomp_backtrace) { int intercept_result; unique_fd output_fd; Loading debuggerd/libdebuggerd/tombstone_proto.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -455,7 +455,7 @@ static void dump_thread(Tombstone* tombstone, unwindstack::Unwinder* unwinder, thread.set_tagged_addr_ctrl(thread_info.tagged_addr_ctrl); thread.set_pac_enabled_keys(thread_info.pac_enabled_keys); if (thread_info.pid == getpid() && thread_info.pid != thread_info.tid) { if (thread_info.registers == nullptr) { // Fallback path for non-main thread, doing unwind from running process. unwindstack::ThreadUnwinder thread_unwinder(kMaxFrames, unwinder->GetMaps()); if (!thread_unwinder.Init()) { Loading libcutils/include/private/android_filesystem_config.h +1 −0 Original line number Diff line number Diff line Loading @@ -137,6 +137,7 @@ #define AID_JC_STRONGBOX 1088 /* Javacard Strongbox HAL - to manage omapi ARA rules */ #define AID_JC_IDENTITYCRED 1089 /* Javacard Identity Cred HAL - to manage omapi ARA rules */ #define AID_SDK_SANDBOX 1090 /* SDK sandbox virtual UID */ #define AID_SECURITY_LOG_WRITER 1091 /* write to security log */ /* Changes to this file must be made in AOSP, *not* in internal branches. */ #define AID_SHELL 2000 /* adb and debug shell user */ Loading Loading
debuggerd/debuggerd_test.cpp +23 −0 Original line number Diff line number Diff line Loading @@ -1463,6 +1463,29 @@ TEST_F(CrasherTest, seccomp_tombstone) { ASSERT_BACKTRACE_FRAME(result, "bar"); } TEST_F(CrasherTest, seccomp_tombstone_thread_abort) { int intercept_result; unique_fd output_fd; static const auto dump_type = kDebuggerdTombstone; StartProcess( []() { std::thread abort_thread([] { abort(); }); abort_thread.join(); }, &seccomp_fork); StartIntercept(&output_fd, dump_type); FinishCrasher(); AssertDeath(SIGABRT); FinishIntercept(&intercept_result); ASSERT_EQ(1, intercept_result) << "tombstoned reported failure"; std::string result; ConsumeFd(std::move(output_fd), &result); ASSERT_BACKTRACE_FRAME(result, "abort"); } TEST_F(CrasherTest, seccomp_backtrace) { int intercept_result; unique_fd output_fd; Loading
debuggerd/libdebuggerd/tombstone_proto.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -455,7 +455,7 @@ static void dump_thread(Tombstone* tombstone, unwindstack::Unwinder* unwinder, thread.set_tagged_addr_ctrl(thread_info.tagged_addr_ctrl); thread.set_pac_enabled_keys(thread_info.pac_enabled_keys); if (thread_info.pid == getpid() && thread_info.pid != thread_info.tid) { if (thread_info.registers == nullptr) { // Fallback path for non-main thread, doing unwind from running process. unwindstack::ThreadUnwinder thread_unwinder(kMaxFrames, unwinder->GetMaps()); if (!thread_unwinder.Init()) { Loading
libcutils/include/private/android_filesystem_config.h +1 −0 Original line number Diff line number Diff line Loading @@ -137,6 +137,7 @@ #define AID_JC_STRONGBOX 1088 /* Javacard Strongbox HAL - to manage omapi ARA rules */ #define AID_JC_IDENTITYCRED 1089 /* Javacard Identity Cred HAL - to manage omapi ARA rules */ #define AID_SDK_SANDBOX 1090 /* SDK sandbox virtual UID */ #define AID_SECURITY_LOG_WRITER 1091 /* write to security log */ /* Changes to this file must be made in AOSP, *not* in internal branches. */ #define AID_SHELL 2000 /* adb and debug shell user */ Loading