IMPORTANT DEBUGGING NOTE: batches of tests are run inside their own process. For debugging a test inside a debugger, use the --gtest_filter= flag along with --single-process-tests. Using sharding settings from environment. This is shard 0/1 Using 1 parallel jobs. Note: Google Test filter = PamAuthorizerUafTest.GetNextMessage_FreesThisDuringUnderlyingCall [==========] Running 1 test from 1 test suite. [----------] Global test environment set-up. [----------] 1 test from PamAuthorizerUafTest [ RUN ] PamAuthorizerUafTest.GetNextMessage_FreesThisDuringUnderlyingCall ================================================================= ==565990==ERROR: AddressSanitizer: heap-use-after-free on address 0x7bf11023f138 at pc 0x55f20edd5719 bp 0x7ffe375e3a70 sp 0x7ffe375e3a68 READ of size 4 at 0x7bf11023f138 thread T0 #0 0x55f20edd5718 in remoting::(anonymous namespace)::PamAuthorizer::MaybeCheckLocalLogin() remoting/host/pam_authorization_factory_posix.cc:137:7 #1 0x55f20edd4aed in remoting::(anonymous namespace)::PamAuthorizer::GetNextMessage() remoting/host/pam_authorization_factory_posix.cc:119:3 #2 0x55f20edd6265 in remoting::PamAuthorizerUafTest_GetNextMessage_FreesThisDuringUnderlyingCall_Test::TestBody() remoting/host/pam_authorization_factory_posix_unittest.cc:167:26 #3 0x55f210b74395 in testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc #4 0x55f210b76d5b in testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2892:11 #5 0x55f210b78f24 in testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:3070:30 #6 0x55f210ba723c in testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:6062:44 #7 0x55f210ba5bcf in testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc #8 0x55f21f7777fd in base::TestSuite::Run() base/test/test_suite.cc:440:16 #9 0x55f2143b2e1d in base::internal::Invoker, base::internal::BindState>, int ()>::RunOnce(base::internal::BindStateBase*) base/functional/bind_internal.h:740:12 #10 0x55f20f9b5c62 in base::OnceCallback::Run() && base/functional/callback.h:155:12 #11 0x55f21f78c5cc in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback, unsigned long, int, unsigned long, bool, base::RepeatingCallback, base::OnceCallback) base/test/launcher/unit_test_launcher.cc:189:38 #12 0x55f21f78bf89 in base::LaunchUnitTests(int, char**, base::OnceCallback, unsigned long) base/test/launcher/unit_test_launcher.cc:337:10 #13 0x55f2143b27ce in main remoting/base/run_all_unittests.cc:60:10 #14 0x7fb11171fca7 (/lib/x86_64-linux-gnu/libc.so.6+0x29ca7) (BuildId: fce446c9d4ad48e2b0c90cce1a11722897805281) 0x7bf11023f138 is located 40 bytes inside of 48-byte region [0x7bf11023f110,0x7bf11023f140) freed by thread T0 here: #0 0x55f20e1381a2 in operator delete(void*, unsigned long) (/home/dave/Documents/coding/chromium-full/chromium/out/fuzz_asan/remoting_unittests+0xf7151a2) (BuildId: 13a75b01c109d46b) #1 0x55f20edd729f in base::internal::Invoker>*&&>, base::internal::BindState>, base::unretained_traits::MayNotDangle, (partition_alloc::internal::RawPtrTraits)0>>, void ()>::RunOnce(base::internal::BindStateBase*) gen/third_party/libc++/src/include/__memory/unique_ptr.h:74:5 #2 0x55f20e140ef9 in base::OnceCallback::Run() && base/functional/callback.h:155:12 #3 0x55f20edd6d23 in remoting::(anonymous namespace)::TestUnderlyingAuthenticator::GetNextMessage() remoting/host/pam_authorization_factory_posix_unittest.cc:76:27 #4 0x55f20edd4ae5 in remoting::(anonymous namespace)::PamAuthorizer::GetNextMessage() remoting/host/pam_authorization_factory_posix.cc:117:46 #5 0x55f20edd6265 in remoting::PamAuthorizerUafTest_GetNextMessage_FreesThisDuringUnderlyingCall_Test::TestBody() remoting/host/pam_authorization_factory_posix_unittest.cc:167:26 #6 0x55f210b74395 in testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc #7 0x55f210b76d5b in testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2892:11 #8 0x55f210b78f24 in testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:3070:30 #9 0x55f210ba723c in testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:6062:44 #10 0x55f210ba5bcf in testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc #11 0x55f21f7777fd in base::TestSuite::Run() base/test/test_suite.cc:440:16 #12 0x55f2143b2e1d in base::internal::Invoker, base::internal::BindState>, int ()>::RunOnce(base::internal::BindStateBase*) base/functional/bind_internal.h:740:12 #13 0x55f20f9b5c62 in base::OnceCallback::Run() && base/functional/callback.h:155:12 #14 0x55f21f78c5cc in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback, unsigned long, int, unsigned long, bool, base::RepeatingCallback, base::OnceCallback) base/test/launcher/unit_test_launcher.cc:189:38 #15 0x55f21f78bf89 in base::LaunchUnitTests(int, char**, base::OnceCallback, unsigned long) base/test/launcher/unit_test_launcher.cc:337:10 #16 0x55f2143b27ce in main remoting/base/run_all_unittests.cc:60:10 #17 0x7fb11171fca7 (/lib/x86_64-linux-gnu/libc.so.6+0x29ca7) (BuildId: fce446c9d4ad48e2b0c90cce1a11722897805281) previously allocated by thread T0 here: #0 0x55f20e13759d in operator new(unsigned long) (/home/dave/Documents/coding/chromium-full/chromium/out/fuzz_asan/remoting_unittests+0xf71459d) (BuildId: 13a75b01c109d46b) #1 0x55f20edd3d05 in remoting::PamAuthorizationFactory::CreateAuthenticator(std::__Cr::basic_string, std::__Cr::allocator> const&, std::__Cr::basic_string, std::__Cr::allocator> const&) gen/third_party/libc++/src/include/__memory/unique_ptr.h:756:26 #2 0x55f20edd5e47 in remoting::PamAuthorizerUafTest_GetNextMessage_FreesThisDuringUnderlyingCall_Test::TestBody() remoting/host/pam_authorization_factory_posix_unittest.cc:156:19 #3 0x55f210b74395 in testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc #4 0x55f210b76d5b in testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2892:11 #5 0x55f210b78f24 in testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:3070:30 #6 0x55f210ba723c in testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:6062:44 #7 0x55f210ba5bcf in testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc #8 0x55f21f7777fd in base::TestSuite::Run() base/test/test_suite.cc:440:16 #9 0x55f2143b2e1d in base::internal::Invoker, base::internal::BindState>, int ()>::RunOnce(base::internal::BindStateBase*) base/functional/bind_internal.h:740:12 #10 0x55f20f9b5c62 in base::OnceCallback::Run() && base/functional/callback.h:155:12 #11 0x55f21f78c5cc in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback, unsigned long, int, unsigned long, bool, base::RepeatingCallback, base::OnceCallback) base/test/launcher/unit_test_launcher.cc:189:38 #12 0x55f21f78bf89 in base::LaunchUnitTests(int, char**, base::OnceCallback, unsigned long) base/test/launcher/unit_test_launcher.cc:337:10 #13 0x55f2143b27ce in main remoting/base/run_all_unittests.cc:60:10 #14 0x7fb11171fca7 (/lib/x86_64-linux-gnu/libc.so.6+0x29ca7) (BuildId: fce446c9d4ad48e2b0c90cce1a11722897805281) SUMMARY: AddressSanitizer: heap-use-after-free remoting/host/pam_authorization_factory_posix.cc:137:7 in remoting::(anonymous namespace)::PamAuthorizer::MaybeCheckLocalLogin() Shadow bytes around the buggy address: 0x7bf11023ee80: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fd 0x7bf11023ef00: fa fa fd fd fd fd fd fd fa fa 00 00 00 00 00 00 0x7bf11023ef80: fa fa 00 00 00 00 00 fa fa fa 00 00 00 00 00 00 0x7bf11023f000: fa fa 00 00 00 00 00 fa fa fa 00 00 00 00 00 fa 0x7bf11023f080: fa fa 00 00 00 00 00 fa fa fa fd fd fd fd fd fd =>0x7bf11023f100: fa fa fd fd fd fd fd[fd]fa fa fd fd fd fd fd fd 0x7bf11023f180: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x7bf11023f200: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x7bf11023f280: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x7bf11023f300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x7bf11023f380: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==565990==ADDITIONAL INFO ==565990==Note: Please include this section with the ASan report. Task trace: ==565990==END OF ADDITIONAL INFO ==565990==ABORTING [1/1] PamAuthorizerUafTest.GetNextMessage_FreesThisDuringUnderlyingCall (CRASHED) 1 test crashed: PamAuthorizerUafTest.GetNextMessage_FreesThisDuringUnderlyingCall (../../remoting/host/pam_authorization_factory_posix_unittest.cc:147) Tests took 1 seconds.