DynamoRIO / DynamoRIO/drmemory

Memory leak below CertGetCertificateChain on Chromium net_unittests

Open
#476 4 comments 0 reactions 0 assignees View on GitHub
Bug-FalsePositive Migrated OpSys-Windows Priority-Medium
Dominant language
C
Stars
2.7k
Forks
290
PR merge metrics
No merged PRs in 30d

Description

_From [timurrrr@google.com](https://code.google.com/u/timurrrr@google.com/) on June 24, 2011 11:08:52_

$ tools\valgrind\chrome_tests.bat -t net --tool drmemory --gtest_filter="_Cert_Ver_.Cancel_Q*"
- http://build.chromium.org/p/chromium.fyi/builders/Windows%20Tests%20%28DrMemory%29/builds/4341/steps/memory%20test%3A%20net_1/logs/stdio with PDB symbols it looks like this:
LEAK 132 direct bytes 0x00233210-0x00233294 + 1296 indirect bytes
#1 AllocWrapper RPCRT4.dll+0x81f9
#2 operator new RPCRT4.dll+0x81d0
#3 ThreadSelfHelper RPCRT4.dll+0xd232
#4 RpcBindingFromStringBindingW RPCRT4.dll+0xe8df
#5 RpcpBindRpc NETAPI32.dll+0x7b23
#6 DsRolepServerBind NETAPI32.dll+0xb840
#7 DsRoleGetPrimaryDomainInformation NETAPI32.dll+0xb932
#8 GetMachineRole USERENV.dll+0x8113
#9 GetUserDNSDomainName USERENV.dll+0x70c2
#10 CreateEnvironmentBlock USERENV.dll+0x6bcc
#11 ExpandEnvironmentStringsForUserW USERENV.dll+0x7752
#12 GetUserAppDataPathW USERENV.dll+0x1cbb
#13 FastGetUserAppDataPath CRYPT32.dll+0x23a3b
#14 ILS_GetRoamingStoreDirectory CRYPT32.dll+0x23d1a
#15 I_CertDllOpenSystemRegistryStoreProvW CRYPT32.dll+0x23c91
#16 CertOpenStore CRYPT32.dll+0x126cf
#17 OpenPhysicalStoreCallback CRYPT32.dll+0xfd4f
#18 EnumPhysicalStore CRYPT32.dll+0xf59e
#19 I_CertDllOpenSystemStoreProvW CRYPT32.dll+0xf122
#20 CertOpenStore CRYPT32.dll+0x126cf
#21 ChainCreateWorldStore CRYPT32.dll+0x22e4f
#22 CCertChainEngine::CCertChainEngine CRYPT32.dll+0x2270c
#23 InternalCertCreateCertificateChainEngine CRYPT32.dll+0x2253e
#24 CertCreateCertificateChainEngine CRYPT32.dll+0x224e1
#25 CDefaultChainEngineMgr::GetDefaultCurrentUserEngine CRYPT32.dll+0x22497
#26 CDefaultChainEngineMgr::GetDefaultEngine CRYPT32.dll+0x13003
#27 CertGetCertificateChain CRYPT32.dll+0x12fa8
#28 net::X509Certificate::Verify c:\chromium\src\net\base\x509_certificate_win.cc:751
#29 net::CertVerifierWorker::Run c:\chromium\src\net\base\cert_verifier.cc:157
#30 DispatchToMethod c:\chromium\src\base\tuple.h:541
#31 RunnableMethod::Run c:\chromium\src\base\task.h:338
#32 base::`anonymous namespace'::WorkItemCallback c:\chromium\src\base\threading\worker_pool_win.cc:16
#33 RtlpWorkerCallout ntdll.dll+0x2796d
#34 RtlpExecuteWorkerRequest ntdll.dll+0x279ab
#35 RtlpApcCallout ntdll.dll+0x27a6d
#36 RtlpWorkerThread ntdll.dll+0x27a44
#37 BaseThreadStart KERNEL32.dll+0xb729

----
w/o symbols:
LEAK 132 direct bytes 0x00235128-0x002351ac + 1296 indirect bytes
#1 I_RpcBCacheFree RPCRT4.dll+0x81f9
#2 I_RpcBCacheFree RPCRT4.dll+0x81d0
#3 NdrConformantArrayFree RPCRT4.dll+0xd232
#4 RpcBindingFromStringBindingW RPCRT4.dll+0xe8df
#5 NetApiBufferFree NETAPI32.dll+0x7b23
#6 DsRoleFreeMemory NETAPI32.dll+0xb840
#7 DsRoleGetPrimaryDomainInformation NETAPI32.dll+0xb932
#8 DestroyEnvironmentBlock USERENV.dll+0x8113
#9 CreateEnvironmentBlock USERENV.dll+0x70c2
#10 CreateEnvironmentBlock USERENV.dll+0x6bcc
#11 ExpandEnvironmentStringsForUserW USERENV.dll+0x7752
#12 Ordinal149 USERENV.dll+0x1cbb
#13 RegSetValueExU CRYPT32.dll+0x23a3b
#14 I_CryptGetFileVersion CRYPT32.dll+0x23d1a
#15 I_CryptGetFileVersion CRYPT32.dll+0x23c91
#16 CertOpenStore CRYPT32.dll+0x126cf
#17 CertAddStoreToCollection CRYPT32.dll+0xfd4f
#18 I_CryptGetTls CRYPT32.dll+0xf59e
#19 I_CryptGetTls CRYPT32.dll+0xf122
#20 CertOpenStore CRYPT32.dll+0x126cf
#21 CryptMemAlloc CRYPT32.dll+0x22e4f
#22 CertCreateCertificateChainEngine CRYPT32.dll+0x2270c
#23 CertCreateCertificateChainEngine CRYPT32.dll+0x2253e
#24 CertCreateCertificateChainEngine CRYPT32.dll+0x224e1
#25 CertEnumCertificatesInStore CRYPT32.dll+0x22497
#26 CertGetCertificateChain CRYPT32.dll+0x13003
#27 CertGetCertificateChain CRYPT32.dll+0x12fa8
#28 net::X509Certificate::Verify c:\chromium\src\net\base\x509_certificate_win.cc:751
#29 net::CertVerifierWorker::Run c:\chromium\src\net\base\cert_verifier.cc:157
#30 DispatchToMethod c:\chromium\src\base\tuple.h:541
#31 RunnableMethod::Run c:\chromium\src\base\task.h:338
#32 base::`anonymous namespace'::WorkItemCallback c:\chromium\src\base\threading\worker_pool_win.cc:16
#33 RtlGUIDFromString ntdll.dll+0x2796d
#34 RtlGUIDFromString ntdll.dll+0x279ab
#35 RtlGUIDFromString ntdll.dll+0x27a6d
#36 RtlGUIDFromString ntdll.dll+0x27a44
#37 GetModuleFileNameA KERNEL32.dll+0xb729

_Original issue: http://code.google.com/p/drmemory/issues/detail?id=476_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.