mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Neil Conway" <neil.con...@gmail.com>
Subject Re: Review Request 40435: Fixed pointer alignment error in IP::create().
Date Thu, 03 Dec 2015 06:28:14 GMT

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/40435/
-----------------------------------------------------------

(Updated Dec. 3, 2015, 6:28 a.m.)


Review request for mesos, Benjamin Bannier, Ben Mahler, Joris Van Remoortere, Michael Park,
and Niklas Nielsen.


Changes
-------

Address mpark's comments.


Bugs: MESOS-3939
    https://issues.apache.org/jira/browse/MESOS-3939


Repository: mesos


Description
-------

The previous code took the address of a "struct sockaddr", and then cast the
resulting pointer to "struct sockaddr_storage *". The alignment requirements for
"struct sockaddr_storage *" are more strict than for "struct sockaddr *", and
hence this code produced undefined behavior per ubsan in GCC 5.2.

Along the way, tweak the code to use reinterpret_cast rather than a C-style
cast, and not to unnecessarily cast-away constness.

MESOS-3939.


Diffs (updated)
-----

  3rdparty/libprocess/3rdparty/stout/include/stout/ip.hpp 3e506e1e94ee32e3a19870e1fd72d9968c5f8e67


Diff: https://reviews.apache.org/r/40435/diff/


Testing
-------

"make check" on Linux/AMD64 + GCC 5.2 + ubsan; without fix, ubsan reports an error. With fix,
ubsan does not report (this) error.


Thanks,

Neil Conway


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message