Red Hat Bugzilla – Bug 172623
Memory leak in OpenPegasus receiving Indications over HTTPS
Last modified: 2007-11-30 17:07:21 EST
Description of problem:
The certifiate verification callback logic in OpenPegasus was only deleting
the last certificate in the chain. Please refer to OpenPegasus Bugzilla 4330
(http://cvs.rdg.opengroup.org/bugzilla/show_bug.cgi?id=4330) for details.
The following patch has been submitted to OpenPegasus 2.4.3 and 2.5.1 source
RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/SSLContext.cpp,v
retrieving revision 1.39
diff -r1.39 SSLContext.cpp
> if (exData->_peerCertificate != NULL)
> //Delete an existing certificate object from a previous call.
> //SSL validates the certificate chain starting with the root CA and
working down to the peer certificate.
> //With this strategy, we end up with the peer certificate as the
last certificate stored in the SSLCallbackInfo
> //so we can retrieve the correct certificate info and username.
> delete exData->_peerCertificate;
> exData->_peerCertificate = NULL;
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Configure the CIM Server as a destination for receiving Indications using
CIM-XML over HTTPS.
2. Repeatedly send Indications to the targeted CIM Server.
Valgrind can be used to detect this memory leak.
Created attachment 120929 [details]
patch from Denise Eckstein <firstname.lastname@example.org>
This bug is now fixed with tog-pegasus-2.4.1-4.5.rhel4 .
This issue is on Red Hat Engineering's list of planned work items
for the upcoming Red Hat Enterprise Linux 4.4 release. Engineering
resources have been assigned and barring unforeseen circumstances, Red
Hat intends to include this item in the 4.4 release.
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.