The Implementations for Information Exchange.\r
\r
(C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>\r
- Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>\r
\r
- This program and the accompanying materials\r
- are licensed and made available under the terms and conditions of the BSD License\r
- which accompanies this distribution. The full text of the license may be found at\r
- http://opensource.org/licenses/bsd-license.php.\r
+ SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
- \r
**/\r
\r
#include "Utility.h"\r
/**\r
Generate Information Packet.\r
\r
- The information Packet may contain one Delete Payload, or Notify Payload, which \r
+ The information Packet may contain one Delete Payload, or Notify Payload, which\r
dependes on the Context's parameters.\r
\r
- @param[in] SaSession Pointer to IKE SA Session or Child SA Session which is \r
+ @param[in] SaSession Pointer to IKE SA Session or Child SA Session which is\r
related to the information Exchange.\r
@param[in] Context The Data passed from the caller. If the Context is not NULL\r
it should contain the information for Notification Data.\r
- \r
+\r
@retval Pointer of IKE_PACKET generated.\r
\r
**/\r
// Fill IkePacket Header.\r
//\r
IkePacket->Header->ExchangeType = IKEV2_EXCHANGE_TYPE_INFO;\r
- IkePacket->Header->Version = (UINT8) (2 << 4); \r
+ IkePacket->Header->Version = (UINT8) (2 << 4);\r
\r
if (Context != NULL) {\r
InfoContext = (IKEV2_INFO_EXCHANGE_CONTEXT *) Context;\r
//\r
// For Liveness Check\r
//\r
- if (InfoContext != NULL && \r
- (InfoContext->InfoType == Ikev2InfoLiveCheck || InfoContext->InfoType == Ikev2InfoNotify) \r
+ if (InfoContext != NULL &&\r
+ (InfoContext->InfoType == Ikev2InfoLiveCheck || InfoContext->InfoType == Ikev2InfoNotify)\r
) {\r
IkePacket->Header->MessageId = InfoContext->MessageId;\r
IkePacket->Header->InitiatorCookie = IkeSaSession->InitiatorCookie;\r
//\r
return IkePacket;\r
}\r
- \r
+\r
//\r
// For delete SAs\r
- // \r
+ //\r
if (IkeSaSession->SessionCommon.IkeSessionType == IkeSessionTypeIkeSa) {\r
\r
IkePacket->Header->InitiatorCookie = IkeSaSession->InitiatorCookie;\r
//\r
if (IkeSaSession->SessionCommon.State == IkeStateSaDeleting ) {\r
IkePayload = Ikev2GenerateDeletePayload (\r
- IkeSaSession, \r
- IKEV2_PAYLOAD_TYPE_NONE, \r
- 0, \r
- 0, \r
+ IkeSaSession,\r
+ IKEV2_PAYLOAD_TYPE_NONE,\r
+ 0,\r
+ 0,\r
NULL\r
- ); \r
+ );\r
if (IkePayload == NULL) {\r
goto ERROR_EXIT;\r
}\r
IkePacket->Private = IkeSaSession->SessionCommon.Private;\r
IkePacket->Spi = 0;\r
IkePacket->IsDeleteInfo = TRUE;\r
- \r
+\r
} else if (Context != NULL) {\r
//\r
// TODO: If contest is not NULL Generate a Notify Payload.\r
\r
if (IkeSaSession->SessionCommon.IsInitiator) {\r
IkePacket->Header->Flags = IKE_HEADER_FLAGS_INIT ;\r
- } \r
+ }\r
} else {\r
//\r
// Delete the Child SA Information Exchagne\r
IkePacket->Header->MessageId = ChildSaSession->IkeSaSession->MessageId;\r
Ikev2SaSessionIncreaseMessageId (IkeSaSession);\r
}\r
- \r
+\r
IkePayload = Ikev2GenerateDeletePayload (\r
ChildSaSession->IkeSaSession,\r
IKEV2_PAYLOAD_TYPE_DELETE,\r
if (InfoContext != NULL) {\r
IkePacket->Header->Flags |= IKE_HEADER_FLAGS_RESPOND;\r
}\r
- \r
+\r
return IkePacket;\r
\r
ERROR_EXIT:\r
UINT8 Value;\r
EFI_STATUS Status;\r
IKE_PACKET *RespondPacket;\r
- \r
+\r
IKEV2_INFO_EXCHANGE_CONTEXT Context;\r
- \r
+\r
IkeSaSession = (IKEV2_SA_SESSION *) SaSession;\r
\r
DeletePayload = NULL;\r
Private = NULL;\r
RespondPacket = NULL;\r
Status = EFI_SUCCESS;\r
- \r
+\r
//\r
// For Liveness Check\r
//\r
//\r
// For SA Delete\r
//\r
- NET_LIST_FOR_EACH (Entry, &(IkePacket)->PayloadList) { \r
+ NET_LIST_FOR_EACH (Entry, &(IkePacket)->PayloadList) {\r
\r
//\r
// Iterate payloads to find the Delete/Notify Payload.\r
//\r
IkePayload = IKE_PAYLOAD_BY_PACKET (Entry);\r
- \r
+\r
if (IkePayload->PayloadType == IKEV2_PAYLOAD_TYPE_DELETE) {\r
DeletePayload = IkePayload;\r
Delete = (IKEV2_DELETE *)DeletePayload->PayloadBuf;\r
// After all IKE SAs were deleted, set the IPSEC_STATUS_DISABLED value in\r
// IPsec status variable.\r
//\r
- if (IsListEmpty (&Private->Ikev1EstablishedList) && \r
+ if (IsListEmpty (&Private->Ikev1EstablishedList) &&\r
(IsListEmpty (&Private->Ikev2EstablishedList))\r
) {\r
Value = IPSEC_STATUS_DISABLED;\r
return Status;\r
}\r
Status = Ikev2SendIkePacket (\r
- IkeSaSession->SessionCommon.UdpService, \r
- (UINT8 *)(&IkeSaSession->SessionCommon), \r
- RespondPacket, \r
+ IkeSaSession->SessionCommon.UdpService,\r
+ (UINT8 *)(&IkeSaSession->SessionCommon),\r
+ RespondPacket,\r
0\r
);\r
}\r
\r
Context.InfoType = Ikev2InfoDelete;\r
Context.MessageId = IkePacket->Header->MessageId;\r
- \r
+\r
RespondPacket = Ikev2InfoGenerator ((UINT8 *)ChildSaSession, &Context);\r
if (RespondPacket == NULL) {\r
Status = EFI_INVALID_PARAMETER;\r
Status = Ikev2SendIkePacket (\r
ChildSaSession->SessionCommon.UdpService,\r
(UINT8 *)(&ChildSaSession->SessionCommon),\r
- RespondPacket, \r
+ RespondPacket,\r
0\r
);\r
} else {\r
}\r
}\r
}\r
- \r
+\r
return Status;\r
}\r
\r