From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Vladislav Shpilevoy Subject: [PATCH v2 00/11] SWIM preparation Date: Wed, 5 Dec 2018 00:28:45 +0300 Message-Id: To: tarantool-patches@freelists.org Cc: vdavydov.dev@gmail.com List-ID: SWIM is going to use evio to bind to an address, specified by a user. Evio encapsulates bind/rebind, diagnostics, socket family. But evio is C++ and SWIM is C. The patchset converts evio to C alongside with sio, which is used in evio. During conversion several not critical bugs were found and fixed in separate commits. Branch: http://github.com/tarantool/tarantool/tree/gerold103/gh-3234-swim-preparation Issue: https://github.com/tarantool/tarantool/issues/3234 V1: https://www.freelists.org/post/tarantool-patches/PATCH-0011-SWIM-preparation Changes in v2: - Removed unnecessary refactoring to save git history; - Changed a way how to say that a sio error is critical; - Dropped a bugfix about negative size_t. Vladislav Shpilevoy (11): sio: remove unused functions sio: treat EADDRINUSE in sio_listen as error sio: remove exceptions sio: make code compatible with C sio: turn into C evio: make on_accept be nothrow coio: fix double close of a file descriptor evio: remove exceptions coio: fix file descriptor leak on accept evio: make code C compatible evio: turn nto c src/CMakeLists.txt | 4 +- src/box/iproto.cc | 46 ++++---- src/coio.cc | 59 ++++++----- src/{evio.cc => evio.c} | 183 ++++++++++++++++---------------- src/evio.h | 41 +++++--- src/{sio.cc => sio.c} | 226 +++++++--------------------------------- src/sio.h | 66 ++---------- 7 files changed, 221 insertions(+), 404 deletions(-) rename src/{evio.cc => evio.c} (76%) rename src/{sio.cc => sio.c} (64%) -- 2.17.2 (Apple Git-113)