You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by sf...@apache.org on 2010/06/06 21:25:55 UTC
svn commit: r951932 - in /httpd/httpd/trunk: CHANGES support/ab.c
Author: sf
Date: Sun Jun 6 19:25:54 2010
New Revision: 951932
URL: http://svn.apache.org/viewvc?rev=951932&view=rev
Log:
ab: Fix memory leak with -v2 and SSL.
PR: 49383
Submitted by: Pavel Kankovsky <peak argo troja mff cuni cz>
Modified:
httpd/httpd/trunk/CHANGES
httpd/httpd/trunk/support/ab.c
Modified: httpd/httpd/trunk/CHANGES
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/CHANGES?rev=951932&r1=951931&r2=951932&view=diff
==============================================================================
--- httpd/httpd/trunk/CHANGES [utf-8] (original)
+++ httpd/httpd/trunk/CHANGES [utf-8] Sun Jun 6 19:25:54 2010
@@ -28,6 +28,9 @@ Changes with Apache 2.3.6
processing is completed, avoiding orphaned callback pointers.
[Brett Gervasoni <brettg senseofsecurity.com>, Jeff Trawick]
+ *) ab: Fix memory leak with -v2 and SSL. PR 49383.
+ [Pavel Kankovsky <peak argo troja mff cuni cz>]
+
*) core: Add per-module and per-directory loglevel configuration.
Add some more trace logging.
mod_rewrite: Replace RewriteLog/RewriteLogLevel with trace log levels.
Modified: httpd/httpd/trunk/support/ab.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/support/ab.c?rev=951932&r1=951931&r2=951932&view=diff
==============================================================================
--- httpd/httpd/trunk/support/ab.c (original)
+++ httpd/httpd/trunk/support/ab.c Sun Jun 6 19:25:54 2010
@@ -557,6 +557,7 @@ static int ssl_print_connection_info(BIO
static void ssl_print_cert_info(BIO *bio, X509 *cert)
{
X509_NAME *dn;
+ EVP_PKEY *pk;
char buf[1024];
BIO_printf(bio, "Certificate version: %ld\n", X509_get_version(cert)+1);
@@ -568,8 +569,10 @@ static void ssl_print_cert_info(BIO *bio
ASN1_UTCTIME_print(bio, X509_get_notAfter(cert));
BIO_printf(bio,"\n");
+ pk = X509_get_pubkey(cert);
BIO_printf(bio,"Public key is %d bits\n",
- EVP_PKEY_bits(X509_get_pubkey(cert)));
+ EVP_PKEY_bits(pk));
+ EVP_PKEY_free(pk);
dn = X509_get_issuer_name(cert);
X509_NAME_oneline(dn, buf, sizeof(buf));