Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/SoftEtherVPN/SoftEtherVPN_Stable.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src/Cedar
diff options
context:
space:
mode:
authorDaiyuu Nobori <da.git@softether.co.jp>2016-11-27 11:54:17 +0300
committerGitHub <noreply@github.com>2016-11-27 11:54:17 +0300
commit7c30cddedb08aa938f59d57b3c0fd4193317f0a8 (patch)
treecb917ea98d040ae5c588b1df231457faa5c912e6 /src/Cedar
parentec5fb8ead7d3f1f05b819641d8993fb5d5591b73 (diff)
parent74c641c13e999d4978cfcc853845a93069fb8a29 (diff)
Merge pull request #178 from mcsalgado/fix_initialization
Fix set initialization, set.OnlyCapsuleModeIsInvalid could be garbage
Diffstat (limited to 'src/Cedar')
-rw-r--r--src/Cedar/IPsec_IKE.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/Cedar/IPsec_IKE.c b/src/Cedar/IPsec_IKE.c
index 9cc84a6c..aea01040 100644
--- a/src/Cedar/IPsec_IKE.c
+++ b/src/Cedar/IPsec_IKE.c
@@ -4723,11 +4723,11 @@ bool GetBestTransformSettingForIPsecSa(IKE_SERVER *ike, IKE_PACKET *pr, IPSEC_SA
if (transform_payload != NULL)
{
IKE_PACKET_TRANSFORM_PAYLOAD *transform = &transform_payload->Payload.Transform;
- IPSEC_SA_TRANSFORM_SETTING set;
+ IPSEC_SA_TRANSFORM_SETTING *set = NULL;
- if (TransformPayloadToTransformSettingForIPsecSa(ike, transform, &set, server_ip))
+ if (TransformPayloadToTransformSettingForIPsecSa(ike, transform, set, server_ip))
{
- Copy(setting, &set, sizeof(IPSEC_SA_TRANSFORM_SETTING));
+ Copy(setting, set, sizeof(IPSEC_SA_TRANSFORM_SETTING));
setting->SpiServerToClient = READ_UINT(proposal->Spi->Buf);
@@ -4735,11 +4735,11 @@ bool GetBestTransformSettingForIPsecSa(IKE_SERVER *ike, IKE_PACKET *pr, IPSEC_SA
}
else
{
- if (set.OnlyCapsuleModeIsInvalid)
+ if (set != NULL && set->OnlyCapsuleModeIsInvalid)
{
if (ocmii_flag == false)
{
- Copy(setting, &set, sizeof(IPSEC_SA_TRANSFORM_SETTING));
+ Copy(setting, set, sizeof(IPSEC_SA_TRANSFORM_SETTING));
ocmii_flag = true;
}
}