mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jojy Varghese" <j...@mesosphere.io>
Subject Re: Review Request 41253: Added SSL_SENT_SHUTDOWN option to SSL_set_shutdown.
Date Mon, 14 Dec 2015 18:13:00 GMT

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

(Updated Dec. 14, 2015, 6:13 p.m.)


Review request for mesos and Joris Van Remoortere.


Changes
-------

updated description to make the change more understandable.


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


Repository: mesos


Description (updated)
-------

libprocess Socket shares the ownership of the file descriptor with libevent. In the destructor
of the libprocess libevent_ssl socket, we call ssl shutdown which is executed asynchronously.
This causes the libprocess socket file descriptor to be closed (and possibly reused) when
the same file descriptor could be used by libevent/ssl. Since we set the shutdown options
as SSL_RECEIVED_SHUTDOWN, we leave the any write operations to continue with possibly closed
file descriptor.

This change is to ensure that both send and receivesides of the socket are terminated so that
we avoid the race condition between libevent continuing with writes when the libprocess socket
is closed.

An alternate/better solution is to ::dup the libprocess socket's file descriptor and then
manage its life cycle. This solution is a little more involved and needs more time.


Diffs
-----

  3rdparty/libprocess/src/libevent_ssl_socket.cpp 55b91dd47bb5bd5e97147d0af91c7899fd42702c


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


Testing
-------

make check.


Thanks,

Jojy Varghese


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