mirror of
https://github.com/OpenVPN/openvpn.git
synced 2026-05-28 04:03:29 -04:00
OpenSSL: force meth->name as non-const when we free() it
We are in control of meth->name (we string_alloc() it in RSA_meth_new()) so we know that we can free() it when it's no longer needed. Yet we have to force the value to be non-const to avoid a compiler warning -- due to the fact that OpenSSL defines the value as a const char*, regardless of its origin. Acked-by: Steffan Karger <steffan.karger@fox-it.com> Message-Id: <20170612134330.20971-9-logout@free.fr> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg14798.html Signed-off-by: Gert Doering <gert@greenie.muc.de>
This commit is contained in:
parent
c07c0358b5
commit
3fd07c31fe
1 changed files with 7 additions and 1 deletions
|
|
@ -349,7 +349,13 @@ RSA_meth_free(RSA_METHOD *meth)
|
|||
{
|
||||
if (meth)
|
||||
{
|
||||
free(meth->name);
|
||||
/* OpenSSL defines meth->name to be a const pointer, yet we
|
||||
* feed it with an allocated string (from RSA_meth_new()).
|
||||
* Thus we are allowed to free it here. In order to avoid a
|
||||
* "passing 'const char *' to parameter of type 'void *' discards
|
||||
* qualifiers" warning, we force the pointer to be a non-const value.
|
||||
*/
|
||||
free((char *)meth->name);
|
||||
free(meth);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue