summaryrefslogtreecommitdiff
path: root/datapath-windows/ovsext/Stt.c
diff options
context:
space:
mode:
authorAlin Serdean <aserdean@cloudbasesolutions.com>2016-12-20 19:42:19 +0000
committerGurucharan Shetty <guru@ovn.org>2016-12-20 12:22:48 -0800
commitcd30b3460ac53719a6b8aaaba89b29c0304ac335 (patch)
treeddf8a6e75efbdf59ef999bba6ded22eff01be3c1 /datapath-windows/ovsext/Stt.c
parentda467899ab6e67b645840195a64600d1484d0dce (diff)
downloadopenvswitch-cd30b3460ac53719a6b8aaaba89b29c0304ac335.tar.gz
datapath-windows: Add multiple switch internal ports
This patch adds multiple internal ports support to the windows datapath. All tunnels types have been updated to accommodate this new functionality. Signed-off-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com> Co-authored-by: Sorin Vinturis <svinturis@cloudbasesolutions.com> Signed-off-by: Sorin Vinturis <svinturis@cloudbasesolutions.com> Acked-by: Paul Boca <pboca@cloudbasesolutions.com> Acked-by: Sairam Venugopal <vsairam@vmware.com> Signed-off-by: Gurucharan Shetty <guru@ovn.org>
Diffstat (limited to 'datapath-windows/ovsext/Stt.c')
-rw-r--r--datapath-windows/ovsext/Stt.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/datapath-windows/ovsext/Stt.c b/datapath-windows/ovsext/Stt.c
index b04a77f04..9da81dc4e 100644
--- a/datapath-windows/ovsext/Stt.c
+++ b/datapath-windows/ovsext/Stt.c
@@ -107,13 +107,14 @@ OvsEncapStt(POVS_VPORT_ENTRY vport,
OvsIPv4TunnelKey *tunKey,
POVS_SWITCH_CONTEXT switchContext,
POVS_PACKET_HDR_INFO layers,
- PNET_BUFFER_LIST *newNbl)
+ PNET_BUFFER_LIST *newNbl,
+ POVS_FWD_INFO switchFwdInfo)
{
OVS_FWD_INFO fwdInfo;
NDIS_STATUS status;
UNREFERENCED_PARAMETER(switchContext);
- status = OvsLookupIPFwdInfo(tunKey->dst, &fwdInfo);
+ status = OvsLookupIPFwdInfo(tunKey->src, tunKey->dst, &fwdInfo);
if (status != STATUS_SUCCESS) {
OvsFwdIPHelperRequest(NULL, 0, tunKey, NULL, NULL, NULL);
/*
@@ -123,6 +124,8 @@ OvsEncapStt(POVS_VPORT_ENTRY vport,
return NDIS_STATUS_FAILURE;
}
+ RtlCopyMemory(switchFwdInfo->value, fwdInfo.value, sizeof fwdInfo.value);
+
status = OvsDoEncapStt(vport, curNbl, tunKey, &fwdInfo, layers,
switchContext, newNbl);
return status;