summaryrefslogtreecommitdiff
path: root/datapath-windows/ovsext/User.c
diff options
context:
space:
mode:
Diffstat (limited to 'datapath-windows/ovsext/User.c')
-rw-r--r--datapath-windows/ovsext/User.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/datapath-windows/ovsext/User.c b/datapath-windows/ovsext/User.c
index 78802200f..22ee7afe2 100644
--- a/datapath-windows/ovsext/User.c
+++ b/datapath-windows/ovsext/User.c
@@ -465,6 +465,11 @@ OvsExecuteDpIoctl(OvsPacketExecute *execute)
ndisStatus = OvsExtractFlow(pNbl, execute->inPort, &key, &layers,
tempTunKey.tunKey.dst == 0 ? NULL : &tempTunKey.tunKey);
+ if (ndisStatus != NDIS_STATUS_SUCCESS) {
+ /* Invalid network header */
+ goto dropit;
+ }
+
ctx = (POVS_BUFFER_CONTEXT)NET_BUFFER_LIST_CONTEXT_DATA_START(pNbl);
ctx->mru = execute->mru;