summaryrefslogtreecommitdiffstats
path: root/CryptoPkg/Library/TlsLib/InternalTlsLib.h
diff options
context:
space:
mode:
authorJiaxin Wu <jiaxin.wu@intel.com>2016-12-14 10:34:57 +0800
committerJiaxin Wu <jiaxin.wu@intel.com>2016-12-22 20:33:22 +0800
commit9396cdfeaa7a053093c9d0a1f13ef6d672dfaa9f (patch)
tree69484bd9eae9f7b428441956917b886eb60bbb8b /CryptoPkg/Library/TlsLib/InternalTlsLib.h
parent32387e0081db5ec9cda2b58f72e2ccb04e3ff48e (diff)
downloadedk2-9396cdfeaa7a053093c9d0a1f13ef6d672dfaa9f.tar.gz
edk2-9396cdfeaa7a053093c9d0a1f13ef6d672dfaa9f.tar.bz2
edk2-9396cdfeaa7a053093c9d0a1f13ef6d672dfaa9f.zip
CryptoPkg: Add new TlsLib library
v2: * Code refine and Typo fix: TlsHandeAlert -> TlsHandleAlert This patch is used to add new TlsLib library, which is wrapped over OpenSSL. The implementation provides TLS library functions for EFI TLS protocol and EFI TLS Configuration Protocol. Cc: Ye Ting <ting.ye@intel.com> Cc: Long Qin <qin.long@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Cc: Zhang Lubo <lubo.zhang@intel.com> Cc: Thomas Palmer <thomas.palmer@hpe.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com> Reviewed-by: Qin Long <qin.long@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com>
Diffstat (limited to 'CryptoPkg/Library/TlsLib/InternalTlsLib.h')
-rw-r--r--CryptoPkg/Library/TlsLib/InternalTlsLib.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/CryptoPkg/Library/TlsLib/InternalTlsLib.h b/CryptoPkg/Library/TlsLib/InternalTlsLib.h
new file mode 100644
index 0000000000..e75146648d
--- /dev/null
+++ b/CryptoPkg/Library/TlsLib/InternalTlsLib.h
@@ -0,0 +1,39 @@
+/** @file
+ Internal include file for TlsLib.
+
+Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
+This program and the accompanying materials
+are licensed and made available under the terms and conditions of the BSD License
+which accompanies this distribution. The full text of the license may be found at
+http://opensource.org/licenses/bsd-license.php
+
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+
+**/
+
+#ifndef __INTERNAL_TLS_LIB_H__
+#define __INTERNAL_TLS_LIB_H__
+
+#include <Library/BaseCryptLib.h>
+#include <openssl/ssl.h>
+#include <openssl/bio.h>
+#include <openssl/err.h>
+
+typedef struct {
+ //
+ // Main SSL Connection which is created by a server or a client
+ // per established connection.
+ //
+ SSL *Ssl;
+ //
+ // Memory BIO for the TLS/SSL Reading operations.
+ //
+ BIO *InBio;
+ //
+ // Memory BIO for the TLS/SSL Writing operations.
+ //
+ BIO *OutBio;
+} TLS_CONNECTION;
+
+#endif