Fix a bug that the TrafficDirection field is not saved in IPsecConfig.SetData.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Fu Siyuan <siyuan...@intel.com>
---
 NetworkPkg/IpSecDxe/IpSecConfigImpl.c | 14 ++++++++------
 NetworkPkg/IpSecDxe/IpSecImpl.h       |  1 +
 2 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/NetworkPkg/IpSecDxe/IpSecConfigImpl.c 
b/NetworkPkg/IpSecDxe/IpSecConfigImpl.c
index bd49245..6aa47aa 100644
--- a/NetworkPkg/IpSecDxe/IpSecConfigImpl.c
+++ b/NetworkPkg/IpSecDxe/IpSecConfigImpl.c
@@ -1167,9 +1167,10 @@ SetSpdEntry (
     SpdData->Name,
     sizeof (SpdData->Name)
     );
-  SpdEntry->Data->PackageFlag = SpdData->PackageFlag;
-  SpdEntry->Data->Action      = SpdData->Action;
-
+  SpdEntry->Data->PackageFlag      = SpdData->PackageFlag;
+  SpdEntry->Data->TrafficDirection = SpdData->TrafficDirection;
+  SpdEntry->Data->Action           = SpdData->Action;
+  
   //
   // Fix the address of ProcessingPolicy and copy it if need, which is 
continous
   // memory and close to the base structure of SAD data.
@@ -1690,9 +1691,10 @@ GetSpdEntry (
       //
       CopyMem (SpdData->Name, SpdEntry->Data->Name, sizeof (SpdData->Name));
 
-      SpdData->PackageFlag  = SpdEntry->Data->PackageFlag;
-      SpdData->Action       = SpdEntry->Data->Action;
-
+      SpdData->PackageFlag      = SpdEntry->Data->PackageFlag;
+      SpdData->TrafficDirection = SpdEntry->Data->TrafficDirection;
+      SpdData->Action           = SpdEntry->Data->Action;
+      
       if (SpdData->Action != EfiIPsecActionProtect) {
         SpdData->ProcessingPolicy = NULL;
       } else {
diff --git a/NetworkPkg/IpSecDxe/IpSecImpl.h b/NetworkPkg/IpSecDxe/IpSecImpl.h
index 8b63d24..89597bd 100644
--- a/NetworkPkg/IpSecDxe/IpSecImpl.h
+++ b/NetworkPkg/IpSecDxe/IpSecImpl.h
@@ -76,6 +76,7 @@ typedef struct _EFI_ESP_TAIL {
 struct _IPSEC_SPD_DATA {
   CHAR16                    Name[100];
   UINT32                    PackageFlag;
+  EFI_IPSEC_TRAFFIC_DIR     TrafficDirection;
   EFI_IPSEC_ACTION          Action;
   EFI_IPSEC_PROCESS_POLICY  *ProcessingPolicy;
   LIST_ENTRY                Sas;
-- 
2.5.0.windows.1

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

Reply via email to