Re: Memory leak without handle leak?

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



Is this SP1 or plain W2K3? The stack trace looks truncated which
is probably caused by FPO. If you can reproduce on SP1 (which
is compiled without FPO) you should be able to get a better stack
trace.

--
This posting is provided "AS IS" with no warranties, and confers no
rights.

"Monster" wrote:

> I'm trying to debug a memory leak problem I'm having on windows 2003. It
> doesn't happen on windows xp btw. I'm using the microsoft crypto library
> SCHANNEL for SSL operations, umdh shows memory allocated but not freed but
> the stack trace for the leaks doesn't originate from my code. The weird
> thing is my program is showing no handle leaks! From my experience memory
> leaks usually go hand in hand with handle leaks but not this one. I'm sort
> of stumped right now, just looking for clues why this is happening.
>
> The stack trace for the leaks generally look like this. They all seem to
> start from Secur32!SecpAcquireCredentialsHandle which I dont' explicitly
> call.
>
>
> 0002D9CE bytes in 0x5f2 allocations (@ 0x00000020 + 0x00021B8E) by:
> BackTrace10881
> ntdll!RtlAllocateHeapSlowly+00000041
> ntdll!RtlAllocateHeap+00000E3A
> rsaenh!ContAlloc+00000013
> rsaenh!CPAcquireContext+00000032
> ADVAPI32!CryptAcquireContextA+00000547
> ADVAPI32!CryptAcquireContextW+000000A4
> schannel!RemoteCryptAcquireContextCallback+00000085
> Secur32!LsaCallbackHandler+0000004D
> Secur32!SecpHandleCallback+0000004C
> Secur32!CallSPM+0000003F
> Secur32!SecpAcquireCredentialsHandle+00000196
>
>
> 0001E17E bytes in 0x304 allocations (@ 0x00000034 + 0x000144AE) by:
> BackTrace10876
> ntdll!RtlAllocateHeapSlowly+00000041
> ntdll!RtlAllocateHeap+00000E3A
> kernel32!LocalAlloc+00000058
> ADVAPI32!CryptAcquireContextA+0000046A
> ADVAPI32!CryptAcquireContextW+000000A4
> schannel!RemoteCryptAcquireContextCallback+00000085
> Secur32!LsaCallbackHandler+0000004D
> Secur32!SecpHandleCallback+0000004C
> Secur32!CallSPM+0000003F
> Secur32!SecpAcquireCredentialsHandle+00000196
>
>
> 000526BF bytes in 0x2e3 allocations (@ 0x00000030 + 0x00049C2F) by:
> BackTrace10882
> ntdll!RtlAllocateHeapSlowly+00000041
> ntdll!RtlAllocateHeap+00000E3A
> rsaenh!ContAlloc+00000013
> rsaenh!NTagLogonUser+00000133
> rsaenh!CPAcquireContext+00000032
> ADVAPI32!CryptAcquireContextA+00000547
> ADVAPI32!CryptAcquireContextW+000000A4
> schannel!RemoteCryptAcquireContextCallback+00000085
> Secur32!LsaCallbackHandler+0000004D
> Secur32!SecpHandleCallback+0000004C
> Secur32!CallSPM+0000003F
> Secur32!SecpAcquireCredentialsHandle+00000196
>
>
> 00017782 bytes in 0x2df allocations (@ 0x00000036 + 0x0000DC78) by:
> BackTrace10883
> ntdll!RtlAllocateHeapSlowly+00000041
> ntdll!RtlAllocateHeap+00000E3A
> ntdll!RtlpAllocateDebugInfo+00000022
> ntdll!RtlInitializeCriticalSection+0000000B
> rsaenh!NTagLogonUser+00000133
> rsaenh!CPAcquireContext+00000032
> ADVAPI32!CryptAcquireContextA+00000547
> ADVAPI32!CryptAcquireContextW+000000A4
> schannel!RemoteCryptAcquireContextCallback+00000085
> Secur32!LsaCallbackHandler+0000004D
> Secur32!SecpHandleCallback+0000004C
> Secur32!CallSPM+0000003F
> Secur32!SecpAcquireCredentialsHandle+00000196


.



Relevant Pages