]> git.proxmox.com Git - mirror_edk2.git/blobdiff - CryptoPkg/Include/Library/TlsLib.h
CryptoPkg/TlsLib: rewrite TlsSetCipherList()
[mirror_edk2.git] / CryptoPkg / Include / Library / TlsLib.h
index fa6cb99d789699d67101cd8481bb6f7cbd241eeb..e71291eaea453bcb914878d8b77d474f13f3178d 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Defines TLS Library APIs.\r
 \r
-Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2016 - 2017, Intel Corporation. All rights reserved.<BR>\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
@@ -22,8 +22,11 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
   by SSL/TLS, and initializes the readable error messages.\r
   This function must be called before any other action takes places.\r
 \r
+  @retval TRUE   The OpenSSL library has been initialized.\r
+  @retval FALSE  Failed to initialize the OpenSSL library.\r
+\r
 **/\r
-VOID\r
+BOOLEAN\r
 EFIAPI\r
 TlsInitialize (\r
   VOID\r
@@ -345,13 +348,16 @@ TlsSetConnectionEnd (
   This function sets the ciphers for use by a specified TLS object.\r
 \r
   @param[in]  Tls          Pointer to a TLS object.\r
-  @param[in]  CipherId     Pointer to a string that contains one or more\r
-                           ciphers separated by a colon.\r
+  @param[in]  CipherId     Array of UINT16 cipher identifiers. Each UINT16\r
+                           cipher identifier comes from the TLS Cipher Suite\r
+                           Registry of the IANA, interpreting Byte1 and Byte2\r
+                           in network (big endian) byte order.\r
   @param[in]  CipherNum    The number of cipher in the list.\r
 \r
   @retval  EFI_SUCCESS           The ciphers list was set successfully.\r
   @retval  EFI_INVALID_PARAMETER The parameter is invalid.\r
-  @retval  EFI_UNSUPPORTED       Unsupported TLS cipher in the list.\r
+  @retval  EFI_UNSUPPORTED       No supported TLS cipher was found in CipherId.\r
+  @retval  EFI_OUT_OF_RESOURCES  Memory allocation failed.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -520,6 +526,8 @@ TlsSetCertRevocationList (
   This function returns the protocol version used by the specified TLS\r
   connection.\r
 \r
+  If Tls is NULL, then ASSERT().\r
+\r
   @param[in]  Tls    Pointer to the TLS object.\r
 \r
   @return  The protocol version of the specified TLS connection.\r
@@ -537,6 +545,8 @@ TlsGetVersion (
   This function returns the connection end (as client or as server) used by\r
   the specified TLS connection.\r
 \r
+  If Tls is NULL, then ASSERT().\r
+\r
   @param[in]  Tls    Pointer to the TLS object.\r
 \r
   @return  The connection end used by the specified TLS connection.\r
@@ -598,6 +608,8 @@ TlsGetCurrentCompressionId (
   This function returns the peer verification mode currently set in the\r
   specified TLS connection.\r
 \r
+  If Tls is NULL, then ASSERT().\r
+\r
   @param[in]  Tls    Pointer to the TLS object.\r
 \r
   @return  The verification mode set in the specified TLS connection.\r