diff options
author | Paul Boca <pboca@cloudbasesolutions.com> | 2016-04-27 08:05:47 +0000 |
---|---|---|
committer | Ben Pfaff <blp@ovn.org> | 2016-05-16 22:04:58 -0700 |
commit | e6b298ef73816355e94e22a7df0cd28414957087 (patch) | |
tree | 502a15bcf85497676f561f13e5fcb8b98dd19e67 /datapath-windows/ovsext/User.c | |
parent | 59936df6f45cf554ca201a08d8335af04d82a82c (diff) | |
download | openvswitch-e6b298ef73816355e94e22a7df0cd28414957087.tar.gz |
datapath-windows: Validate Netlink packets' integrity.
Solved access violation when trying to access Netlink message - obtained
with forged IOCTLs.
Signed-off-by: Paul-Daniel Boca <pboca@cloudbasesolutions.com>
Acked-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
Diffstat (limited to 'datapath-windows/ovsext/User.c')
-rw-r--r-- | datapath-windows/ovsext/User.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/datapath-windows/ovsext/User.c b/datapath-windows/ovsext/User.c index 34f38f45f..f2e3c1791 100644 --- a/datapath-windows/ovsext/User.c +++ b/datapath-windows/ovsext/User.c @@ -345,8 +345,9 @@ OvsNlExecuteCmdHandler(POVS_USER_PARAMS_CONTEXT usrParamsCtx, POVS_MESSAGE_ERROR msgError = (POVS_MESSAGE_ERROR) usrParamsCtx->outputBuffer; - NlBuildErrorMsg(msgIn, msgError, nlError); - *replyLen = msgError->nlMsg.nlmsgLen; + UINT32 msgErrorLen = usrParamsCtx->outputLength; + + NlBuildErrorMsg(msgIn, msgError, msgErrorLen, nlError, replyLen); status = STATUS_SUCCESS; goto done; } |