[gnutls-dev] gnutls_free_dh_info
Nikos Mavrogiannopoulos
nmav at gnutls.org
Thu Apr 21 09:03:56 CEST 2005
On Thursday 21 April 2005 03:21, Paul Querna wrote:
> Hello,
>
> I am the developer of mod_gnutls for Apache, and I recently upgraded to
> 1.2.1 from 1.2.0.
> It looks like _gnutls_free_auth_info was changed to call
> _gnutls_free_dh_info and _gnutls_free_rsa_info. These are attempting to
> free() data wrongly for me.
Hello Paul,
Does the following patch to gnutls, solves this problem?
Does this only happen while resuming sessions?
It seems I was freeing data from a stored session (that probably have
been freed before).
--
Nikos Mavrogiannopoulos
-------------- next part --------------
Index: gnutls_session_pack.c
===================================================================
RCS file: /cvs/gnutls/gnutls/lib/gnutls_session_pack.c,v
retrieving revision 2.29
diff -u -r2.29 gnutls_session_pack.c
--- gnutls_session_pack.c 19 Mar 2005 14:24:44 -0000 2.29
+++ gnutls_session_pack.c 21 Apr 2005 06:58:56 -0000
@@ -178,6 +178,8 @@
return pack_size;
}
+/* Load session data from a buffer.
+ */
int _gnutls_session_unpack(gnutls_session_t session,
const gnutls_datum_t * packed_session)
{
@@ -255,7 +257,6 @@
/* Delete the DH parameters. (this might need to be moved to a function)
*/
info = session->key->auth_info;
- _gnutls_free_dh_info( &info->dh);
memset(&info->dh, 0, sizeof(dh_info_st));
}
break;
@@ -389,7 +390,8 @@
return pack_size + PACK_HEADER_SIZE + sizeof(uint32);
}
-
+/* Load session data.
+ */
int _gnutls_unpack_certificate_auth_info(cert_auth_info_t info,
const gnutls_datum_t *
packed_session)
@@ -404,8 +406,6 @@
/* Delete the dh_info_st and rsa_info_st fields.
*/
- _gnutls_free_dh_info( &info->dh);
- _gnutls_free_rsa_info( &info->rsa_export);
memset(&info->dh, 0, sizeof(dh_info_st));
memset(&info->rsa_export, 0, sizeof(rsa_info_st));
More information about the Gnutls-devel
mailing list