Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 14 Apr 2017 09:53:26 -0600
From:      Ian Lepore <ian@freebsd.org>
To:        cem@freebsd.org, "Andrey V. Elsukov" <ae@freebsd.org>
Cc:        src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r316826 - head/sys/netpfil/ipfw/nat64
Message-ID:  <1492185206.73883.126.camel@freebsd.org>
In-Reply-To: <CAG6CVpVJ%2BJ_dy%2BNV=SFXSN6O7OOBQOAW6gZvRBJDsQNxNyHy2A@mail.gmail.com>
References:  <201704141158.v3EBwfLm003147@repo.freebsd.org> <CAG6CVpVJ%2BJ_dy%2BNV=SFXSN6O7OOBQOAW6gZvRBJDsQNxNyHy2A@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 2017-04-14 at 08:32 -0700, Conrad Meyer wrote:
> On Fri, Apr 14, 2017 at 4:58 AM, Andrey V. Elsukov <ae@freebsd.org>
> wrote:
> > 
> > Author: ae
> > Date: Fri Apr 14 11:58:41 2017
> > New Revision: 316826
> > URL: https://svnweb.freebsd.org/changeset/base/316826
> > 
> > Log:
> >   Avoid undefined behavior.
> > 
> >   The 'pktid' variable is modified while being used twice between
> >   sequence points, probably due to htonl() is macro.
> FYI — there are a ton of similar reports in sys/rpc due to the XDR
> macros (which read a network value off a pointer and increment it).
> See e.g., IXDR_GET_UINT32() macro.
> 
> Best,
> Conrad

Aren't they all false positives, since the macros involved are g'teed
not to evaluate their arguments more than once as written (because
__builtin_constant_p always evaluates at compile time)?  Do we really
want to churn our source code to eliminate false positives from some
tool that appears to still be in its alpha-testing state?

-- Ian



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1492185206.73883.126.camel>