> diff --git a/datapath-windows/ovsext/Netlink/NetlinkBuf.c 
> b/datapath-windows/ovsext/Netlink/NetlinkBuf.c
> index 918bddd..bc079ef 100644
> --- a/datapath-windows/ovsext/Netlink/NetlinkBuf.c
> +++ b/datapath-windows/ovsext/Netlink/NetlinkBuf.c
> @@ -291,7 +291,7 @@ NlBufAt(PNL_BUFFER nlBuf, UINT32 offset, UINT32 bufLen)
>         goto done;
>     }
> 
> -    if ((offset + bufLen) > NL_BUF_USED_SPACE(nlBuf)) {
> +    if ((offset + bufLen) > nlBuf->bufRemLen) {

Should this not be?
    if ((offset + bufLen) > nlBuf->bufLen) {

Basically, lets say total buffer size is 48, and you have used up 40 bytes. So:
nlBuf->bufLen is 48
nlBuf->bufRemLen is 8

If offset = 40, and bufLen = 16, you want to fail the API.
If offset = 40, and bufLen = 4, you want to succeed the API.

Looks good otherwise.

Thanks,
-- Nithin

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to