/** @file\r
Common operation of the IKE.\r
\r
- Copyright (c) 2010 - 2015, 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
#include <Protocol/Udp4.h>\r
#include <Protocol/Udp6.h>\r
#include <Protocol/Ip4Config2.h>\r
- \r
+\r
#include <Library/BaseLib.h>\r
#include <Library/BaseMemoryLib.h>\r
#include <Library/MemoryAllocationLib.h>\r
#define IKE_DEFAULT_TIMEOUT_INTERVAL 10000 // 10s\r
#define IKE_NONCE_SIZE 16\r
#define IKE_MAX_RETRY 4\r
-#define IKE_SPI_BASE 0x10000\r
+#define IKE_SPI_BASE 0x100\r
#define IKE_PAYLOAD_SIGNATURE SIGNATURE_32('I','K','E','P')\r
#define IKE_PAYLOAD_BY_PACKET(a) CR(a,IKE_PAYLOAD,ByPacket,IKE_PAYLOAD_SIGNATURE)\r
\r
\r
/**\r
Call Crypto Lib to generate a random value with eight-octet length.\r
- \r
+\r
@return the 64 byte vaule.\r
\r
**/\r
Generate the random data for Nonce payload.\r
\r
@param[in] NonceSize Size of the data in bytes.\r
- \r
- @return Buffer which contains the random data of the spcified size. \r
+\r
+ @return Buffer which contains the random data of the spcified size.\r
\r
**/\r
UINT8 *\r
);\r
\r
/**\r
- Generate an unused SPI\r
+ Generate an new SPI.\r
\r
- @return a SPI in 4 bytes.\r
+ @param[in] IkeSaSession Pointer to IKEV2_SA_SESSION related to this Child SA\r
+ Session.\r
+ @param[in, out] SpiValue Pointer to the new generated SPI value.\r
+\r
+ @retval EFI_SUCCESS The operation performs successfully.\r
+ @retval Otherwise The operation is failed.\r
\r
**/\r
-UINT32\r
+EFI_STATUS\r
IkeGenerateSpi (\r
- VOID\r
+ IN IKEV2_SA_SESSION *IkeSaSession,\r
+ IN OUT UINT32 *SpiValue\r
);\r
\r
/**\r