To comment on the following update, log in, then open the issue: http://www.openoffice.org/issues/show_bug.cgi?id=111811 Issue #|111811 Summary|xmlsecurity: digital signature has huge memory leak Component|xml Version|OOo 3.1 Platform|All URL| OS/Version|All Status|NEW Status whiteboard| Keywords| Resolution| Issue type|PATCH Priority|P1 Subcomponent|code Assigned to|mba Reported by|jiamingfei
------- Additional comments from [email protected] Tue May 25 02:32:08 +0000 2010 ------- 1. Open the sample file howtouse.odt, the file has digital signature. Or you can create a sample file with digital signature by yourself. 2. Close the document. 3. Repeat open/close the sample file many times, e.g. 10 times. Defect: you will see the private bytes of soffice.bin has huge memory leak. The memory may increase several megebytes quickly. Below is the call stack results by memory leak debugging tools on WinXP. For your reference. ----------------- ntdll!RtlpNtMakeTemporaryKey+000074CE ntdll!LdrAlternateResourcesEnabled+00002B05 ntdll!RtlDosSearchPath_Ustr+00000310 kernel32!LocalAlloc+00000052 CRYPT32!PkiDefaultCryptAlloc+00000011 CRYPT32!ReadStoreElement+00000013 CRYPT32!CreateStoreElement+00000115 CRYPT32!LoadStoreElement+00000118 CRYPT32!CertAddSerializedElementToStore+00000047 CRYPT32!ReadKeyFromRegistry+0000004A CRYPT32!OpenKeysFromRegistry+00000088 CRYPT32!OpenFromRegistry+000000E5 CRYPT32!OpenAllFromRegistryEx+00000051 CRYPT32!OpenAllFromRegistry+00000014 CRYPT32!I_CertDllOpenRegStoreProv+000001B3 CRYPT32!I_CertDllOpenSystemRegistryStoreProvW+00000231 CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!I_CertDllOpenSystemStoreProvA+0000006C CRYPT32!CertOpenStore+00000105 CRYPT32!CertOpenSystemStoreA+00000032 xsec_xmlsec!SecurityEnvironment_MSCryptImpl::createKeysManager+0000030B (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\securityenvironment_mscryptimpl.cxx, 1224) xsec_xmlsec!XMLSignature_MSCryptImpl::validate+000003F5 (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\xmlsignature_mscryptimpl.cxx, 242) xsec_fw!SignatureVerifierImpl::startEngine+0000006F (z:\sdk\xmlsecurity\source\framework\signatureverifierimpl.cxx, 156) xsec_fw!SignatureEngine::tryToPerform+000002F5 (z:\sdk\xmlsecurity\source\framework\signatureengine.cxx, 168) xsec_fw!SecurityEngine::referenceResolved+00000023 (z:\sdk\xmlsecurity\source\framework\securityengine.cxx, 62) ------------------- ntdll!RtlpNtMakeTemporaryKey+000074CE ntdll!LdrAlternateResourcesEnabled+00002B05 ntdll!RtlDosSearchPath_Ustr+00000310 kernel32!LocalAlloc+00000052 CRYPT32!PkiDefaultCryptAlloc+00000011 CRYPT32!PkiAsn1AllocStructInfoEx+00000055 CRYPT32!PkiAsn1DecodeAndAllocInfoEx+0000004E CRYPT32!CryptDecodeObject+000000B4 CRYPT32!Asn1X509CertInfoDecodeEx+0000004A CRYPT32!CryptDecodeObjectEx+0000004D CRYPT32!AllocAndDecodeObject+0000002C CRYPT32!CreateCertElement+00000050 CRYPT32!CreateStoreElement+00000130 CRYPT32!LoadStoreElement+00000118 CRYPT32!CertAddSerializedElementToStore+00000047 CRYPT32!ReadKeyFromRegistry+0000004A CRYPT32!OpenKeysFromRegistry+00000088 CRYPT32!OpenFromRegistry+000000E5 CRYPT32!OpenAllFromRegistryEx+00000051 CRYPT32!OpenAllFromRegistry+00000014 CRYPT32!I_CertDllOpenRegStoreProv+000001B3 CRYPT32!I_CertDllOpenSystemRegistryStoreProvW+00000231 CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!I_CertDllOpenSystemStoreProvA+0000006C CRYPT32!CertOpenStore+00000105 ------------ ntdll!RtlpNtMakeTemporaryKey+000074CE ntdll!LdrAlternateResourcesEnabled+00002B05 ntdll!RtlDosSearchPath_Ustr+00000310 kernel32!LocalAlloc+00000052 CRYPT32!PkiDefaultCryptAlloc+00000011 CRYPT32!LoadStoreElement+0000006A CRYPT32!CertAddSerializedElementToStore+00000047 CRYPT32!ReadKeyFromRegistry+0000004A CRYPT32!OpenKeysFromRegistry+00000088 CRYPT32!OpenFromRegistry+000000E5 CRYPT32!OpenAllFromRegistryEx+00000051 CRYPT32!OpenAllFromRegistry+00000014 CRYPT32!I_CertDllOpenRegStoreProv+000001B3 CRYPT32!I_CertDllOpenSystemRegistryStoreProvW+00000231 CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!I_CertDllOpenSystemStoreProvA+0000006C CRYPT32!CertOpenStore+00000105 CRYPT32!CertOpenSystemStoreA+00000032 xsec_xmlsec!SecurityEnvironment_MSCryptImpl::createKeysManager+0000030B (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\securityenvironment_mscryptimpl.cxx, 1224) xsec_xmlsec!XMLSignature_MSCryptImpl::validate+000003F5 (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\xmlsignature_mscryptimpl.cxx, 242) xsec_fw!SignatureVerifierImpl::startEngine+0000006F (z:\sdk\xmlsecurity\source\framework\signatureverifierimpl.cxx, 156) xsec_fw!SignatureEngine::tryToPerform+000002F5 (z:\sdk\xmlsecurity\source\framework\signatureengine.cxx, 168) xsec_fw!SecurityEngine::referenceResolved+00000023 (z:\sdk\xmlsecurity\source\framework\securityengine.cxx, 62) xsec_fw!ElementCollector::doNotify+00000064 (z:\sdk\xmlsecurity\source\framework\elementcollector.cxx, 249) xsec_fw!ElementCollector::notifyListener+00000016 (z:\sdk\xmlsecurity\source\framework\elementcollector.cxx, 144) ----- ntdll!RtlpNtMakeTemporaryKey+000074CE ntdll!LdrAlternateResourcesEnabled+00002B05 ntdll!RtlDosSearchPath_Ustr+00000310 kernel32!LocalAlloc+00000052 CRYPT32!ICM_Alloc+00000011 CRYPT32!CreatePropElement+0000000C CRYPT32!LoadStoreElement+000000BA CRYPT32!CertAddSerializedElementToStore+00000047 CRYPT32!ReadKeyFromRegistry+0000004A CRYPT32!OpenKeysFromRegistry+00000088 CRYPT32!OpenFromRegistry+000000E5 CRYPT32!OpenAllFromRegistryEx+00000051 CRYPT32!OpenAllFromRegistry+00000014 CRYPT32!I_CertDllOpenRegStoreProv+000001B3 CRYPT32!I_CertDllOpenSystemRegistryStoreProvW+00000231 CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!I_CertDllOpenSystemStoreProvA+0000006C CRYPT32!CertOpenStore+00000105 CRYPT32!CertOpenSystemStoreA+00000032 xsec_xmlsec!SecurityEnvironment_MSCryptImpl::createKeysManager+0000030B (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\securityenvironment_mscryptimpl.cxx, 1224) xsec_xmlsec!XMLSignature_MSCryptImpl::validate+000003F5 (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\xmlsignature_mscryptimpl.cxx, 242) xsec_fw!SignatureVerifierImpl::startEngine+0000006F (z:\sdk\xmlsecurity\source\framework\signatureverifierimpl.cxx, 156) xsec_fw!SignatureEngine::tryToPerform+000002F5 (z:\sdk\xmlsecurity\source\framework\signatureengine.cxx, 168) xsec_fw!SecurityEngine::referenceResolved+00000023 (z:\sdk\xmlsecurity\source\framework\securityengine.cxx, 62) xsec_fw!ElementCollector::doNotify+00000064 (z:\sdk\xmlsecurity\source\framework\elementcollector.cxx, 249) ----- ntdll!RtlpNtMakeTemporaryKey+000074CE ntdll!LdrAlternateResourcesEnabled+00002B05 ntdll!RtlDosSearchPath_Ustr+00000310 kernel32!LocalAlloc+00000052 CRYPT32!PkiDefaultCryptAlloc+00000011 CRYPT32!ReadStoreElement+00000013 CRYPT32!CreateStoreElement+00000115 CRYPT32!LoadStoreElement+00000118 CRYPT32!CertAddSerializedElementToStore+00000047 CRYPT32!ReadKeyFromRegistry+0000004A CRYPT32!OpenKeysFromRegistry+00000088 CRYPT32!OpenFromRegistry+000000E5 CRYPT32!OpenAllFromRegistryEx+00000051 CRYPT32!OpenAllFromRegistry+00000014 CRYPT32!I_CertDllOpenRegStoreProv+000001B3 CRYPT32!I_CertDllOpenSystemRegistryStoreProvW+00000231 CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!I_CertDllOpenSystemStoreProvA+0000006C CRYPT32!CertOpenStore+00000105 CRYPT32!CertOpenSystemStoreA+00000032 xsec_xmlsec!SecurityEnvironment_MSCryptImpl::createKeysManager+0000040B (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\securityenvironment_mscryptimpl.cxx, 1242) xsec_xmlsec!XMLSignature_MSCryptImpl::validate+000003F5 (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\xmlsignature_mscryptimpl.cxx, 242) xsec_fw!SignatureVerifierImpl::startEngine+0000006F (z:\sdk\xmlsecurity\source\framework\signatureverifierimpl.cxx, 156) xsec_fw!SignatureEngine::tryToPerform+000002F5 (z:\sdk\xmlsecurity\source\framework\signatureengine.cxx, 168) xsec_fw!SecurityEngine::referenceResolved+00000023 (z:\sdk\xmlsecurity\source\framework\securityengine.cxx, 62) ---------- ntdll!RtlpNtMakeTemporaryKey+000074CE ntdll!LdrAlternateResourcesEnabled+00002B05 ntdll!RtlDosSearchPath_Ustr+00000310 kernel32!LocalAlloc+00000052 CRYPT32!ICM_Alloc+00000011 CRYPT32!CreateCertElement+00000063 CRYPT32!CreateStoreElement+00000130 CRYPT32!LoadStoreElement+00000118 CRYPT32!CertAddSerializedElementToStore+00000047 CRYPT32!ReadKeyFromRegistry+0000004A CRYPT32!OpenKeysFromRegistry+00000088 CRYPT32!OpenFromRegistry+000000E5 CRYPT32!OpenAllFromRegistryEx+00000051 CRYPT32!OpenAllFromRegistry+00000014 CRYPT32!I_CertDllOpenRegStoreProv+000001B3 CRYPT32!I_CertDllOpenSystemRegistryStoreProvW+00000231 CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!I_CertDllOpenSystemStoreProvA+0000006C CRYPT32!CertOpenStore+00000105 CRYPT32!CertOpenSystemStoreA+00000032 xsec_xmlsec!SecurityEnvironment_MSCryptImpl::createKeysManager+0000030B (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\securityenvironment_mscryptimpl.cxx, 1224) xsec_xmlsec!XMLSignature_MSCryptImpl::validate+000003F5 (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\xmlsignature_mscryptimpl.cxx, 242) xsec_fw!SignatureVerifierImpl::startEngine+0000006F (z:\sdk\xmlsecurity\source\framework\signatureverifierimpl.cxx, 156) xsec_fw!SignatureEngine::tryToPerform+000002F5 (z:\sdk\xmlsecurity\source\framework\signatureengine.cxx, 168) xsec_fw!SecurityEngine::referenceResolved+00000023 (z:\sdk\xmlsecurity\source\framework\securityengine.cxx, 62) ---- ntdll!RtlpNtMakeTemporaryKey+000074CE ntdll!LdrAlternateResourcesEnabled+00002B05 ntdll!RtlDosSearchPath_Ustr+00000310 kernel32!LocalAlloc+00000052 CRYPT32!PkiDefaultCryptAlloc+00000011 CRYPT32!ReadStoreElement+00000013 CRYPT32!CreateStoreElement+00000115 CRYPT32!LoadStoreElement+00000118 CRYPT32!CertAddSerializedElementToStore+00000047 CRYPT32!ReadKeyFromRegistry+0000004A CRYPT32!OpenKeysFromRegistry+00000088 CRYPT32!OpenFromRegistry+000000E5 CRYPT32!OpenAllFromRegistryEx+00000051 CRYPT32!OpenAllFromRegistry+00000014 CRYPT32!I_CertDllOpenRegStoreProv+000001B3 CRYPT32!I_CertDllOpenSystemRegistryStoreProvW+00000231 CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!I_CertDllOpenSystemStoreProvA+0000006C CRYPT32!CertOpenStore+00000105 CRYPT32!CertOpenSystemStoreA+00000032 xsec_xmlsec!SecurityEnvironment_MSCryptImpl::createKeysManager+0000040B (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\securityenvironment_mscryptimpl.cxx, 1242) xsec_xmlsec!XMLSignature_MSCryptImpl::validate+000003F5 (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\xmlsignature_mscryptimpl.cxx, 242) xsec_fw!SignatureVerifierImpl::startEngine+0000006F (z:\sdk\xmlsecurity\source\framework\signatureverifierimpl.cxx, 156) xsec_fw!SignatureEngine::tryToPerform+000002F5 (z:\sdk\xmlsecurity\source\framework\signatureengine.cxx, 168) xsec_fw!SecurityEngine::referenceResolved+00000023 (z:\sdk\xmlsecurity\source\framework\securityengine.cxx, 62) xsec_fw!ElementCollector::doNotify+00000064 (z:\sdk\xmlsecurity\source\framework\elementcollector.cxx, 249) xsec_fw!ElementCollector::notifyListener+00000016 (z:\sdk\xmlsecurity\source\framework\elementcollector.cxx, 144) xsec_fw!BufferNode::elementCollectorNotify+00000153 (z:\sdk\xmlsecurity\source\framework\buffernode.cxx, 1021) xsec_fw!BufferNode::setReceivedAll+00000016 (z:\sdk\xmlsecurity\source\framework\buffernode.cxx, 133) ----- ntdll!RtlpNtMakeTemporaryKey+000074CE ntdll!LdrAlternateResourcesEnabled+00002B05 ntdll!RtlDosSearchPath_Ustr+00000310 kernel32!LocalAlloc+00000052 CRYPT32!ICM_Alloc+00000011 CRYPT32!CreatePropElement+0000000C CRYPT32!LoadStoreElement+000000BA CRYPT32!CertAddSerializedElementToStore+00000047 CRYPT32!ReadKeyFromRegistry+0000004A CRYPT32!OpenKeysFromRegistry+00000088 CRYPT32!OpenFromRegistry+000000E5 CRYPT32!OpenAllFromRegistryEx+00000051 CRYPT32!OpenAllFromRegistry+00000014 CRYPT32!I_CertDllOpenRegStoreProv+000001B3 CRYPT32!I_CertDllOpenSystemRegistryStoreProvW+00000231 CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!CertOpenStore+00000105 CRYPT32!OpenPhysicalStoreCallback+0000020F CRYPT32!EnumPhysicalStore+000005EF CRYPT32!I_CertDllOpenSystemStoreProvW+0000013E CRYPT32!I_CertDllOpenSystemStoreProvA+0000006C CRYPT32!CertOpenStore+00000105 CRYPT32!CertOpenSystemStoreA+00000032 xsec_xmlsec!SecurityEnvironment_MSCryptImpl::createKeysManager+0000040B (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\securityenvironment_mscryptimpl.cxx, 1242) xsec_xmlsec!XMLSignature_MSCryptImpl::validate+000003F5 (z:\sdk\xmlsecurity\source\xmlsec\mscrypt\xmlsignature_mscryptimpl.cxx, 242) xsec_fw!SignatureVerifierImpl::startEngine+0000006F (z:\sdk\xmlsecurity\source\framework\signatureverifierimpl.cxx, 156) xsec_fw!SignatureEngine::tryToPerform+000002F5 (z:\sdk\xmlsecurity\source\framework\signatureengine.cxx, 168) xsec_fw!SecurityEngine::referenceResolved+00000023 (z:\sdk\xmlsecurity\source\framework\securityengine.cxx, 62) xsec_fw!ElementCollector::doNotify+00000064 (z:\sdk\xmlsecurity\source\framework\elementcollector.cxx, 249) ... --------------------------------------------------------------------- Please do not reply to this automatically generated notification from Issue Tracker. Please log onto the website and enter your comments. http://qa.openoffice.org/issue_handling/project_issues.html#notification --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
