From 13bf94853ac97bb99bba93de19132bc1d32701d9 Mon Sep 17 00:00:00 2001
From: GeorgyKirichenko <kirichenkoga@gmail.com>
Date: Wed, 13 Apr 2016 12:47:03 +0300
Subject: [PATCH] Stop iproto service on exit

---
 src/box/iproto.cc         | 2 ++
 test/box-tap/cfg.result   | 3 ++-
 test/box-tap/cfg.test.lua | 6 +++++-
 3 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/box/iproto.cc b/src/box/iproto.cc
index 5bdf90435a..3cd3fcc32b 100644
--- a/src/box/iproto.cc
+++ b/src/box/iproto.cc
@@ -916,6 +916,8 @@ net_cord_f(va_list /* ap */)
 	 * connections.
 	 */
 	fiber_yield();
+	if (evio_service_is_active(&binary))
+		evio_service_stop(&binary);
 
 	rmean_delete(rmean_net);
 	cbus_leave(&net_tx_bus);
diff --git a/test/box-tap/cfg.result b/test/box-tap/cfg.result
index c4df849d5b..db080630d8 100644
--- a/test/box-tap/cfg.result
+++ b/test/box-tap/cfg.result
@@ -1,5 +1,5 @@
 TAP version 13
-1..40
+1..41
 ok - box is not started
 ok - invalid replication_source
 ok - invalid wal_mode
@@ -40,3 +40,4 @@ ok - logger_nonblock new value
 ok - dynamic listen
 ok - dynamic listen
 ok - reuse unix socket
+ok - delete socket at exit
diff --git a/test/box-tap/cfg.test.lua b/test/box-tap/cfg.test.lua
index 78b35c70e7..6b1b19a083 100755
--- a/test/box-tap/cfg.test.lua
+++ b/test/box-tap/cfg.test.lua
@@ -4,7 +4,7 @@ local tap = require('tap')
 local test = tap.test('cfg')
 local socket = require('socket')
 local fio = require('fio')
-test:plan(40)
+test:plan(41)
 
 --------------------------------------------------------------------------------
 -- Invalid values
@@ -182,5 +182,9 @@ if s then s:close() end
 box.cfg{ listen = '' }
 os.remove(path2)
 
+code = " box.cfg{ listen='unix/:'" .. path .. "' } "
+run_script(code)
+test:isnil(fio.stat(path), "delete socket at exit")
+
 test:check()
 os.exit(0)
-- 
GitLab