From 6908df6fd0da9265c354af75b90fe1ebfe2bd608 Mon Sep 17 00:00:00 2001
From: Konstantin Osipov <kostja.osipov@gmail.com>
Date: Sun, 27 Feb 2011 20:05:57 +0300
Subject: [PATCH] Rename 'silverbox' to 'box', across the board.

Rename 'silverbox' to 'box', across the board.
Delete the remnants of the old build system
(scripts/rules.mk and scripts/config-def.mk).

Do not touch client/perl for now, since it's maintained
elsewhere.
---
 .gitignore                                    |   2 +-
 CMakeLists.txt                                |   8 +-
 README                                        |  14 +-
 cfg/CMakeLists.txt                            |   2 +-
 ...ol_silverbox_cfg.c => tarantool_box_cfg.c} |   2 +-
 ...ilverbox_cfg.cfg => tarantool_box_cfg.cfg} |   0
 ...ol_silverbox_cfg.h => tarantool_box_cfg.h} |   0
 cfg/warning.c                                 |   4 +-
 cmake/tarantool_cpack.cmake                   |   4 +-
 ...ilverbox-protocol.txt => box-protocol.txt} |   4 +-
 mod/box/CMakeLists.txt                        |  11 +
 mod/{silverbox => box}/assoc.h                |   0
 mod/{silverbox => box}/box.c                  |   8 +-
 mod/{silverbox => box}/box.h                  |   6 +-
 .../box_cfg.cfg_tmpl}                         |   0
 mod/{silverbox => box}/client/perl/MANIFEST   |   0
 .../client/perl/Makefile.PL                   |   0
 .../client/perl/lib/MR/IProto.pm              |   0
 .../client/perl/lib/MR/SilverBox.pm           |   0
 .../client/perl/lib/MR/Storage/Const.pm       |   0
 mod/box/client/ruby/README                    |   1 +
 .../silverbox.rb => box/client/ruby/box.rb}   |   2 +-
 mod/{silverbox => box}/client/ruby/iproto.rb  |   0
 mod/{silverbox => box}/index.c                |   4 +-
 mod/{silverbox => box}/index.h                |   6 +-
 mod/{silverbox => box}/memcached.c            | 510 +++++++++---------
 mod/{silverbox => box}/memcached.rl           |   6 +-
 mod/{silverbox => box}/t/TBox.pm              |   0
 mod/{silverbox => box}/t/box.pl               |   0
 mod/{silverbox => box}/t/box_tree.pl          |   0
 mod/silverbox/CMakeLists.txt                  |  11 -
 mod/silverbox/client/ruby/README              |   1 -
 scripts/config_def.mk                         |  45 --
 scripts/indent                                |   2 +-
 scripts/rules.mk                              | 108 ----
 scripts/run_test.sh                           |  22 +-
 test/CMakeLists.txt                           |   2 +-
 test/box/args.result                          |  40 +-
 test/box/suite.ini                            |   2 +-
 ...rbox_server.py => tarantool_box_server.py} |   4 +-
 test/lib/test_suite.py                        |   6 +-
 test/tarantool                                |   2 +-
 test/test-run.py                              |   4 +-
 43 files changed, 345 insertions(+), 498 deletions(-)
 rename cfg/{tarantool_silverbox_cfg.c => tarantool_box_cfg.c} (99%)
 rename cfg/{tarantool_silverbox_cfg.cfg => tarantool_box_cfg.cfg} (100%)
 rename cfg/{tarantool_silverbox_cfg.h => tarantool_box_cfg.h} (100%)
 rename doc/{silverbox-protocol.txt => box-protocol.txt} (98%)
 create mode 100644 mod/box/CMakeLists.txt
 rename mod/{silverbox => box}/assoc.h (100%)
 rename mod/{silverbox => box}/box.c (99%)
 rename mod/{silverbox => box}/box.h (97%)
 rename mod/{silverbox/silverbox_cfg.cfg_tmpl => box/box_cfg.cfg_tmpl} (100%)
 rename mod/{silverbox => box}/client/perl/MANIFEST (100%)
 rename mod/{silverbox => box}/client/perl/Makefile.PL (100%)
 rename mod/{silverbox => box}/client/perl/lib/MR/IProto.pm (100%)
 rename mod/{silverbox => box}/client/perl/lib/MR/SilverBox.pm (100%)
 rename mod/{silverbox => box}/client/perl/lib/MR/Storage/Const.pm (100%)
 create mode 100644 mod/box/client/ruby/README
 rename mod/{silverbox/client/ruby/silverbox.rb => box/client/ruby/box.rb} (99%)
 rename mod/{silverbox => box}/client/ruby/iproto.rb (100%)
 rename mod/{silverbox => box}/index.c (99%)
 rename mod/{silverbox => box}/index.h (97%)
 rename mod/{silverbox => box}/memcached.c (87%)
 rename mod/{silverbox => box}/memcached.rl (99%)
 rename mod/{silverbox => box}/t/TBox.pm (100%)
 rename mod/{silverbox => box}/t/box.pl (100%)
 rename mod/{silverbox => box}/t/box_tree.pl (100%)
 delete mode 100644 mod/silverbox/CMakeLists.txt
 delete mode 100644 mod/silverbox/client/ruby/README
 delete mode 100644 scripts/config_def.mk
 delete mode 100644 scripts/rules.mk
 rename test/lib/{tarantool_silverbox_server.py => tarantool_box_server.py} (98%)

diff --git a/.gitignore b/.gitignore
index 56c23eec46..bc52d4c37c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -17,7 +17,7 @@ Makefile
 CMakeFiles
 CMakeCache.txt
 cmake_install.cmake
-mod/silverbox/tarantool_silverbox
+mod/box/tarantool_box
 mod/feeder/tarantool_feeder
 include/config.h
 CPackConfig.cmake
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f1991e2f15..97593e3d5a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -12,8 +12,8 @@ find_program(CONFETTI confetti)
 # This instructs the rest of the build system what product
 # and what modules to produce.
 #
-set (TARANTOOL_PRODUCT "silverbox")
-set (TARANTOOL_MODULES "silverbox" "feeder")
+set (TARANTOOL_PRODUCT "box")
+set (TARANTOOL_MODULES "box" "feeder")
 
 #
 # Set default build type to Debug. This is to ease a developer's
@@ -131,7 +131,7 @@ if (ENABLE_GCOV)
     endif()
 endif()
 
-option(ENABLE_TRACE "Enable debug trace of tarantool_silverbox execution to
+option(ENABLE_TRACE "Enable debug trace of tarantool_box execution to
 a file specified in TARANTOOL_TRACE environment variable" ON)
 
 option(ENABLE_BACKTRACE "Enable output of fiber backtrace information in 'show
@@ -168,7 +168,7 @@ add_subdirectory(core)
 add_subdirectory(mod)
 add_subdirectory(test)
 
-install (FILES README LICENSE doc/silverbox-protocol.txt
+install (FILES README LICENSE doc/box-protocol.txt
          DESTINATION doc)
 
 include (cmake/tarantool_cpack.cmake)
diff --git a/README b/README
index 324f68760a..718cecd6bc 100644
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
-TARANTOOL/SILVERBOX
+TARANTOOL/BOX
 
 Tarantool is a framework for in-memory key/value storage and
-Silverbox is a yet another in-memory key-value database.
+Box is a yet another in-memory key-value database.
 
 Key features of the pair include:
  * log streaming replication
@@ -29,8 +29,8 @@ Please follow these steps to compile Tarantool:
 tarantool $ cmake .
 tarantool $ make
 
-'make' will create tarantool_silverbox executable in directory
-mod/silverbox.
+'make' will create tarantool_box executable in directory
+mod/box.
 
 There is no 'make install' goal, but no installation
 is required either.
@@ -55,13 +55,13 @@ tarantool $ ./test/tarantool
 Alternatively, if a customized server configuration is required,
 you could follow these steps:
 
-tarantool $ emacs cfg/tarantool_silverbox_cfg.cfg # edit the configuration
+tarantool $ emacs cfg/tarantool_box_cfg.cfg # edit the configuration
 # Initialize the storage directory, path to this directory
 # is specified in the configuration file:
-tarantool $ mod/silverbox/tarantool_silverbox --config cfg/tarantool_silverbox_cfg.cfg --init-storage
+tarantool $ mod/box/tarantool_box --config cfg/tarantool_box_cfg.cfg --init-storage
 #
 # run
-tarantool $ mod/silverbox/tarantool_silverbox --config cfg/tarantool_silverbox_cfg.cfg
+tarantool $ mod/box/tarantool_box --config cfg/tarantool_box_cfg.cfg
 
 Please report bugs at http://bugs.launchpad.net/tarantool.
 We also warmly welcome your feedback in the discussion mailing
diff --git a/cfg/CMakeLists.txt b/cfg/CMakeLists.txt
index 168280f507..a13e8e0254 100644
--- a/cfg/CMakeLists.txt
+++ b/cfg/CMakeLists.txt
@@ -1,4 +1,4 @@
-#
+
 # Do not clean the generated configuration files in "make clean"
 #
 set_property(DIRECTORY PROPERTY CLEAN_NO_CUSTOM 1)
diff --git a/cfg/tarantool_silverbox_cfg.c b/cfg/tarantool_box_cfg.c
similarity index 99%
rename from cfg/tarantool_silverbox_cfg.c
rename to cfg/tarantool_box_cfg.c
index b8ba8a69bf..7218b9624b 100644
--- a/cfg/tarantool_silverbox_cfg.c
+++ b/cfg/tarantool_box_cfg.c
@@ -13,7 +13,7 @@
 
 #include "prscfg.h"
 void out_warning(ConfettyError r, char *format, ...);
-#include "cfg/tarantool_silverbox_cfg.h"
+#include "cfg/tarantool_box_cfg.h"
 static int
 cmpNameAtoms(NameAtom *a, NameAtom *b) {
 	while(a && b) {
diff --git a/cfg/tarantool_silverbox_cfg.cfg b/cfg/tarantool_box_cfg.cfg
similarity index 100%
rename from cfg/tarantool_silverbox_cfg.cfg
rename to cfg/tarantool_box_cfg.cfg
diff --git a/cfg/tarantool_silverbox_cfg.h b/cfg/tarantool_box_cfg.h
similarity index 100%
rename from cfg/tarantool_silverbox_cfg.h
rename to cfg/tarantool_box_cfg.h
diff --git a/cfg/warning.c b/cfg/warning.c
index 25a787002a..0075f778e7 100644
--- a/cfg/warning.c
+++ b/cfg/warning.c
@@ -5,8 +5,8 @@
 #include <util.h>
 
 /** This is a callback function used by the generated
- * configuration file parser (tarantool_{silverbox, feeder,
- * ...}_cfg.c) to complain when something wrong happens.
+ * configuration file parser (tarantool_{box, feeder, ...}_cfg.c)
+ * to complain when something wrong happens.
  */
 
 void
diff --git a/cmake/tarantool_cpack.cmake b/cmake/tarantool_cpack.cmake
index f6f7c42c4c..5e46c8bba1 100644
--- a/cmake/tarantool_cpack.cmake
+++ b/cmake/tarantool_cpack.cmake
@@ -9,8 +9,8 @@ set (CPACK_SOURCE_GENERATOR "TGZ")
 set (CPACK_SOURCE_IGNORE_FILES "\\\\.git" "_CPack_Packages"
     "CMakeCache.txt" "CPackSourceConfig.cmake" "CPackConfig.cmake"
     "CMakeFiles" "\\\\.gz" "\\\\.Z" "\\\\.zip"
-    "mod/silverbox/tarantool_silverbox"
-    "mod/silverbox/tarantool_feeder" "install_manifest.txt"
+    "mod/box/tarantool_box"
+    "mod/box/tarantool_feeder" "install_manifest.txt"
     "Makefile" "cmake_install.cmake" "test/var/" "\\\\.a")
 set (CPACK_SOURCE_PACKAGE_FILE_NAME
 "tarantool-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}-src")
diff --git a/doc/silverbox-protocol.txt b/doc/box-protocol.txt
similarity index 98%
rename from doc/silverbox-protocol.txt
rename to doc/box-protocol.txt
index 242d3df8b4..991485ff1f 100644
--- a/doc/silverbox-protocol.txt
+++ b/doc/box-protocol.txt
@@ -1,7 +1,7 @@
-; Mail.RU IPROTO protocol, Tarantool/Silverbox subset.
+; Mail.RU IPROTO protocol, Tarantool/Box subset.
 ;
 ; The latest version of this document can be found in
-; tarantool source tree, doc/silverbox-protocol.txt
+; tarantool source tree, doc/box-protocol.txt
 ;
 ; IPROTO is a binary request/response protocol that features a
 ; complete access to Tarantool functionality, including:
diff --git a/mod/box/CMakeLists.txt b/mod/box/CMakeLists.txt
new file mode 100644
index 0000000000..f92e265ecd
--- /dev/null
+++ b/mod/box/CMakeLists.txt
@@ -0,0 +1,11 @@
+add_custom_command(OUTPUT ${CMAKE_SOURCE_DIR}/mod/box/memcached.c
+    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
+    COMMAND ${RAGEL} -G2 mod/box/memcached.rl -o mod/box/memcached.c
+    DEPENDS ${CMAKE_SOURCE_DIR}/mod/box/memcached.rl)
+# Do not clean memcached.c in 'make clean'.
+set_property(DIRECTORY PROPERTY CLEAN_NO_CUSTOM 1)
+
+set_source_files_properties(memcached.c
+    PROPERTIES COMPILE_FLAGS "-Wno-uninitialized")
+
+tarantool_module("box" index.c box.c memcached.c)
diff --git a/mod/silverbox/assoc.h b/mod/box/assoc.h
similarity index 100%
rename from mod/silverbox/assoc.h
rename to mod/box/assoc.h
diff --git a/mod/silverbox/box.c b/mod/box/box.c
similarity index 99%
rename from mod/silverbox/box.c
rename to mod/box/box.c
index 069cd7a339..b619cfb4bf 100644
--- a/mod/silverbox/box.c
+++ b/mod/box/box.c
@@ -40,9 +40,9 @@
 #include <tbuf.h>
 #include <util.h>
 
-#include <cfg/tarantool_silverbox_cfg.h>
-#include <mod/silverbox/box.h>
-#include <mod/silverbox/index.h>
+#include <cfg/tarantool_box_cfg.h>
+#include <mod/box/box.h>
+#include <mod/box/index.h>
 
 bool box_updates_allowed = false;
 static char *status = "unknown";
@@ -811,7 +811,7 @@ box_dispach(struct box_txn *txn, enum box_mode mode, u16 op, struct tbuf *data)
 		break;
 
 	default:
-		say_error("silverbox_dispach: unsupported command = %" PRIi32 "", op);
+		say_error("box_dispach: unsupported command = %" PRIi32 "", op);
 		return ERR_CODE_ILLEGAL_PARAMS;
 	}
 
diff --git a/mod/silverbox/box.h b/mod/box/box.h
similarity index 97%
rename from mod/silverbox/box.h
rename to mod/box/box.h
index 2f77fcb75a..bf2f400208 100644
--- a/mod/silverbox/box.h
+++ b/mod/box/box.h
@@ -24,10 +24,10 @@
  * SUCH DAMAGE.
  */
 
-#ifndef TARANTOOL_SILVERBOX_H
-#define TARANTOOL_SILVERBOX_H
+#ifndef TARANTOOL_BOX_H
+#define TARANTOOL_BOX_H
 
-#include <mod/silverbox/index.h>
+#include <mod/box/index.h>
 
 extern bool box_updates_allowed;
 void memcached_handler(void *_data __unused__);
diff --git a/mod/silverbox/silverbox_cfg.cfg_tmpl b/mod/box/box_cfg.cfg_tmpl
similarity index 100%
rename from mod/silverbox/silverbox_cfg.cfg_tmpl
rename to mod/box/box_cfg.cfg_tmpl
diff --git a/mod/silverbox/client/perl/MANIFEST b/mod/box/client/perl/MANIFEST
similarity index 100%
rename from mod/silverbox/client/perl/MANIFEST
rename to mod/box/client/perl/MANIFEST
diff --git a/mod/silverbox/client/perl/Makefile.PL b/mod/box/client/perl/Makefile.PL
similarity index 100%
rename from mod/silverbox/client/perl/Makefile.PL
rename to mod/box/client/perl/Makefile.PL
diff --git a/mod/silverbox/client/perl/lib/MR/IProto.pm b/mod/box/client/perl/lib/MR/IProto.pm
similarity index 100%
rename from mod/silverbox/client/perl/lib/MR/IProto.pm
rename to mod/box/client/perl/lib/MR/IProto.pm
diff --git a/mod/silverbox/client/perl/lib/MR/SilverBox.pm b/mod/box/client/perl/lib/MR/SilverBox.pm
similarity index 100%
rename from mod/silverbox/client/perl/lib/MR/SilverBox.pm
rename to mod/box/client/perl/lib/MR/SilverBox.pm
diff --git a/mod/silverbox/client/perl/lib/MR/Storage/Const.pm b/mod/box/client/perl/lib/MR/Storage/Const.pm
similarity index 100%
rename from mod/silverbox/client/perl/lib/MR/Storage/Const.pm
rename to mod/box/client/perl/lib/MR/Storage/Const.pm
diff --git a/mod/box/client/ruby/README b/mod/box/client/ruby/README
new file mode 100644
index 0000000000..826e0c9b6a
--- /dev/null
+++ b/mod/box/client/ruby/README
@@ -0,0 +1 @@
+A toy implementation of ruby client library for IProto/Box binary protocol
diff --git a/mod/silverbox/client/ruby/silverbox.rb b/mod/box/client/ruby/box.rb
similarity index 99%
rename from mod/silverbox/client/ruby/silverbox.rb
rename to mod/box/client/ruby/box.rb
index fc7ae99dfe..26a24776e6 100644
--- a/mod/silverbox/client/ruby/silverbox.rb
+++ b/mod/box/client/ruby/box.rb
@@ -26,7 +26,7 @@
 
 require 'iproto'
 
-class SilverBox < IProtoRetCode
+class Box < IProtoRetCode
   BOX_RETURN_TUPLE = 0x01
 
   def initialize(host, param = {})
diff --git a/mod/silverbox/client/ruby/iproto.rb b/mod/box/client/ruby/iproto.rb
similarity index 100%
rename from mod/silverbox/client/ruby/iproto.rb
rename to mod/box/client/ruby/iproto.rb
diff --git a/mod/silverbox/index.c b/mod/box/index.c
similarity index 99%
rename from mod/silverbox/index.c
rename to mod/box/index.c
index 268abfd32c..d35624e4d7 100644
--- a/mod/silverbox/index.c
+++ b/mod/box/index.c
@@ -40,8 +40,8 @@
 #include <tbuf.h>
 #include <util.h>
 
-#include <mod/silverbox/box.h>
-#include <mod/silverbox/index.h>
+#include <mod/box/box.h>
+#include <mod/box/index.h>
 
 const struct field ASTERISK = {
 	.len = UINT32_MAX,
diff --git a/mod/silverbox/index.h b/mod/box/index.h
similarity index 97%
rename from mod/silverbox/index.h
rename to mod/box/index.h
index a7eb36aa27..db8e5e86cd 100644
--- a/mod/silverbox/index.h
+++ b/mod/box/index.h
@@ -24,10 +24,10 @@
  * SUCH DAMAGE.
  */
 
-#ifndef TARANTOOL_SILVERBOX_INDEX_H
-#define TARANTOOL_SILVERBOX_INDEX_H
+#ifndef TARANTOOL_BOX_INDEX_H
+#define TARANTOOL_BOX_INDEX_H
 
-#include <mod/silverbox/assoc.h>
+#include <mod/box/assoc.h>
 
 /**
  * A field reference used for TREE indexes. Either stores a copy
diff --git a/mod/silverbox/memcached.c b/mod/box/memcached.c
similarity index 87%
rename from mod/silverbox/memcached.c
rename to mod/box/memcached.c
index c6100fdc38..334728e5ca 100644
--- a/mod/silverbox/memcached.c
+++ b/mod/box/memcached.c
@@ -1,5 +1,5 @@
 
-#line 1 "mod/silverbox/memcached.rl"
+#line 1 "mod/box/memcached.rl"
 /*
  * Copyright (C) 2010 Mail.RU
  * Copyright (C) 2010 Yuriy Vostrikov
@@ -39,8 +39,8 @@
 #include <pickle.h>
 
 #include <tarantool.h>
-#include <cfg/tarantool_silverbox_cfg.h>
-#include <mod/silverbox/box.h>
+#include <cfg/tarantool_box_cfg.h>
+#include <mod/box/box.h>
 #include <stat.h>
 
 
@@ -66,7 +66,7 @@ struct meta {
 } __packed__;
 
 
-#line 70 "mod/silverbox/memcached.c"
+#line 70 "mod/box/memcached.c"
 static const int memcached_start = 1;
 static const int memcached_first_final = 197;
 static const int memcached_error = 0;
@@ -74,7 +74,7 @@ static const int memcached_error = 0;
 static const int memcached_en_main = 1;
 
 
-#line 69 "mod/silverbox/memcached.rl"
+#line 69 "mod/box/memcached.rl"
 
 
 
@@ -187,7 +187,7 @@ print_stats()
 	tbuf_printf(out, "STAT pid %"PRIu32"\r\n", (u32)getpid());
 	tbuf_printf(out, "STAT uptime %"PRIu32"\r\n", (u32)tarantool_uptime());
 	tbuf_printf(out, "STAT time %"PRIu32"\r\n", (u32)ev_now());
-	tbuf_printf(out, "STAT version 1.2.5 (tarantool/silverbox)\r\n");
+	tbuf_printf(out, "STAT version 1.2.5 (tarantool/box)\r\n");
 	tbuf_printf(out, "STAT pointer_size %"PRI_SZ"\r\n", sizeof(void *)*8);
 	tbuf_printf(out, "STAT curr_items %"PRIu64"\r\n", items);
 	tbuf_printf(out, "STAT total_items %"PRIu64"\r\n", stats.total_items);
@@ -263,12 +263,12 @@ memcached_dispatch(struct box_txn *txn)
 })
 
 	
-#line 267 "mod/silverbox/memcached.c"
+#line 267 "mod/box/memcached.c"
 	{
 	cs = memcached_start;
 	}
 
-#line 272 "mod/silverbox/memcached.c"
+#line 272 "mod/box/memcached.c"
 	{
 	if ( p == pe )
 		goto _test_eof;
@@ -326,7 +326,7 @@ case 5:
 		goto st0;
 	goto tr15;
 tr15:
-#line 478 "mod/silverbox/memcached.rl"
+#line 478 "mod/box/memcached.rl"
 	{
 			fstart = p;
 			for (; p < pe && *p != ' ' && *p != '\r' && *p != '\n'; p++);
@@ -343,7 +343,7 @@ case 5:
 	if ( ++p == pe )
 		goto _test_eof6;
 case 6:
-#line 347 "mod/silverbox/memcached.c"
+#line 347 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st7;
 	goto st0;
@@ -357,49 +357,49 @@ case 7:
 		goto tr17;
 	goto st0;
 tr17:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st8;
 st8:
 	if ( ++p == pe )
 		goto _test_eof8;
 case 8:
-#line 368 "mod/silverbox/memcached.c"
+#line 368 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto tr18;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto st8;
 	goto st0;
 tr18:
-#line 501 "mod/silverbox/memcached.rl"
+#line 501 "mod/box/memcached.rl"
 	{flags = natoq(fstart, p);}
 	goto st9;
 st9:
 	if ( ++p == pe )
 		goto _test_eof9;
 case 9:
-#line 382 "mod/silverbox/memcached.c"
+#line 382 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st9;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto tr21;
 	goto st0;
 tr21:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st10;
 st10:
 	if ( ++p == pe )
 		goto _test_eof10;
 case 10:
-#line 396 "mod/silverbox/memcached.c"
+#line 396 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto tr22;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto st10;
 	goto st0;
 tr22:
-#line 494 "mod/silverbox/memcached.rl"
+#line 494 "mod/box/memcached.rl"
 	{
 			exptime = natoq(fstart, p);
 			if (exptime > 0 && exptime <= 60*60*24*30)
@@ -410,21 +410,21 @@ case 10:
 	if ( ++p == pe )
 		goto _test_eof11;
 case 11:
-#line 414 "mod/silverbox/memcached.c"
+#line 414 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st11;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto tr25;
 	goto st0;
 tr25:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st12;
 st12:
 	if ( ++p == pe )
 		goto _test_eof12;
 case 12:
-#line 428 "mod/silverbox/memcached.c"
+#line 428 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr26;
 		case 13: goto tr27;
@@ -434,11 +434,11 @@ case 12:
 		goto st12;
 	goto st0;
 tr26:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -459,13 +459,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 262 "mod/silverbox/memcached.rl"
+#line 262 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -476,9 +476,9 @@ case 12:
 		}
 	goto st197;
 tr30:
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -499,13 +499,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 262 "mod/silverbox/memcached.rl"
+#line 262 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -516,11 +516,11 @@ case 12:
 		}
 	goto st197;
 tr39:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -541,13 +541,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 262 "mod/silverbox/memcached.rl"
+#line 262 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -558,11 +558,11 @@ case 12:
 		}
 	goto st197;
 tr58:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -583,13 +583,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 291 "mod/silverbox/memcached.rl"
+#line 291 "mod/box/memcached.rl"
 	{
 			struct tbuf *b;
 			void *value;
@@ -618,9 +618,9 @@ case 12:
 		}
 	goto st197;
 tr62:
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -641,13 +641,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 291 "mod/silverbox/memcached.rl"
+#line 291 "mod/box/memcached.rl"
 	{
 			struct tbuf *b;
 			void *value;
@@ -676,11 +676,11 @@ case 12:
 		}
 	goto st197;
 tr71:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -701,13 +701,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 291 "mod/silverbox/memcached.rl"
+#line 291 "mod/box/memcached.rl"
 	{
 			struct tbuf *b;
 			void *value;
@@ -736,11 +736,11 @@ case 12:
 		}
 	goto st197;
 tr91:
-#line 503 "mod/silverbox/memcached.rl"
+#line 503 "mod/box/memcached.rl"
 	{cas = natoq(fstart, p);}
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -761,13 +761,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 280 "mod/silverbox/memcached.rl"
+#line 280 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -780,9 +780,9 @@ case 12:
 		}
 	goto st197;
 tr95:
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -803,13 +803,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 280 "mod/silverbox/memcached.rl"
+#line 280 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -822,11 +822,11 @@ case 12:
 		}
 	goto st197;
 tr105:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -847,13 +847,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 280 "mod/silverbox/memcached.rl"
+#line 280 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -866,17 +866,17 @@ case 12:
 		}
 	goto st197;
 tr118:
-#line 504 "mod/silverbox/memcached.rl"
+#line 504 "mod/box/memcached.rl"
 	{incr = natoq(fstart, p);}
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 318 "mod/silverbox/memcached.rl"
+#line 318 "mod/box/memcached.rl"
 	{
 			struct meta *m;
 			struct tbuf *b;
@@ -929,15 +929,15 @@ case 12:
 		}
 	goto st197;
 tr122:
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 318 "mod/silverbox/memcached.rl"
+#line 318 "mod/box/memcached.rl"
 	{
 			struct meta *m;
 			struct tbuf *b;
@@ -990,17 +990,17 @@ case 12:
 		}
 	goto st197;
 tr132:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 318 "mod/silverbox/memcached.rl"
+#line 318 "mod/box/memcached.rl"
 	{
 			struct meta *m;
 			struct tbuf *b;
@@ -1053,15 +1053,15 @@ case 12:
 		}
 	goto st197;
 tr141:
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 369 "mod/silverbox/memcached.rl"
+#line 369 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -1076,21 +1076,21 @@ case 12:
 		}
 	goto st197;
 tr146:
-#line 494 "mod/silverbox/memcached.rl"
+#line 494 "mod/box/memcached.rl"
 	{
 			exptime = natoq(fstart, p);
 			if (exptime > 0 && exptime <= 60*60*24*30)
 				exptime = exptime + ev_now();
 		}
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 369 "mod/silverbox/memcached.rl"
+#line 369 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -1105,17 +1105,17 @@ case 12:
 		}
 	goto st197;
 tr157:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 369 "mod/silverbox/memcached.rl"
+#line 369 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -1130,15 +1130,15 @@ case 12:
 		}
 	goto st197;
 tr169:
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 459 "mod/silverbox/memcached.rl"
+#line 459 "mod/box/memcached.rl"
 	{
 			if (flush_delay > 0) {
 				struct fiber *f = fiber_create("flush_all", -1, -1, flush_all, (void *)flush_delay);
@@ -1150,17 +1150,17 @@ case 12:
 		}
 	goto st197;
 tr174:
-#line 505 "mod/silverbox/memcached.rl"
+#line 505 "mod/box/memcached.rl"
 	{flush_delay = natoq(fstart, p);}
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 459 "mod/silverbox/memcached.rl"
+#line 459 "mod/box/memcached.rl"
 	{
 			if (flush_delay > 0) {
 				struct fiber *f = fiber_create("flush_all", -1, -1, flush_all, (void *)flush_delay);
@@ -1172,17 +1172,17 @@ case 12:
 		}
 	goto st197;
 tr185:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 459 "mod/silverbox/memcached.rl"
+#line 459 "mod/box/memcached.rl"
 	{
 			if (flush_delay > 0) {
 				struct fiber *f = fiber_create("flush_all", -1, -1, flush_all, (void *)flush_delay);
@@ -1194,15 +1194,15 @@ case 12:
 		}
 	goto st197;
 tr195:
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 382 "mod/silverbox/memcached.rl"
+#line 382 "mod/box/memcached.rl"
 	{
 			txn->op = SELECT;
 			fiber_register_cleanup((void *)txn_cleanup, txn);
@@ -1281,25 +1281,25 @@ case 12:
 		}
 	goto st197;
 tr213:
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 473 "mod/silverbox/memcached.rl"
+#line 473 "mod/box/memcached.rl"
 	{
 			return 0;
 		}
 	goto st197;
 tr233:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -1320,13 +1320,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 271 "mod/silverbox/memcached.rl"
+#line 271 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -1337,9 +1337,9 @@ case 12:
 		}
 	goto st197;
 tr237:
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -1360,13 +1360,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 271 "mod/silverbox/memcached.rl"
+#line 271 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -1377,11 +1377,11 @@ case 12:
 		}
 	goto st197;
 tr246:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -1402,13 +1402,13 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 271 "mod/silverbox/memcached.rl"
+#line 271 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			struct box_tuple *tuple = find(key);
@@ -1419,11 +1419,11 @@ case 12:
 		}
 	goto st197;
 tr263:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -1444,22 +1444,22 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 257 "mod/silverbox/memcached.rl"
+#line 257 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			STORE;
 		}
 	goto st197;
 tr267:
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -1480,24 +1480,24 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 257 "mod/silverbox/memcached.rl"
+#line 257 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			STORE;
 		}
 	goto st197;
 tr276:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 507 "mod/silverbox/memcached.rl"
+#line 507 "mod/box/memcached.rl"
 	{
 			size_t parsed = p - (u8 *)fiber->rbuf->data;
 			while (fiber->rbuf->len - parsed < bytes + 2) {
@@ -1518,28 +1518,28 @@ case 12:
 				goto exit;
 			}
 		}
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 257 "mod/silverbox/memcached.rl"
+#line 257 "mod/box/memcached.rl"
 	{
 			key = read_field(keys);
 			STORE;
 		}
 	goto st197;
 tr281:
-#line 534 "mod/silverbox/memcached.rl"
+#line 534 "mod/box/memcached.rl"
 	{ p++; }
-#line 528 "mod/silverbox/memcached.rl"
+#line 528 "mod/box/memcached.rl"
 	{
 			done = true;
 			stats.bytes_read += p - (u8 *)fiber->rbuf->data;
 			tbuf_peek(fiber->rbuf, p - (u8 *)fiber->rbuf->data);
 		}
-#line 469 "mod/silverbox/memcached.rl"
+#line 469 "mod/box/memcached.rl"
 	{
 			print_stats();
 		}
@@ -1548,33 +1548,33 @@ case 12:
 	if ( ++p == pe )
 		goto _test_eof197;
 case 197:
-#line 1552 "mod/silverbox/memcached.c"
+#line 1552 "mod/box/memcached.c"
 	goto st0;
 tr27:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
 	goto st13;
 tr40:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st13;
 st13:
 	if ( ++p == pe )
 		goto _test_eof13;
 case 13:
-#line 1566 "mod/silverbox/memcached.c"
+#line 1566 "mod/box/memcached.c"
 	if ( (*p) == 10 )
 		goto tr30;
 	goto st0;
 tr28:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
 	goto st14;
 st14:
 	if ( ++p == pe )
 		goto _test_eof14;
 case 14:
-#line 1578 "mod/silverbox/memcached.c"
+#line 1578 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 32: goto st14;
 		case 110: goto st15;
@@ -1667,18 +1667,18 @@ case 26:
 		goto tr45;
 	goto st0;
 tr45:
-#line 542 "mod/silverbox/memcached.rl"
+#line 542 "mod/box/memcached.rl"
 	{append = true; }
 	goto st27;
 tr209:
-#line 543 "mod/silverbox/memcached.rl"
+#line 543 "mod/box/memcached.rl"
 	{append = false;}
 	goto st27;
 st27:
 	if ( ++p == pe )
 		goto _test_eof27;
 case 27:
-#line 1682 "mod/silverbox/memcached.c"
+#line 1682 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 13: goto st0;
 		case 32: goto st27;
@@ -1687,7 +1687,7 @@ case 27:
 		goto st0;
 	goto tr46;
 tr46:
-#line 478 "mod/silverbox/memcached.rl"
+#line 478 "mod/box/memcached.rl"
 	{
 			fstart = p;
 			for (; p < pe && *p != ' ' && *p != '\r' && *p != '\n'; p++);
@@ -1704,7 +1704,7 @@ case 27:
 	if ( ++p == pe )
 		goto _test_eof28;
 case 28:
-#line 1708 "mod/silverbox/memcached.c"
+#line 1708 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st29;
 	goto st0;
@@ -1718,49 +1718,49 @@ case 29:
 		goto tr49;
 	goto st0;
 tr49:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st30;
 st30:
 	if ( ++p == pe )
 		goto _test_eof30;
 case 30:
-#line 1729 "mod/silverbox/memcached.c"
+#line 1729 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto tr50;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto st30;
 	goto st0;
 tr50:
-#line 501 "mod/silverbox/memcached.rl"
+#line 501 "mod/box/memcached.rl"
 	{flags = natoq(fstart, p);}
 	goto st31;
 st31:
 	if ( ++p == pe )
 		goto _test_eof31;
 case 31:
-#line 1743 "mod/silverbox/memcached.c"
+#line 1743 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st31;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto tr53;
 	goto st0;
 tr53:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st32;
 st32:
 	if ( ++p == pe )
 		goto _test_eof32;
 case 32:
-#line 1757 "mod/silverbox/memcached.c"
+#line 1757 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto tr54;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto st32;
 	goto st0;
 tr54:
-#line 494 "mod/silverbox/memcached.rl"
+#line 494 "mod/box/memcached.rl"
 	{
 			exptime = natoq(fstart, p);
 			if (exptime > 0 && exptime <= 60*60*24*30)
@@ -1771,21 +1771,21 @@ case 32:
 	if ( ++p == pe )
 		goto _test_eof33;
 case 33:
-#line 1775 "mod/silverbox/memcached.c"
+#line 1775 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st33;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto tr57;
 	goto st0;
 tr57:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st34;
 st34:
 	if ( ++p == pe )
 		goto _test_eof34;
 case 34:
-#line 1789 "mod/silverbox/memcached.c"
+#line 1789 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr58;
 		case 13: goto tr59;
@@ -1795,30 +1795,30 @@ case 34:
 		goto st34;
 	goto st0;
 tr59:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
 	goto st35;
 tr72:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st35;
 st35:
 	if ( ++p == pe )
 		goto _test_eof35;
 case 35:
-#line 1810 "mod/silverbox/memcached.c"
+#line 1810 "mod/box/memcached.c"
 	if ( (*p) == 10 )
 		goto tr62;
 	goto st0;
 tr60:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
 	goto st36;
 st36:
 	if ( ++p == pe )
 		goto _test_eof36;
 case 36:
-#line 1822 "mod/silverbox/memcached.c"
+#line 1822 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 32: goto st36;
 		case 110: goto st37;
@@ -1908,7 +1908,7 @@ case 47:
 		goto st0;
 	goto tr76;
 tr76:
-#line 478 "mod/silverbox/memcached.rl"
+#line 478 "mod/box/memcached.rl"
 	{
 			fstart = p;
 			for (; p < pe && *p != ' ' && *p != '\r' && *p != '\n'; p++);
@@ -1925,7 +1925,7 @@ case 47:
 	if ( ++p == pe )
 		goto _test_eof48;
 case 48:
-#line 1929 "mod/silverbox/memcached.c"
+#line 1929 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st49;
 	goto st0;
@@ -1939,49 +1939,49 @@ case 49:
 		goto tr78;
 	goto st0;
 tr78:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st50;
 st50:
 	if ( ++p == pe )
 		goto _test_eof50;
 case 50:
-#line 1950 "mod/silverbox/memcached.c"
+#line 1950 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto tr79;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto st50;
 	goto st0;
 tr79:
-#line 501 "mod/silverbox/memcached.rl"
+#line 501 "mod/box/memcached.rl"
 	{flags = natoq(fstart, p);}
 	goto st51;
 st51:
 	if ( ++p == pe )
 		goto _test_eof51;
 case 51:
-#line 1964 "mod/silverbox/memcached.c"
+#line 1964 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st51;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto tr82;
 	goto st0;
 tr82:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st52;
 st52:
 	if ( ++p == pe )
 		goto _test_eof52;
 case 52:
-#line 1978 "mod/silverbox/memcached.c"
+#line 1978 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto tr83;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto st52;
 	goto st0;
 tr83:
-#line 494 "mod/silverbox/memcached.rl"
+#line 494 "mod/box/memcached.rl"
 	{
 			exptime = natoq(fstart, p);
 			if (exptime > 0 && exptime <= 60*60*24*30)
@@ -1992,49 +1992,49 @@ case 52:
 	if ( ++p == pe )
 		goto _test_eof53;
 case 53:
-#line 1996 "mod/silverbox/memcached.c"
+#line 1996 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st53;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto tr86;
 	goto st0;
 tr86:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st54;
 st54:
 	if ( ++p == pe )
 		goto _test_eof54;
 case 54:
-#line 2010 "mod/silverbox/memcached.c"
+#line 2010 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto tr87;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto st54;
 	goto st0;
 tr87:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
 	goto st55;
 st55:
 	if ( ++p == pe )
 		goto _test_eof55;
 case 55:
-#line 2024 "mod/silverbox/memcached.c"
+#line 2024 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st55;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto tr90;
 	goto st0;
 tr90:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st56;
 st56:
 	if ( ++p == pe )
 		goto _test_eof56;
 case 56:
-#line 2038 "mod/silverbox/memcached.c"
+#line 2038 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr91;
 		case 13: goto tr92;
@@ -2044,30 +2044,30 @@ case 56:
 		goto st56;
 	goto st0;
 tr106:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st57;
 tr92:
-#line 503 "mod/silverbox/memcached.rl"
+#line 503 "mod/box/memcached.rl"
 	{cas = natoq(fstart, p);}
 	goto st57;
 st57:
 	if ( ++p == pe )
 		goto _test_eof57;
 case 57:
-#line 2059 "mod/silverbox/memcached.c"
+#line 2059 "mod/box/memcached.c"
 	if ( (*p) == 10 )
 		goto tr95;
 	goto st0;
 tr93:
-#line 503 "mod/silverbox/memcached.rl"
+#line 503 "mod/box/memcached.rl"
 	{cas = natoq(fstart, p);}
 	goto st58;
 st58:
 	if ( ++p == pe )
 		goto _test_eof58;
 case 58:
-#line 2071 "mod/silverbox/memcached.c"
+#line 2071 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr95;
 		case 13: goto st57;
@@ -2128,14 +2128,14 @@ case 65:
 	}
 	goto st0;
 tr107:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st66;
 st66:
 	if ( ++p == pe )
 		goto _test_eof66;
 case 66:
-#line 2139 "mod/silverbox/memcached.c"
+#line 2139 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr95;
 		case 13: goto st57;
@@ -2173,18 +2173,18 @@ case 70:
 		goto tr113;
 	goto st0;
 tr113:
-#line 551 "mod/silverbox/memcached.rl"
+#line 551 "mod/box/memcached.rl"
 	{incr_sign = -1;}
 	goto st71;
 tr202:
-#line 550 "mod/silverbox/memcached.rl"
+#line 550 "mod/box/memcached.rl"
 	{incr_sign = 1; }
 	goto st71;
 st71:
 	if ( ++p == pe )
 		goto _test_eof71;
 case 71:
-#line 2188 "mod/silverbox/memcached.c"
+#line 2188 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 13: goto st0;
 		case 32: goto st71;
@@ -2193,7 +2193,7 @@ case 71:
 		goto st0;
 	goto tr114;
 tr114:
-#line 478 "mod/silverbox/memcached.rl"
+#line 478 "mod/box/memcached.rl"
 	{
 			fstart = p;
 			for (; p < pe && *p != ' ' && *p != '\r' && *p != '\n'; p++);
@@ -2210,7 +2210,7 @@ case 71:
 	if ( ++p == pe )
 		goto _test_eof72;
 case 72:
-#line 2214 "mod/silverbox/memcached.c"
+#line 2214 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st73;
 	goto st0;
@@ -2224,14 +2224,14 @@ case 73:
 		goto tr117;
 	goto st0;
 tr117:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st74;
 st74:
 	if ( ++p == pe )
 		goto _test_eof74;
 case 74:
-#line 2235 "mod/silverbox/memcached.c"
+#line 2235 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr118;
 		case 13: goto tr119;
@@ -2241,30 +2241,30 @@ case 74:
 		goto st74;
 	goto st0;
 tr133:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st75;
 tr119:
-#line 504 "mod/silverbox/memcached.rl"
+#line 504 "mod/box/memcached.rl"
 	{incr = natoq(fstart, p);}
 	goto st75;
 st75:
 	if ( ++p == pe )
 		goto _test_eof75;
 case 75:
-#line 2256 "mod/silverbox/memcached.c"
+#line 2256 "mod/box/memcached.c"
 	if ( (*p) == 10 )
 		goto tr122;
 	goto st0;
 tr120:
-#line 504 "mod/silverbox/memcached.rl"
+#line 504 "mod/box/memcached.rl"
 	{incr = natoq(fstart, p);}
 	goto st76;
 st76:
 	if ( ++p == pe )
 		goto _test_eof76;
 case 76:
-#line 2268 "mod/silverbox/memcached.c"
+#line 2268 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr122;
 		case 13: goto st75;
@@ -2325,14 +2325,14 @@ case 83:
 	}
 	goto st0;
 tr134:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st84;
 st84:
 	if ( ++p == pe )
 		goto _test_eof84;
 case 84:
-#line 2336 "mod/silverbox/memcached.c"
+#line 2336 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr122;
 		case 13: goto st75;
@@ -2379,7 +2379,7 @@ case 89:
 		goto st0;
 	goto tr140;
 tr140:
-#line 478 "mod/silverbox/memcached.rl"
+#line 478 "mod/box/memcached.rl"
 	{
 			fstart = p;
 			for (; p < pe && *p != ' ' && *p != '\r' && *p != '\n'; p++);
@@ -2396,7 +2396,7 @@ case 89:
 	if ( ++p == pe )
 		goto _test_eof90;
 case 90:
-#line 2400 "mod/silverbox/memcached.c"
+#line 2400 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr141;
 		case 13: goto st91;
@@ -2404,7 +2404,7 @@ case 90:
 	}
 	goto st0;
 tr147:
-#line 494 "mod/silverbox/memcached.rl"
+#line 494 "mod/box/memcached.rl"
 	{
 			exptime = natoq(fstart, p);
 			if (exptime > 0 && exptime <= 60*60*24*30)
@@ -2412,14 +2412,14 @@ case 90:
 		}
 	goto st91;
 tr158:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st91;
 st91:
 	if ( ++p == pe )
 		goto _test_eof91;
 case 91:
-#line 2423 "mod/silverbox/memcached.c"
+#line 2423 "mod/box/memcached.c"
 	if ( (*p) == 10 )
 		goto tr141;
 	goto st0;
@@ -2437,14 +2437,14 @@ case 92:
 		goto tr144;
 	goto st0;
 tr144:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st93;
 st93:
 	if ( ++p == pe )
 		goto _test_eof93;
 case 93:
-#line 2448 "mod/silverbox/memcached.c"
+#line 2448 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr146;
 		case 13: goto tr147;
@@ -2454,7 +2454,7 @@ case 93:
 		goto st93;
 	goto st0;
 tr148:
-#line 494 "mod/silverbox/memcached.rl"
+#line 494 "mod/box/memcached.rl"
 	{
 			exptime = natoq(fstart, p);
 			if (exptime > 0 && exptime <= 60*60*24*30)
@@ -2465,7 +2465,7 @@ case 93:
 	if ( ++p == pe )
 		goto _test_eof94;
 case 94:
-#line 2469 "mod/silverbox/memcached.c"
+#line 2469 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr141;
 		case 13: goto st91;
@@ -2526,14 +2526,14 @@ case 101:
 	}
 	goto st0;
 tr159:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st102;
 st102:
 	if ( ++p == pe )
 		goto _test_eof102;
 case 102:
-#line 2537 "mod/silverbox/memcached.c"
+#line 2537 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr141;
 		case 13: goto st91;
@@ -2607,18 +2607,18 @@ case 111:
 	}
 	goto st0;
 tr186:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st112;
 tr175:
-#line 505 "mod/silverbox/memcached.rl"
+#line 505 "mod/box/memcached.rl"
 	{flush_delay = natoq(fstart, p);}
 	goto st112;
 st112:
 	if ( ++p == pe )
 		goto _test_eof112;
 case 112:
-#line 2622 "mod/silverbox/memcached.c"
+#line 2622 "mod/box/memcached.c"
 	if ( (*p) == 10 )
 		goto tr169;
 	goto st0;
@@ -2636,14 +2636,14 @@ case 113:
 		goto tr172;
 	goto st0;
 tr172:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st114;
 st114:
 	if ( ++p == pe )
 		goto _test_eof114;
 case 114:
-#line 2647 "mod/silverbox/memcached.c"
+#line 2647 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr174;
 		case 13: goto tr175;
@@ -2653,14 +2653,14 @@ case 114:
 		goto st114;
 	goto st0;
 tr176:
-#line 505 "mod/silverbox/memcached.rl"
+#line 505 "mod/box/memcached.rl"
 	{flush_delay = natoq(fstart, p);}
 	goto st115;
 st115:
 	if ( ++p == pe )
 		goto _test_eof115;
 case 115:
-#line 2664 "mod/silverbox/memcached.c"
+#line 2664 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr169;
 		case 13: goto st112;
@@ -2721,14 +2721,14 @@ case 122:
 	}
 	goto st0;
 tr187:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st123;
 st123:
 	if ( ++p == pe )
 		goto _test_eof123;
 case 123:
-#line 2732 "mod/silverbox/memcached.c"
+#line 2732 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr169;
 		case 13: goto st112;
@@ -2759,18 +2759,18 @@ case 126:
 	}
 	goto st0;
 tr191:
-#line 547 "mod/silverbox/memcached.rl"
+#line 547 "mod/box/memcached.rl"
 	{show_cas = false;}
 	goto st127;
 tr198:
-#line 548 "mod/silverbox/memcached.rl"
+#line 548 "mod/box/memcached.rl"
 	{show_cas = true;}
 	goto st127;
 st127:
 	if ( ++p == pe )
 		goto _test_eof127;
 case 127:
-#line 2774 "mod/silverbox/memcached.c"
+#line 2774 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 13: goto st0;
 		case 32: goto st127;
@@ -2779,7 +2779,7 @@ case 127:
 		goto st0;
 	goto tr193;
 tr193:
-#line 478 "mod/silverbox/memcached.rl"
+#line 478 "mod/box/memcached.rl"
 	{
 			fstart = p;
 			for (; p < pe && *p != ' ' && *p != '\r' && *p != '\n'; p++);
@@ -2796,7 +2796,7 @@ case 127:
 	if ( ++p == pe )
 		goto _test_eof128;
 case 128:
-#line 2800 "mod/silverbox/memcached.c"
+#line 2800 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr195;
 		case 13: goto st129;
@@ -3003,7 +3003,7 @@ case 155:
 		goto st0;
 	goto tr222;
 tr222:
-#line 478 "mod/silverbox/memcached.rl"
+#line 478 "mod/box/memcached.rl"
 	{
 			fstart = p;
 			for (; p < pe && *p != ' ' && *p != '\r' && *p != '\n'; p++);
@@ -3020,7 +3020,7 @@ case 155:
 	if ( ++p == pe )
 		goto _test_eof156;
 case 156:
-#line 3024 "mod/silverbox/memcached.c"
+#line 3024 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st157;
 	goto st0;
@@ -3034,49 +3034,49 @@ case 157:
 		goto tr224;
 	goto st0;
 tr224:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st158;
 st158:
 	if ( ++p == pe )
 		goto _test_eof158;
 case 158:
-#line 3045 "mod/silverbox/memcached.c"
+#line 3045 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto tr225;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto st158;
 	goto st0;
 tr225:
-#line 501 "mod/silverbox/memcached.rl"
+#line 501 "mod/box/memcached.rl"
 	{flags = natoq(fstart, p);}
 	goto st159;
 st159:
 	if ( ++p == pe )
 		goto _test_eof159;
 case 159:
-#line 3059 "mod/silverbox/memcached.c"
+#line 3059 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st159;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto tr228;
 	goto st0;
 tr228:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st160;
 st160:
 	if ( ++p == pe )
 		goto _test_eof160;
 case 160:
-#line 3073 "mod/silverbox/memcached.c"
+#line 3073 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto tr229;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto st160;
 	goto st0;
 tr229:
-#line 494 "mod/silverbox/memcached.rl"
+#line 494 "mod/box/memcached.rl"
 	{
 			exptime = natoq(fstart, p);
 			if (exptime > 0 && exptime <= 60*60*24*30)
@@ -3087,21 +3087,21 @@ case 160:
 	if ( ++p == pe )
 		goto _test_eof161;
 case 161:
-#line 3091 "mod/silverbox/memcached.c"
+#line 3091 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st161;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto tr232;
 	goto st0;
 tr232:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st162;
 st162:
 	if ( ++p == pe )
 		goto _test_eof162;
 case 162:
-#line 3105 "mod/silverbox/memcached.c"
+#line 3105 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr233;
 		case 13: goto tr234;
@@ -3111,30 +3111,30 @@ case 162:
 		goto st162;
 	goto st0;
 tr234:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
 	goto st163;
 tr247:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st163;
 st163:
 	if ( ++p == pe )
 		goto _test_eof163;
 case 163:
-#line 3126 "mod/silverbox/memcached.c"
+#line 3126 "mod/box/memcached.c"
 	if ( (*p) == 10 )
 		goto tr237;
 	goto st0;
 tr235:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
 	goto st164;
 st164:
 	if ( ++p == pe )
 		goto _test_eof164;
 case 164:
-#line 3138 "mod/silverbox/memcached.c"
+#line 3138 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 32: goto st164;
 		case 110: goto st165;
@@ -3226,7 +3226,7 @@ case 175:
 		goto st0;
 	goto tr252;
 tr252:
-#line 478 "mod/silverbox/memcached.rl"
+#line 478 "mod/box/memcached.rl"
 	{
 			fstart = p;
 			for (; p < pe && *p != ' ' && *p != '\r' && *p != '\n'; p++);
@@ -3243,7 +3243,7 @@ case 175:
 	if ( ++p == pe )
 		goto _test_eof176;
 case 176:
-#line 3247 "mod/silverbox/memcached.c"
+#line 3247 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st177;
 	goto st0;
@@ -3257,49 +3257,49 @@ case 177:
 		goto tr254;
 	goto st0;
 tr254:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st178;
 st178:
 	if ( ++p == pe )
 		goto _test_eof178;
 case 178:
-#line 3268 "mod/silverbox/memcached.c"
+#line 3268 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto tr255;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto st178;
 	goto st0;
 tr255:
-#line 501 "mod/silverbox/memcached.rl"
+#line 501 "mod/box/memcached.rl"
 	{flags = natoq(fstart, p);}
 	goto st179;
 st179:
 	if ( ++p == pe )
 		goto _test_eof179;
 case 179:
-#line 3282 "mod/silverbox/memcached.c"
+#line 3282 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st179;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto tr258;
 	goto st0;
 tr258:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st180;
 st180:
 	if ( ++p == pe )
 		goto _test_eof180;
 case 180:
-#line 3296 "mod/silverbox/memcached.c"
+#line 3296 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto tr259;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto st180;
 	goto st0;
 tr259:
-#line 494 "mod/silverbox/memcached.rl"
+#line 494 "mod/box/memcached.rl"
 	{
 			exptime = natoq(fstart, p);
 			if (exptime > 0 && exptime <= 60*60*24*30)
@@ -3310,21 +3310,21 @@ case 180:
 	if ( ++p == pe )
 		goto _test_eof181;
 case 181:
-#line 3314 "mod/silverbox/memcached.c"
+#line 3314 "mod/box/memcached.c"
 	if ( (*p) == 32 )
 		goto st181;
 	if ( 48 <= (*p) && (*p) <= 57 )
 		goto tr262;
 	goto st0;
 tr262:
-#line 477 "mod/silverbox/memcached.rl"
+#line 477 "mod/box/memcached.rl"
 	{ fstart = p; }
 	goto st182;
 st182:
 	if ( ++p == pe )
 		goto _test_eof182;
 case 182:
-#line 3328 "mod/silverbox/memcached.c"
+#line 3328 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 10: goto tr263;
 		case 13: goto tr264;
@@ -3334,30 +3334,30 @@ case 182:
 		goto st182;
 	goto st0;
 tr264:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
 	goto st183;
 tr277:
-#line 536 "mod/silverbox/memcached.rl"
+#line 536 "mod/box/memcached.rl"
 	{ noreply = true; }
 	goto st183;
 st183:
 	if ( ++p == pe )
 		goto _test_eof183;
 case 183:
-#line 3349 "mod/silverbox/memcached.c"
+#line 3349 "mod/box/memcached.c"
 	if ( (*p) == 10 )
 		goto tr267;
 	goto st0;
 tr265:
-#line 502 "mod/silverbox/memcached.rl"
+#line 502 "mod/box/memcached.rl"
 	{bytes = natoq(fstart, p);}
 	goto st184;
 st184:
 	if ( ++p == pe )
 		goto _test_eof184;
 case 184:
-#line 3361 "mod/silverbox/memcached.c"
+#line 3361 "mod/box/memcached.c"
 	switch( (*p) ) {
 		case 32: goto st184;
 		case 110: goto st185;
@@ -3653,7 +3653,7 @@ case 196:
 	_out: {}
 	}
 
-#line 561 "mod/silverbox/memcached.rl"
+#line 561 "mod/box/memcached.rl"
 
 
 	if (!done) {
diff --git a/mod/silverbox/memcached.rl b/mod/box/memcached.rl
similarity index 99%
rename from mod/silverbox/memcached.rl
rename to mod/box/memcached.rl
index e5dc30d5fc..8d857b7073 100644
--- a/mod/silverbox/memcached.rl
+++ b/mod/box/memcached.rl
@@ -37,8 +37,8 @@
 #include <pickle.h>
 
 #include <tarantool.h>
-#include <cfg/tarantool_silverbox_cfg.h>
-#include <mod/silverbox/box.h>
+#include <cfg/tarantool_box_cfg.h>
+#include <mod/box/box.h>
 #include <stat.h>
 
 
@@ -178,7 +178,7 @@ print_stats()
 	tbuf_printf(out, "STAT pid %"PRIu32"\r\n", (u32)getpid());
 	tbuf_printf(out, "STAT uptime %"PRIu32"\r\n", (u32)tarantool_uptime());
 	tbuf_printf(out, "STAT time %"PRIu32"\r\n", (u32)ev_now());
-	tbuf_printf(out, "STAT version 1.2.5 (tarantool/silverbox)\r\n");
+	tbuf_printf(out, "STAT version 1.2.5 (tarantool/box)\r\n");
 	tbuf_printf(out, "STAT pointer_size %"PRI_SZ"\r\n", sizeof(void *)*8);
 	tbuf_printf(out, "STAT curr_items %"PRIu64"\r\n", items);
 	tbuf_printf(out, "STAT total_items %"PRIu64"\r\n", stats.total_items);
diff --git a/mod/silverbox/t/TBox.pm b/mod/box/t/TBox.pm
similarity index 100%
rename from mod/silverbox/t/TBox.pm
rename to mod/box/t/TBox.pm
diff --git a/mod/silverbox/t/box.pl b/mod/box/t/box.pl
similarity index 100%
rename from mod/silverbox/t/box.pl
rename to mod/box/t/box.pl
diff --git a/mod/silverbox/t/box_tree.pl b/mod/box/t/box_tree.pl
similarity index 100%
rename from mod/silverbox/t/box_tree.pl
rename to mod/box/t/box_tree.pl
diff --git a/mod/silverbox/CMakeLists.txt b/mod/silverbox/CMakeLists.txt
deleted file mode 100644
index 5be287e265..0000000000
--- a/mod/silverbox/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-add_custom_command(OUTPUT ${CMAKE_SOURCE_DIR}/mod/silverbox/memcached.c
-    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
-    COMMAND ${RAGEL} -G2 mod/silverbox/memcached.rl -o mod/silverbox/memcached.c
-    DEPENDS ${CMAKE_SOURCE_DIR}/mod/silverbox/memcached.rl)
-# Do not clean memcached.c in 'make clean'.
-set_property(DIRECTORY PROPERTY CLEAN_NO_CUSTOM 1)
-
-set_source_files_properties(memcached.c
-    PROPERTIES COMPILE_FLAGS "-Wno-uninitialized")
-
-tarantool_module("silverbox" index.c box.c memcached.c)
diff --git a/mod/silverbox/client/ruby/README b/mod/silverbox/client/ruby/README
deleted file mode 100644
index 9863c68299..0000000000
--- a/mod/silverbox/client/ruby/README
+++ /dev/null
@@ -1 +0,0 @@
-A toy implementation of ruby client library for IProto/Silverbox binary protocol
\ No newline at end of file
diff --git a/scripts/config_def.mk b/scripts/config_def.mk
deleted file mode 100644
index 0316a9f460..0000000000
--- a/scripts/config_def.mk
+++ /dev/null
@@ -1,45 +0,0 @@
-CC ?= gcc
-RAGEL ?= ragel
-DOT ?= dot
-CONFETTI ?= confetti
-GIT ?= git
-
-HAVE_GIT ?= 1
-
-CFLAGS += -Wall -Wextra -Werror -Wno-sign-compare -Wno-strict-aliasing \
-	  -fno-stack-protector -std=gnu99 \
-	  -pipe
-
-ifndef OS
-  OS=$(shell uname)
-  ARCH=$(shell uname -m | grep -q 'x86\|i[3456]86' && echo x86)
-endif
-
-ifeq ($(ARCH), x86)
-  CORO_IMPL ?= ASM
-else
-  CORO_IMPL ?= SJLJ
-endif
-
-ifeq ($(OS), FreeBSD)
-  CFLAGS += -DFreeBSD -DEV_USE_KQUEUE -DHAVE_SETPROCTITLE
-endif
-
-ifeq ($(OS), Linux)
-  CFLAGS += -DLinux -D_FILE_OFFSET_BITS=64  -DEV_USE_INOTIFY -D_GNU_SOURCE
-  ifeq ($(DEBUG), 1)
-    CFLAGS += -DHAVE_VALGRIND
-  endif
-endif
-
-ifeq (,$(filter -g%,$(CFLAGS)))
-CFLAGS += -g3 -ggdb
-endif
-
-ifeq (,$(filter -O%,$(CFLAGS)))
-  ifeq ($(DEBUG), 1)
-    CFLAGS += -O0
-  else
-    CFLAGS += -O2
-  endif
-endif
diff --git a/scripts/indent b/scripts/indent
index 85548597d3..57424c8282 100755
--- a/scripts/indent
+++ b/scripts/indent
@@ -19,7 +19,7 @@ do
 			;;
 	esac
 
-	PARAM="$PARAM "$(scripts/custom_types $f -I. -Iinclude -DCORO_ASM -DSTORAGE -DTARANTOOL_CONFIG='<cfg/tarantool_silverbox_cfg.h>' | grep -v '^"_' | sed 's/"//g; s/^/-T /')
+	PARAM="$PARAM "$(scripts/custom_types $f -I. -Iinclude -DCORO_ASM -DSTORAGE -DTARANTOOL_CONFIG='<cfg/tarantool_box_cfg.h>' | grep -v '^"_' | sed 's/"//g; s/^/-T /')
 
 	$INDENT $PARAM $f
 done
diff --git a/scripts/rules.mk b/scripts/rules.mk
deleted file mode 100644
index 29f5322314..0000000000
--- a/scripts/rules.mk
+++ /dev/null
@@ -1,108 +0,0 @@
-ifeq (,$(module))
-all:
-	@echo "Valid targets are:"
-	@echo "	_release_box/tarantool_silverbox"
-	@echo "	_release_feeder/tarantool_feeder"
-	@echo "	_debug_box/tarantool_silverbox"
-	@echo "	_debug_feeder/tarantool_feeder"
-	@echo "	clean"
-else
-all: tarantool_$(module)
-endif
-
-
--include $(SRCDIR)/config.mk $(SRCDIR)/scripts/config.mk
-include $(SRCDIR)/scripts/config_def.mk
-
-ifneq (,$(findstring _release,$(OBJDIR)))
-  CFLAGS += -DNDEBUG
-else ifneq (,$(findstring _debug,$(OBJDIR)))
-  DEBUG=1
-  CFLAGS += -DDEBUG -fno-omit-frame-pointer -O0 -ggdb
-else ifneq (,$(findstring _test,$(OBJDIR)))
- CFLAGS += --coverage -DCOVERAGE -DNDEBUG
-else ifneq (,$(findstring _coverage,$(OBJDIR)))
- CFLAGS += --coverage -DCOVERAGE
-endif
-
-# build dir includes going first
-ifneq (,$(OBJDIR))
-CFLAGS += -I$(SRCDIR)/$(OBJDIR) -I$(SRCDIR)/$(OBJDIR)/include
-endif
-CFLAGS += -I$(SRCDIR) -I$(SRCDIR)/include
-LIBS += -lm
-
-subdirs += third_party
-ifneq (,$(module))
-  subdirs += mod/$(module)
-endif
-subdirs += cfg core
-include $(foreach dir,$(subdirs),$(SRCDIR)/$(dir)/Makefile)
-
-tarantool_$(module): $(obj)
-	$(CC) $(CFLAGS) $(LDFLAGS) $(LIBS) $^ -o $@
-
-ifdef I
-$(info * build with $(filter -D%,$(CFLAGS)))
-endif
-
-# makefile change will force rebuild
-$(obj): $(wildcard ../*.mk) $(wildcard ../scripts/*.mk)
-$(obj): $(foreach dir,$(subdirs),$(SRCDIR)/$(dir)/Makefile)
-$(obj): Makefile
-
-dep = $(patsubst %.o,%.d,$(obj)) $(patsubst %.o,%.pd,$(obj))
--include $(dep)
-
-ifneq (,$(OBJDIR))
-%.o: %.c
-	@mkdir -p $(dir $@)
-	$(CC) $(CFLAGS) -MD -c $< -o $@
-	@sed -n -f $(SRCDIR)/scripts/slurp.sed \
-		-f $(SRCDIR)/scripts/fixdep.sed \
-		-e 's!$(SRCDIR)/!!; p' \
-		< $(@:.o=.d) > $(@:.o=.pd)
-else
-%.o: %.c
-	@mkdir -p $(dir $@)
-	$(CC) $(CFLAGS) -MD -c $< -o $@
-endif
-
-# code gen targets
-.PRECIOUS: %.h %.c %.dot
-ifeq ($(HAVE_RAGEL),1)
-%.c: %.rl
-	@mkdir -p $(dir $@)
-	$(RAGEL) -G2 $< -o $@
-
-%.dot: %.rl
-	@mkdir -p $(dir $@)
-	$(RAGEL) -p -V $< -o $(basename $@).dot
-
-%.png: %.dot
-	@mkdir -p $(dir $@)
-	$(DOT) -Tpng $< -o $(basename $@).png
-endif
-ifeq ($(HAVE_CONFETTI),1)
-%.cfg: %.cfg_tmpl
-	@mkdir -p $(dir $@)
-	$(CONFETTI) -i $< -n tarantool_cfg -f $@
-
-%.h: %.cfg_tmpl
-	@mkdir -p $(dir $@)
-	$(CONFETTI) -i $< -n tarantool_cfg -h $@
-
-%.c: %.cfg_tmpl
-	@mkdir -p $(dir $@)
-	$(CONFETTI) -i $< -n tarantool_cfg -c $@
-endif
-
-ifeq ($(HAVE_GIT),1)
-tarantool_version.h: FORCE
-	@echo -n 'const char tarantool_version_string[] = "' > $@_
-	@$(GIT) describe HEAD | tr -d \\n >> $@_
-	@echo '";' >> $@_
-	@diff -q $@ $@_ 2>/dev/null >/dev/null || ($(ECHO) "	GEN	" $(notdir $@); cp $@_ $@)
-	@rm $@_
-FORCE:
-endif
diff --git a/scripts/run_test.sh b/scripts/run_test.sh
index ac745d8953..b7afe37825 100755
--- a/scripts/run_test.sh
+++ b/scripts/run_test.sh
@@ -18,7 +18,7 @@ kill_all () {
 trap 'kill_all' EXIT
 
 test_box() {
-    BOX=localhost:33013 perl -MTest::Harness -e 'runtests(@ARGV)' mod/silverbox/t/box.pl
+    BOX=localhost:33013 perl -MTest::Harness -e 'runtests(@ARGV)' mod/box/t/box.pl
 }
 
 test_admin() {
@@ -49,7 +49,7 @@ lsn() {
 start_tarantool() {
     local type=${1:?}
     shift
-    $build_type/tarantool_silverbox --config $test_dir/$type.cfg $@
+    $build_type/tarantool_box --config $test_dir/$type.cfg $@
     sleep 1
     test -f $test_dir/$type.pid
 }
@@ -240,7 +240,7 @@ prepare() {
 
     # rm -rf $build_type
     test -d $build_type && find $build_type -name \*.gcda -print0 | xargs -0 rm -vf
-    make $build_type/tarantool_silverbox
+    make $build_type/tarantool_box
 }
 
 generate_coverage() {
@@ -253,7 +253,7 @@ generate_coverage() {
 
     lcov -c -d lcov/core -d lcov/mod -o lcov/tarantool.lcov.tmp4
     lcov -r lcov/tarantool.lcov.tmp4 '*/third_party/*' -o lcov/tarantool.lcov.tmp3
-    lcov -r lcov/tarantool.lcov.tmp3 '*/mod/silverbox/memcached.c' -o lcov/tarantool.lcov.tmp2
+    lcov -r lcov/tarantool.lcov.tmp3 '*/mod/box/memcached.c' -o lcov/tarantool.lcov.tmp2
     lcov -r lcov/tarantool.lcov.tmp2 '/usr/include/*' -o lcov/tarantool.lcov.tmp
     lcov -r lcov/tarantool.lcov.tmp '*/core/admin.c' -o lcov/tarantool.lcov
     genhtml -o lcov lcov/tarantool.lcov
@@ -266,7 +266,7 @@ write_config master 33014 33015
 write_config slave 33016 33017
 
 # initialize storage
-$build_type/tarantool_silverbox --config $test_dir/master.cfg --init_storage
+$build_type/tarantool_box --config $test_dir/master.cfg --init_storage
 
 
 # repeat test with different log levels
@@ -275,10 +275,10 @@ test_all
 kill_tarantool master
 
 # # test handling of wal overflow
-# start_tarantool master --silverbox --daemonize
-# perl -Imod/silverbox/t -MTBox -e'eval { $box->Insert(1, q/aaa/, 2, 3, 4, 5); $box->Delete(1);}; exit(1) if $@;'
+# start_tarantool master --box --daemonize
+# perl -Imod/box/t -MTBox -e'eval { $box->Insert(1, q/aaa/, 2, 3, 4, 5); $box->Delete(1);}; exit(1) if $@;'
 # (dd if=/dev/zero of=$test_dir/storage/file 2>/dev/null)
-# perl -Imod/silverbox/t -MTBox -e'eval { $box->Insert(1, q/aaa/, 2, 3, 4, 5, q/a/ x 65000); $box->Delete(1);}; exit(0) if $@;'
+# perl -Imod/box/t -MTBox -e'eval { $box->Insert(1, q/aaa/, 2, 3, 4, 5, q/a/ x 65000); $box->Delete(1);}; exit(0) if $@;'
 # rm $test_dir/storage/file
 # kill_tarantool master
 
@@ -293,7 +293,7 @@ rm -f /var/core/tarantool*
 kill_tarantool master
 
 # start with absolute path to config
-$build_type/tarantool_silverbox --config $test_dir/master.cfg --daemonize
+$build_type/tarantool_box --config $test_dir/master.cfg --daemonize
 sleep 1
 test_all
 kill_tarantool master
@@ -320,8 +320,8 @@ test_all
 kill_tarantool master
 
 # cat snap/xlog
-$build_type/tarantool_silverbox --cat $(ls -tr $test_dir/storage/wal/*.xlog | tail -n1) >/dev/null
-$build_type/tarantool_silverbox --cat $(ls -tr $test_dir/storage/snap/*.snap | tail -n1) >/dev/null
+$build_type/tarantool_box --cat $(ls -tr $test_dir/storage/wal/*.xlog | tail -n1) >/dev/null
+$build_type/tarantool_box --cat $(ls -tr $test_dir/storage/snap/*.snap | tail -n1) >/dev/null
 
 
 # # test local hot standby
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index c65f90ee86..2f028d49a2 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -1,5 +1,5 @@
 add_custom_target(test
-    COMMAND python ${PROJECT_SOURCE_DIR}/test/test-run.py --bindir=${PROJECT_BINARY_DIR}/mod/silverbox --vardir=${PROJECT_BINARY_DIR}/test/var
+    COMMAND python ${PROJECT_SOURCE_DIR}/test/test-run.py --bindir=${PROJECT_BINARY_DIR}/mod/box --vardir=${PROJECT_BINARY_DIR}/test/var
     )
 
 install (PROGRAMS tarantool DESTINATION bin)
diff --git a/test/box/args.result b/test/box/args.result
index 68b984bcfe..7320ce65eb 100644
--- a/test/box/args.result
+++ b/test/box/args.result
@@ -1,6 +1,6 @@
-tarantool_silverbox --help
+tarantool_box --help
 Tarantool -- an efficient in-memory data store.
-Usage: tarantool_silverbox [OPTIONS]
+Usage: tarantool_box [OPTIONS]
 
       --cfg-get=KEY       return a value from configuration file described by
                           KEY
@@ -18,9 +18,9 @@ Usage: tarantool_silverbox [OPTIONS]
 Please visit project home page at http://launchpad.net/tarantool
 to see online documentation, submit bugs or contribute a patch.
 
-tarantool_silverbox -h
+tarantool_box -h
 Tarantool -- an efficient in-memory data store.
-Usage: tarantool_silverbox [OPTIONS]
+Usage: tarantool_box [OPTIONS]
 
       --cfg-get=KEY       return a value from configuration file described by
                           KEY
@@ -38,30 +38,30 @@ Usage: tarantool_silverbox [OPTIONS]
 Please visit project home page at http://launchpad.net/tarantool
 to see online documentation, submit bugs or contribute a patch.
 
-tarantool_silverbox -Z
-tarantool_silverbox: -Z: unknown option
+tarantool_box -Z
+tarantool_box: -Z: unknown option
 
-tarantool_silverbox --no-such-option
-tarantool_silverbox: --no-such-option: unknown option
+tarantool_box --no-such-option
+tarantool_box: --no-such-option: unknown option
 
-tarantool_silverbox --version --no-such-option
-tarantool_silverbox: --no-such-option: unknown option
+tarantool_box --version --no-such-option
+tarantool_box: --no-such-option: unknown option
 
-tarantool_silverbox --config
-tarantool_silverbox: --config: option requires an option argument
+tarantool_box --config
+tarantool_box: --config: option requires an option argument
 
-tarantool_silverbox -c
-tarantool_silverbox: -c: option requires an option argument
+tarantool_box -c
+tarantool_box: -c: option requires an option argument
 
-tarantool_silverbox --config tarantool.cfg
-tarantool_silverbox: the daemon is already running
+tarantool_box --config tarantool.cfg
+tarantool_box: the daemon is already running
 
-tarantool_silverbox --daemonize
-tarantool_silverbox: the daemon is already running
+tarantool_box --daemonize
+tarantool_box: the daemon is already running
 
-tarantool_silverbox --version
+tarantool_box --version
 1.minor.patch-<rev>-<commit>
 
-tarantool_silverbox -V
+tarantool_box -V
 1.minor.patch-<rev>-<commit>
 
diff --git a/test/box/suite.ini b/test/box/suite.ini
index d6c665eeb3..0689dbdd04 100644
--- a/test/box/suite.ini
+++ b/test/box/suite.ini
@@ -1,5 +1,5 @@
 [default]
-description = tarantool/silverbox, minimal configuration
+description = tarantool/box, minimal configuration
 config = tarantool.cfg
 # put disabled tests here
 #disabled = sql.test
diff --git a/test/lib/tarantool_silverbox_server.py b/test/lib/tarantool_box_server.py
similarity index 98%
rename from test/lib/tarantool_silverbox_server.py
rename to test/lib/tarantool_box_server.py
index 996ced8f3f..cb744c1435 100644
--- a/test/lib/tarantool_silverbox_server.py
+++ b/test/lib/tarantool_box_server.py
@@ -51,7 +51,7 @@ def create_tmpfs_vardir(vardir):
   os.mkdir(os.path.join("/dev/shm", vardir))
   os.symlink(os.path.join("/dev/shm", vardir), vardir)
 
-class TarantoolSilverboxServer:
+class TarantoolBoxServer:
   """Server represents a single server instance. Normally, the
   program operates with only one server, but in future we may add
   replication slaves. The server is started once at the beginning
@@ -71,7 +71,7 @@ class TarantoolSilverboxServer:
     if necessary, create necessary directories and files, start
     the server. The server working directory is taken from 'vardir',
     specified in the prgoram options.
-    Currently this is implemented for tarantool_silverbox only."""
+    Currently this is implemented for tarantool_box only."""
 
     vardir = self.args.vardir
 
diff --git a/test/lib/test_suite.py b/test/lib/test_suite.py
index 6a4bec88eb..7bb276b47a 100644
--- a/test/lib/test_suite.py
+++ b/test/lib/test_suite.py
@@ -10,7 +10,7 @@ import difflib
 import filecmp
 import shlex
 import time
-from tarantool_silverbox_server import TarantoolSilverboxServer
+from tarantool_box_server import TarantoolBoxServer
 from tarantool_connection import AdminConnection, DataConnection
 import tarantool_preprocessor
 import re
@@ -242,7 +242,7 @@ class TestSuite:
 # now read the server config, we need some properties from it
 
     with open(self.ini["config"]) as fp:
-      dummy_section_name = "tarantool_silverbox"
+      dummy_section_name = "tarantool_box"
       config.readfp(TarantoolConfigFile(fp, dummy_section_name))
       self.ini["pidfile"] = config.get(dummy_section_name, "pid_file")
       self.ini["admin_port"] = int(config.get(dummy_section_name, "admin_port"))
@@ -260,7 +260,7 @@ class TestSuite:
   def run_all(self):
     """For each file in the test suite, run client program
     assuming each file represents an individual test."""
-    server = TarantoolSilverboxServer(self.args, self.ini)
+    server = TarantoolBoxServer(self.args, self.ini)
     server.install()
     server.start()
     if self.args.start_and_exit:
diff --git a/test/tarantool b/test/tarantool
index 0f6c4784f2..d51df7aa7a 100755
--- a/test/tarantool
+++ b/test/tarantool
@@ -1,5 +1,5 @@
 #! /usr/bin/python 
-"""A simplistic client for tarantool/silverbox: administrative
+"""A simplistic client for tarantool/box: administrative
 console and SQL client.
 
 On startup, establishes a connection to tarantool server.
diff --git a/test/test-run.py b/test/test-run.py
index 78bd629ede..b53bc2fde6 100755
--- a/test/test-run.py
+++ b/test/test-run.py
@@ -106,8 +106,8 @@ class Options:
     parser.add_argument(
         "--bindir",
         dest = "bindir",
-        default = "../mod/silverbox",
-        help = """Path to server binary. Default: " + "../mod/silverbox.""")
+        default = "../mod/box",
+        help = """Path to server binary. Default: " + "../mod/box.""")
 
     parser.add_argument(
         "--vardir",
-- 
GitLab