]> git.proxmox.com Git - mirror_edk2.git/blobdiff - CryptoPkg/Library/TlsLib/TlsInit.c
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / CryptoPkg / Library / TlsLib / TlsInit.c
index e524647103f96d0f47cb11d9485bc54b0109d3e3..8d707f82854f232deccb9f51b7eb95a1ecd2eb74 100644 (file)
@@ -3,13 +3,7 @@
 \r
 Copyright (c) 2016 - 2017, Intel Corporation. All rights reserved.<BR>\r
 (C) Copyright 2016 Hewlett Packard Enterprise Development LP<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
-http://opensource.org/licenses/bsd-license.php\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
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
 \r
@@ -22,26 +16,34 @@ 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
   )\r
 {\r
+  INTN  Ret;\r
+\r
   //\r
   // Performs initialization of crypto and ssl library, and loads required\r
   // algorithms.\r
   //\r
-  OPENSSL_init_ssl (\r
-    OPENSSL_INIT_LOAD_SSL_STRINGS | OPENSSL_INIT_LOAD_CRYPTO_STRINGS,\r
-    NULL\r
-    );\r
+  Ret = OPENSSL_init_ssl (\r
+          OPENSSL_INIT_LOAD_SSL_STRINGS | OPENSSL_INIT_LOAD_CRYPTO_STRINGS,\r
+          NULL\r
+          );\r
+  if (Ret != 1) {\r
+    return FALSE;\r
+  }\r
 \r
   //\r
   // Initialize the pseudorandom number generator.\r
   //\r
-  RandomSeed (NULL, 0);\r
+  return RandomSeed (NULL, 0);\r
 }\r
 \r
 /**\r
@@ -53,7 +55,7 @@ TlsInitialize (
 VOID\r
 EFIAPI\r
 TlsCtxFree (\r
-  IN   VOID                  *TlsCtx\r
+  IN   VOID  *TlsCtx\r
   )\r
 {\r
   if (TlsCtx == NULL) {\r
@@ -61,7 +63,7 @@ TlsCtxFree (
   }\r
 \r
   if (TlsCtx != NULL) {\r
-    SSL_CTX_free ((SSL_CTX *) (TlsCtx));\r
+    SSL_CTX_free ((SSL_CTX *)(TlsCtx));\r
   }\r
 }\r
 \r
@@ -79,8 +81,8 @@ TlsCtxFree (
 VOID *\r
 EFIAPI\r
 TlsCtxNew (\r
-  IN     UINT8                    MajorVer,\r
-  IN     UINT8                    MinorVer\r
+  IN     UINT8  MajorVer,\r
+  IN     UINT8  MinorVer\r
   )\r
 {\r
   SSL_CTX  *TlsCtx;\r
@@ -104,7 +106,7 @@ TlsCtxNew (
   //\r
   SSL_CTX_set_min_proto_version (TlsCtx, ProtoVersion);\r
 \r
-  return (VOID *) TlsCtx;\r
+  return (VOID *)TlsCtx;\r
 }\r
 \r
 /**\r
@@ -119,12 +121,12 @@ TlsCtxNew (
 VOID\r
 EFIAPI\r
 TlsFree (\r
-  IN     VOID                     *Tls\r
+  IN     VOID  *Tls\r
   )\r
 {\r
   TLS_CONNECTION  *TlsConn;\r
 \r
-  TlsConn = (TLS_CONNECTION *) Tls;\r
+  TlsConn = (TLS_CONNECTION *)Tls;\r
   if (TlsConn == NULL) {\r
     return;\r
   }\r
@@ -155,7 +157,7 @@ TlsFree (
 VOID *\r
 EFIAPI\r
 TlsNew (\r
-  IN     VOID                     *TlsCtx\r
+  IN     VOID  *TlsCtx\r
   )\r
 {\r
   TLS_CONNECTION  *TlsConn;\r
@@ -167,7 +169,7 @@ TlsNew (
   //\r
   // Allocate one new TLS_CONNECTION object\r
   //\r
-  TlsConn = (TLS_CONNECTION *) OPENSSL_malloc (sizeof (TLS_CONNECTION));\r
+  TlsConn = (TLS_CONNECTION *)OPENSSL_malloc (sizeof (TLS_CONNECTION));\r
   if (TlsConn == NULL) {\r
     return NULL;\r
   }\r
@@ -177,9 +179,9 @@ TlsNew (
   //\r
   // Create a new SSL Object\r
   //\r
-  TlsConn->Ssl = SSL_new ((SSL_CTX *) TlsCtx);\r
+  TlsConn->Ssl = SSL_new ((SSL_CTX *)TlsCtx);\r
   if (TlsConn->Ssl == NULL) {\r
-    TlsFree ((VOID *) TlsConn);\r
+    TlsFree ((VOID *)TlsConn);\r
     return NULL;\r
   }\r
 \r
@@ -200,7 +202,7 @@ TlsNew (
   //\r
   TlsConn->InBio = BIO_new (BIO_s_mem ());\r
   if (TlsConn->InBio == NULL) {\r
-    TlsFree ((VOID *) TlsConn);\r
+    TlsFree ((VOID *)TlsConn);\r
     return NULL;\r
   }\r
 \r
@@ -217,7 +219,7 @@ TlsNew (
   //\r
   TlsConn->OutBio = BIO_new (BIO_s_mem ());\r
   if (TlsConn->OutBio == NULL) {\r
-    TlsFree ((VOID *) TlsConn);\r
+    TlsFree ((VOID *)TlsConn);\r
     return NULL;\r
   }\r
 \r
@@ -242,9 +244,10 @@ TlsNew (
   if (X509Store == NULL) {\r
     X509Store = X509_STORE_new ();\r
     if (X509Store == NULL) {\r
-      TlsFree ((VOID *) TlsConn);\r
+      TlsFree ((VOID *)TlsConn);\r
       return NULL;\r
     }\r
+\r
     SSL_CTX_set1_verify_cert_store (SslCtx, X509Store);\r
     X509_STORE_free (X509Store);\r
   }\r
@@ -256,6 +259,5 @@ TlsNew (
     X509Store,\r
     X509_V_FLAG_PARTIAL_CHAIN | X509_V_FLAG_NO_CHECK_TIME\r
     );\r
-  return (VOID *) TlsConn;\r
+  return (VOID *)TlsConn;\r
 }\r
-\r