diff options
author | Fu Siyuan <siyuan.fu@intel.com> | 2015-09-16 08:52:43 +0000 |
---|---|---|
committer | sfu5 <sfu5@Edk2> | 2015-09-16 08:52:43 +0000 |
commit | 96702f88a3dcbeb94ec1e7abbec6c331e70f2e47 (patch) | |
tree | 772d9d8b8639dc2f304b794aae7481383f782124 | |
parent | a8706acb0ee847c1521bd8db71c144fd24480e0b (diff) | |
download | edk2-96702f88a3dcbeb94ec1e7abbec6c331e70f2e47.zip edk2-96702f88a3dcbeb94ec1e7abbec6c331e70f2e47.tar.gz edk2-96702f88a3dcbeb94ec1e7abbec6c331e70f2e47.tar.bz2 |
NetworkPkg: TrafficDirection not saved in IPsecConfig.
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.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18483 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r-- | NetworkPkg/IpSecDxe/IpSecConfigImpl.c | 14 | ||||
-rw-r--r-- | 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;
|