Can we decide if tcp and icmp is null in OvsConntrackValidateTcpPacket? It
makes the function more complete and safer by itself.

On Mon, Nov 28, 2016 at 6:11 AM, Alin Serdean <
[email protected]> wrote:

> This patch checks if the TCP or ICMP header exists before trying to use
> them.
>
> The issue was found using the driver under low resources.
>
> Signed-off-by: Alin Gabriel Serdean <[email protected]>
> ---
>  datapath-windows/ovsext/Conntrack.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/datapath-windows/ovsext/Conntrack.c
> b/datapath-windows/ovsext/Conntrack.c
> index e663c3b..56a7cbc 100644
> --- a/datapath-windows/ovsext/Conntrack.c
> +++ b/datapath-windows/ovsext/Conntrack.c
> @@ -194,7 +194,7 @@ OvsCtEntryCreate(PNET_BUFFER_LIST curNbl,
>              TCPHdr tcpStorage;
>              const TCPHdr *tcp;
>              tcp = OvsGetTcp(curNbl, l4Offset, &tcpStorage);
> -            if (!OvsConntrackValidateTcpPacket(tcp)) {
> +            if (!tcp || !OvsConntrackValidateTcpPacket(tcp)) {
>                  goto invalid;
>              }
>
> @@ -215,7 +215,7 @@ OvsCtEntryCreate(PNET_BUFFER_LIST curNbl,
>              ICMPHdr storage;
>              const ICMPHdr *icmp;
>              icmp = OvsGetIcmp(curNbl, l4Offset, &storage);
> -            if (!OvsConntrackValidateIcmpPacket(icmp)) {
> +            if (!icmp || !OvsConntrackValidateIcmpPacket(icmp)) {
>                  goto invalid;
>              }
>
> --
> 2.10.2.windows.1
> _______________________________________________
> dev mailing list
> [email protected]
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to