Cc: Palmer Thomas <thomas.pal...@hpe.com>
Cc: Long Qin <qin.l...@intel.com>
Cc: Ye Ting <ting...@intel.com>
Cc: Fu Siyuan <siyuan...@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Wu Jiaxin <jiaxin...@intel.com>
Signed-off-by: Jiaxin Wu <jiaxin...@intel.com>
---
 NetworkPkg/TlsDxe/TlsImpl.c     | 56 ++++++++++++++++++++---------------------
 NetworkPkg/TlsDxe/TlsImpl.h     | 30 ++--------------------
 NetworkPkg/TlsDxe/TlsProtocol.c |  2 +-
 3 files changed, 31 insertions(+), 57 deletions(-)

diff --git a/NetworkPkg/TlsDxe/TlsImpl.c b/NetworkPkg/TlsDxe/TlsImpl.c
index 8cb1c15..b840e54 100644
--- a/NetworkPkg/TlsDxe/TlsImpl.c
+++ b/NetworkPkg/TlsDxe/TlsImpl.c
@@ -36,22 +36,22 @@ TlsEcryptPacket (
   IN     TLS_INSTANCE                  *TlsInstance,
   IN OUT EFI_TLS_FRAGMENT_DATA         **FragmentTable,
   IN     UINT32                        *FragmentCount
   )
 {
-  UINTN           Index;
-  UINT32          BytesCopied;
-  UINT32          BufferInSize;
-  UINT8           *BufferIn;
-  UINT8           *BufferInPtr;
-  TLSRecordHeader *RecordHeaderIn;
-  UINT16          ThisPlainMessageSize;
-  TLSRecordHeader *TempRecordHeader;
-  UINT16          ThisMessageSize;
-  UINT32          BufferOutSize;
-  UINT8           *BufferOut;
-  INTN            Ret;
+  UINTN               Index;
+  UINT32              BytesCopied;
+  UINT32              BufferInSize;
+  UINT8               *BufferIn;
+  UINT8               *BufferInPtr;
+  TLS_RECORD_HEADER   *RecordHeaderIn;
+  UINT16              ThisPlainMessageSize;
+  TLS_RECORD_HEADER   *TempRecordHeader;
+  UINT16              ThisMessageSize;
+  UINT32              BufferOutSize;
+  UINT8               *BufferOut;
+  INTN                Ret;
   
   BytesCopied      = 0;
   BufferInSize     = 0;
   BufferIn         = NULL;
   BufferInPtr      = NULL;
@@ -96,13 +96,13 @@ TlsEcryptPacket (
   
   //
   // Parsing buffer. 
   //
   BufferInPtr = BufferIn;
-  TempRecordHeader = (TLSRecordHeader *) BufferOut;
+  TempRecordHeader = (TLS_RECORD_HEADER *) BufferOut;
   while ((UINTN) BufferInPtr < (UINTN) BufferIn + BufferInSize) {
-    RecordHeaderIn = (TLSRecordHeader *) BufferInPtr;
+    RecordHeaderIn = (TLS_RECORD_HEADER *) BufferInPtr;
     ASSERT (RecordHeaderIn->ContentType == TLS_CONTENT_TYPE_APPLICATION_DATA);
     ThisPlainMessageSize = RecordHeaderIn->Length;
 
     TlsWrite (TlsInstance->TlsConn, (UINT8 *) (RecordHeaderIn + 1), 
ThisPlainMessageSize);
     if (TlsInStateError (TlsInstance->TlsConn)) {
@@ -164,22 +164,22 @@ TlsDecryptPacket (
   IN     TLS_INSTANCE                  *TlsInstance,
   IN OUT EFI_TLS_FRAGMENT_DATA         **FragmentTable,
   IN     UINT32                        *FragmentCount
   )
 {
-  UINTN           Index;
-  UINT32          BytesCopied;
-  UINT8           *BufferIn;
-  UINT32          BufferInSize;
-  UINT8           *BufferInPtr;
-  TLSRecordHeader *RecordHeaderIn;
-  UINT16          ThisCipherMessageSize;
-  TLSRecordHeader *TempRecordHeader;
-  UINT16          ThisPlainMessageSize;
-  UINT8           *BufferOut;
-  UINT32          BufferOutSize;
-  INTN            Ret;
+  UINTN               Index;
+  UINT32              BytesCopied;
+  UINT8               *BufferIn;
+  UINT32              BufferInSize;
+  UINT8               *BufferInPtr;
+  TLS_RECORD_HEADER   *RecordHeaderIn;
+  UINT16              ThisCipherMessageSize;
+  TLS_RECORD_HEADER   *TempRecordHeader;
+  UINT16              ThisPlainMessageSize;
+  UINT8               *BufferOut;
+  UINT32              BufferOutSize;
+  INTN                Ret;
   
   BytesCopied      = 0;
   BufferIn         = NULL; 
   BufferInSize     = 0;  
   BufferInPtr      = NULL;
@@ -224,13 +224,13 @@ TlsDecryptPacket (
 
   //
   // Parsing buffer. Received packet may have multiply TLS record message.
   //
   BufferInPtr = BufferIn;
-  TempRecordHeader = (TLSRecordHeader *) BufferOut;
+  TempRecordHeader = (TLS_RECORD_HEADER *) BufferOut;
   while ((UINTN) BufferInPtr < (UINTN) BufferIn + BufferInSize) {
-    RecordHeaderIn = (TLSRecordHeader *) BufferInPtr;
+    RecordHeaderIn = (TLS_RECORD_HEADER *) BufferInPtr;
     ASSERT (RecordHeaderIn->ContentType == TLS_CONTENT_TYPE_APPLICATION_DATA);
     ThisCipherMessageSize = NTOHS (RecordHeaderIn->Length);
 
     Ret = TlsCtrlTrafficIn (TlsInstance->TlsConn, (UINT8 *) (RecordHeaderIn), 
RECORD_HEADER_LEN + ThisCipherMessageSize);
     if (Ret != RECORD_HEADER_LEN + ThisCipherMessageSize) {
diff --git a/NetworkPkg/TlsDxe/TlsImpl.h b/NetworkPkg/TlsDxe/TlsImpl.h
index cceb130..358a8d0 100644
--- a/NetworkPkg/TlsDxe/TlsImpl.h
+++ b/NetworkPkg/TlsDxe/TlsImpl.h
@@ -33,10 +33,12 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER 
EXPRESS OR IMPLIED.
 // Consumed Protocols
 //
 #include <Protocol/Tls.h>
 #include <Protocol/TlsConfig.h>
 
+#include <IndustryStandard/Tls1.h>
+
 #include "TlsDriver.h"
 
 //
 // Protocol instances
 //
@@ -46,38 +48,10 @@ extern EFI_TLS_CONFIGURATION_PROTOCOL  
mTlsConfigurationProtocol;
 
 #define RECORD_HEADER_LEN 5 /// ContentType(1) + Version(2) + Length(2)
 
 #define MAX_BUFFER_SIZE   32768
 
-#pragma pack (push, 1)
-
-//TLS Version
-#define TLS10_PROTOCOL_VERSION_MAJOR  0x03
-#define TLS10_PROTOCOL_VERSION_MINOR  0x01
-#define TLS11_PROTOCOL_VERSION_MAJOR  0x03
-#define TLS11_PROTOCOL_VERSION_MINOR  0x02
-#define TLS12_PROTOCOL_VERSION_MAJOR  0x03
-#define TLS12_PROTOCOL_VERSION_MINOR  0x03
-
-//
-//Content Type
-//
-typedef enum {
-  TLS_CONTENT_TYPE_CHANGE_CIPHER_SPEC = 20,
-  TLS_CONTENT_TYPE_ALERT              = 21,
-  TLS_CONTENT_TYPE_HANDSHAKE          = 22,
-  TLS_CONTENT_TYPE_APPLICATION_DATA   = 23,
-} TLS_CONTENT_TYPE;
-
-typedef struct {   
-  UINT8                   ContentType;
-  EFI_TLS_VERSION         Version;
-  UINT16                  Length;
-} TLSRecordHeader;
-
-#pragma pack (pop)
-
 /**
   Encrypt the message listed in fragment.
 
   @param[in]       TlsInstance    The pointer to the TLS instance.
   @param[in, out]  FragmentTable  Pointer to a list of fragment. 
diff --git a/NetworkPkg/TlsDxe/TlsProtocol.c b/NetworkPkg/TlsDxe/TlsProtocol.c
index 92cd472..b780ad2 100644
--- a/NetworkPkg/TlsDxe/TlsProtocol.c
+++ b/NetworkPkg/TlsDxe/TlsProtocol.c
@@ -516,11 +516,11 @@ TlsBuildResponsePacket (
       }
     } else {
       //
       // Must be alert message, Decrypt it and build the ResponsePacket.
       //
-      ASSERT (((TLSRecordHeader *) RequestBuffer)->ContentType == 
TLS_CONTENT_TYPE_ALERT);
+      ASSERT (((TLS_RECORD_HEADER *) RequestBuffer)->ContentType == 
TLS_CONTENT_TYPE_ALERT);
 
       Status = TlsHandeAlert (
                  Instance->TlsConn, 
                  RequestBuffer,
                  RequestSize,
-- 
1.9.5.msysgit.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to