1
0
mirror of https://github.com/SoftEtherVPN/SoftEtherVPN.git synced 2024-11-26 19:39:53 +03:00

Merge pull request #1061 from dnobori/200101_fix_openvpn_cert_auth_crush

Merge pull request #1061: src/Cedar/IPC.c: fix possible crash when using certificate authentication with OpenVPN
This commit is contained in:
Ilya Shipitsin 2020-01-01 11:33:23 +05:00 committed by GitHub
commit bd558e8f0a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -82,6 +82,12 @@ IPC_ASYNC *NewIPCAsync(CEDAR *cedar, IPC_PARAM *param, SOCK_EVENT *sock_event)
Copy(&a->Param, param, sizeof(IPC_PARAM)); Copy(&a->Param, param, sizeof(IPC_PARAM));
if (param->ClientCertificate != NULL)
{
// Client certificate must be copied for async processing
a->Param.ClientCertificate = CloneX(param->ClientCertificate);
}
if (sock_event != NULL) if (sock_event != NULL)
{ {
a->SockEvent = sock_event; a->SockEvent = sock_event;
@ -200,6 +206,12 @@ void FreeIPCAsync(IPC_ASYNC *a)
ReleaseCedar(a->Cedar); ReleaseCedar(a->Cedar);
ReleaseTube(a->TubeForDisconnect); ReleaseTube(a->TubeForDisconnect);
if (a->Param.ClientCertificate != NULL)
{
FreeX(a->Param.ClientCertificate);
}
Free(a); Free(a);
} }