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
\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
\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