summaryrefslogtreecommitdiff
path: root/datapath-windows/ovsext/BufferMgmt.c
diff options
context:
space:
mode:
authorAlin Serdean <aserdean@cloudbasesolutions.com>2017-07-14 04:40:53 +0000
committerBen Pfaff <blp@ovn.org>2017-08-02 11:27:00 -0700
commit5a3cb5148f1ec663fb4252545eaafe5c47b245d0 (patch)
tree09e87f5e7bc44145f98e2b4446210547c9020ca8 /datapath-windows/ovsext/BufferMgmt.c
parent1919e76d6b8ebce97c03291291e088c7a7e88fa2 (diff)
downloadopenvswitch-5a3cb5148f1ec663fb4252545eaafe5c47b245d0.tar.gz
datapath-windows: Fix possible NULL dereference in BufferMgmt
The mdl can be NULL. Found using WDK 10 static code analysis. Signed-off-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com> Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Shashank Ram <rams@vmware.com>
Diffstat (limited to 'datapath-windows/ovsext/BufferMgmt.c')
-rw-r--r--datapath-windows/ovsext/BufferMgmt.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/datapath-windows/ovsext/BufferMgmt.c b/datapath-windows/ovsext/BufferMgmt.c
index 5048ada0f..6e4cfc535 100644
--- a/datapath-windows/ovsext/BufferMgmt.c
+++ b/datapath-windows/ovsext/BufferMgmt.c
@@ -1674,9 +1674,11 @@ OvsCompleteNBL(POVS_SWITCH_CONTEXT context,
PNET_BUFFER nbTemp = NET_BUFFER_LIST_FIRST_NB(nbl);
while (nbTemp) {
PMDL mdl = NET_BUFFER_FIRST_MDL(nbTemp);
+ if (mdl) {
+ ASSERT(mdl->Next == NULL);
+ OvsFreeMDLAndData(mdl);
+ }
NET_BUFFER_FIRST_MDL(nbTemp) = NULL;
- ASSERT(mdl->Next == NULL);
- OvsFreeMDLAndData(mdl);
nbTemp = NET_BUFFER_NEXT_NB(nbTemp);
}
}