OSDN Git Service

JHCソースマージ
authorokada <okada@1ed66053-1c2d-0410-8867-f7571e6e31d3>
Fri, 13 Feb 2009 08:44:40 +0000 (08:44 +0000)
committerokada <okada@1ed66053-1c2d-0410-8867-f7571e6e31d3>
Fri, 13 Feb 2009 08:44:40 +0000 (08:44 +0000)
git-svn-id: http://10.144.169.20/repos/um/branches/l7vsd-3.x-shamshel@6848 1ed66053-1c2d-0410-8867-f7571e6e31d3

13 files changed:
include/protocol_module_base.h
module/protocol/Makefile.in
module/protocol/protocol_module_sessionless.cpp
module/protocol/protocol_module_sessionless.h
module/protocol/protocol_module_sslid.cpp
module/protocol/sslid_replication_data_processor.cpp
module/protocol/sslid_session_data_processor.cpp
module/schedule/Makefile.in
unit_tests/sessionless/sessionless_ut.cpp
unit_tests/sslid/protocol_module_sslid_test.cpp
unit_tests/sslid/ssl_protocol_module_base_test.cpp
unit_tests/sslid/sslid_replication_data_processor_test.cpp
unit_tests/sslid/sslid_session_data_processor_test.cpp

index 6c8274a..e35a69c 100644 (file)
@@ -199,7 +199,7 @@ public:
                                                                        const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer,
                                                                        const size_t recvlen ) = 0;
 
-       //! called from after realserver select.use in upstream thread. 
+       //! called from after realserver select.use in upstream thread.
        //! @param[in]  upstream thread id
        //! @param[out] realserver TCP endpoint
        //! @return             session use EVENT mode.
@@ -349,7 +349,7 @@ public:
                                                                        const boost::thread::id thread_id ) = 0;
 
        //! call from sorry mode event. use upstream thread and downstream thread
-       //! @param[in]  upstream and downstream thread id( check! one thread one event and first time call pattern )    
+       //! @param[in]  upstream and downstream thread id( check! one thread one event and first time call pattern )
        //! @return     session use EVENT mode
        virtual EVENT_TAG       handle_sorry_enable( const boost::thread::id thread_id ) = 0;
 
@@ -369,7 +369,7 @@ public:
        //! call from sorry server disconnect. use upstraem thread and downstream thread
        //! @param[in]  upstream and downstream thread id( check! one thread one event )
        //! @param[in]  disconnect sorryserver endpoint
-       //! @return             session use EVENT mode  
+       //! @return             session use EVENT mode
        virtual EVENT_TAG       handle_sorryserver_disconnect(
                                                                        const boost::thread::id thread_id,
                                                                        const boost::asio::ip::tcp::endpoint& sorry_endpoint ) = 0;
@@ -391,6 +391,27 @@ public:
                                                                        const size_t data_size,
                                                                        std::string& data_dump)
        {
+           if (data == NULL || data_size == 0)
+           {
+               return;
+           }
+
+               boost::format formatter("%02X");
+               for (size_t i = 0; i < data_size; i++)
+               {
+                       if (i % 32 == 0)
+                       {
+                               data_dump += "\n";
+                       }
+                       else if (i != 0 && i % 2 == 0)
+                       {
+                               data_dump += " ";
+                       }
+
+                       formatter % static_cast<unsigned short>(static_cast<unsigned char>(data[i]));
+                       data_dump += formatter.str();
+               }
+               data_dump += "\n";
        }
 };
 
index 3c51e39..38595c3 100644 (file)
@@ -199,7 +199,7 @@ snmpagent_libs = @snmpagent_libs@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
 AUTOMAKE_OPTIONS = foreign
-L7VS_MODDIR = @l7vs_dir@
+L7VS_MODDIR = @l7vs_moddir@
 MAX_BUFFER_SIZE = @l7vs_max_buffer_size@
 AM_CPPFLAGS = \
                -g -O2 -Wall -Werror -fPIC -pthread \
@@ -511,8 +511,14 @@ uninstall-am: uninstall-info-am uninstall-libLTLIBRARIES
 
 
 install:
+       cp ./.libs/libprotomod_cinsert.so ./.libs/protomod_cinsert.so && \
+       cp ./.libs/libprotomod_sslid.so ./.libs/protomod_sslid.so && \
+       cp ./.libs/libprotomod_sessionless.so ./.libs/protomod_sessionless.so && \
        $(INSTALL) -m 755 -d $(L7VS_MODDIR)
-       $(INSTALL) -D 755 -D $(L7VS_MODDIR)
+       $(INSTALL) -m 755 -D \
+               ./.libs/protomod_cinsert.so \
+               ./.libs/protomod_sslid.so  \
+               ./.libs/protomod_sessionless.so $(L7VS_MODDIR)
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
index 887606c..17adaff 100644 (file)
@@ -1,7 +1,7 @@
 #include <vector>
 #include <list>
-#include <sstream>
 #include <algorithm>
+#include <iostream>
 #include <boost/thread/pthread/mutex.hpp>
 #include <boost/asio/ip/tcp.hpp>
 #include <boost/format.hpp>
@@ -71,7 +71,7 @@ bool protocol_module_sessionless::is_tcp()
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10003, "in/out_function : bool protocol_module_sessionless::is_tcp() : "
+        putLogDebug(10000, "in/out_function : bool protocol_module_sessionless::is_tcp() : "
                     "return_value = true.", __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
@@ -86,7 +86,7 @@ bool protocol_module_sessionless::is_udp()
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10004, "in/out_function : bool protocol_module_sessionless::is_udp() : "
+        putLogDebug(10001, "in/out_function : bool protocol_module_sessionless::is_udp() : "
                     "return_value = false.", __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
@@ -120,7 +120,7 @@ void protocol_module_sessionless::initialize(rs_list_itr_func_type  inlist_begin,
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10005, "in_function : void protocol_module_sessionless::initialize("
+        putLogDebug(10003, "in_function : void protocol_module_sessionless::initialize("
                     "rs_list_itr_func_type inlist_begin, rs_list_itr_func_type inlist_end, "
                     "rs_list_itr_next_func_type inlist_next, boost::function< void( void ) > "
                     "inlist_lock, boost::function< void( void ) > inlist_unlock).", __FILE__, __LINE__ );
@@ -141,7 +141,7 @@ void protocol_module_sessionless::initialize(rs_list_itr_func_type  inlist_begin,
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10006, "out_function : void protocol_module_sessionless::initialize("
+        putLogDebug(10004, "out_function : void protocol_module_sessionless::initialize("
                     "rs_list_itr_func_type inlist_begin, rs_list_itr_func_type inlist_end, "
                     "rs_list_itr_next_func_type inlist_next, boost::function< void( void ) > "
                     "inlist_lock, boost::function< void( void ) > inlist_unlock).", __FILE__, __LINE__ );
@@ -155,7 +155,7 @@ void protocol_module_sessionless::finalize()
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10007, "in_function : void protocol_module_sessionless::finalize().", __FILE__,
+        putLogDebug(10005, "in_function : void protocol_module_sessionless::finalize().", __FILE__,
                     __LINE__ );
     }
     /*------DEBUG LOG END------*/
@@ -175,7 +175,7 @@ void protocol_module_sessionless::finalize()
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10007, "function : void protocol_module_sessionless::finalize() : "
+        putLogDebug(10006, "function : void protocol_module_sessionless::finalize() : "
                     "rs_list_begin.clear(), rs_list_end.clear(), rs_list_next.clear(), rs_list_lock.clear(), rs_list_unlock.clear() end.", __FILE__,
                     __LINE__ );
     }
@@ -205,7 +205,7 @@ void protocol_module_sessionless::finalize()
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10007, "function : void protocol_module_sessionless::finalize() : "
+        putLogDebug(10008, "function : void protocol_module_sessionless::finalize() : "
                     "schedule_tcp.clear(), schedule_udp.clear() end.", __FILE__,
                     __LINE__ );
     }
@@ -219,8 +219,8 @@ void protocol_module_sessionless::finalize()
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10007, "function : void protocol_module_sessionless::finalize() : "
-                    "forwarded_for = 0, sorry_uri.assign('\0') end.", __FILE__,
+        putLogDebug(10009, "function : void protocol_module_sessionless::finalize() : "
+                    "forwarded_for = 0, sorry_uri.assign('\\0') end.", __FILE__,
                     __LINE__ );
     }
     /*------DEBUG LOG END------*/
@@ -248,7 +248,7 @@ bool protocol_module_sessionless::is_use_sorry()
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10007, "in/out_function : bool protocol_module_sessionless::is_use_sorry() : "
+        putLogDebug(10010, "in/out_function : bool protocol_module_sessionless::is_use_sorry() : "
                     "return_value = true.", __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
@@ -261,7 +261,7 @@ void protocol_module_sessionless::handle_rslist_update()
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10005, "in/out_function : void protocol_module_sessionless::handle_rslist_update().", __FILE__,
+        putLogDebug(10011, "in/out_function : void protocol_module_sessionless::handle_rslist_update().", __FILE__,
                     __LINE__ );
     }
     /*------DEBUG LOG END------*/
@@ -286,7 +286,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::check_pa
             argsdump += *it;
         }
         formatter % argsdump;
-        putLogDebug(10010, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10012, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -295,7 +295,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::check_pa
     check_result.flag = true;
     bool forward_checked = false;
     bool sorryuri_checked = false;
-    const std::string regex_match_str = "(/([0-9a-zA-Z$\\-_.+!*'(),;:@&=]|%[0-9a-fA-F]{2})*)+";
+    const std::string regex_match_str = "(/([[:digit:][:alpha:]$\\-_.+!*'(),;:@&=]|%[:xdigit:]{2})*)+";
     typedef std::vector<std::string>::const_iterator vec_str_it;
 
     try
@@ -341,7 +341,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::check_pa
                             //set check result message
                             check_result.message = ostr.str();
 
-                            putLogError(17000, check_result.message, __FILE__, __LINE__ );
+                            putLogError(17001, check_result.message, __FILE__, __LINE__ );
                             //loop break;
                             break;
                         }
@@ -368,7 +368,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::check_pa
                                 check_result.flag = false;
                                 //set check result message
                                 check_result.message = ostr.str();
-                                putLogError(17000, check_result.message, __FILE__, __LINE__ );
+                                putLogError(17002, check_result.message, __FILE__, __LINE__ );
                                 //loop break
                                 break;
                             }
@@ -381,7 +381,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::check_pa
                         check_result.flag = false;
                         //set check result message
                         check_result.message = "You have to set option value '-S/--sorry-uri'.";
-                        putLogError(17000, check_result.message, __FILE__,
+                        putLogError(17003, check_result.message, __FILE__,
                                     __LINE__ );
                         //loop break
                         break;
@@ -394,7 +394,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::check_pa
                     check_result.flag = false;
                     //set check result message
                     check_result.message = "Cannot set multiple option '-S/--sorry-uri'.";
-                    putLogError(17000, check_result.message, __FILE__,
+                    putLogError(17004, check_result.message, __FILE__,
                                 __LINE__ );
                     //loop break
                     break;
@@ -407,7 +407,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::check_pa
                 check_result.flag = false;
                 //set check result message
                 check_result.message = "Option error.";
-                putLogError(17000, check_result.message, __FILE__, __LINE__ );
+                putLogError(17005, check_result.message, __FILE__, __LINE__ );
                 //loop break
                 break;
             }
@@ -416,18 +416,18 @@ protocol_module_base::check_message_result protocol_module_sessionless::check_pa
     catch (const std::exception& ex)
     {
         check_result.flag = false;
-        std::cerr << "check parameter exception: error = " << ex.what() << "." << std::endl;
+        std::cerr << "check parameter exception : error = " << ex.what() << "." << std::endl;
         boost::format formatter("function : protocol_module_base::check_message_result "
                                 "protocol_module_sessionless::check_parameter() exception : "
                                 "error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17006, formatter.str(), __FILE__, __LINE__ );
     }
     catch (...)
     {
         check_result.flag = false;
         std::cerr << "protocol_module_sessionless::check_parameter() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::check_message_result "
+        putLogError(17007, "function : protocol_module_base::check_message_result "
                     "protocol_module_sessionless::check_parameter() : "
                     "Unknown exception.", __FILE__, __LINE__ );
     }
@@ -440,7 +440,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::check_pa
                                 "const std::vector<std::string>& args) : return_value = ("
                                 "check_message_result.flag = %d, check_message_result.message = %s).");
         formatter % check_result.flag % check_result.message;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10013, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return check_result;
@@ -465,7 +465,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::set_para
             argsdump += *it;
         }
         formatter % argsdump;
-        putLogDebug(10010, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10014, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     //set check result flag to true
@@ -473,7 +473,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::set_para
     check_result.flag = true;
     bool forward_checked = false;
     bool sorryuri_checked = false;
-    const std::string regex_match_str = "(/([0-9a-zA-Z$\\-_.+!*'(),;:@&=]|%[0-9a-fA-F]{2})*)+";
+    const std::string regex_match_str = "(/([[:digit:][:alpha:]$\\-_.+!*'(),;:@&=]|%[:xdigit:]{2})*)+";
 
     typedef std::vector<std::string>::const_iterator vec_str_it;
 
@@ -507,7 +507,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::set_para
                             check_result.flag = false;
                             //set check result message
                             check_result.message = "You have to set option value '-S/--sorry-uri'.";
-                            putLogError(17000, check_result.message, __FILE__,
+                            putLogError(17008, check_result.message, __FILE__,
                                         __LINE__ );
                             //loop break
                             break;
@@ -522,7 +522,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::set_para
                             check_result.flag = false;
                             //set check result message
                             check_result.message = ostr.str();
-                            putLogError(17000, check_result.message, __FILE__,
+                            putLogError(17009, check_result.message, __FILE__,
                                         __LINE__ );
                             //loop break
                             break;
@@ -549,7 +549,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::set_para
                                 check_result.flag = false;
                                 //set check result message
                                 check_result.message = ostr.str();
-                                putLogError(17000, check_result.message, __FILE__,
+                                putLogError(17010, check_result.message, __FILE__,
                                             __LINE__ );
 
                                 break;
@@ -563,7 +563,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::set_para
                         check_result.flag = false;
                         //set check result message
                         check_result.message = "You have to set option value '-S/--sorry-uri'.";
-                        putLogError(17000, check_result.message, __FILE__,
+                        putLogError(17011, check_result.message, __FILE__,
                                     __LINE__ );
 
                         break;
@@ -576,7 +576,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::set_para
                     check_result.flag = false;
                     //set check result message
                     check_result.message = "Cannot set multiple option '-S/--sorry-uri'.";
-                    putLogError(17000, check_result.message, __FILE__,
+                    putLogError(17012, check_result.message, __FILE__,
                                 __LINE__ );
 
                     break;
@@ -590,7 +590,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::set_para
                 //set check result message
                 check_result.message = "Option error.";
 
-                putLogError(17000, check_result.message, __FILE__,
+                putLogError(17013, check_result.message, __FILE__,
                             __LINE__ );
 
                 break;
@@ -612,16 +612,16 @@ protocol_module_base::check_message_result protocol_module_sessionless::set_para
         check_result.flag = false;
         std::cerr << "set parameter exception : result=false, error = " << ex.what() << "." << std::endl;
         boost::format formatter("function : protocol_module_base::check_message_result "
-                                "protocol_module_sessionless::set_parameter() exception : "
+                                "protocol_module_sessionless::set_parameter() exception : "
                                 "error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17014, formatter.str(), __FILE__, __LINE__ );
     }
     catch (...)
     {
         check_result.flag = false;
         std::cerr << "protocol_module_sessionless::set_parameter() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::check_message_result "
+        putLogError(17015, "function : protocol_module_base::check_message_result "
                     "protocol_module_sessionless::set_parameter() : "
                     "Unknown exception.", __FILE__, __LINE__ );
     }
@@ -634,7 +634,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::set_para
                                 "const std::vector<std::string>& args) : return_value = ("
                                 "check_message_result.flag = %d, check_message_result.message = %s).");
         formatter % check_result.flag % check_result.message;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10015, formatter.str(), __FILE__, __LINE__ );
     }
     /*-------- DEBUG LOG END--------*/
 
@@ -660,7 +660,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::add_para
             argsdump += *it;
         }
         formatter % argsdump;
-        putLogDebug(10010, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10016, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     check_message_result check_result;
@@ -674,7 +674,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::add_para
         check_result.flag = false;
         //set check result's message
         check_result.message = "Cannot add option.";
-        putLogError(17000, check_result.message, __FILE__, __LINE__ );
+        putLogError(17016, check_result.message, __FILE__, __LINE__ );
     }
 
     /*-------- DEBUG LOG --------*/
@@ -685,7 +685,7 @@ protocol_module_base::check_message_result protocol_module_sessionless::add_para
                                 "const std::vector<std::string>& args) : return_value = ("
                                 "check_message_result.flag = %d, check_message_result.message = %s).");
         formatter % check_result.flag % check_result.message;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10017, formatter.str(), __FILE__, __LINE__ );
     }
     /*-------- DEBUG LOG --------*/
 
@@ -701,7 +701,7 @@ void protocol_module_sessionless::register_schedule(tcp_schedule_func_type insch
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10005, "in_function : void protocol_module_sessionless::register_schedule("
+        putLogDebug(10018, "in_function : void protocol_module_sessionless::register_schedule("
                     "tcp_schedule_func_type inschedule).", __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
@@ -709,7 +709,7 @@ void protocol_module_sessionless::register_schedule(tcp_schedule_func_type insch
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10005, "out_function : void protocol_module_sessionless::register_schedule("
+        putLogDebug(10019, "out_function : void protocol_module_sessionless::register_schedule("
                     "tcp_schedule_func_type inschedule).", __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
@@ -722,7 +722,7 @@ void protocol_module_sessionless::register_schedule(udp_schedule_func_type insch
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
-        putLogDebug(10002,
+        putLogDebug(10020,
                     "in/out_function : void protocol_module_sessionless::register_schedule(udp_schedule_func_type inschedule).",
                     __FILE__, __LINE__ );
     }
@@ -747,7 +747,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_init
                                 "const boost::asio::ip::udp::endpoint& client_endpoint_udp) : "
                                 "up_thread_id = %d, down_thread_id = %d, client_endpoint_tcp = [%s]:%d.");
         formatter % up_thread_id % down_thread_id % client_endpoint_tcp.address().to_string() % client_endpoint_tcp.port() ;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10021, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     EVENT_TAG status;
@@ -763,7 +763,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_init
         {
             boost::format formatter("new : address = &(%d), size = %lu.");
             formatter % static_cast<void*>(p_up) % sizeof(session_thread_data_sessionless);
-            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10022, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         p_up->thread_id = up_thread_id;
@@ -799,7 +799,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_init
             formatter % p_up->thread_id % p_up->thread_division % p_up->pair_thread_id % p_up->accept_end_flag
             % p_up->end_flag % p_up->sorry_flag % p_up->sorryserver_switch_flag % p_up->realserver_switch_flag
             % p_up->last_status % client_endpoint_tcp.address().to_string() % client_endpoint_tcp.port();
-            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10023, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
 
@@ -809,7 +809,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_init
         {
             boost::format formatter("new : address = &(%d), size = %lu.");
             formatter % static_cast<void*>(p_down) % sizeof(session_thread_data_sessionless);
-            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10024, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         p_down->thread_id = down_thread_id;
@@ -829,12 +829,12 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_init
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_session_initialize() : session_thread_data_sessionless(down_thread_id) : "
                                     "accept_end_flag = %d, end_flag = %d, "
-                                    "pair_thread_id = %d, realserver_switch_flag = %d, sorry_flag = %d, "
+                                    "pair_thread_id = %d, sorryserver_switch_flag = %d, realserver_switch_flag = %d, sorry_flag = %d, "
                                     "thread_division= %d, thread_id = %d, last_status = %d, client_endpoint_tcp = [%s]:%d.");
             formatter % p_down->thread_id % p_down->thread_division % p_down->pair_thread_id % p_down->accept_end_flag
             % p_down->end_flag % p_down->sorry_flag % p_down->sorryserver_switch_flag
             % p_down->realserver_switch_flag % p_down->last_status % client_endpoint_tcp.address().to_string() % client_endpoint_tcp.port();
-            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10025, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
 
@@ -848,7 +848,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_init
     catch (const std::bad_alloc&)
     {
         std::cerr << "handle_session_initialize exception : Could not allocate memory." << std::endl;
-        putLogError(17000, "Could not allocate memory.", __FILE__, __LINE__ );
+        putLogError(17017, "Could not allocate memory.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (const std::exception& ex)
@@ -857,13 +857,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_init
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_session_initialize() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17018, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "rotocol_module_sessionless::handle_session_initialize() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::check_message_result "
+        putLogError(17019, "function : protocol_module_base::check_message_result "
                     "protocol_module_sessionless::handle_session_initialize() : "
                     "Unknown exception.", __FILE__, __LINE__ );
 
@@ -878,7 +878,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_init
                                 "const boost::thread::id down_thread_id, const boost::asio::ip::tcp::endpoint& client_endpoint_tcp, "
                                 "const boost::asio::ip::udp::endpoint& client_endpoint_udp) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10026, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -900,7 +900,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_fina
                                 "const boost::thread::id down_thread_id): "
                                 "up_thread_id = %d, down_thread_id = %d.");
         formatter % up_thread_id % down_thread_id;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10027, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     EVENT_TAG status;
@@ -929,7 +929,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_fina
                     {
                         boost::format formatter("delete : address = &(%d).");
                         formatter % static_cast<void*>(recv_data.recive_buffer2);
-                        putLogDebug(10005, formatter.str(), __FILE__,
+                        putLogDebug(10028, formatter.str(), __FILE__,
                                     __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -941,7 +941,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_fina
                     {
                         boost::format formatter("delete : address = &(%d).");
                         formatter % static_cast<void*>(recv_data.recive_buffer1);
-                        putLogDebug(10005, formatter.str(), __FILE__,
+                        putLogDebug(10029, formatter.str(), __FILE__,
                                     __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -955,7 +955,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_fina
                 {
                     boost::format formatter("delete : address = &(%d).");
                     formatter % static_cast<void*>(p_up);
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10030, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 delete p_up;
@@ -978,7 +978,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_fina
                     {
                         boost::format formatter("delete : address = &(%d).");
                         formatter % static_cast<void*>(recv_data.recive_buffer2);
-                        putLogDebug(10005, formatter.str(), __FILE__,
+                        putLogDebug(10031, formatter.str(), __FILE__,
                                     __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -991,7 +991,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_fina
                     {
                         boost::format formatter("delete : address = &(%d).");
                         formatter % static_cast<void*>(recv_data.recive_buffer2);
-                        putLogDebug(10005, formatter.str(), __FILE__,
+                        putLogDebug(10032, formatter.str(), __FILE__,
                                     __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -1003,7 +1003,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_fina
                 {
                     boost::format formatter("delete : address = &(%d).");
                     formatter % static_cast<void*>(p_down);
-                    putLogDebug(10005, formatter.str(), __FILE__,
+                    putLogDebug(10033, formatter.str(), __FILE__,
                                 __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
@@ -1020,13 +1020,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_fina
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_session_finalize() : exception : error = %s.");
         formatter % STOP % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17020, formatter.str(), __FILE__, __LINE__ );
         status = STOP;
     }
     catch (...)
     {
         std::cerr << "Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17021, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_session_finalize() : "
                     "Unknown exception.", __FILE__, __LINE__ );
         status = STOP;
@@ -1039,7 +1039,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_session_fina
                                 "handle_session_finalize(const boost::thread::id up_thread_id, "
                                 "const boost::thread::id down_thread_id) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10034, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return status;
@@ -1057,7 +1057,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_accept(const
         boost::format formatter("in_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_accept(const boost::thread::id thread_id) : thread_id = %d.");
         formatter % thread_id;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10035, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -1072,7 +1072,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_accept(const
         session_thread_it = session_thread_data_map.find(thread_id);
         if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
         {
-            putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+            putLogError(17022, "Invalid thread id.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -1083,7 +1083,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_accept(const
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
         {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+            putLogDebug(10036, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                         "handle_accept(const boost::thread::id thread_id) : ACCEPT_END_FLAG_ON.", __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
@@ -1109,7 +1109,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_accept(const
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_accept() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10037, formatter.str(), __FILE__, __LINE__ );
         }
         status = FINALIZE;
         /*------DEBUG LOG END------*/
@@ -1120,14 +1120,14 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_accept(const
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_accept() : exception : error = %s.");
         formatter % FINALIZE % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17023, formatter.str(), __FILE__, __LINE__ );
 
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::check_message_result "
+        putLogError(17024, "function : protocol_module_base::check_message_result "
                     "protocol_module_sessionless::handle_accept() : "
                     "Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
@@ -1139,7 +1139,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_accept(const
         boost::format formatter("out_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_accept(const boost::thread::id thread_id) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10038, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return status;
@@ -1156,12 +1156,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
     /*-------- DEBUG LOG --------*/
     if (LOG_LV_DEBUG == getloglevel())
     {
+        std::string buffer(recvbuffer.data(), recvbuffer.size() < recvlen ? recvbuffer.size() : recvlen);
         boost::format formatter("in_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_client_recv(const boost::thread::id thread_id, "
                                 "const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer, "
                                 "const size_t recvlen) : thread_id = %d, recvbuffer = %s, recvlen = %d.");
-        formatter % thread_id % recvbuffer.data() % recvlen;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        formatter % thread_id % buffer.c_str() % recvlen;
+        putLogDebug(10039, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -1175,6 +1176,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
     size_t content_length_header_len = 0;
     size_t content_len_value = 0;
     size_t pos = 0;
+    size_t buffer_size = 0;
     const size_t cr_lf_len = strlen("\r\n\r\n");
     std::string str_value;
     const std::string http_header = "";
@@ -1191,7 +1193,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
     if (recvlen > recvbuffer.size())
     {
         std::cerr << "handle_client_recv() : Data size bigger than buffer size." << std::endl;
-        putLogError(17000, "Data size bigger than buffer size.", __FILE__,
+        putLogError(17025, "Data size bigger than buffer size.", __FILE__,
                     __LINE__ );
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
@@ -1201,7 +1203,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                     "const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer, "
                                     "const size_t recvlen) : return_value = %d.");
             formatter % FINALIZE;
-            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10040, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         return FINALIZE;
@@ -1215,7 +1217,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
             session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17026, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -1233,7 +1235,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
             recive_data_it = session_data->recive_data_map.find(session_data->client_endpoint_tcp);
             if (recive_data_it == session_data->recive_data_map.end())
             {
-                putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+                putLogError(17027, "Invalid endpoint.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -1246,7 +1248,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
             it = std::find_if(it, it_end, data_send_ok());
             if (it != it_end)
             {
-                putLogError(17000, "Sending data is not correct.", __FILE__, __LINE__ );
+                putLogError(17028, "Sending data is not correct.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -1255,15 +1257,33 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
             it = std::adjacent_find(it, it_end, data_send_repeated());
             if (it != it_end)
             {
-                putLogError(17000, "Sending data is not correct.", __FILE__, __LINE__ );
+                putLogError(17029, "Sending data is not correct.", __FILE__, __LINE__ );
                 throw -1;
             }
 
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_client_recv() : step1--send status list loop start.", __FILE__, __LINE__ );
+                std::string datadump;
+                boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                        "send_rest_size = %d, send_possible_size = %d, "
+                                        "send_offset = %d, unsend_size = %d, edit_division = %d.");
+                int i = 0;
+                for (it = recv_data.send_status_list.begin();
+                     it != recv_data.send_status_list.end();
+                     ++it, ++i)
+                {
+                    formatter % i % it->status % it->send_end_size
+                              % it->send_rest_size % it->send_possible_size
+                              % it->send_offset % it->unsend_size % it->edit_division;
+                    datadump += formatter.str();
+                }
+
+                formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            "handle_client_recv() : send status list dump : send status list size = %d.%s");
+
+                formatter % recv_data.send_status_list.size() % datadump;
+                putLogDebug(10041, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
 
@@ -1299,16 +1319,26 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_client_recv() : step1--send status list loop end.", __FILE__, __LINE__ );
-            }
-            /*------DEBUG LOG END------*/
+                std::string datadump;
+                boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                        "send_rest_size = %d, send_possible_size = %d, "
+                                        "send_offset = %d, unsend_size = %d, edit_division = %d.");
+                int i = 0;
+                for (it = recv_data.send_status_list.begin();
+                     it != recv_data.send_status_list.end();
+                     ++it, ++i)
+                {
+                    formatter % i % it->status % it->send_end_size
+                              % it->send_rest_size % it->send_possible_size
+                              % it->send_offset % it->unsend_size % it->edit_division;
+                    datadump += formatter.str();
+                }
 
-            /*-------- DEBUG LOG --------*/
-            if (LOG_LV_DEBUG == getloglevel())
-            {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_client_recv() : step2--data buffer size process start.", __FILE__, __LINE__ );
+                formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            "handle_client_recv() : send status list dump : send status list size = %d.%s");
+
+                formatter % recv_data.send_status_list.size() % datadump;
+                putLogDebug(10042, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
 
@@ -1320,156 +1350,123 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                 //buffer is need reallcate
                 if (recv_data.recive_buffer_max_size < data_remain_size + recvlen)
                 {
-                    //first recive
-                    if (recv_data.recive_buffer == NULL)
+                    buffer_size = (data_remain_size + recvlen) > MAX_BUFFER_SIZE ? (data_remain_size + recvlen) : MAX_BUFFER_SIZE;
+                    //recive_buffer1's memery allocate and initialization
+                    buffer1 = new char[buffer_size];
+                    /*-------- DEBUG LOG --------*/
+                    if (LOG_LV_DEBUG == getloglevel())
                     {
-                        //recive_buffer1's memery allocate and initialization
-                        recv_data.recive_buffer1 = new char[MAX_BUFFER_SIZE];
-                        /*-------- DEBUG LOG --------*/
-                        if (LOG_LV_DEBUG == getloglevel())
-                        {
-                            boost::format formatter("new : address = &(%d), size = %lu.");
-                            formatter % static_cast<void*>(recv_data.recive_buffer1) % (MAX_BUFFER_SIZE);
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                        }
-                        /*-------- DEBUG LOG END--------*/
-                        memset(recv_data.recive_buffer1, 0, MAX_BUFFER_SIZE);
-                        //recive_buffer2's memery allocate and initialization
-                        recv_data.recive_buffer2 = new char[MAX_BUFFER_SIZE];
-                        /*-------- DEBUG LOG --------*/
-                        if (LOG_LV_DEBUG == getloglevel())
-                        {
-                            boost::format formatter("new : address = &(%d), size = %lu.");
-                            formatter % static_cast<void*>(recv_data.recive_buffer2) % (MAX_BUFFER_SIZE);
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                        }
-                        /*-------- DEBUG LOG END--------*/
-                        memset(recv_data.recive_buffer2, 0, MAX_BUFFER_SIZE);
-                        //set uisng buffer recive_buffer1 for defalut
-                        recv_data.recive_buffer = recv_data.recive_buffer1;
-                        //set max buffer size MAX_BUFFER_SIZE
-                        recv_data.recive_buffer_max_size = MAX_BUFFER_SIZE;
+                        boost::format formatter("new : address = &(%d), size = %lu.");
+                        formatter % static_cast<void*>(buffer1) % buffer_size;
+                        putLogDebug(10043, formatter.str(), __FILE__, __LINE__ );
                     }
-                    //not first recive
-                    else
+                    /*------DEBUG LOG END------*/
+                    memset(buffer1, 0, buffer_size);
+                    //recive_buffer2's memery allocate and initialization
+                    buffer2 = new char[buffer_size];
+                    /*-------- DEBUG LOG --------*/
+                    if (LOG_LV_DEBUG == getloglevel())
                     {
-                        //recive_buffer1's memery allocate and initialization
-                        buffer1 = new char[data_remain_size + recvlen];
-                        /*-------- DEBUG LOG --------*/
-                        if (LOG_LV_DEBUG == getloglevel())
-                        {
-                            boost::format formatter("new : address = &(%d), size = %lu.");
-                            formatter % static_cast<void*>(buffer1) % (data_remain_size + recvlen);
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                        }
-                        /*------DEBUG LOG END------*/
-                        memset(buffer1, 0, data_remain_size + recvlen);
-                        //recive_buffer2's memery allocate and initialization
-                        buffer2 = new char[data_remain_size + recvlen];
-                        /*-------- DEBUG LOG --------*/
-                        if (LOG_LV_DEBUG == getloglevel())
-                        {
-                            boost::format formatter("new : address = &(%d), size = %lu.");
-                            formatter % static_cast<void*>(buffer2) % (data_remain_size + recvlen);
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                        }
-                        /*------DEBUG LOG END------*/
-                        memset(buffer2, 0, data_remain_size + recvlen);
+                        boost::format formatter("new : address = &(%d), size = %lu.");
+                        formatter % static_cast<void*>(buffer2) % buffer_size;
+                        putLogDebug(10044, formatter.str(), __FILE__, __LINE__ );
+                    }
+                    /*------DEBUG LOG END------*/
+                    memset(buffer2, 0, buffer_size);
 
-                        /*-------- DEBUG LOG --------*/
-                        if (LOG_LV_DEBUG == getloglevel())
-                        {
-                            std::string datadump;
-                            dump_memory(recv_data.recive_buffer + data_remain_start, data_remain_size, datadump);
-                            boost::format formatter(
-                                "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                "handle_client_recv() : before memcpy (data dump) : "
-                                "data begin = %d, data_size = %d, data = %s.");
-                            formatter % data_remain_start % (data_remain_size) % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                        }
-                        /*------DEBUG LOG END------*/
-                        //copy data from old buffer to new buffer
-                        memcpy(buffer1, recv_data.recive_buffer + data_remain_start, data_remain_size);
-                        /*-------- DEBUG LOG --------*/
-                        if (LOG_LV_DEBUG == getloglevel())
-                        {
-                            std::string datadump;
-                            dump_memory(buffer1, data_remain_size, datadump);
-                            boost::format formatter(
-                                "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                "handle_client_recv() : after memcpy (data dump) : "
-                                "data begin = 0, data_size = %d, data = %s.");
-                            formatter % (data_remain_size) % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                        }
-                        /*------DEBUG LOG END------*/
+                    /*-------- DEBUG LOG --------*/
+                    if (LOG_LV_DEBUG == getloglevel())
+                    {
+                        std::string datadump;
+                        dump_memory(recv_data.recive_buffer + data_remain_start, data_remain_size, datadump);
+                        boost::format formatter(
+                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            "handle_client_recv() : before memcpy (data dump) : "
+                            "data begin = %d, data_size = %d, data = %s.");
+                        formatter % data_remain_start % data_remain_size % datadump;
+                        putLogDebug(10045, formatter.str(), __FILE__, __LINE__ );
+                    }
+                    /*------DEBUG LOG END------*/
+                    //copy data from old buffer to new buffer
+                    memcpy(buffer1, recv_data.recive_buffer + data_remain_start, data_remain_size);
+                    /*-------- DEBUG LOG --------*/
+                    if (LOG_LV_DEBUG == getloglevel())
+                    {
+                        std::string datadump;
+                        dump_memory(buffer1, data_remain_size, datadump);
+                        boost::format formatter(
+                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            "handle_client_recv() : after memcpy (data dump) : "
+                            "data begin = 0, data_size = %d, data = %s.");
+                        formatter % data_remain_size % datadump;
+                        putLogDebug(10046, formatter.str(), __FILE__, __LINE__ );
+                    }
+                    /*------DEBUG LOG END------*/
 
+                    /*-------- DEBUG LOG --------*/
+                    if (LOG_LV_DEBUG == getloglevel())
+                    {
+                        std::string datadump;
+                        dump_memory(recvbuffer.data(), recvlen, datadump);
+                        boost::format formatter(
+                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            "handle_client_recv() : before memcpy (data dump) : "
+                            "data begin = 0, data_size = %d, data = %s.");
+                        formatter % recvlen % datadump;
+                        putLogDebug(10047, formatter.str(), __FILE__, __LINE__ );
+                    }
+                    /*------DEBUG LOG END------*/
+                    memcpy(buffer1 + data_remain_size, recvbuffer.data(), recvlen);
+                    /*-------- DEBUG LOG --------*/
+                    if (LOG_LV_DEBUG == getloglevel())
+                    {
+                        std::string datadump;
+                        dump_memory(buffer1 + data_remain_size, recvlen, datadump);
+                        boost::format formatter(
+                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            "handle_client_recv() : after memcpy (data dump) : "
+                            "data begin = %d, data_size = %d, data = %s.");
+                        formatter % data_remain_size % recvlen % datadump;
+                        putLogDebug(10048, formatter.str(), __FILE__, __LINE__ );
+                    }
+                    /*------DEBUG LOG END------*/
+                    //free old buffer1 and old buffer2
+                    if (recv_data.recive_buffer1 != NULL)
+                    {
                         /*-------- DEBUG LOG --------*/
                         if (LOG_LV_DEBUG == getloglevel())
                         {
-                            std::string datadump;
-                            dump_memory(recvbuffer.data(), recvlen, datadump);
-                            boost::format formatter(
-                                "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                "handle_client_recv() : before memcpy (data dump) : "
-                                "data begin = %0, data_size = %d, data = %s.");
-                            formatter % recvlen % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            boost::format formatter("delete : address = &(%d).");
+                            formatter % static_cast<void*>(recv_data.recive_buffer1);
+                            putLogDebug(10049, formatter.str(), __FILE__,
+                                        __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
-                        memcpy(buffer1 + data_remain_size, recvbuffer.data(), recvlen);
+                        delete[] recv_data.recive_buffer1;
+                        recv_data.recive_buffer1 = NULL;
+                    }
+
+                    if (recv_data.recive_buffer2 != NULL)
+                    {
                         /*-------- DEBUG LOG --------*/
                         if (LOG_LV_DEBUG == getloglevel())
                         {
-                            std::string datadump;
-                            dump_memory(buffer1 + data_remain_size, recvlen, datadump);
-                            boost::format formatter(
-                                "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                "handle_client_recv() : after memcpy (data dump) :  "
-                                "data begin = %d, data_size = %d, data = %s.");
-                            formatter % data_remain_size % recvlen % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            boost::format formatter("delete : address = &(%d).");
+                            formatter % static_cast<void*>(recv_data.recive_buffer2);
+                            putLogDebug(10050, formatter.str(), __FILE__,
+                                        __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
-                        //free old buffer1 and old buffer2
-                        if (recv_data.recive_buffer1 != NULL)
-                        {
-                            /*-------- DEBUG LOG --------*/
-                            if (LOG_LV_DEBUG == getloglevel())
-                            {
-                                boost::format formatter("delete : address = &(%d).");
-                                formatter % static_cast<void*>(recv_data.recive_buffer1);
-                                putLogDebug(10005, formatter.str(), __FILE__,
-                                            __LINE__ );
-                            }
-                            /*------DEBUG LOG END------*/
-                            delete[] recv_data.recive_buffer1;
-                            recv_data.recive_buffer1 = NULL;
-                        }
-
-                        if (recv_data.recive_buffer2 != NULL)
-                        {
-                            /*-------- DEBUG LOG --------*/
-                            if (LOG_LV_DEBUG == getloglevel())
-                            {
-                                boost::format formatter("delete : address = &(%d).");
-                                formatter % static_cast<void*>(recv_data.recive_buffer2);
-                                putLogDebug(10005, formatter.str(), __FILE__,
-                                            __LINE__ );
-                            }
-                            /*------DEBUG LOG END------*/
-                            delete[] recv_data.recive_buffer2;
-                            recv_data.recive_buffer2 = NULL;
-                        }
-
-                        //set new buffer pointer
-                        recv_data.recive_buffer1 = buffer1;
-                        recv_data.recive_buffer2 = buffer2;
-                        recv_data.recive_buffer = recv_data.recive_buffer1;
-                        //set new buffer's max size
-                        recv_data.recive_buffer_max_size = data_remain_size + recvlen;
+                        delete[] recv_data.recive_buffer2;
+                        recv_data.recive_buffer2 = NULL;
                     }
+
+                    //set new buffer pointer
+                    recv_data.recive_buffer1 = buffer1;
+                    recv_data.recive_buffer2 = buffer2;
+                    recv_data.recive_buffer = recv_data.recive_buffer1;
+                    //set new buffer's max size
+                    recv_data.recive_buffer_max_size = buffer_size;
                 }
                 //buffer's max size ≧ remain data size + requst size
                 //buffer isn't need reallcate, but switch
@@ -1478,7 +1475,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                     //pointer valid check
                     if (recv_data.recive_buffer1 == NULL || recv_data.recive_buffer2 == NULL)
                     {
-                        putLogError(17000, "Invalid pointer.", __FILE__, __LINE__ );
+                        putLogError(17030, "Invalid pointer.", __FILE__, __LINE__ );
                         throw -1;
                     }
                     //using buffer is buffer1
@@ -1496,7 +1493,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                 "handle_client_recv() : before memcpy (data dump) : "
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % data_remain_start % data_remain_size  % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10051, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         //copy data from buffer1 to buffer2
@@ -1508,10 +1505,23 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                             dump_memory(recv_data.recive_buffer2, recvlen, datadump);
                             boost::format formatter(
                                 "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                "handle_client_recv() : after memcpy (data dump) :  "
+                                "handle_client_recv() : after memcpy (data dump) : "
+                                "data begin = 0, data_size = %d, data = %s.");
+                            formatter % recvlen % datadump;
+                            putLogDebug(10052, formatter.str(), __FILE__, __LINE__ );
+                        }
+                        /*------DEBUG LOG END------*/
+                        /*-------- DEBUG LOG --------*/
+                        if (LOG_LV_DEBUG == getloglevel())
+                        {
+                            std::string datadump;
+                            dump_memory(recvbuffer.data(), recvlen, datadump);
+                            boost::format formatter(
+                                "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                                "handle_client_recv() : before memcpy (data dump) : "
                                 "data begin = 0, data_size = %d, data = %s.");
                             formatter % recvlen % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10053, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         memcpy(recv_data.recive_buffer2 + data_remain_size, recvbuffer.data(), recvlen);
@@ -1525,7 +1535,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                 "handle_client_recv() : after memcpy (data dump) : "
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % data_remain_size % recvlen % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10054, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         //set buffer2 for using buffer
@@ -1543,10 +1553,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                             dump_memory(recv_data.recive_buffer + data_remain_start, data_remain_size, datadump);
                             boost::format formatter(
                                 "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                "handle_client_recv() : before memcpy (data dump) :  "
+                                "handle_client_recv() : before memcpy (data dump) : "
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % data_remain_start % data_remain_size % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10055, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         //copy data from buffer2 to buffer1
@@ -1558,10 +1568,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                             dump_memory(recv_data.recive_buffer1, data_remain_size, datadump);
                             boost::format formatter(
                                 "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                "handle_client_recv() : after memcpy (data dump) :  "
+                                "handle_client_recv() : after memcpy (data dump) : "
                                 "data begin = 0, data_size = %d, data = %s.");
                             formatter % data_remain_size % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10056, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         /*-------- DEBUG LOG --------*/
@@ -1571,10 +1581,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                             dump_memory(recvbuffer.data(), recvlen, datadump);
                             boost::format formatter(
                                 "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                "handle_client_recv() : before memcpy (data dump) :  "
+                                "handle_client_recv() : before memcpy (data dump) : "
                                 "data begin = 0, data_size = %d, data = %s.");
                             formatter % recvlen % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10057, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         memcpy(recv_data.recive_buffer1 + data_remain_size, recvbuffer.data(), recvlen);
@@ -1585,10 +1595,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                             dump_memory(recv_data.recive_buffer1 + data_remain_size, recvlen, datadump);
                             boost::format formatter(
                                 "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                "handle_client_recv() : after memcpy (data dump) :  "
+                                "handle_client_recv() : after memcpy (data dump) : "
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % data_remain_size % recvlen % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10058, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         //set buffer1 for using buffer
@@ -1608,7 +1618,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                 //offset recalc
                 for (; it_begin != it_end; ++it_begin)
                 {
-                    it->send_offset -= data_remain_start;
+                    it_begin->send_offset -= data_remain_start;
                 }
             }
             //buffer's rest size ≧ request size
@@ -1617,7 +1627,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                 //pointer valid check
                 if (recv_data.recive_buffer == NULL)
                 {
-                    putLogError(17000, "Invalid pointer.", __FILE__, __LINE__ );
+                    putLogError(17031, "Invalid pointer.", __FILE__, __LINE__ );
                     throw -1;
                 }
                 /*-------- DEBUG LOG --------*/
@@ -1629,7 +1639,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                             "handle_client_recv() : before memcpy (data dump) : "
                                             "data begin = 0, data_size = %d, data = %s.");
                     formatter % recvlen % datadump;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10059, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //copy data from paramenter to using buffer
@@ -1646,7 +1656,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                             "data begin = %d, data_size = %d, data = %s.");
                     formatter % (recv_data.recive_buffer_max_size - recv_data.recive_buffer_rest_size )
                     % recvlen % datadump;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10060, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //buffer's rest size recalc
@@ -1654,26 +1664,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                 //remain data size recalc
                 data_remain_size += recvlen;
             }
-            /*-------- DEBUG LOG --------*/
-            if (LOG_LV_DEBUG == getloglevel())
-            {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_client_recv() : step2--data buffer size process end.", __FILE__, __LINE__ );
-            }
-            /*------DEBUG LOG END------*/
 
             it = recv_data.send_status_list.begin();
             it_end = recv_data.send_status_list.end();
 
             //set request rest size
             request_data_remain_size = recvlen;
-            /*-------- DEBUG LOG --------*/
-            if (LOG_LV_DEBUG == getloglevel())
-            {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_client_recv() : step3--send status list loop start.", __FILE__, __LINE__ );
-            }
-            /*------DEBUG LOG END------*/
+
             //original status process
             for (; it != it_end; ++it)
             {
@@ -1721,7 +1718,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                                 "handle_client_recv() : call check_http_method : "
                                                 "return_value = %d.");
                         formatter % check_result;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10061, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //check http method result is OK
@@ -1736,7 +1733,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                                     "handle_client_recv() : call check_http_version : "
                                                     "return_value = %d.");
                             formatter % check_result;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10062, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                     }
@@ -1752,8 +1749,8 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                                     "handle_client_recv() : call find_http_header : "
                                                     "return_value = %d.");
-                            formatter % static_cast<int>(bret);;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            formatter % static_cast<int>(bret);
+                            putLogDebug(10063, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         //serch http header result is OK
@@ -1768,8 +1765,8 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                 boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                                         "handle_client_recv() : call find_http_header : "
                                                         "return_value = %d.");
-                                formatter % formatter % static_cast<int>(bret);;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                formatter % static_cast<int>(bret);
+                                putLogDebug(10064, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             //serch Content_Length result is OK
@@ -1821,13 +1818,6 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                             }
                             //set edit_division flag on
                             it->edit_division = EDIT_DIVISION_EDIT;
-                            /*-------- DEBUG LOG --------*/
-                            if (LOG_LV_DEBUG == getloglevel())
-                            {
-                                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                            "handle_client_recv() : EDIT_DIVISION_EDIT.", __FILE__, __LINE__ );
-                            }
-                            /*------DEBUG LOG END------*/
                         }
                         //serch http header result is NG
                         else
@@ -1887,15 +1877,26 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_client_recv() : step3--send status list loop end.", __FILE__, __LINE__ );
-            }
-            /*------DEBUG LOG END------*/
-            /*-------- DEBUG LOG --------*/
-            if (LOG_LV_DEBUG == getloglevel())
-            {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_client_recv() : step4--new send status create procession start.", __FILE__, __LINE__ );
+                std::string datadump;
+                boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                        "send_rest_size = %d, send_possible_size = %d, "
+                                        "send_offset = %d, unsend_size = %d, edit_division = %d.");
+                int i = 0;
+                for (it = recv_data.send_status_list.begin();
+                     it != recv_data.send_status_list.end();
+                     ++it, ++i)
+                {
+                    formatter % i % it->status % it->send_end_size
+                              % it->send_rest_size % it->send_possible_size
+                              % it->send_offset % it->unsend_size % it->edit_division;
+                    datadump += formatter.str();
+                }
+
+                formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            "handle_client_recv() : send status list dump : send status list size = %d.%s");
+
+                formatter % recv_data.send_status_list.size() % datadump;
+                putLogDebug(10065, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
             //there are still rest data need to prosess
@@ -1930,7 +1931,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                             "handle_client_recv() : call check_http_method : "
                                             "return_value = %d.");
                     formatter % check_result;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10066, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //check http method resilt is OK
@@ -1946,7 +1947,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                                 "handle_client_recv() : call check_http_version : "
                                                 "return_value = %d.");
                         formatter % check_result;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10067, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                 }
@@ -1963,7 +1964,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                                 "handle_client_recv() : call find_http_header : "
                                                 "return_value = %d.");
                         formatter % check_result;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10068, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //searched whole http header
@@ -1979,7 +1980,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                                     "handle_client_recv() : call find_http_header : "
                                                     "return_value = %d.");
                             formatter % static_cast<int>(bret);
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10069, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
 
@@ -2032,13 +2033,6 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                         }
                         //set edit_division flag on
                         new_send_it->edit_division = EDIT_DIVISION_EDIT;
-                        /*-------- DEBUG LOG --------*/
-                        if (LOG_LV_DEBUG == getloglevel())
-                        {
-                            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                        "handle_client_recv() : EDIT_DIVISION_EDIT.", __FILE__, __LINE__ );
-                        }
-                        /*------DEBUG LOG END------*/
                     }
                     //not searched whole http header
                     else
@@ -2086,8 +2080,26 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_client_recv() : step4--new send status create procession end.", __FILE__, __LINE__ );
+                std::string datadump;
+                boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                        "send_rest_size = %d, send_possible_size = %d, "
+                                        "send_offset = %d, unsend_size = %d, edit_division = %d.");
+                int i = 0;
+                for (it = recv_data.send_status_list.begin();
+                     it != recv_data.send_status_list.end();
+                     ++it, ++i)
+                {
+                    formatter % i % it->status % it->send_end_size
+                              % it->send_rest_size % it->send_possible_size
+                              % it->send_offset % it->unsend_size % it->edit_division;
+                    datadump += formatter.str();
+                }
+
+                formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            "handle_client_recv() : send status list dump : send status list size = %d.%s");
+
+                formatter % recv_data.send_status_list.size() % datadump;
+                putLogDebug(10070, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
             //search for send_possbile item in status list
@@ -2122,7 +2134,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_client_recv() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10071, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         status = FINALIZE;
@@ -2130,29 +2142,29 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
     catch (const std::string& ex)
     {
         std::cerr << "handle_client_recv exception : " << ex << std::endl;
-        putLogError(17000, ex.c_str(), __FILE__, __LINE__ );
+        putLogError(17032, ex.c_str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (const std::bad_alloc&)
     {
         std::cerr << "handle_client_recv exception : Could not allocate memory." << std::endl;
-        putLogError(17000, "Could not allocate memory.", __FILE__, __LINE__ );
+        putLogError(17033, "Could not allocate memory.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (const std::exception& ex)
     {
-        std::cerr << "handle_client_recv exception : error =" << ex.what() << "." << std::endl;
+        std::cerr << "handle_client_recv exception : error = " << ex.what() << "." << std::endl;
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_client_recv() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17034, formatter.str(), __FILE__, __LINE__ );
 
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_client_recv() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::check_message_result "
+        putLogError(17035, "function : protocol_module_base::check_message_result "
                     "protocol_module_sessionless::handle_client_recv() : "
                     "Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
@@ -2166,7 +2178,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_recv(
                                 "const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer, "
                                 "const size_t recvlen) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10072, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -2188,7 +2200,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
                                 "boost::asio::ip::tcp::endpoint & rs_endpoint) : "
                                 "thread_id = %d, rs_endpoint = [%s]:%d.");
         formatter % thread_id % rs_endpoint.address().to_string() % rs_endpoint.port();
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10073, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     EVENT_TAG status;
@@ -2200,7 +2212,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
     if (schedule_tcp.empty())
     {
         std::cerr << "handle_realserver_select() : Schedule_tcp function is empty." << std::endl;
-        putLogError(17000, "Schedule_tcp function is empty.", __FILE__, __LINE__ );
+        putLogError(17036, "Schedule_tcp function is empty.", __FILE__, __LINE__ );
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
         {
@@ -2209,7 +2221,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
                                     "boost::asio::ip::tcp::endpoint & rs_endpoint)"
                                     " : return_value = %d.");
             formatter % FINALIZE;
-            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10074, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         return FINALIZE;
@@ -2223,7 +2235,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
             session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17037, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -2239,7 +2251,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
                                     "handle_realserver_select() : call schedule_tcp : "
                                     "rs_endpoint = [%s]:%d.");
             formatter % rs_endpoint.address().to_string() % rs_endpoint.port();
-            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10075, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
 
@@ -2265,7 +2277,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
                 {
                     boost::format formatter("new : address = &(%d), size = %lu.");
                     formatter % static_cast<void*>(session_down_thread_data) % sizeof(session_thread_data_sessionless);
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10076, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 session_down_thread_data->thread_id = session_data->pair_thread_id;
@@ -2292,7 +2304,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
                     formatter % session_down_thread_data->thread_id % session_down_thread_data->thread_division % session_down_thread_data->pair_thread_id % session_down_thread_data->accept_end_flag
                     % session_down_thread_data->end_flag % session_down_thread_data->sorry_flag % session_down_thread_data->sorryserver_switch_flag % session_down_thread_data->realserver_switch_flag
                     % session_down_thread_data->client_endpoint_tcp.address().to_string() % session_down_thread_data->client_endpoint_tcp.port();
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10077, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
             }
@@ -2322,7 +2334,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
                     formatter % session_down_thread_data->thread_id % session_down_thread_data->thread_division % session_down_thread_data->pair_thread_id % session_down_thread_data->accept_end_flag
                     % session_down_thread_data->end_flag % session_down_thread_data->sorry_flag % session_down_thread_data->sorryserver_switch_flag % session_down_thread_data->realserver_switch_flag
                     % session_down_thread_data->client_endpoint_tcp.address().to_string() % session_down_thread_data->client_endpoint_tcp.port();
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10078, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
 
@@ -2336,7 +2348,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
                     {
                         boost::format formatter("delete : address = &(%d).");
                         formatter % static_cast<void*>(recv_data.recive_buffer1);
-                        putLogDebug(10005, formatter.str(), __FILE__,
+                        putLogDebug(10079, formatter.str(), __FILE__,
                                     __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -2346,7 +2358,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
                     {
                         boost::format formatter("delete : address = &(%d).");
                         formatter % static_cast<void*>(recv_data.recive_buffer2);
-                        putLogDebug(10005, formatter.str(), __FILE__,
+                        putLogDebug(10080, formatter.str(), __FILE__,
                                     __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -2375,7 +2387,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                putLogDebug(10081, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                             "handle_realserver_select() : END_FLAG_ON.", __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
@@ -2391,7 +2403,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_realserver_select() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10082, formatter.str(), __FILE__, __LINE__ );
         }
         status = FINALIZE;
         /*------DEBUG LOG END------*/
@@ -2402,13 +2414,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_realserver_select() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17038, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_realserver_select() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG "
+        putLogError(17039, "function : protocol_module_base::EVENT_TAG "
                     "protocol_module_sessionless::handle_realserver_select() : "
                     "Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
@@ -2422,7 +2434,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
                                 "boost::asio::ip::tcp::endpoint & rs_endpoint)"
                                 " : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10083, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -2448,7 +2460,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
                                 "size_t& datalen) : "
                                 "return_value = %d.");
         formatter % STOP;
-        putLogDebug(10000, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10084, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return STOP;
@@ -2467,9 +2479,9 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
         boost::format formatter("in_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_realserver_connect(const boost::thread::id up_thread_id, "
                                 "boost::array<char, MAX_BUFFER_SIZE>& sendbuffer, size_t& datalen) : "
-                                "thread_id = %d, sendbuffer = %s, datalen = %d.");
-        formatter % thread_id % sendbuffer.data() % datalen;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                "thread_id = %d.");
+        formatter % thread_id;
+        putLogDebug(10085, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -2495,7 +2507,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
             session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17040, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -2506,7 +2518,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
         recive_data_it = session_data->recive_data_map.find(session_data->target_endpoint);
         if (recive_data_it == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17041, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -2514,7 +2526,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
         recive_data& recv_data = recive_data_it->second;
         if (recv_data.recive_buffer == NULL)
         {
-            putLogError(17000, "Invalid pointer.", __FILE__, __LINE__ );
+            putLogError(17042, "Invalid pointer.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -2524,7 +2536,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
         it = find_if(it, it_end, data_send_possible());
         if (it == it_end)
         {
-            putLogError(17000, "Sending possible data is not existed.", __FILE__, __LINE__ );
+            putLogError(17043, "Sending possible data is not existed.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -2552,7 +2564,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                             "handle_realserver_connect() : call find_http_header : "
                                             "return_value = %d.");
                     formatter % static_cast<int>(ret);
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10086, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //serch http header result is OK
@@ -2582,12 +2594,12 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                                 "handle_realserver_connect() : call find_http_header : "
                                                 "return_value = %d.");
                         formatter % static_cast<int>(ret);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10087, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     if (!ret)
                     {
-                        putLogError(17000, "find_http_header function failure.", __FILE__, __LINE__ );
+                        putLogError(17044, "find_http_header function failure.", __FILE__, __LINE__ );
                         /*-------- DEBUG LOG --------*/
                         if (LOG_LV_DEBUG == getloglevel())
                         {
@@ -2596,7 +2608,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                                     "const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer, "
                                                     "const size_t recvlen) : return_value = %d.");
                             formatter % FINALIZE;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10088, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         return FINALIZE;
@@ -2621,7 +2633,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                putLogDebug(10089, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                             "handle_realserver_connect() : Copy data loop start.", __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
@@ -2651,7 +2663,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                     "data begin = %d, data_size = %d, data = %s.");
                                 formatter % (it->send_offset + it->send_end_size)
                                 % copy_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10090, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             //copy data from recive_buffer to sendbuffer by sending_possible size
@@ -2671,7 +2683,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                     "data begin = %d, data_size = %d, data = %s.");
                                 formatter % (send_buffer_end_size - send_buffer_remian_size)
                                 % copy_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10091, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
 
@@ -2696,7 +2708,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                     "data begin = %d, data_size = %d, data = %s.");
                                 formatter % (it->send_offset + it->send_end_size)
                                 % copy_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10092, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             //copy data from recive_buffer to sendbuffer by send buffer rest size
@@ -2715,7 +2727,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                     "data begin = %d, data_size = %d, data = %s.");
                                 formatter % (send_buffer_end_size - send_buffer_remian_size)
                                 % copy_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10093, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             it->send_end_size += copy_size;
@@ -2749,7 +2761,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % (it->send_offset + it->send_end_size)
                             % copy_size % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10094, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         memcpy(sendbuffer.data() + send_buffer_end_size - send_buffer_remian_size,
@@ -2766,7 +2778,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % (send_buffer_end_size - send_buffer_remian_size)
                             % copy_size % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10095, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         it->send_end_size += copy_size;
@@ -2788,7 +2800,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                     "handle_realserver_connect() : before memcpy (data dump) : "
                                     "data begin = 0, data_size = %d, data = %s.");
                                 formatter % edit_min->data_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10096, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             //copy  X-Forwarded-For
@@ -2797,17 +2809,16 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                             /*-------- DEBUG LOG --------*/
                             if (LOG_LV_DEBUG == getloglevel())
                             {
-                                boost::format formatter("%02x ");
                                 std::string datadump;
                                 dump_memory(sendbuffer.data() + send_buffer_end_size - send_buffer_remian_size,
                                             edit_min->data_size, datadump);
-                                formatter.parse(
+                                boost::format formatter(
                                     "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_realserver_connect() : after memcpy (data dump) : "
                                     "data begin = %d, data_size = %d, data = %s.");
                                 formatter % (send_buffer_end_size - send_buffer_remian_size)
                                 % edit_min->data_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10097, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             it->send_end_size += edit_min->replace_size;
@@ -2838,7 +2849,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % (it->send_offset + it->send_end_size)
                             % copy_size % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10098, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         //copy data as large as possible
@@ -2857,7 +2868,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % (send_buffer_end_size - send_buffer_remian_size)
                             % copy_size % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10099, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
 
@@ -2871,7 +2882,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                putLogDebug(10100, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                             "handle_realserver_connect() : Copy data loop end.", __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
@@ -2896,7 +2907,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                         "data begin = %d, data_size = %d, data = %s.");
                     formatter % it->send_offset
                     % copy_size % datadump;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10101, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //copy date by send_possible size
@@ -2911,7 +2922,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                         "handle_realserver_connect() : after memcpy (data dump) : "
                         "data begin = 0, data_size = %d, data = %s.");
                     formatter % copy_size % datadump;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10102, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 it->send_end_size = copy_size;
@@ -2933,7 +2944,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                         "data begin = %d, data_size = %d, data = %s.");
                     formatter % it->send_offset
                     % send_buffer_remian_size % datadump;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10103, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //copy date by buffer rest size
@@ -2948,7 +2959,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                         "handle_realserver_connect() : after memcpy (data dump) : "
                         "data begin = 0, data_size = %d, data = %s.");
                     formatter % send_buffer_remian_size % datadump;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10104, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 it->send_end_size = send_buffer_remian_size;
@@ -2969,7 +2980,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_realserver_connect() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10105, formatter.str(), __FILE__, __LINE__ );
         }
         status = FINALIZE;
         /*------DEBUG LOG END------*/
@@ -2980,13 +2991,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_realserver_connect() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17045, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_realserver_connect() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17046, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_realserver_connect() : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -2999,7 +3010,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                 "const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer, "
                                 "const size_t recvlen) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10106, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -3021,7 +3032,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                 "const boost::asio::ip::tcp::endpoint & rs_endpoint) : "
                                 "thread_id = %d, rs_endpoint = [%s]:%d.");
         formatter % thread_id % rs_endpoint.address().to_string() % rs_endpoint.port();
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10107, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -3036,7 +3047,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
         session_thread_it = session_thread_data_map.find(thread_id);
         if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
         {
-            putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+            putLogError(17047, "Invalid thread id.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -3047,7 +3058,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
         {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+            putLogDebug(10108, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                         "handle_realserver_connection_fail() : END_FLAG_ON.", __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
@@ -3062,7 +3073,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_realserver_connection_fail() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10109, formatter.str(), __FILE__, __LINE__ );
         }
         status = FINALIZE;
         /*------DEBUG LOG END------*/
@@ -3073,13 +3084,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_realserver_connection_fail() : exception : result = %d, error = %s.");
         formatter % FINALIZE % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17048, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17049, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_realserver_connection_fail() : exception : result = %d.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -3091,7 +3102,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                 "handle_realserver_connection_fail(const boost::thread::id thread_id, "
                                 "const boost::asio::ip::tcp::endpoint & rs_endpoint) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10110, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return status;
@@ -3109,7 +3120,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
                                 "handle_realserver_send(const boost::thread::id thread_id) : "
                                 "thread_id = %d.");
         formatter % thread_id;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10111, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     EVENT_TAG status;
@@ -3126,7 +3137,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
             session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17050, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -3137,7 +3148,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
         recive_data_it = session_data->recive_data_map.find(session_data->client_endpoint_tcp);
         if (recive_data_it == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17051, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -3150,7 +3161,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
         it = std::adjacent_find(it, it_end, data_send_list_incorrect());
         if (it != it_end)
         {
-            putLogError(17000, "Sending possible data is invalid.", __FILE__, __LINE__ );
+            putLogError(17052, "Sending possible data is invalid.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -3159,7 +3170,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
         it = std::find_if(it, it_end, data_send_ok());
         if (it == it_end)
         {
-            putLogError(17000, "Sending possible data is not existed.", __FILE__, __LINE__ );
+            putLogError(17053, "Sending possible data is not existed.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -3220,7 +3231,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_realserver_send() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10112, formatter.str(), __FILE__, __LINE__ );
         }
         status = FINALIZE;
         /*------DEBUG LOG END------*/
@@ -3231,14 +3242,14 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_realserver_send() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17054, formatter.str(), __FILE__, __LINE__ );
 
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_realserver_send() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17055, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_realserver_send() : exception : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -3249,7 +3260,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_s
         boost::format formatter("out_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_realserver_send(const boost::thread::id thread_id) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10113, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -3271,7 +3282,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                 "boost::asio::ip::tcp::endpoint& sorry_endpoint) : "
                                 "thread_id = %d, sorry_endpoint = [%s]:%d.");
         formatter % thread_id % sorry_endpoint.address().to_string() % sorry_endpoint.port();
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10114, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     EVENT_TAG status;
@@ -3289,7 +3300,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         session_thread_it = session_thread_data_map.find(thread_id);
         if (session_thread_it == session_thread_data_map.end() || session_thread_it->second== NULL)
         {
-            putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+            putLogError(17056, "Invalid thread id.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -3315,7 +3326,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             {
                 boost::format formatter("new : address = &(%d), size = %lu.");
                 formatter % static_cast<void*>(session_down_thread_data) % sizeof(session_thread_data_sessionless);
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10115, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
             session_down_thread_data->thread_id = session_data->pair_thread_id;
@@ -3344,7 +3355,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                 % session_down_thread_data->end_flag % session_down_thread_data->sorry_flag % session_down_thread_data->sorryserver_switch_flag % session_down_thread_data->realserver_switch_flag
                 % session_down_thread_data->target_endpoint.address().to_string() % session_down_thread_data->target_endpoint.port()
                 % session_down_thread_data->client_endpoint_tcp.address().to_string() % session_down_thread_data->client_endpoint_tcp.port();
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10116, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
 
@@ -3377,7 +3388,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                 formatter % session_down_thread_data->thread_id % session_down_thread_data->thread_division % session_down_thread_data->pair_thread_id % session_down_thread_data->accept_end_flag
                 % session_down_thread_data->end_flag % session_down_thread_data->sorry_flag % session_down_thread_data->sorryserver_switch_flag % session_down_thread_data->realserver_switch_flag
                 % session_down_thread_data->client_endpoint_tcp.address().to_string() % session_down_thread_data->client_endpoint_tcp.port();
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10117, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
 
@@ -3392,7 +3403,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                 {
                     boost::format formatter("delete : address = &(%d).");
                     formatter % static_cast<void*>(recv_data.recive_buffer1);
-                    putLogDebug(10005, formatter.str(), __FILE__,
+                    putLogDebug(10118, formatter.str(), __FILE__,
                                 __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
@@ -3402,7 +3413,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                 {
                     boost::format formatter("delete : address = &(%d).");
                     formatter % static_cast<void*>(recv_data.recive_buffer2);
-                    putLogDebug(10005, formatter.str(), __FILE__,
+                    putLogDebug(10119, formatter.str(), __FILE__,
                                 __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
@@ -3431,7 +3442,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_realserver_send() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10120, formatter.str(), __FILE__, __LINE__ );
         }
         status = FINALIZE;
         /*------DEBUG LOG END------*/
@@ -3439,7 +3450,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
     catch (const std::bad_alloc& ex)
     {
         std::cerr << "handle_sorryserver_select exception : Could not allocate memory." << std::endl;
-        putLogError(17000, "Could not allocate memory.", __FILE__, __LINE__ );
+        putLogError(17057, "Could not allocate memory.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (const std::exception& ex)
@@ -3448,13 +3459,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorryserver_select() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17058, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_sorryserver_select() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17059, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_sorryserver_select() : exception : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -3467,7 +3478,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             "out_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
             "handle_sorryserver_select(const boost::thread::id thread_id, boost::asio::ip::tcp::endpoint& sorry_endpoint) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10121, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return status;
@@ -3487,9 +3498,9 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         boost::format formatter("in_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorryserver_connect(const boost::thread::id thread_id, "
                                 "boost::array<char, MAX_BUFFER_SIZE>& sendbuffer, size_t& datalen) : "
-                                "thread_id = %d, sendbuffer = %s, datalen = %d.");
-        formatter % thread_id % sendbuffer.data() % datalen;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                "thread_id = %d.");
+        formatter % thread_id;
+        putLogDebug(10122, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     EVENT_TAG status;
@@ -3516,7 +3527,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17060, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -3528,7 +3539,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         if (recive_data_it
                 == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17061, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -3536,7 +3547,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         recive_data& recv_data = recive_data_it->second;
         if (recv_data.recive_buffer == NULL)
         {
-            putLogError(17000, "Invalid recive_buffer.", __FILE__, __LINE__ );
+            putLogError(17062, "Invalid pointer.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -3547,7 +3558,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         it = find_if(it, it_end, data_send_possible());
         if (it == it_end)
         {
-            putLogError(17000, "Sending possible is not existed.", __FILE__, __LINE__ );
+            putLogError(17063, "Sending possible is not existed.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -3575,7 +3586,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                             "handle_sorryserver_connect() : call find_uri : "
                                             "return_value = %d.");
                     formatter % static_cast<int>(ret);
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10123, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //serch http header result is OK
@@ -3609,7 +3620,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                                 "handle_sorryserver_connect() : call find_http_header : "
                                                 "return_value = %d.");
                         formatter % static_cast<int>(ret);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10124, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
 
@@ -3640,12 +3651,12 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                                     "handle_sorryserver_connect() : call find_http_header : "
                                                     "return_value = %d.");
                             formatter % static_cast<int>(ret);
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10125, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         if (!ret)
                         {
-                            putLogError(17000, "find_http_header function failure.", __FILE__, __LINE__ );
+                            putLogError(17064, "find_http_header function failure.", __FILE__, __LINE__ );
                             /*-------- DEBUG LOG --------*/
                             if (LOG_LV_DEBUG == getloglevel())
                             {
@@ -3654,7 +3665,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                                         "const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer, "
                                                         "const size_t recvlen) : return_value = %d.");
                                 formatter % FINALIZE;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10126, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             return FINALIZE;
@@ -3680,7 +3691,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                putLogDebug(10127, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                             "handle_sorryserver_connect() : Copy data loop start.", __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
@@ -3711,7 +3722,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                     "data begin = %d, data_size = %d, data = %s.");
                                 formatter % (it->send_offset + it->send_end_size)
                                 % copy_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10128, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             memcpy(sendbuffer.data() + send_buffer_end_size - send_buffer_remian_size,
@@ -3728,7 +3739,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                     "data begin = %d, data_size = %d, data = %s.");
                                 formatter % (send_buffer_end_size - send_buffer_remian_size)
                                 % copy_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10129, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             it->send_end_size += copy_size;
@@ -3751,7 +3762,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                     "data begin = %d, data_size = %d, data = %s.");
                                 formatter % (it->send_offset + it->send_end_size)
                                 % copy_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10130, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             //copy data from recive_buffer to sendbuffer by send buffer rest size
@@ -3770,7 +3781,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                     "data begin = %d, data_size = %d, data = %s.");
                                 formatter % (send_buffer_end_size - send_buffer_remian_size)
                                 % copy_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10131, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             it->send_end_size += copy_size;
@@ -3805,7 +3816,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % (it->send_offset + it->send_end_size)
                             % copy_size % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10132, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         memcpy(sendbuffer.data() + send_buffer_end_size - send_buffer_remian_size,
@@ -3822,7 +3833,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % (send_buffer_end_size - send_buffer_remian_size)
                             % copy_size % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10133, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         it->send_end_size += copy_size;
@@ -3843,7 +3854,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                     "handle_sorryserver_connect() : before memcpy (data dump) : "
                                     "data begin = 0, data_size = %d, data = %s.");
                                 formatter % edit_min->data_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10134, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             //copy X-Forwarded-For/uri
@@ -3862,7 +3873,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                     "data begin = %d, data_size = %d, data = %s.");
                                 formatter % (send_buffer_end_size - send_buffer_remian_size)
                                 % edit_min->data_size % datadump;
-                                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                putLogDebug(10135, formatter.str(), __FILE__, __LINE__ );
                             }
                             /*------DEBUG LOG END------*/
                             it->send_end_size += edit_min->replace_size;
@@ -3893,7 +3904,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % (it->send_offset + it->send_end_size)
                             % copy_size % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10136, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         //copy data as large as possible
@@ -3912,7 +3923,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                 "data begin = %d, data_size = %d, data = %s.");
                             formatter % (send_buffer_end_size - send_buffer_remian_size)
                             % copy_size % datadump;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            putLogDebug(10137, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         it->send_end_size += copy_size;
@@ -3925,7 +3936,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                putLogDebug(10138, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                             "handle_sorryserver_connect() : Copy data loop end.", __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
@@ -3950,7 +3961,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         "data begin = %d, data_size = %d, data = %s.");
                     formatter % it->send_offset
                     % copy_size % datadump;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10139, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //copy date by send_possible size
@@ -3967,7 +3978,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         "handle_sorryserver_connect() : after memcpy (data dump) : "
                         "data begin = 0, data_size = %d, data = %s.");
                     formatter % copy_size % datadump;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10140, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 it->send_end_size = it->send_possible_size;
@@ -3989,7 +4000,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         "data begin = %d, data_size = %d, data = %s.");
                     formatter % it->send_offset
                     % send_buffer_remian_size % datadump;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10141, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //copy date by buffer rest size
@@ -4006,7 +4017,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         "handle_sorryserver_connect() : after memcpy (data dump) : "
                         "data begin = 0, data_size = %d, data = %s.");
                     formatter % send_buffer_remian_size % datadump;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10142, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 it->send_end_size = send_buffer_remian_size;
@@ -4029,7 +4040,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_sorryserver_connect() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10143, formatter.str(), __FILE__, __LINE__ );
         }
         status = FINALIZE;
         /*------DEBUG LOG END------*/
@@ -4040,13 +4051,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorryserver_connect() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17065, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_sorryserver_connect() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17066, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_sorryserver_connect() : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -4059,7 +4070,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                 "const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer, "
                                 "const size_t recvlen) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10144, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -4081,7 +4092,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                 "const boost::asio::ip::tcp::endpoint & sorry_endpoint) : "
                                 "thread_id = %d, sorry_endpoint = %s.");
         formatter % thread_id % sorry_endpoint.address().to_string();
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10145, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -4097,14 +4108,14 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         session_thread_it = session_thread_data_map.find(thread_id);
         if (session_thread_it == session_thread_data_map.end())
         {
-            putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+            putLogError(17067, "Invalid thread id.", __FILE__, __LINE__ );
             return FINALIZE;
         }
 
         session_data = session_thread_it->second;
         if (session_data == NULL)
         {
-            putLogError(17000, "Invalid pointer.", __FILE__, __LINE__ );
+            putLogError(17068, "Invalid pointer.", __FILE__, __LINE__ );
             return FINALIZE;
         }
 
@@ -4117,15 +4128,15 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
     {
         std::cerr << "handle_sorryserver_connection_fail exception : error=" << ex.what() << "." << std::endl;
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                "handle_sorryserver_connection_fail() : exception : result = %d, error = %s.");
-        formatter % FINALIZE % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+                                "handle_sorryserver_connection_fail() : exception : error = %s.");
+        formatter % ex.what();
+        putLogError(17069, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17070, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_sorryserver_connection_fail() : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -4138,7 +4149,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             "out_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
             "handle_sorryserver_connection_fail( const boost::thread::id thread_id, const boost::asio::ip::tcp::endpoint & sorry_endpoint) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10146, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return status;
@@ -4157,7 +4168,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                 "handle_sorryserver_send(const boost::thread::id thread_id) : "
                                 "thread_id = %d.");
         formatter % thread_id;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10147, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     EVENT_TAG status;
@@ -4174,7 +4185,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17071, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -4186,7 +4197,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         if (recive_data_it
                 == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17072, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -4198,7 +4209,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         it = std::adjacent_find(it, it_end, data_send_list_incorrect());
         if (it != it_end)
         {
-            putLogError(17000, "Sending possible data is invalid.", __FILE__, __LINE__ );
+            putLogError(17073, "Sending possible data is invalid.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -4207,7 +4218,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         it = find_if(it, it_end, data_send_ok());
         if (it == it_end)
         {
-            putLogError(17000, "Sending possible data is not existed.", __FILE__, __LINE__ );
+            putLogError(17074, "Sending possible data is not existed.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -4268,7 +4279,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_sorryserver_send() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10148, formatter.str(), __FILE__, __LINE__ );
         }
         status = FINALIZE;
         /*------DEBUG LOG END------*/
@@ -4279,14 +4290,14 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorryserver_send() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17075, formatter.str(), __FILE__, __LINE__ );
 
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_sorryserver_send() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17076, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_sorryserver_send() : exception : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -4297,7 +4308,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         boost::format formatter("out_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorryserver_send(const boost::thread::id thread_id) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10149, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -4324,7 +4335,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                 "const size_t recvlen) : "
                                 "return_value = %d.");
         formatter % STOP;
-        putLogDebug(10000, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10150, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return STOP;
@@ -4350,7 +4361,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                 "const size_t recvlen) : thread_id = %d, rs_endpoint = [%s]:%d, recvbuffer = %s, recvlen = %d.");
         formatter % thread_id % rs_endpoint.address().to_string() % rs_endpoint.port()
         % recvbuffer.data() % recvlen;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10151, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -4364,6 +4375,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
     size_t content_length_header_len = 0;
     size_t content_len_value = 0;
     size_t pos = 0;
+    size_t buffer_size = 0;
     const size_t cr_lf_len = strlen("\r\n\r\n");
     session_thread_data_sessionless* session_data = NULL;
     char* buffer1 = NULL;
@@ -4380,7 +4392,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
     if (recvlen > recvbuffer.size())
     {
         std::cerr << "handle_realserver_recv() : Data size bigger than buffer size." << std::endl;
-        putLogError(17000, "Data size bigger than buffer size.", __FILE__,
+        putLogError(17077, "Data size bigger than buffer size.", __FILE__,
                     __LINE__ );
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
@@ -4391,7 +4403,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                     "const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer, "
                                     "const size_t recvlen) : return_value = %d.");
             formatter % FINALIZE;
-            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10152, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         return FINALIZE;
@@ -4406,7 +4418,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
             if (session_thread_it == session_thread_data_map.end()
                     ||session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17078, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -4416,7 +4428,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
         recive_data_it = session_data->recive_data_map.find(session_data->target_endpoint);
         if (recive_data_it == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17079, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -4429,7 +4441,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
         it = std::find_if(it, it_end, data_send_ok());
         if (it != it_end)
         {
-            putLogError(17000, "Sending data is not correct.", __FILE__, __LINE__ );
+            putLogError(17080, "Sending data is not correct.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -4438,15 +4450,33 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
         it = std::adjacent_find(it, it_end, data_send_repeated());
         if (it != it_end)
         {
-            putLogError(17000, "Sending data is not correct.", __FILE__, __LINE__ );
+            putLogError(17081, "Sending data is not correct.", __FILE__, __LINE__ );
             throw -1;
         }
 
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
         {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step1--send status list loop start.", __FILE__, __LINE__ );
+            std::string datadump;
+            boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                    "send_rest_size = %d, send_possible_size = %d, "
+                                    "send_offset = %d, unsend_size = %d, edit_division = %d.");
+            int i = 0;
+            for (it = recv_data.send_status_list.begin();
+                 it != recv_data.send_status_list.end();
+                 ++it, ++i)
+            {
+                formatter % i % it->status % it->send_end_size
+                          % it->send_rest_size % it->send_possible_size
+                          % it->send_offset % it->unsend_size % it->edit_division;
+                datadump += formatter.str();
+            }
+
+            formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_realserver_recv() : send status list dump : send status list size = %d.%s");
+
+            formatter % recv_data.send_status_list.size() % datadump;
+            putLogDebug(10153, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         it = recv_data.send_status_list.begin();
@@ -4480,11 +4510,28 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
         {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step1--send status list loop end.", __FILE__, __LINE__ );
+            std::string datadump;
+            boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                    "send_rest_size = %d, send_possible_size = %d, "
+                                    "send_offset = %d, unsend_size = %d, edit_division = %d.");
+            int i = 0;
+            for (it = recv_data.send_status_list.begin();
+                 it != recv_data.send_status_list.end();
+                 ++it, ++i)
+            {
+                formatter % i % it->status % it->send_end_size
+                          % it->send_rest_size % it->send_possible_size
+                          % it->send_offset % it->unsend_size % it->edit_division;
+                datadump += formatter.str();
+            }
+
+            formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_realserver_recv() : send status list dump : send status list size = %d.%s");
+
+            formatter % recv_data.send_status_list.size() % datadump;
+            putLogDebug(10154, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
-
         //recive buffer process
         //buffer rest size < request size
         if (recv_data.recive_buffer_rest_size < recvlen)
@@ -4493,158 +4540,125 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
             //buffer is need reallcate
             if (recv_data.recive_buffer_max_size < data_remain_size + recvlen)
             {
-                //first recive
-                if (recv_data.recive_buffer == NULL)
+                buffer_size = (data_remain_size + recvlen) > MAX_BUFFER_SIZE ? (data_remain_size + recvlen) : MAX_BUFFER_SIZE;
+                //recive_buffer1's memery allocate and initialization
+                buffer1 = new char[buffer_size];
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
                 {
-                    //recive_buffer1's memery allocate and initialization
-                    recv_data.recive_buffer1 = new char[MAX_BUFFER_SIZE];
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        boost::format formatter("new : address = &(%d), size = %lu.");
-                        formatter % static_cast<void*>(recv_data.recive_buffer1) % (MAX_BUFFER_SIZE);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*-------- DEBUG LOG END--------*/
-                    memset(recv_data.recive_buffer1, 0, MAX_BUFFER_SIZE);
-                    //recive_buffer2's memery allocate and initialization
-                    recv_data.recive_buffer2 = new char[MAX_BUFFER_SIZE];
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        boost::format formatter("new : address = &(%d), size = %lu.");
-                        formatter % static_cast<void*>(recv_data.recive_buffer2) % (MAX_BUFFER_SIZE);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*-------- DEBUG LOG END--------*/
-                    memset(recv_data.recive_buffer2, 0, MAX_BUFFER_SIZE);
-                    //set uisng buffer recive_buffer1 for defalut
-                    recv_data.recive_buffer = recv_data.recive_buffer1;
-                    //set max buffer size MAX_BUFFER_SIZE
-                    recv_data.recive_buffer_max_size = MAX_BUFFER_SIZE;
+                    boost::format formatter("new : address = &(%d), size = %lu.");
+                    formatter % static_cast<void*>(buffer1) % (buffer_size);
+                    putLogDebug(10157, formatter.str(), __FILE__, __LINE__ );
                 }
-                //not first recive
-                else
+                /*-------- DEBUG LOG --------*/
+                memset(buffer1, 0, buffer_size);
+                //recive_buffer2's memery allocate and initialization
+                buffer2 = new char[buffer_size];
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
                 {
-                    //recive_buffer1's memery allocate and initialization
-                    buffer1 = new char[data_remain_size + recvlen];
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        boost::format formatter("new : address = &(%d), size = %lu.");
-                        formatter % static_cast<void*>(buffer1) % (data_remain_size + recvlen);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*-------- DEBUG LOG --------*/
-                    memset(buffer1, 0, data_remain_size + recvlen);
-                    //recive_buffer2's memery allocate and initialization
-                    buffer2 = new char[data_remain_size + recvlen];
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        boost::format formatter("new : address = &(%d), size = %lu.");
-                        formatter % static_cast<void*>(buffer2) % (data_remain_size + recvlen);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*-------- DEBUG LOG END--------*/
-                    memset(buffer2, 0, data_remain_size + recvlen);
+                    boost::format formatter("new : address = &(%d), size = %lu.");
+                    formatter % static_cast<void*>(buffer2) % (buffer_size);
+                    putLogDebug(10158, formatter.str(), __FILE__, __LINE__ );
+                }
+                /*-------- DEBUG LOG END--------*/
+                memset(buffer2, 0, buffer_size);
 
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        std::string datadump;
-                        dump_memory(recv_data.recive_buffer + data_remain_start, data_remain_size, datadump);
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
+                {
+                    std::string datadump;
+                    dump_memory(recv_data.recive_buffer + data_remain_start, data_remain_size, datadump);
 
-                        boost::format formatter(
-                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : before memcpy (data dump) : "
-                            "data begin = %d, data_size = %d, data = %s.");
-                        formatter % data_remain_start % data_remain_size % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*------DEBUG LOG END------*/
-                    //copy data from old buffer to new buffer
-                    memcpy(buffer1, recv_data.recive_buffer + data_remain_start, data_remain_size);
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        std::string datadump;
-                        dump_memory(buffer1, data_remain_size, datadump);
+                    boost::format formatter(
+                        "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_realserver_recv() : before memcpy (data dump) : "
+                        "data begin = %d, data_size = %d, data = %s.");
+                    formatter % data_remain_start % data_remain_size % datadump;
+                    putLogDebug(10159, formatter.str(), __FILE__, __LINE__ );
+                }
+                /*------DEBUG LOG END------*/
+                //copy data from old buffer to new buffer
+                memcpy(buffer1, recv_data.recive_buffer + data_remain_start, data_remain_size);
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
+                {
+                    std::string datadump;
+                    dump_memory(buffer1, data_remain_size, datadump);
 
-                        boost::format formatter(
-                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : after memcpy (data dump) : "
-                            "data begin = 0, data_size = %d, data = %s.");
-                        formatter % data_remain_size % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*------DEBUG LOG END------*/
+                    boost::format formatter(
+                        "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_realserver_recv() : after memcpy (data dump) : "
+                        "data begin = 0, data_size = %d, data = %s.");
+                    formatter % data_remain_size % datadump;
+                    putLogDebug(10160, formatter.str(), __FILE__, __LINE__ );
+                }
+                /*------DEBUG LOG END------*/
 
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
+                {
+                    std::string datadump;
+                    dump_memory(recvbuffer.data(), recvlen, datadump);
+                    boost::format formatter(
+                        "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_realserver_recv() : before memcpy (data dump) : "
+                        "data begin = 0, data_size = %d, data = %s.");
+                    formatter % recvlen % datadump;
+                    putLogDebug(10161, formatter.str(), __FILE__, __LINE__ );
+                }
+                /*------DEBUG LOG END------*/
+                memcpy(buffer1 + data_remain_size, recvbuffer.data(), recvlen);
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
+                {
+                    std::string datadump;
+                    dump_memory(buffer1 + data_remain_size, recvlen, datadump);
+                    boost::format formatter(
+                        "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_realserver_recv() : after memcpy (data dump) : "
+                        "data begin = %d, data_size = %d, data = %s.");
+                    formatter % data_remain_size % recvlen % datadump;
+                    putLogDebug(10162, formatter.str(), __FILE__, __LINE__ );
+                }
+                /*------DEBUG LOG END------*/
+                //free old buffer1 and old buffer2
+                if (recv_data.recive_buffer1 != NULL)
+                {
                     /*-------- DEBUG LOG --------*/
                     if (LOG_LV_DEBUG == getloglevel())
                     {
-                        std::string datadump;
-                        dump_memory(recvbuffer.data(), recvlen, datadump);
-                        boost::format formatter(
-                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : before memcpy (data dump) : "
-                            "data begin = 0, data_size = %d, data = %s.");
-                        formatter % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        boost::format formatter("delete : address = &(%d).");
+                        formatter % static_cast<void*>(recv_data.recive_buffer1);
+                        putLogDebug(10163, formatter.str(), __FILE__,
+                                    __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
-                    memcpy(buffer1 + data_remain_size, recvbuffer.data(), recvlen);
+                    delete[] recv_data.recive_buffer1;
+                    recv_data.recive_buffer1 = NULL;
+                }
+
+                if (recv_data.recive_buffer2 != NULL)
+                {
                     /*-------- DEBUG LOG --------*/
                     if (LOG_LV_DEBUG == getloglevel())
                     {
-                        std::string datadump;
-                        dump_memory(buffer1 + data_remain_size, recvlen, datadump);
-                        boost::format formatter(
-                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : after memcpy (data dump) :  "
-                            "data begin = %d, data_size = %d, data = %s.");
-                        formatter % data_remain_size % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        boost::format formatter("delete : address = &(%d).");
+                        formatter % static_cast<void*>(recv_data.recive_buffer2);
+                        putLogDebug(10164, formatter.str(), __FILE__,
+                                    __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
-                    //free old buffer1 and old buffer2
-                    if (recv_data.recive_buffer1 != NULL)
-                    {
-                        /*-------- DEBUG LOG --------*/
-                        if (LOG_LV_DEBUG == getloglevel())
-                        {
-                            boost::format formatter("delete : address = &(%d).");
-                            formatter % static_cast<void*>(recv_data.recive_buffer1);
-                            putLogDebug(10005, formatter.str(), __FILE__,
-                                        __LINE__ );
-                        }
-                        /*------DEBUG LOG END------*/
-                        delete[] recv_data.recive_buffer1;
-                        recv_data.recive_buffer1 = NULL;
-                    }
-
-                    if (recv_data.recive_buffer2 != NULL)
-                    {
-                        /*-------- DEBUG LOG --------*/
-                        if (LOG_LV_DEBUG == getloglevel())
-                        {
-                            boost::format formatter("delete : address = &(%d).");
-                            formatter % static_cast<void*>(recv_data.recive_buffer2);
-                            putLogDebug(10005, formatter.str(), __FILE__,
-                                        __LINE__ );
-                        }
-                        /*------DEBUG LOG END------*/
-                        delete[] recv_data.recive_buffer2;
-                        recv_data.recive_buffer2 = NULL;
-                    }
-
-                    //set new buffer pointer
-                    recv_data.recive_buffer1 = buffer1;
-                    recv_data.recive_buffer2 = buffer2;
-                    recv_data.recive_buffer = recv_data.recive_buffer1;
-                    //set new buffer's max size
-                    recv_data.recive_buffer_max_size = data_remain_size + recvlen;
+                    delete[] recv_data.recive_buffer2;
+                    recv_data.recive_buffer2 = NULL;
                 }
+
+                //set new buffer pointer
+                recv_data.recive_buffer1 = buffer1;
+                recv_data.recive_buffer2 = buffer2;
+                recv_data.recive_buffer = recv_data.recive_buffer1;
+                //set new buffer's max size
+                recv_data.recive_buffer_max_size = buffer_size;
             }
             //buffer's max size ≧ remain data size + requst size
             //buffer isn't need reallcate, but switch
@@ -4653,7 +4667,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                 //pointer valid check
                 if (recv_data.recive_buffer1 == NULL || recv_data.recive_buffer2 == NULL)
                 {
-                    putLogError(17000, "Invalid pointer.", __FILE__, __LINE__ );
+                    putLogError(17082, "Invalid pointer.", __FILE__, __LINE__ );
                     throw -1;
                 }
                 //using buffer is buffer1
@@ -4671,7 +4685,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                             "handle_realserver_recv() : before memcpy (data dump) : "
                             "data begin = %d, data_size = %d, data = %s.");
                         formatter % data_remain_start % data_remain_size % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10165, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //copy data from buffer1 to buffer2
@@ -4686,7 +4700,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                             "handle_realserver_recv() : after memcpy (data dump) : "
                             "data begin = 0, data_size = %d, data = %s.");
                         formatter % data_remain_size % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10166, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     /*-------- DEBUG LOG --------*/
@@ -4699,7 +4713,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                             "handle_realserver_recv() : before memcpy (data dump) : "
                             "data begin = 0, data_size = %d, data = %s.");
                         formatter % data_remain_size % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10167, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     memcpy(recv_data.recive_buffer2 + data_remain_size, recvbuffer.data(), recvlen);
@@ -4714,7 +4728,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                             "handle_realserver_recv() : after memcpy (data dump) : "
                             "data begin = %d, data_size = %d, data = %s.");
                         formatter % data_remain_size % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10168, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //set buffer2 for using buffer
@@ -4736,7 +4750,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                             "handle_realserver_recv() : before memcpy (data dump) : "
                             "data begin = %d, data_size = %d, data = %s.");
                         formatter % data_remain_start % (data_remain_size+recvlen) % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10169, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //copy data from buffer2 to buffer1
@@ -4752,7 +4766,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                             "handle_realserver_recv() : after memcpy (data dump) : "
                             "data begin = 0, data_size = %d, data = %s.");
                         formatter % data_remain_size % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10170, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     /*-------- DEBUG LOG --------*/
@@ -4766,7 +4780,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                             "handle_realserver_recv() : before memcpy (data dump) : "
                             "data begin = 0, data_size = %d, data = %s.");
                         formatter % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10171, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     memcpy(recv_data.recive_buffer1 + data_remain_size, recvbuffer.data(), recvlen);
@@ -4781,7 +4795,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                             "handle_realserver_recv() : after memcpy (data dump) : "
                             "data begin = %d, data_size = %d, data = %s.");
                         formatter % data_remain_size % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10172, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //set buffer1 for using buffer
@@ -4800,7 +4814,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
             //offset recalc
             for (; it_begin != it_end; ++it_begin)
             {
-                it->send_offset -= data_remain_start;
+                it_begin->send_offset -= data_remain_start;
             }
         }
         //buffer's rest size ≧ request size
@@ -4810,7 +4824,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
             //pointer valid check
             if (recv_data.recive_buffer == NULL)
             {
-                putLogError(17000, "Invalid pointer.", __FILE__, __LINE__ );
+                putLogError(17083, "Invalid pointer.", __FILE__, __LINE__ );
                 throw -1;
             }
             /*-------- DEBUG LOG --------*/
@@ -4822,7 +4836,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                         "handle_realserver_recv() : before memcpy (data dump) : "
                                         "data begin = 0, data_size = %d, data = %s.");
                 formatter % recvlen % datadump;
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10173, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
 
@@ -4840,7 +4854,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                         "data begin = %d, data_size = %d, data = %s.");
                 formatter % (recv_data.recive_buffer_max_size - recv_data.recive_buffer_rest_size )
                 % recvlen % datadump;
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10174, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
             //buffer's rest size recalc
@@ -4848,21 +4862,6 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
             //remain data size recalc
             data_remain_size += recvlen;
         }
-        /*-------- DEBUG LOG --------*/
-        if (LOG_LV_DEBUG == getloglevel())
-        {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step2--data buffer size process end.", __FILE__, __LINE__ );
-        }
-        /*------DEBUG LOG END------*/
-
-        /*-------- DEBUG LOG --------*/
-        if (LOG_LV_DEBUG == getloglevel())
-        {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step3--send status list loop start.", __FILE__, __LINE__ );
-        }
-        /*------DEBUG LOG END------*/
 
         it = recv_data.send_status_list.begin();
         it_end = recv_data.send_status_list.end();
@@ -4898,8 +4897,6 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                     //request size recalc
                     it->send_rest_size = 0;
                 }
-//                             //編集区分に編集なしを設定する
-//                             it->edit_division = EDIT_DIVISION_NO_EDIT;
                 //change status from SEND_CONTINUE to SEND_OK
                 it->status = SEND_OK;
             }
@@ -4915,7 +4912,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                             "handle_realserver_recv() : call check_http_method : "
                                             "return_value = %d.");
                     formatter % check_result;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10175, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //check http method result is OK
@@ -4930,7 +4927,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                                 "handle_realserver_recv() : call check_http_version : "
                                                 "return_value = %d.");
                         formatter % check_result;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10176, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                 }
@@ -4947,7 +4944,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                                 "handle_realserver_recv() : call find_http_header : "
                                                 "return_value = %d.");
                         formatter % static_cast<int>(bret);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10177, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //serch http header result is OK
@@ -4962,8 +4959,8 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                                     "handle_realserver_recv() : call find_http_header : "
                                                     "return_value = %d.");
-                            formatter % formatter % static_cast<int>(bret);
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            formatter % static_cast<int>(bret);
+                            putLogDebug(10178, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         //serch Content_Length result is OK
@@ -5063,18 +5060,30 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                 break;
             }
         }
+
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
         {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step3--send status list loop end.", __FILE__, __LINE__ );
-        }
-        /*------DEBUG LOG END------*/
-        /*-------- DEBUG LOG --------*/
-        if (LOG_LV_DEBUG == getloglevel())
-        {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step4--new send status create procession start.", __FILE__, __LINE__ );
+            std::string datadump;
+            boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                    "send_rest_size = %d, send_possible_size = %d, "
+                                    "send_offset = %d, unsend_size = %d, edit_division = %d.");
+            int i = 0;
+            for (it = recv_data.send_status_list.begin();
+                 it != recv_data.send_status_list.end();
+                 ++it, ++i)
+            {
+                formatter % i % it->status % it->send_end_size
+                          % it->send_rest_size % it->send_possible_size
+                          % it->send_offset % it->unsend_size % it->edit_division;
+                datadump += formatter.str();
+            }
+
+            formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_realserver_recv() : send status list dump : send status list size = %d.%s");
+
+            formatter % recv_data.send_status_list.size() % datadump;
+            putLogDebug(10179, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         //there are still rest data need to prosess
@@ -5108,7 +5117,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                         "handle_realserver_recv() : call check_http_method : "
                                         "return_value = %d.");
                 formatter % check_result;
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10180, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
             //check http method resilt is OK
@@ -5124,7 +5133,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                             "handle_realserver_recv() : call check_http_version : "
                                             "return_value = %d.");
                     formatter % check_result;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10181, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
             }
@@ -5141,7 +5150,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                             "handle_realserver_recv() : call find_http_header : "
                                             "return_value = %d.");
                     formatter % static_cast<int>(bret);
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10182, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //searched whole http header
@@ -5157,7 +5166,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                                 "handle_realserver_recv() : call find_http_header : "
                                                 "return_value = %d.");
                         formatter % static_cast<int>(bret);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10183, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
 
@@ -5253,8 +5262,26 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
         {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step4--new send status create procession end.", __FILE__, __LINE__ );
+            std::string datadump;
+            boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                    "send_rest_size = %d, send_possible_size = %d, "
+                                    "send_offset = %d, unsend_size = %d, edit_division = %d.");
+            int i = 0;
+            for (it = recv_data.send_status_list.begin();
+                 it != recv_data.send_status_list.end();
+                 ++it, ++i)
+            {
+                formatter % i % it->status % it->send_end_size
+                          % it->send_rest_size % it->send_possible_size
+                          % it->send_offset % it->unsend_size % it->edit_division;
+                datadump += formatter.str();
+            }
+
+            formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_realserver_recv() : send status list dump : send status list size = %d.%s");
+
+            formatter % recv_data.send_status_list.size() % datadump;
+            putLogDebug(10184, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
 
@@ -5280,7 +5307,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_realserver_recv() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10185, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         status = FINALIZE;
@@ -5288,13 +5315,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
     catch (const std::string& ex)
     {
         std::cerr << "handle_realserver_recv exception : " << ex << std::endl;
-        putLogError(17000, ex.c_str(), __FILE__, __LINE__ );
+        putLogError(17084, ex.c_str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (const std::bad_alloc&)
     {
         std::cerr << "handle_realserver_recv exception : Could not allocate memory." << std::endl;
-        putLogError(17000, "Could not allocate memory.", __FILE__, __LINE__ );
+        putLogError(17085, "Could not allocate memory.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (const std::exception& ex)
@@ -5303,14 +5330,14 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_realserver_recv() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17086, formatter.str(), __FILE__, __LINE__ );
 
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_realserver_recv() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::check_message_result "
+        putLogError(17087, "function : protocol_module_base::check_message_result "
                     "protocol_module_sessionless::handle_realserver_recv() : "
                     "Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
@@ -5325,7 +5352,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_r
                                 "const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer, "
                                 "const size_t recvlen) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10186, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -5354,7 +5381,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                 "const size_t recvlen) : thread_id = %d, sorry_endpoint = [%s]:%d, recvbuffer = %s, recvlen = %d.");
         formatter % thread_id % sorry_endpoint.address().to_string() % sorry_endpoint.port()
         % recvbuffer.data() % recvlen;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10187, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -5368,6 +5395,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
     size_t content_length_header_len = 0;
     size_t content_len_value = 0;
     size_t pos = 0;
+    size_t buffer_size = 0;
     const size_t cr_lf_len = strlen("\r\n\r\n");
     std::string str_value;
     const std::string http_header = "";
@@ -5384,7 +5412,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
     if (recvlen > recvbuffer.size())
     {
         std::cerr << "handle_sorryserver_recv() : Data size bigger than buffer size." << std::endl;
-        putLogError(17000, "Data size bigger than buffer size.", __FILE__,
+        putLogError(17088, "Data size bigger than buffer size.", __FILE__,
                     __LINE__ );
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
@@ -5395,7 +5423,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                     "const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer, "
                                     "const size_t recvlen) : return_value = %d.");
             formatter % FINALIZE;
-            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10188, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         return FINALIZE;
@@ -5409,7 +5437,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17089, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -5419,7 +5447,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         recive_data_it = session_data->recive_data_map.find(session_data->target_endpoint);
         if (recive_data_it == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17090, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -5431,7 +5459,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         it = std::find_if(it, it_end, data_send_ok());
         if (it != it_end)
         {
-            putLogError(17000, "Sending data is invalid.", __FILE__, __LINE__ );
+            putLogError(17091, "Sending data is invalid.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -5440,15 +5468,33 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         it = std::adjacent_find(it, it_end, data_send_repeated());
         if (it != it_end)
         {
-            putLogError(17000, "Sending data is invalid.", __FILE__, __LINE__ );
+            putLogError(17092, "Sending data is invalid.", __FILE__, __LINE__ );
             throw -1;
         }
 
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
         {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_sorryserver_recv() : step1--send status list loop start.", __FILE__, __LINE__ );
+            std::string datadump;
+            boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                    "send_rest_size = %d, send_possible_size = %d, "
+                                    "send_offset = %d, unsend_size = %d, edit_division = %d.");
+            int i = 0;
+            for (it = recv_data.send_status_list.begin();
+                 it != recv_data.send_status_list.end();
+                 ++it, ++i)
+            {
+                formatter % i % it->status % it->send_end_size
+                          % it->send_rest_size % it->send_possible_size
+                          % it->send_offset % it->unsend_size % it->edit_division;
+                datadump += formatter.str();
+            }
+
+            formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_sorryserver_recv() : send status list dump : send status list size = %d.%s");
+
+            formatter % recv_data.send_status_list.size() % datadump;
+            putLogDebug(10189, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
 
@@ -5483,16 +5529,26 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
         {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_sorryserver_recv() : step1--send status list loop end.", __FILE__, __LINE__ );
-        }
-        /*------DEBUG LOG END------*/
+            std::string datadump;
+            boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                    "send_rest_size = %d, send_possible_size = %d, "
+                                    "send_offset = %d, unsend_size = %d, edit_division = %d.");
+            int i = 0;
+            for (it = recv_data.send_status_list.begin();
+                 it != recv_data.send_status_list.end();
+                 ++it, ++i)
+            {
+                formatter % i % it->status % it->send_end_size
+                          % it->send_rest_size % it->send_possible_size
+                          % it->send_offset % it->unsend_size % it->edit_division;
+                datadump += formatter.str();
+            }
 
-        /*-------- DEBUG LOG --------*/
-        if (LOG_LV_DEBUG == getloglevel())
-        {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step2--data buffer size process start.", __FILE__, __LINE__ );
+            formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_sorryserver_recv() : send status list dump : send status list size = %d.%s");
+
+            formatter % recv_data.send_status_list.size() % datadump;
+            putLogDebug(10190, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         //recive buffer process
@@ -5503,156 +5559,123 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             //buffer is need reallcate
             if (recv_data.recive_buffer_max_size < data_remain_size + recvlen)
             {
-                //first recive
-                if (recv_data.recive_buffer == NULL)
+                buffer_size = (data_remain_size + recvlen) > MAX_BUFFER_SIZE ? (data_remain_size + recvlen) : MAX_BUFFER_SIZE;
+                //recive_buffer1's memery allocate and initialization
+                buffer1 = new char[buffer_size];
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
                 {
-                    //recive_buffer1's memery allocate and initialization
-                    recv_data.recive_buffer1 = new char[MAX_BUFFER_SIZE];
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        boost::format formatter("new : address = &(%d), size = %lu.");
-                        formatter % static_cast<void*>(recv_data.recive_buffer1) % (MAX_BUFFER_SIZE);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*-------- DEBUG LOG END--------*/
-                    memset(recv_data.recive_buffer1, 0, MAX_BUFFER_SIZE);
-                    //recive_buffer2's memery allocate and initialization
-                    recv_data.recive_buffer2 = new char[MAX_BUFFER_SIZE];
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        boost::format formatter("new : address = &(%d), size = %lu.");
-                        formatter % static_cast<void*>(recv_data.recive_buffer2) % (MAX_BUFFER_SIZE);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*-------- DEBUG LOG END--------*/
-                    memset(recv_data.recive_buffer2, 0, MAX_BUFFER_SIZE);
-                    //set uisng buffer recive_buffer1 for defalut
-                    recv_data.recive_buffer = recv_data.recive_buffer1;
-                    //set max buffer size MAX_BUFFER_SIZE
-                    recv_data.recive_buffer_max_size = MAX_BUFFER_SIZE;
+                    boost::format formatter("new : address = &(%d), size = %lu.");
+                    formatter % static_cast<void*>(buffer1) % buffer_size;
+                    putLogDebug(10193, formatter.str(), __FILE__, __LINE__ );
                 }
-                //not first recive
-                else
+                /*-------- DEBUG LOG --------*/
+                memset(buffer1, 0, buffer_size);
+                //recive_buffer2's memery allocate and initialization
+                buffer2 = new char[buffer_size];
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
                 {
-                    //recive_buffer1's memery allocate and initialization
-                    buffer1 = new char[data_remain_size + recvlen];
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        boost::format formatter("new : address = &(%d), size = %lu.");
-                        formatter % static_cast<void*>(buffer1) % (data_remain_size + recvlen);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*-------- DEBUG LOG --------*/
-                    memset(buffer1, 0, data_remain_size + recvlen);
-                    //recive_buffer2's memery allocate and initialization
-                    buffer2 = new char[data_remain_size + recvlen];
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        boost::format formatter("new : address = &(%d), size = %lu.");
-                        formatter % static_cast<void*>(buffer2) % (data_remain_size + recvlen);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*-------- DEBUG LOG END--------*/
-                    memset(buffer2, 0, data_remain_size + recvlen);
+                    boost::format formatter("new : address = &(%d), size = %lu.");
+                    formatter % static_cast<void*>(buffer2) % buffer_size;
+                    putLogDebug(10194, formatter.str(), __FILE__, __LINE__ );
+                }
+                /*-------- DEBUG LOG END--------*/
+                memset(buffer2, 0, buffer_size);
 
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        std::string datadump;
-                        dump_memory(recv_data.recive_buffer + data_remain_start, data_remain_size, datadump);
-                        boost::format formatter(
-                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : before memcpy (data dump) : "
-                            "data begin = %d, data_size = %d, data = %s.");
-                        formatter % data_remain_start % data_remain_size % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*------DEBUG LOG END------*/
-                    //copy data from old buffer to new buffer
-                    memcpy(buffer1, recv_data.recive_buffer + data_remain_start, data_remain_size);
-                    /*-------- DEBUG LOG --------*/
-                    if (LOG_LV_DEBUG == getloglevel())
-                    {
-                        std::string datadump;
-                        dump_memory(buffer1, data_remain_size, datadump);
-                        boost::format formatter(
-                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : after memcpy (data dump) :  "
-                            "data begin = 0, data_size = %d, data = %s.");
-                        formatter % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
-                    }
-                    /*------DEBUG LOG END------*/
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
+                {
+                    std::string datadump;
+                    dump_memory(recv_data.recive_buffer + data_remain_start, data_remain_size, datadump);
+                    boost::format formatter(
+                        "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_sorryserver_recv() : before memcpy (data dump) : "
+                        "data begin = %d, data_size = %d, data = %s.");
+                    formatter % data_remain_start % data_remain_size % datadump;
+                    putLogDebug(10195, formatter.str(), __FILE__, __LINE__ );
+                }
+                /*------DEBUG LOG END------*/
+                //copy data from old buffer to new buffer
+                memcpy(buffer1, recv_data.recive_buffer + data_remain_start, data_remain_size);
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
+                {
+                    std::string datadump;
+                    dump_memory(buffer1, data_remain_size, datadump);
+                    boost::format formatter(
+                        "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_sorryserver_recv() : after memcpy (data dump) : "
+                        "data begin = 0, data_size = %d, data = %s.");
+                    formatter % recvlen % datadump;
+                    putLogDebug(10196, formatter.str(), __FILE__, __LINE__ );
+                }
+                /*------DEBUG LOG END------*/
 
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
+                {
+                    std::string datadump;
+                    dump_memory(recvbuffer.data(), recvlen, datadump);
+                    boost::format formatter(
+                        "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_sorryserver_recv() : before memcpy (data dump) : "
+                        "data begin = 0, data_size = %d, data = %s.");
+                    formatter % recvlen % datadump;
+                    putLogDebug(10197, formatter.str(), __FILE__, __LINE__ );
+                }
+                /*------DEBUG LOG END------*/
+                memcpy(buffer1 + data_remain_size, recvbuffer.data(), recvlen);
+                /*-------- DEBUG LOG --------*/
+                if (LOG_LV_DEBUG == getloglevel())
+                {
+                    std::string datadump;
+                    dump_memory(buffer1 + data_remain_size, data_remain_size, datadump);
+                    boost::format formatter(
+                        "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_sorryserver_recv() : after memcpy (data dump) : "
+                        "data begin = %d, data_size = %d, data = %s.");
+                    formatter % data_remain_size % recvlen % datadump;
+                    putLogDebug(10198, formatter.str(), __FILE__, __LINE__ );
+                }
+                /*------DEBUG LOG END------*/
+                //free old buffer1 and old buffer2
+                if (recv_data.recive_buffer1 != NULL)
+                {
                     /*-------- DEBUG LOG --------*/
                     if (LOG_LV_DEBUG == getloglevel())
                     {
-                        std::string datadump;
-                        dump_memory(recvbuffer.data(), recvlen, datadump);
-                        boost::format formatter(
-                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : before memcpy (data dump) :  "
-                            "data begin = 0, data_size = %d, data = %s.");
-                        formatter % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        boost::format formatter("delete : address = &(%d).");
+                        formatter % static_cast<void*>(recv_data.recive_buffer1);
+                        putLogDebug(10199, formatter.str(), __FILE__,
+                                    __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
-                    memcpy(buffer1 + data_remain_size, recvbuffer.data(), recvlen);
+                    delete[] recv_data.recive_buffer1;
+                    recv_data.recive_buffer1 = NULL;
+                }
+
+                if (recv_data.recive_buffer2 != NULL)
+                {
                     /*-------- DEBUG LOG --------*/
                     if (LOG_LV_DEBUG == getloglevel())
                     {
-                        std::string datadump;
-                        dump_memory(buffer1 + data_remain_size, data_remain_size, datadump);
-                        boost::format formatter(
-                            "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : after memcpy (data dump) :  "
-                            "data begin = %d, data_size = %d, data = %s.");
-                        formatter % data_remain_size % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        boost::format formatter("delete : address = &(%d).");
+                        formatter % static_cast<void*>(recv_data.recive_buffer2);
+                        putLogDebug(10200, formatter.str(), __FILE__,
+                                    __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
-                    //free old buffer1 and old buffer2
-                    if (recv_data.recive_buffer1 != NULL)
-                    {
-                        /*-------- DEBUG LOG --------*/
-                        if (LOG_LV_DEBUG == getloglevel())
-                        {
-                            boost::format formatter("delete : address = &(%d).");
-                            formatter % static_cast<void*>(recv_data.recive_buffer1);
-                            putLogDebug(10005, formatter.str(), __FILE__,
-                                        __LINE__ );
-                        }
-                        /*------DEBUG LOG END------*/
-                        delete[] recv_data.recive_buffer1;
-                        recv_data.recive_buffer1 = NULL;
-                    }
-
-                    if (recv_data.recive_buffer2 != NULL)
-                    {
-                        /*-------- DEBUG LOG --------*/
-                        if (LOG_LV_DEBUG == getloglevel())
-                        {
-                            boost::format formatter("delete : address = &(%d).");
-                            formatter % static_cast<void*>(recv_data.recive_buffer2);
-                            putLogDebug(10005, formatter.str(), __FILE__,
-                                        __LINE__ );
-                        }
-                        /*------DEBUG LOG END------*/
-                        delete[] recv_data.recive_buffer2;
-                        recv_data.recive_buffer2 = NULL;
-                    }
-
-                    //set new buffer pointer
-                    recv_data.recive_buffer1 = buffer1;
-                    recv_data.recive_buffer2 = buffer2;
-                    recv_data.recive_buffer = recv_data.recive_buffer1;
-                    //set new buffer's max size
-                    recv_data.recive_buffer_max_size = data_remain_size + recvlen;
+                    delete[] recv_data.recive_buffer2;
+                    recv_data.recive_buffer2 = NULL;
                 }
+
+                //set new buffer pointer
+                recv_data.recive_buffer1 = buffer1;
+                recv_data.recive_buffer2 = buffer2;
+                recv_data.recive_buffer = recv_data.recive_buffer1;
+                //set new buffer's max size
+                recv_data.recive_buffer_max_size = buffer_size;
             }
             //buffer's max size ≧ remain data size + requst size
             //buffer isn't need reallcate, but switch
@@ -5661,7 +5684,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                 //pointer valid check
                 if (recv_data.recive_buffer1 == NULL || recv_data.recive_buffer2 == NULL)
                 {
-                    putLogError(17000, "Invalid pointer.", __FILE__, __LINE__ );
+                    putLogError(17093, "Invalid pointer.", __FILE__, __LINE__ );
                     throw -1;
                 }
                 //using buffer is buffer1
@@ -5676,10 +5699,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         dump_memory(recv_data.recive_buffer + data_remain_start, data_remain_size, datadump);
                         boost::format formatter(
                             "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : before memcpy (data dump) : "
+                            "handle_sorryserver_recv() : before memcpy (data dump) : "
                             "data begin = %d, data_size = %d, data = %s.");
                         formatter % data_remain_start % data_remain_size % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10201, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //copy data from buffer1 to buffer2
@@ -5691,10 +5714,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         dump_memory(recv_data.recive_buffer2, data_remain_size, datadump);
                         boost::format formatter(
                             "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : after memcpy (data dump) :  "
+                            "handle_sorryserver_recv() : after memcpy (data dump) : "
                             "data begin = 0, data_size = %d, data = %s.");
                         formatter % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10202, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     /*-------- DEBUG LOG --------*/
@@ -5704,10 +5727,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         dump_memory(recvbuffer.data(), recvlen, datadump);
                         boost::format formatter(
                             "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : before memcpy (data dump) :  "
+                            "handle_sorryserver_recv() : before memcpy (data dump) : "
                             "data begin = 0, data_size = %d, data = %s.");
                         formatter % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10203, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     memcpy(recv_data.recive_buffer2 + data_remain_size, recvbuffer.data(), recvlen);
@@ -5718,10 +5741,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         dump_memory(recv_data.recive_buffer2 + data_remain_size, data_remain_size, datadump);
                         boost::format formatter(
                             "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : after memcpy (data dump) :  "
+                            "handle_sorryserver_recv() : after memcpy (data dump) : "
                             "data begin = %d, data_size = %d, data = %s.");
                         formatter % data_remain_size % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10204, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //set buffer2 for using buffer
@@ -5739,10 +5762,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         dump_memory(recv_data.recive_buffer + data_remain_start, data_remain_size, datadump);
                         boost::format formatter(
                             "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : before memcpy (data dump) : "
+                            "handle_sorryserver_recv() : before memcpy (data dump) : "
                             "data begin = %d, data_size = %d, data = %s.");
                         formatter % data_remain_start % data_remain_size % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10205, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //copy data from buffer2 to buffer1
@@ -5754,10 +5777,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         dump_memory(recv_data.recive_buffer1, data_remain_size, datadump);
                         boost::format formatter(
                             "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : after memcpy (data dump) :  "
+                            "handle_sorryserver_recv() : after memcpy (data dump) : "
                             "data begin = 0, data_size = %d, data = %s.");
                         formatter % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10206, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
 
@@ -5768,10 +5791,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         dump_memory(recvbuffer.data(), recvlen, datadump);
                         boost::format formatter(
                             "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : before memcpy (data dump) :  "
+                            "handle_sorryserver_recv() : before memcpy (data dump) : "
                             "data begin = 0, data_size = %d, data = %s.");
                         formatter % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10207, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     memcpy(recv_data.recive_buffer1 + data_remain_size, recvbuffer.data(), recvlen);
@@ -5782,10 +5805,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         dump_memory(recv_data.recive_buffer1 + data_remain_size, data_remain_size, datadump);
                         boost::format formatter(
                             "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                            "handle_realserver_recv() : after memcpy (data dump) :  "
+                            "handle_sorryserver_recv() : after memcpy (data dump) : "
                             "data begin = %d, data_size = %d, data = %s.");
                         formatter % data_remain_size % recvlen % datadump;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10208, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //set buffer1 for using buffer
@@ -5804,7 +5827,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             //offset recalc
             for (; it_begin != it_end; ++it_begin)
             {
-                it->send_offset -= data_remain_start;
+                it_begin->send_offset -= data_remain_start;
             }
         }
         //buffer's rest size ≧ request size
@@ -5814,7 +5837,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             //pointer valid check
             if (recv_data.recive_buffer == NULL)
             {
-                putLogError(17000, "Invalid pointer.", __FILE__, __LINE__ );
+                putLogError(17094, "Invalid pointer.", __FILE__, __LINE__ );
                 throw -1;
             }
             /*-------- DEBUG LOG --------*/
@@ -5824,10 +5847,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                 dump_memory(recvbuffer.data(), recvlen, datadump);
                 boost::format formatter(
                     "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                    "handle_realserver_recv() : before memcpy (data dump) :  "
+                    "handle_sorryserver_recv() : before memcpy (data dump) : "
                     "data begin = 0, data_size = %d, data = %s.");
                 formatter % recvlen % datadump;
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10209, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
 
@@ -5841,10 +5864,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                 dump_memory(recv_data.recive_buffer + recv_data.recive_buffer_max_size - recv_data.recive_buffer_rest_size, data_remain_size, datadump);
                 boost::format formatter(
                     "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                    "handle_realserver_recv() : after memcpy (data dump) :  "
+                    "handle_sorryserver_recv() : after memcpy (data dump) : "
                     "data begin = %d, data_size = %d, data = %s.");
                 formatter % (recv_data.recive_buffer_max_size - recv_data.recive_buffer_rest_size) % recvlen % datadump;
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10210, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
             //buffer's rest size recalc
@@ -5852,20 +5875,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             //remain data size recalc
             data_remain_size += recvlen;
         }
-        /*-------- DEBUG LOG --------*/
-        if (LOG_LV_DEBUG == getloglevel())
-        {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step2--data buffer size process end.", __FILE__, __LINE__ );
-        }
-        /*------DEBUG LOG END------*/
-        /*-------- DEBUG LOG --------*/
-        if (LOG_LV_DEBUG == getloglevel())
-        {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step3--send status list loop start.", __FILE__, __LINE__ );
-        }
-        /*------DEBUG LOG END------*/
+
         it = recv_data.send_status_list.begin();
         it_end = recv_data.send_status_list.end();
         //request rest size initialization
@@ -5904,10 +5914,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                 if (LOG_LV_DEBUG == getloglevel())
                 {
                     boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                            "handle_realserver_recv() : call check_status_code : "
+                                            "handle_sorryserver_recv() : call check_status_code : "
                                             "return_value = %d.");
                     formatter % check_result;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10211, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //check http method result is OK
@@ -5919,10 +5929,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                     if (LOG_LV_DEBUG == getloglevel())
                     {
                         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                                "handle_realserver_recv() : call check_http_version : "
+                                                "handle_sorryserver_recv() : call check_http_version : "
                                                 "return_value = %d.");
                         formatter % check_result;
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10212, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                 }
@@ -5936,10 +5946,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                     if (LOG_LV_DEBUG == getloglevel())
                     {
                         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                                "handle_realserver_recv() : call find_http_header : "
+                                                "handle_sorryserver_recv() : call find_http_header : "
                                                 "return_value = %d.");
                         formatter % static_cast<int>(bret);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10213, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
                     //serch http header result is OK
@@ -5952,10 +5962,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                         if (LOG_LV_DEBUG == getloglevel())
                         {
                             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                                    "handle_realserver_recv() : call find_http_header : "
+                                                    "handle_sorryserver_recv() : call find_http_header : "
                                                     "return_value = %d.");
-                            formatter % static_cast<int>(bret);;
-                            putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                            formatter % static_cast<int>(bret);
+                            putLogDebug(10214, formatter.str(), __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
                         //serch Content_Length result is OK
@@ -6057,15 +6067,26 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
         {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step3--send status list loop end.", __FILE__, __LINE__ );
-        }
-        /*------DEBUG LOG END------*/
-        /*-------- DEBUG LOG --------*/
-        if (LOG_LV_DEBUG == getloglevel())
-        {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step4--new send status create procession start.", __FILE__, __LINE__ );
+            std::string datadump;
+            boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                    "send_rest_size = %d, send_possible_size = %d, "
+                                    "send_offset = %d, unsend_size = %d, edit_division = %d.");
+            int i = 0;
+            for (it = recv_data.send_status_list.begin();
+                 it != recv_data.send_status_list.end();
+                 ++it, ++i)
+            {
+                formatter % i % it->status % it->send_end_size
+                          % it->send_rest_size % it->send_possible_size
+                          % it->send_offset % it->unsend_size % it->edit_division;
+                datadump += formatter.str();
+            }
+
+            formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_sorryserver_recv() : send status list dump : send status list size = %d.%s");
+
+            formatter % recv_data.send_status_list.size() % datadump;
+            putLogDebug(10215, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
 
@@ -6097,10 +6118,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             if (LOG_LV_DEBUG == getloglevel())
             {
                 boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                        "handle_realserver_recv() : call check_status_code : "
+                                        "handle_sorryserver_recv() : call check_status_code : "
                                         "return_value = %d.");
                 formatter % check_result;
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10216, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
             //check http method resilt is OK
@@ -6113,10 +6134,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                 if (LOG_LV_DEBUG == getloglevel())
                 {
                     boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                            "handle_realserver_recv() : call check_http_version : "
+                                            "handle_sorryserver_recv() : call check_http_version : "
                                             "return_value = %d.");
                     formatter % check_result;
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10217, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
             }
@@ -6130,10 +6151,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                 if (LOG_LV_DEBUG == getloglevel())
                 {
                     boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                            "handle_realserver_recv() : call find_http_header : "
+                                            "handle_sorryserver_recv() : call find_http_header : "
                                             "return_value = %d.");
                     formatter % static_cast<int>(bret);
-                    putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                    putLogDebug(10218, formatter.str(), __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
                 //searched whole http header
@@ -6146,10 +6167,10 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                     if (LOG_LV_DEBUG == getloglevel())
                     {
                         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                                "handle_realserver_recv() : call find_http_header : "
+                                                "handle_sorryserver_recv() : call find_http_header : "
                                                 "return_value = %d.");
                         formatter % static_cast<int>(bret);
-                        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                        putLogDebug(10219, formatter.str(), __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
 
@@ -6242,8 +6263,26 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         /*-------- DEBUG LOG --------*/
         if (LOG_LV_DEBUG == getloglevel())
         {
-            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                        "handle_realserver_recv() : step4--new send status create procession end.", __FILE__, __LINE__ );
+            std::string datadump;
+            boost::format formatter("\nitem[%d]: status = %d, send_end_size = %d, "
+                                    "send_rest_size = %d, send_possible_size = %d, "
+                                    "send_offset = %d, unsend_size = %d, edit_division = %d.");
+            int i = 0;
+            for (it = recv_data.send_status_list.begin();
+                 it != recv_data.send_status_list.end();
+                 ++it, ++i)
+            {
+                formatter % i % it->status % it->send_end_size
+                          % it->send_rest_size % it->send_possible_size
+                          % it->send_offset % it->unsend_size % it->edit_division;
+                datadump += formatter.str();
+            }
+
+            formatter.parse("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        "handle_sorryserver_recv() : send status list dump : send status list size = %d.%s");
+
+            formatter % recv_data.send_status_list.size() % datadump;
+            putLogDebug(10220, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
 
@@ -6267,9 +6306,9 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         if (LOG_LV_DEBUG == getloglevel())
         {
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                    "handle_realserver_recv() : catch exception e = %d.");
+                                    "handle_sorryserver_recv() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10221, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         status = FINALIZE;
@@ -6277,30 +6316,30 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
     catch (const std::string& ex)
     {
         std::cerr << "handle_sorryserver_recv exception : " << ex << std::endl;
-        putLogError(17000, ex.c_str(), __FILE__, __LINE__ );
+        putLogError(17095, ex.c_str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (const std::bad_alloc&)
     {
         std::cerr << "handle_sorryserver_recv exception : Could not allocate memory." << std::endl;
-        putLogError(17000, "Could not allocate memory.", __FILE__, __LINE__ );
+        putLogError(17096, "Could not allocate memory.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (const std::exception& ex)
     {
-        std::cerr << "handle_realserver_recv exception : error =" << ex.what() << "." << std::endl;
+        std::cerr << "handle_sorryserver_recv exception : error =" << ex.what() << "." << std::endl;
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
-                                "handle_realserver_recv() : exception : error = %s.");
+                                "handle_sorryserver_recv() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17097, formatter.str(), __FILE__, __LINE__ );
 
         status = FINALIZE;
     }
     catch (...)
     {
-        std::cerr << "protocol_module_sessionless::handle_realserver_recv() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::check_message_result "
-                    "protocol_module_sessionless::handle_realserver_recv() : "
+        std::cerr << "protocol_module_sessionless::handle_sorryserver_recv() : Unknown exception." << std::endl;
+        putLogError(17098, "function : protocol_module_base::check_message_result "
+                    "protocol_module_sessionless::handle_sorryserver_recv() : "
                     "Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -6314,7 +6353,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                                 "const boost::array<char,MAX_BUFFER_SIZE>& recvbuffer, "
                                 "const size_t recvlen) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10222, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -6334,7 +6373,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_response_sen
                                 "handle_response_send_inform(const boost::thread::id thread_id) : "
                                 "return_value = %d.");
         formatter % STOP;
-        putLogDebug(10000, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10223, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return STOP;
@@ -6355,9 +6394,9 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_conne
         boost::format formatter("in_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_client_connection_check(const boost::thread::id thread_id, "
                                 "boost::array<char, MAX_BUFFER_SIZE>& sendbuffer, size_t& datalen) : "
-                                "thread_id = %d, sendbuffer = %s, datalen = %d.");
-        formatter % thread_id % sendbuffer.data() % datalen;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                                "thread_id = %d.");
+        formatter % thread_id;
+        putLogDebug(10224, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -6375,7 +6414,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_conne
             session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17099, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -6385,7 +6424,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_conne
         recive_data_it = session_data->recive_data_map.find(session_data->target_endpoint);
         if (recive_data_it == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17100, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -6396,7 +6435,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_conne
                                     data_send_possible());
         if (it == recv_data.send_status_list.end())
         {
-            putLogError(17000, "Sending possible data is not existed.", __FILE__, __LINE__ );
+            putLogError(17101, "Sending possible data is not existed.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -6414,7 +6453,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_conne
                     "handle_client_connection_check() : before memcpy (data dump) : "
                     "data begin = %d, data_size = %d, data = %s.");
                 formatter % it->send_offset % (it->send_possible_size) % datadump;
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10225, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
             //copy data from recive_buffer to sendbuffer by sending_possible size
@@ -6430,7 +6469,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_conne
                     "handle_client_connection_check() : after memcpy (data dump) : "
                     "data begin = 0, data_size = %d, data = %s.");
                 formatter % (it->send_possible_size) % datadump;
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10226, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
             //send_end_size recalc
@@ -6454,7 +6493,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_conne
                     "handle_client_connection_check() : before memcpy (data dump) : "
                     "data begin = %d, data_size = %d, data = %s.");
                 formatter % it->send_offset % send_buffer_size % datadump;
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10227, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
             //copy data from recive_buffer to sendbuffer by buffer size
@@ -6470,7 +6509,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_conne
                     "handle_client_connection_check() : after memcpy (data dump) : "
                     "data begin = 0, data_size = %d, data = %s.");
                 formatter % send_buffer_size % datadump;
-                putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+                putLogDebug(10228, formatter.str(), __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
             //send_end_size recalc
@@ -6491,7 +6530,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_conne
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_client_connection_check() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10229, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         status = FINALIZE;
@@ -6502,13 +6541,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_conne
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_client_connection_check() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17102, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_client_connection_check() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17103, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_client_connection_check() : exception : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -6521,7 +6560,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_conne
                                 "boost::array<char, MAX_BUFFER_SIZE>& sendbuffer, size_t& datalen)"
                                 " : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10230, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return status;
@@ -6547,7 +6586,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_selec
                                 "size_t& datalen) : "
                                 "return_value = %d.");
         formatter % STOP;
-        putLogDebug(10000, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10231, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return STOP;
@@ -6566,7 +6605,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_send(
                                 "handle_client_send(const boost::thread::id thread_id) : "
                                 "thread_id = %d.");
         formatter % thread_id;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10232, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     EVENT_TAG status;
@@ -6582,7 +6621,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_send(
             session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17104, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
             session_data = session_thread_it->second;
@@ -6591,7 +6630,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_send(
         recive_data_it = session_data->recive_data_map.find(session_data->target_endpoint);
         if (recive_data_it == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17105, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -6604,7 +6643,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_send(
         it = std::adjacent_find(it, it_end, data_send_list_incorrect());
         if (it != it_end)
         {
-            putLogError(17000, "Sending possible data is invalid.", __FILE__, __LINE__ );
+            putLogError(17106, "Sending possible data is invalid.", __FILE__, __LINE__ );
             throw -1;
         }
         //status list check
@@ -6612,7 +6651,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_send(
         it = find_if(it, it_end, data_send_ok());
         if (it == it_end)
         {
-            putLogError(17000, "Sending possible data is not existed.", __FILE__, __LINE__ );
+            putLogError(17107, "Sending possible data is not existed.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -6682,7 +6721,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_send(
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_client_send() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10233, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         status = FINALIZE;
@@ -6693,13 +6732,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_send(
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_client_send() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17108, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_client_send() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17109, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_client_send() : exception : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -6710,7 +6749,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_send(
         boost::format formatter("out_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_client_send(const boost::thread::id thread_id) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10234, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -6729,7 +6768,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_client_disco
         boost::format formatter("in/out_function : protocol_module_sessionless::"
                                 "handle_client_disconnect(const boost::thread::id thread_id) : return_value = %d.");
         formatter % FINALIZE;
-        putLogDebug(10002, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10235, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return FINALIZE;
@@ -6748,7 +6787,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
                                 "handle_sorry_enable(const boost::thread::id thread_id) : "
                                 "thread_id = %d.");
         formatter % thread_id;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10236, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -6769,7 +6808,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
             session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17110, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -6781,7 +6820,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
         recive_data_it = session_data->recive_data_map.find(endpoint);
         if (recive_data_it == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17111, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -6818,7 +6857,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
                 /*-------- DEBUG LOG --------*/
                 if (LOG_LV_DEBUG == getloglevel())
                 {
-                    putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                    putLogDebug(10237, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorry_enable() : SORRY_FLAG_ON.", __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
@@ -6852,7 +6891,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
                         /*-------- DEBUG LOG --------*/
                         if (LOG_LV_DEBUG == getloglevel())
                         {
-                            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            putLogDebug(10238, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                         "handle_sorry_enable() : END_FLAG_ON.", __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
@@ -6866,7 +6905,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
                         /*-------- DEBUG LOG --------*/
                         if (LOG_LV_DEBUG == getloglevel())
                         {
-                            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            putLogDebug(10239, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                         "handle_sorry_enable() : SORRYSERVER_SWITCH_FLAG_ON.", __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
@@ -6875,7 +6914,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
                         /*-------- DEBUG LOG --------*/
                         if (LOG_LV_DEBUG == getloglevel())
                         {
-                            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            putLogDebug(10240, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                         "handle_sorry_enable() : SORRY_FLAG_ON.", __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
@@ -6912,7 +6951,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
                     /*-------- DEBUG LOG --------*/
                     if (LOG_LV_DEBUG == getloglevel())
                     {
-                        putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        putLogDebug(10241, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_sorry_enable() : END_FLAG_ON.", __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -6926,7 +6965,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
                     /*-------- DEBUG LOG --------*/
                     if (LOG_LV_DEBUG == getloglevel())
                     {
-                        putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        putLogDebug(10242, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_sorry_enable() : SORRY_FLAG_ON.", __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -6952,7 +6991,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_sorry_enable() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10243, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         status = FINALIZE;
@@ -6963,13 +7002,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorry_enable() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17112, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_sorry_enable() Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17113, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_sorry_enable() : exception : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -6980,7 +7019,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_enable
         boost::format formatter("out_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorry_enable(const boost::thread::id thread_id) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10244, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -7000,7 +7039,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
                                 "handle_sorry_disable(const boost::thread::id thread_id) : "
                                 "thread_id = %d.");
         formatter % thread_id;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10245, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     EVENT_TAG status;
@@ -7018,7 +7057,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
             session_thread_data_map_it session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17114, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
             //check pointer
@@ -7030,7 +7069,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
         recive_data_map_it recive_data_it = session_data->recive_data_map.find(endpoint);
         if (recive_data_it == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17115, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -7069,7 +7108,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
                 /*-------- DEBUG LOG --------*/
                 if (LOG_LV_DEBUG == getloglevel())
                 {
-                    putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                    putLogDebug(10246, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorry_disable() : SORRY_FLAG_OFF.", __FILE__, __LINE__ );
                 }
                 /*------DEBUG LOG END------*/
@@ -7090,7 +7129,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
                         /*-------- DEBUG LOG --------*/
                         if (LOG_LV_DEBUG == getloglevel())
                         {
-                            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            putLogDebug(10247, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                         "handle_sorry_disable() : END_FLAG_ON.", __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
@@ -7104,7 +7143,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
                         /*-------- DEBUG LOG --------*/
                         if (LOG_LV_DEBUG == getloglevel())
                         {
-                            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            putLogDebug(10248, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                         "handle_sorry_disable() : REALSERVER_SWITCH_FLAG_ON.", __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
@@ -7113,7 +7152,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
                         /*-------- DEBUG LOG --------*/
                         if (LOG_LV_DEBUG == getloglevel())
                         {
-                            putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                            putLogDebug(10249, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                         "handle_sorry_disable() : SORRY_FLAG_OFF.", __FILE__, __LINE__ );
                         }
                         /*------DEBUG LOG END------*/
@@ -7150,7 +7189,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
                     /*-------- DEBUG LOG --------*/
                     if (LOG_LV_DEBUG == getloglevel())
                     {
-                        putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        putLogDebug(10250, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_sorry_disable() : END_FLAG_ON.", __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -7164,7 +7203,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
                     /*-------- DEBUG LOG --------*/
                     if (LOG_LV_DEBUG == getloglevel())
                     {
-                        putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        putLogDebug(10251, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_sorry_disable() : SORRY_FLAG_OFF.", __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -7204,7 +7243,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_sorry_disable() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10252, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         status = FINALIZE;
@@ -7215,13 +7254,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorry_disable() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17116, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_sorry_disable() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17117, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_sorry_disable() : exception : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -7232,7 +7271,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorry_disabl
         boost::format formatter("out_function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorry_disable(const boost::thread::id thread_id) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10253, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -7253,7 +7292,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_d
                                 "handle_realserver_disconnect(const boost::thread::id thread_id, const boost::asio::ip::tcp::endpoint & rs_endpoint) : "
                                 "thread_id = %d, rs_endpoint = [%s]:%d.");
         formatter % thread_id % rs_endpoint.address().to_string() % rs_endpoint.port();
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10254, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     EVENT_TAG status;
@@ -7269,7 +7308,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_d
             session_thread_data_map_it session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17118, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -7279,7 +7318,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_d
         recive_data_map_it recive_data_it = session_data->recive_data_map.find(endpoint);
         if (recive_data_it == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17119, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -7326,7 +7365,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_d
                     /*-------- DEBUG LOG --------*/
                     if (LOG_LV_DEBUG == getloglevel())
                     {
-                        putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        putLogDebug(10255, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_realserver_disconnect() : END_FLAG_ON.", __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -7342,7 +7381,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_d
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                putLogDebug(10256, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                             "handle_realserver_disconnect() : END_FLAG_ON.", __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
@@ -7366,7 +7405,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_d
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_realserver_disconnect() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10257, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         status = FINALIZE;
@@ -7377,13 +7416,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_d
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_realserver_disconnect() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17120, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_realserver_disconnect() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17121, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_realserver_disconnect() : exception : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -7395,7 +7434,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_d
                                 "handle_realserver_disconnect(const boost::thread::id thread_id, "
                                 "const boost::asio::ip::tcp::endpoint & rs_endpoint) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10258, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -7420,7 +7459,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             "const boost::asio::ip::tcp::endpoint & sorry_endpoint) : "
             "thread_id = %d, sorry_endpoint = [%s]:%d.");
         formatter % thread_id % sorry_endpoint.address().to_string() % sorry_endpoint.port() ;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10259, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     EVENT_TAG status;
@@ -7435,7 +7474,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             session_thread_data_map_it session_thread_it = session_thread_data_map.find(thread_id);
             if (session_thread_it == session_thread_data_map.end() || session_thread_it->second == NULL)
             {
-                putLogError(17000, "Invalid thread id.", __FILE__, __LINE__ );
+                putLogError(17122, "Invalid thread id.", __FILE__, __LINE__ );
                 throw -1;
             }
 
@@ -7445,7 +7484,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         recive_data_map_it recive_data_it = session_data->recive_data_map.find(session_data->target_endpoint);
         if (session_data->recive_data_map.find(session_data->target_endpoint) == session_data->recive_data_map.end())
         {
-            putLogError(17000, "Invalid endpoint.", __FILE__, __LINE__ );
+            putLogError(17123, "Invalid endpoint.", __FILE__, __LINE__ );
             throw -1;
         }
 
@@ -7492,7 +7531,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
                     /*-------- DEBUG LOG --------*/
                     if (LOG_LV_DEBUG == getloglevel())
                     {
-                        putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                        putLogDebug(10260, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_sorryserver_disconnect() : END_FLAG_ON.", __FILE__, __LINE__ );
                     }
                     /*------DEBUG LOG END------*/
@@ -7508,7 +7547,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
-                putLogDebug(10005, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+                putLogDebug(10261, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                             "handle_sorryserver_disconnect() : END_FLAG_ON.", __FILE__, __LINE__ );
             }
             /*------DEBUG LOG END------*/
@@ -7532,7 +7571,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                     "handle_sorryserver_disconnect() : catch exception e = %d.");
             formatter % e;
-            putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+            putLogDebug(10262, formatter.str(), __FILE__, __LINE__ );
         }
         /*------DEBUG LOG END------*/
         status = FINALIZE;
@@ -7543,13 +7582,13 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
         boost::format formatter("function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                                 "handle_sorryserver_disconnect() : exception : error = %s.");
         formatter % ex.what();
-        putLogError(17000, formatter.str(), __FILE__, __LINE__ );
+        putLogError(17124, formatter.str(), __FILE__, __LINE__ );
         status = FINALIZE;
     }
     catch (...)
     {
         std::cerr << "protocol_module_sessionless::handle_sorryserver_disconnect() : Unknown exception." << std::endl;
-        putLogError(17000, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
+        putLogError(17125, "function : protocol_module_base::EVENT_TAG protocol_module_sessionless::"
                     "handle_sorryserver_disconnect() : exception : Unknown exception.", __FILE__, __LINE__ );
         status = FINALIZE;
     }
@@ -7563,7 +7602,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_sorryserver_
             "handle_sorryserver_disconnect(const boost::thread::id thread_id, "
             "const boost::asio::ip::tcp::endpoint& sorry_endpoint) : return_value = %d.");
         formatter % status;
-        putLogDebug(10005, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10263, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
 
@@ -7585,7 +7624,7 @@ protocol_module_base::EVENT_TAG protocol_module_sessionless::handle_realserver_c
                                 "const boost::asio::ip::udp::endpoint & rs_endpoint) : "
                                 "return_value = %d.");
         formatter % STOP;
-        putLogDebug(10000, formatter.str(), __FILE__, __LINE__ );
+        putLogDebug(10264, formatter.str(), __FILE__, __LINE__ );
     }
     /*------DEBUG LOG END------*/
     return STOP;
index 6f22a29..a9e93a8 100644 (file)
@@ -218,7 +218,8 @@ public:
        {
                return (send_status_first.status == protocol_module_sessionless::SEND_OK
                && send_status_first.send_rest_size > 0)
-               || (send_status_first.status == protocol_module_sessionless::SEND_CONTINUE);
+               || (send_status_first.status == protocol_module_sessionless::SEND_CONTINUE)
+               || (send_status_first.status == protocol_module_sessionless::SEND_NG);
        }
 };
 
index 4ee0f4f..d92f4a2 100644 (file)
@@ -117,7 +117,7 @@ void protocol_module_sslid::finalize()
     if (LOG_LV_DEBUG == getloglevel())
     {
         putLogDebug(30005, "function : void protocol_module_sslid::finalize() : "
-                                       "rs_list_begin.clear(), rs_list_end.clear(), rs_list_next.clear(), "
+                    "rs_list_begin.clear(), rs_list_end.clear(), rs_list_next.clear(), "
                     "rs_list_lock.clear(), rs_list_unlock.clear() end.", __FILE__, __LINE__);
     }
     /*------DEBUG LOG END------*/
@@ -131,7 +131,7 @@ void protocol_module_sslid::finalize()
     if (LOG_LV_DEBUG == getloglevel())
     {
         putLogDebug(30006, "function : void protocol_module_sslid::finalize() : "
-                                       "replication_pay_memory.clear(), replication_area_lock.clear(), "
+                    "replication_pay_memory.clear(), replication_area_lock.clear(), "
                     "replication_area_unlock.clear() end.", __FILE__, __LINE__);
     }
     /*------DEBUG LOG END------*/
@@ -718,7 +718,6 @@ protocol_module_sslid::check_message_result protocol_module_sslid::set_parameter
 
         if (data_addr == NULL || data_size <= 0)
         {
-            // waiting for jp response????????????????????
             // replication area is null
             putLogError(37020, "Replication area is null.", __FILE__, __LINE__);
 
@@ -1344,7 +1343,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_client_recv(
         // parameter check
         if (recvlen > recvbuffer.size())
         {
-            // waiting for jp response...??????????????????
             std::cerr << "handle_client_recv() : Data size bigger than buffer size." << std::endl;
             putLogError(37030, "Data size bigger than buffer size.", __FILE__, __LINE__);
             throw -1;
@@ -1355,7 +1353,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_client_recv(
             session_thread_data_map_type::iterator it = session_thread_data_map.find(thread_id);
             if (it == session_thread_data_map.end() || it->second == NULL)
             {
-                // waiting for jp response.....??????????????????
                 putLogError(37031, "Invalid thread id.", __FILE__, __LINE__);
 
                 throw -1;
@@ -1377,7 +1374,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_client_recv(
             // data length check
             if (threaddata->data_size + recvlen > threaddata->data_buffer.size())
             {
-                // waiting for jp response...??????????????????
                 std::cerr << "handle_client_recv() : Data size bigger than buffer size." << std::endl;
                 putLogError(37032, "Data size bigger than buffer size.", __FILE__, __LINE__);
                 threaddata->end_flag = END_FLAG_ON;
@@ -1588,7 +1584,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_select(
             session_thread_data_map_type::iterator it = session_thread_data_map.find(thread_id);
             if (it == session_thread_data_map.end() || it->second == NULL)
             {
-                // waiting for jp response.....??????????????????
                 putLogError(37035, "Invalid thread id.", __FILE__, __LINE__);
                 /*-------- DEBUG LOG --------*/
                 if (LOG_LV_DEBUG == getloglevel())
@@ -1600,8 +1595,7 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_select(
                     putLogDebug(30055, formatter.str(), __FILE__, __LINE__);
                 }
                 /*------DEBUG LOG END------*/
-                // waiting for jp response Could not finalize protomod. (Realserver decision failure)??????
-                putLogInfo(035000, "Realserver decision failure.", __FILE__, __LINE__);
+                putLogInfo(35000, "Realserver decision failure.", __FILE__, __LINE__);
 
                 return FINALIZE;
             }
@@ -1669,8 +1663,7 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_select(
                         }
                         /*------DEBUG LOG END------*/
 
-                        // waiting for jp response Could not finalize protomod. (Realserver decision failure)??????
-                        putLogInfo(035000, "Realserver decision failure", __FILE__, __LINE__);
+                        putLogInfo(35001, "Realserver decision failure", __FILE__, __LINE__);
 
                         threaddata->end_flag = END_FLAG_ON;
                         return FINALIZE;
@@ -1856,8 +1849,7 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_select(
         formatter % e.what();
         putLogError(37036, formatter.str(), __FILE__, __LINE__);
 
-        // waiting for jp response Could not finalize protomod. (Realserver decision failure)??????
-        putLogInfo(035000, "Realserver decision failure.", __FILE__, __LINE__);
+        putLogInfo(35002, "Realserver decision failure.", __FILE__, __LINE__);
 
         status = FINALIZE;
     }
@@ -1867,8 +1859,7 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_select(
         putLogError(37037, "function protocol_module_sslid::check_message_result "
                     "protocol_module_sslid::handle_realserver_select() : Unknown exception.", __FILE__, __LINE__);
 
-        // waiting for jp response Could not finalize protomod. (Realserver decision failure)??????
-        putLogInfo(035000, "Realserver decision failure.", __FILE__, __LINE__);
+        putLogInfo(35003, "Realserver decision failure.", __FILE__, __LINE__);
 
         status = FINALIZE;
     }
@@ -1931,8 +1922,8 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_connect
         boost::format formatter("in_function : protocol_module_base::EVENT_TAG protocol_module_sslid::"
                                 "handle_realserver_connect(const boost::thread::id thread_id, "
                                 "boost::array<char,MAX_BUFFER_SIZE>& sendbuffer, size_t& datalen) : "
-                                "thread_id = %d, sendbuffer = %s, datalen = %d.");
-        formatter % thread_id % sendbuffer.data() % datalen;
+                                "thread_id = %d.");
+        formatter % thread_id;
         putLogDebug(30070, formatter.str(), __FILE__, __LINE__);
     }
     /*------DEBUG LOG END------*/
@@ -1953,7 +1944,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_connect
             session_thread_data_map_type::iterator it = session_thread_data_map.find(thread_id);
             if (it == session_thread_data_map.end())
             {
-                // waiting for jp response.....??????????????????
                 putLogError(37038, "Invalid thread id.", __FILE__, __LINE__);
                 status = FINALIZE;
             }
@@ -2028,7 +2018,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_connect
             session_thread_data_map_type::iterator it = session_thread_data_map.find(thread_id);
             if (it == session_thread_data_map.end() || it->second == NULL)
             {
-                // waiting for jp response.....??????????????????
                 putLogError(37041, "Invalid thread id.", __FILE__, __LINE__);
                 /*-------- DEBUG LOG --------*/
                 if (LOG_LV_DEBUG == getloglevel())
@@ -2081,7 +2070,7 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_connect
     catch (...)
     {
         std::cerr << "protocol_module_sslid::handle_realserver_connection_fail() : Unknown exception." << std::endl;
-        putLogError(37043, "function protocol_module_sslid::check_message_result "
+        putLogError(37043, "function protocol_module_sslid::check_message_result "
                     "protocol_module_sslid::handle_realserver_connection_fail() : Unknown exception.",
                     __FILE__, __LINE__);
 
@@ -2130,7 +2119,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_send(
             session_thread_data_map_type::iterator it = session_thread_data_map.find(thread_id);
             if (it == session_thread_data_map.end() || it->second == NULL)
             {
-                // waiting for jp response.....??????????????????
                 putLogError(37044, "Invalid thread id.", __FILE__, __LINE__);
                 /*-------- DEBUG LOG --------*/
                 if (LOG_LV_DEBUG == getloglevel())
@@ -2359,7 +2347,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_recv(
     // parameter check
     if (recvlen > recvbuffer.size())
     {
-        // waiting for jp response...??????????????????
         std::cerr << "handle_realserver_recv() : Data size bigger than buffer size." << std::endl;
         putLogError(37047, "Data size bigger than buffer size.", __FILE__, __LINE__);
         /*-------- DEBUG LOG --------*/
@@ -2389,7 +2376,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_recv(
             session_thread_data_map_type::iterator it = session_thread_data_map.find(thread_id);
             if (it == session_thread_data_map.end() || it->second == NULL)
             {
-                // waiting for jp response.....??????????????????
                 putLogError(37048, "Invalid thread id.", __FILE__, __LINE__);
                 /*-------- DEBUG LOG --------*/
                 if (LOG_LV_DEBUG == getloglevel())
@@ -2417,7 +2403,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_realserver_recv(
         // data length check
         if (threaddata->data_size + recvlen > threaddata->data_buffer.size())
         {
-            // waiting for jp response...??????????????????
             std::cerr << "handle_realserver_recv() : Data size bigger than buffer size." << std::endl;
             putLogError(37049, "Data size bigger than buffer size.", __FILE__, __LINE__);
 
@@ -2688,8 +2673,8 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_client_connection_
         boost::format formatter("in_function : protocol_module_base::EVENT_TAG protocol_module_sslid::"
                                 "handle_client_connection_check(const boost::thread::id thread_id, "
                                 "boost::array<char,MAX_BUFFER_SIZE>& sendbuffer, "
-                                "size_t& datalen) : thread_id = %d, sendbuffer = %s, datalen = %d.");
-        formatter % thread_id % sendbuffer.data() % datalen;
+                                "size_t& datalen) : thread_id = %d.");
+        formatter % thread_id;
         putLogDebug(30099, formatter.str(), __FILE__, __LINE__);
     }
     /*------DEBUG LOG END------*/
@@ -2705,7 +2690,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_client_connection_
             session_thread_data_map_type::iterator it = session_thread_data_map.find(thread_id);
             if (it == session_thread_data_map.end() || it->second == NULL)
             {
-                // waiting for jp response.....??????????????????
                 putLogError(37052, "Invalid thread id.", __FILE__, __LINE__);
 
                 /*-------- DEBUG LOG --------*/
@@ -2816,7 +2800,7 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_client_connection_
     }
     catch (...)
     {
-        std::cerr << "protocol_module_sslid::handle_client_connection_check() :Unknown exception." << std::endl;
+        std::cerr << "protocol_module_sslid::handle_client_connection_check() : Unknown exception." << std::endl;
         putLogError(37054, "function : protocol_module_sslid::check_message_result "
                     "protocol_module_sslid::handle_client_connection_check() : Unknown exception.", __FILE__, __LINE__);
 
@@ -2827,7 +2811,7 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_client_connection_
     if (LOG_LV_DEBUG == getloglevel())
     {
         boost::format formatter("out_function : protocol_module_base::EVENT_TAG protocol_module_sslid::"
-                                "handle_client_connection_check(const boost::thread::id thread_id,"
+                                "handle_client_connection_check(const boost::thread::id thread_id, "
                                 "boost::array<char,MAX_BUFFER_SIZE>& sendbuffer, size_t& datalen) : "
                                 "return_value = %d.");
         formatter % status;
@@ -2894,7 +2878,6 @@ protocol_module_base::EVENT_TAG protocol_module_sslid::handle_client_send(
             session_thread_data_map_type::iterator it = session_thread_data_map.find(thread_id);
             if (it == session_thread_data_map.end() || it->second == NULL)
             {
-                // waiting for jp response.....?????????????????
                 putLogError(37055, "Invalid thread id.", __FILE__, __LINE__);
                 /*-------- DEBUG LOG --------*/
                 if (LOG_LV_DEBUG == getloglevel())
@@ -3209,10 +3192,10 @@ int protocol_module_sslid::put_data_to_sendbuffer(
     if (LOG_LV_DEBUG == getloglevel())
     {
         boost::format formatter("in_function : int protocol_module_sslid::put_data_to_sendbuffer("
-                                "const boost::thread::id& thread_id,"
+                                "const boost::thread::id& thread_id, "
                                 "boost::array<char,MAX_BUFFER_SIZE>& sendbuffer, "
-                                "size_t& datalen) : thread_id = %d, sendbuffer = %s, datalen = %d.");
-        formatter % thread_id % sendbuffer.data() % datalen;
+                                "size_t& datalen) : thread_id = %d.");
+        formatter % thread_id;
         putLogDebug(30123, formatter.str(), __FILE__, __LINE__);
     }
     /*------DEBUG LOG END------*/
@@ -3226,14 +3209,13 @@ int protocol_module_sslid::put_data_to_sendbuffer(
         session_thread_data_map_type::iterator it = session_thread_data_map.find(thread_id);
         if (it == session_thread_data_map.end() || it->second == NULL)
         {
-            // waiting for jp response.....??????????????????
             putLogError(37058, "Invalid thread id.", __FILE__, __LINE__);
 
             /*-------- DEBUG LOG --------*/
             if (LOG_LV_DEBUG == getloglevel())
             {
                 putLogDebug(30124, "out_function : int protocol_module_sslid::put_data_to_sendbuffer("
-                            "const boost::thread::id& thread_id,"
+                            "const boost::thread::id& thread_id, "
                             "boost::array<char,MAX_BUFFER_SIZE>& sendbuffer, "
                             "size_t& datalen) : return_value = -1.", __FILE__, __LINE__);
             }
@@ -3481,7 +3463,7 @@ int protocol_module_sslid::put_data_to_sendbuffer(
     if (LOG_LV_DEBUG == getloglevel())
     {
         putLogDebug(30135, "out_function : int protocol_module_sslid::put_data_to_sendbuffer("
-                    "const boost::thread::id& thread_id,"
+                    "const boost::thread::id& thread_id, "
                     "boost::array<char,MAX_BUFFER_SIZE>& sendbuffer, "
                     "size_t& datalen) : return_value = 0.", __FILE__, __LINE__);
     }
index c0f2896..93d7847 100644 (file)
@@ -62,13 +62,11 @@ sslid_replication_data_processor::sslid_replication_data_processor(
         }
         /*------DEBUG LOG END------*/
 
-        // waiting for jp response??????????????????
-        throw std::logic_error("invalid parameter value.");
+        throw std::logic_error("Invalid parameter value.");
     }
 
     if (sslid_replication_area_begain == NULL)
     {
-        // waiting for jp response????????????????????
         // replication area is null
         putLogError(37000, "Replication area is null.", __FILE__, __LINE__);
         /*-------- DEBUG LOG --------*/
index 58ec1cf..bb34353 100644 (file)
@@ -36,14 +36,19 @@ sslid_session_data_processor::sslid_session_data_processor(
     // parameter check
     if (maxlist < 0 || timeout < 0 || replication_data_processor == NULL)
     {
-        putLogDebug(30001, "out_function : Constructor sslid_session_data_processor::"
-                            "sslid_session_data_processor(int maxlist, int timeout, "
-                            "sslid_replication_data_processor* replication_data_processor, "
-                            "getloglevel_func_type ingetloglevel, logger_func_type inputLogFatal, "
-                            "logger_func_type inputLogError, logger_func_type inputLogWarn, "
-                            "logger_func_type inputLogInfo, logger_func_type inputLogDebug)."
+        /*-------- DEBUG LOG --------*/
+        if (LOG_LV_DEBUG == getloglevel())
+        {
+            putLogDebug(30001, "out_function : Constructor sslid_session_data_processor::"
+                                "sslid_session_data_processor(int maxlist, int timeout, "
+                                "sslid_replication_data_processor* replication_data_processor, "
+                                "getloglevel_func_type ingetloglevel, logger_func_type inputLogFatal, "
+                                "logger_func_type inputLogError, logger_func_type inputLogWarn, "
+                                "logger_func_type inputLogInfo, logger_func_type inputLogDebug)."
                             , __FILE__, __LINE__);
-        // waiting for jp response??????????????????
+        }
+        /*------DEBUG LOG END------*/
+
         throw std::logic_error("invalid parameter value.");
     }
 
@@ -282,7 +287,7 @@ int sslid_session_data_processor::write_session_data(
             if (session_endpoint_map.size() >= static_cast<size_t>(maxlist))
             {
                 // map size arrived to top
-                if (clear_expired_session_data() == -1)
+                if (clear_expired_session_data() == 1)
                 {
                     /*-------- DEBUG LOG --------*/
                     if (LOG_LV_DEBUG == getloglevel())
@@ -290,11 +295,11 @@ int sslid_session_data_processor::write_session_data(
                         putLogDebug(30011, "out_function : int sslid_session_data_processor::"
                                     "write_session_data(const std::string& session_id, "
                                     "const boost::asio::ip::tcp::endpoint& endpoint, time_t now_time) : "
-                                    "return_value = -1.", __FILE__, __LINE__);
+                                    "return_value = 0.", __FILE__, __LINE__);
                     }
                     /*------DEBUG LOG END------*/
 
-                    return -1;
+                    return 0;
                 }
 
                 /*-------- DEBUG LOG --------*/
@@ -457,7 +462,7 @@ int sslid_session_data_processor::read_session_data_from_replication_area(
 }
 
 //! clear expired session data
-//! @return 0 : success
+//! @return 0 : success 1 : map size is 0
 int sslid_session_data_processor::clear_expired_session_data()
 {
     /*-------- DEBUG LOG --------*/
@@ -479,11 +484,11 @@ int sslid_session_data_processor::clear_expired_session_data()
         if (LOG_LV_DEBUG == getloglevel())
         {
             putLogDebug(30021, "out_function : int sslid_session_data_processor::"
-                        "clear_expired_session_data() : return_value = 0.",  __FILE__, __LINE__);
+                        "clear_expired_session_data() : return_value = 1.",  __FILE__, __LINE__);
         }
         /*------DEBUG LOG END------*/
 
-        return 0;
+        return 1;
     }
 
     // none record time expired, delete the oldest session
index 5776097..c704590 100644 (file)
@@ -193,7 +193,7 @@ snmpagent_libs = @snmpagent_libs@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
 AUTOMAKE_OPTIONS = foreign
-L7VS_MODDIR = @l7vs_dir@
+L7VS_MODDIR = @l7vs_moddir@
 MAX_BUFFER_SIZE = @l7vs_max_buffer_size@
 AM_CPPFLAGS = \
                -g -O2 -Wall -Werror -fPIC -pthread \
@@ -500,8 +500,15 @@ uninstall-am: uninstall-info-am uninstall-libLTLIBRARIES
 
 
 install:
+       cp ./.libs/libsched_lc.so ./.libs/sched_lc.so && \
+       cp ./.libs/libsched_rr.so ./.libs/sched_rr.so && \
+       cp ./.libs/libsched_wrr.so ./.libs/sched_wrr.so && \
        $(INSTALL) -m 755 -d $(L7VS_MODDIR)
-       $(INSTALL) -D 755 -D $(L7VS_MODDIR)
+       $(INSTALL) -m 755 -D \
+               ./.libs/sched_lc.so \
+               ./.libs/sched_rr.so \
+               ./.libs/sched_wrr.so \
+               $(L7VS_MODDIR)
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
index f3065ba..f426e2a 100644 (file)
@@ -2,9 +2,6 @@
 #include "../../module/protocol/http_protocol_module_base.cpp"
 #include "../../module/protocol/protocol_module_sessionless.cpp"
 
-#define FORWARDED_FOR_OFF 0
-#define FORWARDED_FOR_ON 1
-
 #define REQUEST_BUFFER_SIZE 50u  //REQUEST_BUFFER_SIZE
 #define RESPONSE_BUFFER_SIZE 50u  //RESPONSE_BUFFER_SIZE
 #define USE_BUFFER_SIZE 90u //USE_BUFFER_SIZE
@@ -19,9 +16,13 @@ using namespace l7vs;
 char hostname[] = "127.0.0.1";
 
 LOG_LEVEL_TAG  stb_getloglevel(){
-       //return LOG_LV_DEBUG;
+       return LOG_LV_DEBUG;
+       //return LOG_LV_NONE;
+}
+LOG_LEVEL_TAG  stb_getloglevel_is_none(){
        return LOG_LV_NONE;
 }
+
 void   stb_putLogFatal( const unsigned int message_id, const std::string& message, const char* file, int line){
 //     cout << boost::format( "%s%d%06d %s %s" )
 //                             % "PM"
@@ -106,10 +107,17 @@ protocol_module_sessionless::realserverlist_type::iterator rslist_next(
 //RealServerリストロック関数
 void rslist_lock() {
 }
-//ealServerリストアンロック関数
+//RealServerリストアンロック関数
 void rslist_unlock() {
 }
-
+//コンポーネント領域割り当て関数
+void* pay_memory(const std::string& str, unsigned int* pro) {
+       return 0 ;
+}
+//コンポーネント領域ロック関数
+void area_lock() {}
+//コンポーネント領域アンロック関数
+void area_unlock() {}
 //Client振り分け処理関数
 void schedule_tcp_stb( const boost::thread::id id,
                           protocol_module_base::rs_list_itr_func_type func_type1,
@@ -160,20 +168,6 @@ void schedule_tcp_nodeterminate(//endpoint = 未決定
 class protocol_module_sessionless_test_class : public protocol_module_sessionless
 {
 public:
-       int THREAD_DIVISION_UP_STREAM; //上りスレッド
-       int THREAD_DIVISION_DOWN_STREAM;  //下りスレッド
-       int END_FLAG_OFF; //終了フラグOFF
-       int END_FLAG_ON; //終了フラグON
-       int ACCEPT_END_FLAG_OFF; //ACCEPT完了フラグOFF
-       int ACCEPT_END_FLAG_ON; //ACCEPT完了フラグON
-       int SORRY_FLAG_ON; //SORRY状態
-       int SORRY_FLAG_OFF; //SORRY状態以外
-       int SORRYSERVER_SWITCH_FLAG_OFF; //sorryserver切替中以外
-       int SORRYSERVER_SWITCH_FLAG_ON; //sorryserver切替中
-       int REALSERVER_SWITCH_FLAG_OFF; //realserver切替中以外
-       int REALSERVER_SWITCH_FLAG_ON; //realserver切替中
-       int EDIT_DIVISION_NO_EDIT; //編集無し
-       int EDIT_DIVISION_EDIT; //編集あり
 
 //stub log function install
 void install_stb_log_func(){
@@ -235,20 +229,6 @@ void init_edit_data(edit_data& data)
 }
 
 protocol_module_sessionless_test_class()
-    :THREAD_DIVISION_UP_STREAM(protocol_module_sessionless::THREAD_DIVISION_UP_STREAM) //上りスレッド
-    ,THREAD_DIVISION_DOWN_STREAM(protocol_module_sessionless::THREAD_DIVISION_DOWN_STREAM)  //下りスレッド
-    ,END_FLAG_OFF(protocol_module_sessionless::END_FLAG_OFF) //終了フラグOFF
-    ,END_FLAG_ON(protocol_module_sessionless::END_FLAG_ON) //終了フラグON
-    ,ACCEPT_END_FLAG_OFF(protocol_module_sessionless::ACCEPT_END_FLAG_OFF) //ACCEPT完了フラグOFF
-    ,ACCEPT_END_FLAG_ON(protocol_module_sessionless::ACCEPT_END_FLAG_ON) //ACCEPT完了フラグON
-    ,SORRY_FLAG_ON(protocol_module_sessionless::SORRY_FLAG_ON) //SORRY状態
-    ,SORRY_FLAG_OFF(protocol_module_sessionless::SORRY_FLAG_OFF) //SORRY状態以外
-    ,SORRYSERVER_SWITCH_FLAG_OFF(protocol_module_sessionless::SORRYSERVER_SWITCH_FLAG_OFF) //sorryserver切替中以外
-    ,SORRYSERVER_SWITCH_FLAG_ON(protocol_module_sessionless::SORRYSERVER_SWITCH_FLAG_ON) //sorryserver切替中
-    ,REALSERVER_SWITCH_FLAG_OFF(protocol_module_sessionless::REALSERVER_SWITCH_FLAG_OFF) //realserver切替中以外
-    ,REALSERVER_SWITCH_FLAG_ON(protocol_module_sessionless::REALSERVER_SWITCH_FLAG_ON) //realserver切替中
-    ,EDIT_DIVISION_NO_EDIT(protocol_module_sessionless::EDIT_DIVISION_NO_EDIT)   //編集無し
-    ,EDIT_DIVISION_EDIT(protocol_module_sessionless::EDIT_DIVISION_EDIT)     //編集あり
 {
     install_stb_log_func();
 }
@@ -256,8 +236,15 @@ protocol_module_sessionless_test_class()
 //protocol_module_sessionless 馮家純
 void protocol_module_sessionless_test(){
     cout << "[1]------------------------------------------" << endl;
-    //unit_test[1] モジュール名("sessionless")
+    //unit_test[1] モジュール名に("sessionless")を設定する,forwarded_forにFORWARDED_FOR_OFFを設定する,sorry_uriに'\0'を設定する
+     //モジュール名に("sessionless")を設定する
     BOOST_CHECK_EQUAL(this->name, "sessionless");
+    //forwarded_forにFORWARDED_FOR_OFFを設定する
+    BOOST_CHECK_EQUAL(this->forwarded_for, FORWARDED_FOR_OFF);
+    char chk[MAX_OPTION_SIZE];
+    memset(chk, '\0', MAX_OPTION_SIZE);
+    //sorry_uriに'\0'を設定する
+    BOOST_CHECK_EQUAL(memcmp(this->sorry_uri.data(), chk, MAX_OPTION_SIZE), 0);
 }
 
 //~protocol_module_sessionless 馮家純
@@ -281,7 +268,7 @@ void is_udp_test(){
 //get_name 馮家純
 void get_name_test(){
     cout << "[4]------------------------------------------" << endl;
-    //unit_test[4] モジュール名("sessionless")を返却する
+    //unit_test[4] モジュール名("sessionless")を返却する
     BOOST_CHECK_EQUAL(this->get_name(), "sessionless");
 }
 
@@ -324,6 +311,22 @@ void initialize_test() {
 void finalize_test() {
     cout << "[7]------------------------------------------" << endl;
     //unit_test[7] 各操作関数を初期化する
+    //RealServerリストの各操作関数
+    this->rs_list_begin = rslist_begin;
+    this->rs_list_end = rslist_end;
+    this->rs_list_next = rslist_next;
+    this->rs_list_lock = rslist_lock;
+    this->rs_list_unlock = rslist_unlock;
+    //Replicationの各操作関数
+    this->replication_pay_memory = pay_memory;
+    this->replication_area_lock = area_lock;
+    this->replication_area_unlock = area_unlock;
+    //ScheduleModuleの振分関数
+    this->schedule_tcp = schedule_tcp_stb;
+    //各モジュールオプション
+    this->forwarded_for = FORWARDED_FOR_ON;
+    this->sorry_uri.assign('a');
+
     this->finalize();
 
     BOOST_CHECK_EQUAL(this->getloglevel.empty() , true);
@@ -363,70 +366,70 @@ void check_parameter_test() {
        vector<string> args;
 
     cout << "[9]------------------------------------------" << endl;
-       // unit_test[9] オプション文字列にデータなし場合,チェック結果フラグにTRUEを設定する
+       // unit_test[9] オプション文字列にデータなし場合チェック結果フラグにTRUEを設定する
        result = this->check_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, true);
 
     cout << "[10]------------------------------------------" << endl;
-       // unit_test[10] オプション文字列 = "-F"の場合,チェック結果フラグにTRUEを設定する
+       // unit_test[10] オプション文字列 = "-F"の場合チェック結果フラグにTRUEを設定する
        args.push_back("-F");
        result = this->check_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, true);
 
     cout << "[11]------------------------------------------" << endl;
-       // unit_test[11] オプション文字列 = "--forwarded-for"の場合,チェック結果フラグにTRUEを設定する
+       // unit_test[11] オプション文字列 = "--forwarded-for"の場合チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("--forwarded-for");
        result = this->check_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, true);
 
     cout << "[12]------------------------------------------" << endl;
-       // unit_test[12] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-S/--sorry-uri' option value '%s' is too long."(%sは次要素)を設定する
-       // unit_test[12] test data:オプション文字列 = "-S" sorry-uri設定フラグ = OFF 次要素の文字列長 > 127
+       // unit_test[12] チェック結果フラグにFALSEを設定するチェック結果メッセージに"'-S/--sorry-uri' option value '%s' is too long."(%sは次要素)を設定する
+       // unit_test[12] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = OFF 次要素の文字列長 > 127の場合
        args.clear();
        args.push_back("-S");
-       args.push_back("abcdef1234567890/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/");
+       args.push_back("/bcdef1234567890/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/");
        result = this->check_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, false);
-       BOOST_CHECK_EQUAL(result.message, "'-S/--sorry-uri' option value 'abcdef1234567890/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/' is too long.");
+       BOOST_CHECK_EQUAL(result.message, "'-S/--sorry-uri' option value '/bcdef1234567890/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/' is too long.");
 
     cout << "[13]------------------------------------------" << endl;
-       // unit_test[13] sorry-uri設定フラグをON チェック結果メッセージに"Cannot set multiple option ''-S/--sorry-uri'."を設定する
-       // unit_test[13] test data:オプション文字列 = "-S" sorry-uri設定フラグ = OFF 次要素の文字列長 = 127 チェックOKの場合
+       // unit_test[13] sorry-uri設定フラグをON、チェック結果メッセージに"Cannot set multiple option '-S/--sorry-uri'."を設定する
+       // unit_test[13] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = OFF、次要素の文字列長 = 127 チェックOKの場合
        args.clear();
        args.push_back("-S");
-       args.push_back("abc78/0123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/12345678/");
+       args.push_back("/bc78/0123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/12345678/");
        args.push_back("--sorry-uri");
-       args.push_back("abc78/0123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/12345678/");
+       args.push_back("/bc78/0123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/12345678/");
        result = this->check_parameter(args);
        BOOST_CHECK_EQUAL(result.message, "Cannot set multiple option '-S/--sorry-uri'.");
        BOOST_CHECK_EQUAL(result.flag, false);
 
     cout << "[14]------------------------------------------" << endl;
-       // unit_test[14] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-S/--sorry-uri' option value '%s' is not a valid URI."(%sは次要素)を設定する
-       // unit_test[14] test data:オプション文字列 = "-S" sorry-uri設定フラグ = OFF 次要素の文字列長 = 127 チェックNGの場合
+       // unit_test[14] チェック結果フラグにFALSEを設定するチェック結果メッセージに"'-S/--sorry-uri' option value '%s' is not a valid URI."(%sは次要素)を設定する
+       // unit_test[14] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = OFF、次要素の文字列長 = 127 チェックNGの場合
        args.clear();
        args.push_back("-S");
-       args.push_back("a\r\n/0123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/12345678/");
+       args.push_back("/a\r\n/123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/12345678/");
        result = this->check_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, false);
-       BOOST_CHECK_EQUAL(result.message, "'-S/--sorry-uri' option value 'a\r\n/0123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/12345678/' is not a valid URI.");
+       BOOST_CHECK_EQUAL(result.message, "'-S/--sorry-uri' option value '/a\r\n/123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/12345678/' is not a valid URI.");
 
     cout << "[15]------------------------------------------" << endl;
-       // unit_test[15] sorry-uri設定フラグをON チェック結果メッセージに"Cannot set multiple option ''-S/--sorry-uri'."を設定する
-       // unit_test[15] test data:オプション文字列 = "-S" sorry-uri設定フラグ = OFF 次要素の文字列長 < 127 チェックOKの場合
+       // unit_test[15] sorry-uri設定フラグをON、チェック結果メッセージに"Cannot set multiple option '-S/--sorry-uri'."を設定する
+       // unit_test[15] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = OFF、次要素の文字列長 < 127 チェックOKの場合
        args.clear();
        args.push_back("-S");
-       args.push_back("abc123");
+       args.push_back("/abc123");
        args.push_back("--sorry-uri");
-       args.push_back("abc123");
+       args.push_back("/abc123");
        result = this->check_parameter(args);
        BOOST_CHECK_EQUAL(result.message, "Cannot set multiple option '-S/--sorry-uri'.");
        BOOST_CHECK_EQUAL(result.flag, false);
 
     cout << "[16]------------------------------------------" << endl;
-       // unit_test[16] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-S/--sorry-uri' option value '%s' is not a valid URI."(%sは次要素)を設定する
-       // unit_test[16] test data:オプション文字列 = "-S" sorryURI設定フラグ = OFF 次要素の文字列長 < 127 チェックNGの場合
+       // unit_test[16] チェック結果フラグにFALSEを設定するチェック結果メッセージに"'-S/--sorry-uri' option value '%s' is not a valid URI."(%sは次要素)を設定する
+       // unit_test[16] test data:オプション文字列 = "-S"、sorryURI設定フラグ = OFF、次要素の文字列長 < 127 チェックNGの場合
        args.clear();
        args.push_back("-S");
        args.push_back("123\r\n");
@@ -435,8 +438,8 @@ void check_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "'-S/--sorry-uri' option value '123\r\n' is not a valid URI.");
 
     cout << "[17]------------------------------------------" << endl;
-       // unit_test[17] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to set  option value ''-S/--sorry-uri'."を設定する
-       // unit_test[17] test data:オプション文字列 = "-S" sorry-uri設定フラグ = OFF 次要素が存在しない場合
+       // unit_test[17] チェック結果フラグにFALSEを設定する、チェック結果メッセージに"You have to set  option value '-S/--sorry-uri'."を設定する
+       // unit_test[17] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = OFF、次要素が存在しない場合
        args.clear();
        args.push_back("-S");
        result = this->check_parameter(args);
@@ -444,20 +447,20 @@ void check_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "You have to set option value '-S/--sorry-uri'.");
 
     cout << "[18]------------------------------------------" << endl;
-       // unit_test[18] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option ''-S/--sorry-uri'."を設定する
-       // unit_test[18] test data:オプション文字列 = "-S" sorry-uri設定フラグ = ON
+       // unit_test[18] チェック結果フラグにFALSEを設定する、チェック結果メッセージに"Cannot set multiple option '-S/--sorry-uri'."を設定する
+       // unit_test[18] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = ONの場合
        args.clear();
        args.push_back("-S");
-       args.push_back("123/abc");
+       args.push_back("/123/abc");
        args.push_back("-S");
-       args.push_back("123/999");
+       args.push_back("/123/999");
        result = this->check_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, false);
        BOOST_CHECK_EQUAL(result.message, "Cannot set multiple option '-S/--sorry-uri'.");
 
     cout << "[19]------------------------------------------" << endl;
-       // unit_test[19] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Option error."を設定する
-       // unit_test[19] test data:オプション文字列"-F","-S" 以外の場合
+       // unit_test[19] チェック結果フラグにFALSEを設定するチェック結果メッセージに"Option error."を設定する
+       // unit_test[19] test data:オプション文字列"-F""-S" 以外の場合
        args.clear();
        args.push_back("-D");
        result = this->check_parameter(args);
@@ -465,25 +468,25 @@ void check_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "Option error.");
 
     cout << "[20]------------------------------------------" << endl;
-       // unit_test[20] オプション文字列"-S","--forwarded-for"の場合,チェック結果フラグにTRUEを設定する
+       // unit_test[20] オプション文字列"-S"、"--forwarded-for"の場合、チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("-S");
-       args.push_back("123/abc");
+       args.push_back("/123/abc");
        args.push_back("--forwarded-for");
        result = this->check_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, true);
 
     cout << "[21]------------------------------------------" << endl;
-       // unit_test[21] オプション文字列"-F","--sorry-uri" の場合,チェック結果フラグにTRUEを設定する
+       // unit_test[21] オプション文字列"-F"、"--sorry-uri" の場合、チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("-F");
        args.push_back("--sorry-uri");
-       args.push_back("123/abc");
+       args.push_back("/123/abc");
        result = this->check_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, true);
 
     cout << "[22]------------------------------------------" << endl;
-       // unit_test[22] オプション文字列"-F","--forwarded-for" の場合,チェック結果フラグにTRUEを設定する
+       // unit_test[22] オプション文字列"-F"、"--forwarded-for" の場合、チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("-F");
        args.push_back("--forwarded-for");
@@ -491,8 +494,8 @@ void check_parameter_test() {
        BOOST_CHECK_EQUAL(result.flag, true);
 
     cout << "[23]------------------------------------------" << endl;
-       // unit_test[23] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
-       // unit_test[23] test data:オプション文字列"-F","-S" の場合
+       // unit_test[23] チェック結果フラグにFALSEを設定するチェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
+       // unit_test[23] test data:オプション文字列"-F""-S" の場合
        args.clear();
        args.push_back("-F");
        args.push_back("-S");
@@ -501,8 +504,8 @@ void check_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "You have to set option value '-S/--sorry-uri'.");
 
     cout << "[24]------------------------------------------" << endl;
-       // unit_test[24] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
-       // unit_test[24] test data:オプション文字列"--sorry-uri","--forwarded-for" の場合
+       // unit_test[24] チェック結果フラグにFALSEを設定するチェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
+       // unit_test[24] test data:オプション文字列"--sorry-uri""--forwarded-for" の場合
        args.clear();
        args.push_back("--sorry-uri");
        args.push_back("--forwarded-for");
@@ -511,8 +514,8 @@ void check_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "You have to set option value '-S/--sorry-uri'.");
 
     cout << "[25]------------------------------------------" << endl;
-       // unit_test[25] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Option error."を設定する
-       // unit_test[25] test data:オプション文字列"--forwarded-for","-R"の場合
+       // unit_test[25] チェック結果フラグにFALSEを設定するチェック結果メッセージに"Option error."を設定する
+       // unit_test[25] test data:オプション文字列"--forwarded-for""-R"の場合
        args.clear();
        args.push_back("--forwarded-for");
        args.push_back("-R");
@@ -521,8 +524,8 @@ void check_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "Option error.");
 
     cout << "[26]------------------------------------------" << endl;
-       // unit_test[26] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
-       // unit_test[26] test data:オプション文字列"S","-R"の場合
+       // unit_test[26] チェック結果フラグにFALSEを設定するチェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
+       // unit_test[26] test data:オプション文字列"S""-R"の場合
        args.clear();
        args.push_back("-S");
        args.push_back("-R");
@@ -537,19 +540,19 @@ void set_parameter_test() {
        vector<string> args;
 
     cout << "[27]------------------------------------------" << endl;
-       // unit_test[27] オプション文字列にデータなし場合,チェック結果フラグにTRUEを設定する
+       // unit_test[27] オプション文字列にデータなし場合チェック結果フラグにTRUEを設定する
        result = this->set_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, true);
 
     cout << "[28]------------------------------------------" << endl;
-       // unit_test[28] オプション文字列 = "-F"の場合,送信元設定指示設定フラグをON,チェック結果フラグにTRUEを設定する
+       // unit_test[28] オプション文字列 = "-F"の場合送信元設定指示設定フラグをON,チェック結果フラグにTRUEを設定する
        args.push_back("-F");
        result = this->set_parameter(args);
        BOOST_CHECK_EQUAL(this->forwarded_for, FORWARDED_FOR_ON);
        BOOST_CHECK_EQUAL(result.flag, true);
 
     cout << "[29]------------------------------------------" << endl;
-       // unit_test[29] オプション文字列 = "--forwarded-for"の場合,送信元設定指示設定フラグをON,チェック結果フラグにTRUEを設定する
+       // unit_test[29] オプション文字列 = "--forwarded-for"の場合送信元設定指示設定フラグをON,チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("--forwarded-for");
        result = this->set_parameter(args);
@@ -557,30 +560,30 @@ void set_parameter_test() {
        BOOST_CHECK_EQUAL(result.flag, true);
 
     cout << "[30]------------------------------------------" << endl;
-       // unit_test[30] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-S/--sorry-uri' option value '%s' is too long."(%sは次要素)を設定する
-       // unit_test[30] test data:オプション文字列 = "-S" sorry-uri設定フラグ = OFF 次要素の文字列長 > 127
+       // unit_test[30] チェック結果フラグにFALSEを設定するチェック結果メッセージに"'-S/--sorry-uri' option value '%s' is too long."(%sは次要素)を設定する
+       // unit_test[30] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = OFF、次要素の文字列長 > 127の場合
        args.clear();
        args.push_back("-S");
-       args.push_back("abcdef1234567890/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/");
+       args.push_back("/bcdef1234567890/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/");
        result = this->set_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, false);
-       BOOST_CHECK_EQUAL(result.message, "'-S/--sorry-uri' option value 'abcdef1234567890/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/' is too long.");
+       BOOST_CHECK_EQUAL(result.message, "'-S/--sorry-uri' option value '/bcdef1234567890/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/' is too long.");
 
     cout << "[31]------------------------------------------" << endl;
-       // unit_test[31] sorryURI設定フラグをON チェック結果メッセージに"Cannot set multiple option ''-S/--sorry-uri'."を設定する
-       // unit_test[31] test data:オプション文字列 = "-S" sorry-uri設定フラグ = OFF 次要素の文字列長 = 127 チェックOKの場合
+       // unit_test[31] sorry-uri設定フラグをON、チェック結果メッセージに"Cannot set multiple option '-S/--sorry-uri'."を設定する
+       // unit_test[31] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = OFF、次要素の文字列長 = 127 チェックOKの場合
        args.clear();
        args.push_back("-S");
-       args.push_back("abcdef123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/");
+       args.push_back("/bcdef123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/");
        args.push_back("--sorry-uri");
-       args.push_back("abcdef123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/");
+       args.push_back("/bcdef123456789/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/");
        result = this->set_parameter(args);
        BOOST_CHECK_EQUAL(result.message, "Cannot set multiple option '-S/--sorry-uri'.");
        BOOST_CHECK_EQUAL(result.flag, false);
 
     cout << "[32]------------------------------------------" << endl;
-       // unit_test[32] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-S/--sorry-uri' option value '%s' is not a valid URI."(%sは次要素)を設定する
-       // unit_test[32] test data:オプション文字列 = "-S" sorry-uri設定フラグ = OFF 次要素の文字列長 = 127 チェックNGの場合
+       // unit_test[32] チェック結果フラグにFALSEを設定するチェック結果メッセージに"'-S/--sorry-uri' option value '%s' is not a valid URI."(%sは次要素)を設定する
+       // unit_test[32] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = OFF、次要素の文字列長 = 127 チェックNGの場合
        args.clear();
        args.push_back("-S");
        args.push_back("abcdef12345\r\n/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/");
@@ -589,19 +592,19 @@ void set_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "'-S/--sorry-uri' option value 'abcdef12345\r\n/0123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/123456789/' is not a valid URI.");
 
     cout << "[33]------------------------------------------" << endl;
-       // unit_test[33] sorryURI設定フラグをON チェック結果メッセージに"Cannot set multiple option ''-S/--sorry-uri'."を設定する
-       // unit_test[33] test data:オプション文字列 = "-S" sorry-uri設定フラグ = OFF 次要素の文字列長 < 127 チェックOKの場合
+       // unit_test[33] sorry-uri設定フラグをON、チェック結果メッセージに"Cannot set multiple option '-S/--sorry-uri'."を設定する
+       // unit_test[33] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = OFF、次要素の文字列長 < 127 チェックOKの場合
        args.clear();
        args.push_back("-S");
-       args.push_back("abc/123");
+       args.push_back("/abc/123");
        args.push_back("--sorry-uri");
-       args.push_back("123/555");
+       args.push_back("/123/555");
        result = this->set_parameter(args);
        BOOST_CHECK_EQUAL(result.message, "Cannot set multiple option '-S/--sorry-uri'.");
        BOOST_CHECK_EQUAL(result.flag, false);
 
     cout << "[34]------------------------------------------" << endl;
-       // unit_test[34] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-S/--sorry-uri' option value '%s' is not a valid URI."(%sは次要素)を設定する
+       // unit_test[34] チェック結果フラグにFALSEを設定するチェック結果メッセージに"'-S/--sorry-uri' option value '%s' is not a valid URI."(%sは次要素)を設定する
        // unit_test[34] test data:次要素の文字列長 < 127 チェックNGの場合
        args.clear();
        args.push_back("-S");
@@ -611,8 +614,8 @@ void set_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "'-S/--sorry-uri' option value 'abc\r\n' is not a valid URI.");
 
     cout << "[35]------------------------------------------" << endl;
-       // unit_test[35] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to set  option value ''-S/--sorry-uri'."を設定する
-       // unit_test[35] test data:オプション文字列 = "-S" sorry-uri設定フラグ = OFF 次要素が存在しない場合
+       // unit_test[35] チェック結果フラグにFALSEを設定する、チェック結果メッセージに"You have to set  option value '-S/--sorry-uri'."を設定する
+       // unit_test[35] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = OFF、次要素が存在しない場合
        args.clear();
        args.push_back("-S");
        result = this->set_parameter(args);
@@ -620,20 +623,20 @@ void set_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "You have to set option value '-S/--sorry-uri'.");
 
     cout << "[36]------------------------------------------" << endl;
-       // unit_test[36] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option ''-S/--sorry-uri'."を設定する
-       // unit_test[36] test data:オプション文字列 = "-S" sorry-uri設定フラグ = ON
+       // unit_test[36] チェック結果フラグにFALSEを設定するチェック結果メッセージに"Cannot set multiple option ''-S/--sorry-uri'."を設定する
+       // unit_test[36] test data:オプション文字列 = "-S"、sorry-uri設定フラグ = ONの場合
        args.clear();
        args.push_back("-S");
-       args.push_back("abc/123");
+       args.push_back("/abc/123");
        args.push_back("-S");
-       args.push_back("abc/123");
+       args.push_back("/abc/123");
        result = this->set_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, false);
        BOOST_CHECK_EQUAL(result.message, "Cannot set multiple option '-S/--sorry-uri'.");
 
     cout << "[37]------------------------------------------" << endl;
-       // unit_test[37] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Option error."を設定する
-       // unit_test[37] test data:オプション文字列"-F","-S" 以外の場合
+       // unit_test[37] チェック結果フラグにFALSEを設定するチェック結果メッセージに"Option error."を設定する
+       // unit_test[37] test data:オプション文字列"-F""-S" 以外の場合
        args.clear();
        args.push_back("-D");
        result = this->set_parameter(args);
@@ -642,38 +645,38 @@ void set_parameter_test() {
 
     cout << "[38]------------------------------------------" << endl;
        // unit_test[38] 送信元設定指示に0を設定する
-       // unit_test[38] test data:ã\83\81ã\82§ã\83\83ã\82¯çµ\90æ\9e\9cã\83\95ã\83©ã\82° = TRUEã\81®å ´å\90\88ã\80\81é\80\81ä¿¡å\85\83設å®\9aæ\8c\87示設å®\9aã\83\95ã\83©ã\82° = OFF
+       // unit_test[38] test data:ã\83\81ã\82§ã\83\83ã\82¯çµ\90æ\9e\9cã\83\95ã\83©ã\82° = TRUEã\80\81é\80\81ä¿¡å\85\83設å®\9aæ\8c\87示設å®\9aã\83\95ã\83©ã\82° = OFFã\81®å ´å\90\88
        args.clear();
        args.push_back("-S");
-       args.push_back("abc/123");
+       args.push_back("/abc/123");
        this->set_parameter(args);
        BOOST_CHECK_EQUAL(this->forwarded_for, FORWARDED_FOR_OFF);
 
     cout << "[39]------------------------------------------" << endl;
-       // unit_test[39] チェック結果フラグにTRUEを設定する,送信元設定指示に1を設定する
-       // unit_test[39] test data:オプション文字列"--forwarded-for","-S" の場合
+       // unit_test[39] チェック結果フラグにTRUEを設定する送信元設定指示に1を設定する
+       // unit_test[39] test data:オプション文字列"--forwarded-for""-S" の場合
        args.clear();
        args.push_back("--forwarded-for");
        args.push_back("-S");
-       args.push_back("abc/123");
+       args.push_back("/abc/123");
        result = this->set_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, true);
        BOOST_CHECK_EQUAL(this->forwarded_for, FORWARDED_FOR_ON);
 
     cout << "[40]------------------------------------------" << endl;
-       // unit_test[40] チェック結果フラグにTRUEを設定する,送信元設定指示に1を設定する
-       // unit_test[40] test data:オプション文字列"--sorry-uri","-F" の場合
+       // unit_test[40] チェック結果フラグにTRUEを設定する送信元設定指示に1を設定する
+       // unit_test[40] test data:オプション文字列"--sorry-uri""-F" の場合
        args.clear();
        args.push_back("--sorry-uri");
-       args.push_back("abc/123");
+       args.push_back("/abc/123");
        args.push_back("-F");
        result = this->set_parameter(args);
        BOOST_CHECK_EQUAL(result.flag, true);
        BOOST_CHECK_EQUAL(this->forwarded_for, FORWARDED_FOR_ON);
 
     cout << "[41]------------------------------------------" << endl;
-       // unit_test[41] チェック結果フラグにTRUEを設定する,送信元設定指示に1を設定する
-       // unit_test[41] test data:オプション文字列"--forwarded-for","-F" の場合
+       // unit_test[41] チェック結果フラグにTRUEを設定する送信元設定指示に1を設定する
+       // unit_test[41] test data:オプション文字列"--forwarded-for""-F" の場合
        args.clear();
        args.push_back("--forwarded-for");
        args.push_back("-F");
@@ -682,8 +685,8 @@ void set_parameter_test() {
        BOOST_CHECK_EQUAL(this->forwarded_for, FORWARDED_FOR_ON);
 
     cout << "[42]------------------------------------------" << endl;
-       // unit_test[42] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
-       // unit_test[42] test data:オプション文字列"-F","-S" の場合
+       // unit_test[42] チェック結果フラグにFALSEを設定するチェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
+       // unit_test[42] test data:オプション文字列"-F""-S" の場合
        args.clear();
        args.push_back("-F");
        args.push_back("-S");
@@ -692,8 +695,8 @@ void set_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "You have to set option value '-S/--sorry-uri'.");
 
     cout << "[43]------------------------------------------" << endl;
-       // unit_test[43] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
-       // unit_test[43] test data:オプション文字列"--sorry-uri","--forwarded-for" の場合
+       // unit_test[43] チェック結果フラグにFALSEを設定するチェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
+       // unit_test[43] test data:オプション文字列"--sorry-uri""--forwarded-for" の場合
        args.clear();
        args.push_back("--sorry-uri");
        args.push_back("--forwarded-for");
@@ -702,8 +705,8 @@ void set_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "You have to set option value '-S/--sorry-uri'.");
 
     cout << "[44]------------------------------------------" << endl;
-       // unit_test[44] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Option error."を設定する
-       // unit_test[44] test data:オプション文字列"--forwarded-for","-R"の場合
+       // unit_test[44] チェック結果フラグにFALSEを設定するチェック結果メッセージに"Option error."を設定する
+       // unit_test[44] test data:オプション文字列"--forwarded-for""-R"の場合
        args.clear();
        args.push_back("--forwarded-for");
        args.push_back("-R");
@@ -712,8 +715,8 @@ void set_parameter_test() {
        BOOST_CHECK_EQUAL(result.message, "Option error.");
 
     cout << "[45]------------------------------------------" << endl;
-       // unit_test[45] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
-       // unit_test[45] test data:オプション文字列"-S","-R"の場合
+       // unit_test[45] チェック結果フラグにFALSEを設定するチェック結果メッセージに"You have to set option value '-S/--sorry-uri'."を設定する
+       // unit_test[45] test data:オプション文字列"-S""-R"の場合
        args.clear();
        args.push_back("-S");
        args.push_back("-R");
@@ -750,6 +753,7 @@ void register_schedule_tcp_test() {
     // unit_test[48]  Client振り分け処理関数のテスト
     tcp_schedule_func_type  func = schedule_tcp_stb;
     this->register_schedule(func);
+    BOOST_CHECK_EQUAL(this->schedule_tcp, schedule_tcp_stb);
 
     cout << "[49]------------------------------------------" << endl;
     // unit_test[49]  Client振り分け処理関数空のテスト
@@ -796,7 +800,7 @@ void handle_session_initialize_test() {
     BOOST_CHECK_EQUAL(data->client_endpoint_tcp, ep_tcp);
 
     cout << "[52]------------------------------------------" << endl;
-    //unit_test[52]  下りスレッドマップ空のテスト
+    //unit_test[52]  下りスレッドマップテスト
     iter = this->session_thread_data_map.find(down_thread.get_id());
     bret = (iter != this->session_thread_data_map.end());
     BOOST_REQUIRE_EQUAL(bret, true);
@@ -891,7 +895,7 @@ void handle_accept_test() {
 
 //handle_client_recv 郎希倹
 void handle_client_recv_test(){
-    size_t request_len;
+    size_t request_len = USE_BUFFER_SIZE;
     EVENT_TAG ret;
     boost::array<char, MAX_BUFFER_SIZE> request;
     send_status send_status_temp;
@@ -933,20 +937,10 @@ void handle_client_recv_test(){
 
     this->session_thread_data_map.clear();
     this->session_thread_data_map[boost::this_thread::get_id()] = psession_thread_data;
-    std::map<boost::asio::ip::tcp::endpoint, recive_data>::iterator it =
-            psession_thread_data->recive_data_map.find(endpoint_local);
-    recive_data& recive_data_global = it->second;
 
     cout << "[60]------------------------------------------" << endl;
     // unit_test[60] endpoint対応のrecive_dataなし
     // requestを設定する
-    recive_data_global.recive_buffer_max_size = USE_BUFFER_SIZE;
-    recive_data_global.recive_buffer_rest_size = USE_BUFFER_SIZE;
-    delete[] recive_data_global.recive_buffer1;
-    delete[] recive_data_global.recive_buffer2;
-    recive_data_global.recive_buffer1 = new char[recive_data_global.recive_buffer_max_size];
-    recive_data_global.recive_buffer2 = new char[recive_data_global.recive_buffer_max_size];
-    recive_data_global.recive_buffer = recive_data_global.recive_buffer1;
     psession_thread_data->recive_data_map.clear();
     psession_thread_data->recive_data_map[endpoint_not_used] = recive_data_tmp;
 
@@ -957,8 +951,9 @@ void handle_client_recv_test(){
 
     psession_thread_data->recive_data_map.clear();
     psession_thread_data->recive_data_map[endpoint_local] = recive_data_tmp;
-    it = psession_thread_data->recive_data_map.find(endpoint_local);
-    recive_data_global = it->second;
+    std::map<boost::asio::ip::tcp::endpoint, recive_data>::iterator it =
+                psession_thread_data->recive_data_map.find(endpoint_local);
+    recive_data& recive_data_global = it->second;
 
     cout << "[61]------------------------------------------" << endl;
     // unit_test[61] recive_data.recive_buffer=Null
@@ -1016,9 +1011,11 @@ void handle_client_recv_test(){
     memcpy(request.c_array(), "GET / HTTP/1.0\r\nCookie: monkey=123456789012345\r\n\r\n", REQUEST_BUFFER_SIZE);
     request_len = REQUEST_BUFFER_SIZE;
 
+    this->getloglevel = &stb_getloglevel_is_none;
     new_install();
     ret = handle_client_recv(boost::this_thread::get_id(), request, request_len);
     new_uninstall();
+    this->getloglevel = &stb_getloglevel;
     BOOST_CHECK_EQUAL(ret, FINALIZE);
 
     cout << "[65]------------------------------------------" << endl;
@@ -1557,24 +1554,25 @@ void handle_client_recv_test(){
     recive_data_global.send_status_list.clear();
 
     memcpy(request.c_array(), "GET / HTTP/1.0\r\nHOST: 192.168.120.1\r\nCookie: "
-            "monkey=1\r\nContent-Length: 43\r\n\r\n0123456789012345678901234567890123456789012", 120);
-    request_len = 120;
+            "monkey=1\r\nContent-Length: 65455\r\n\r\n", 80);
+    memset(request.c_array() + 80, 'x', 65455);
+    request_len = MAX_BUFFER_SIZE;
 
     ret = handle_client_recv(boost::this_thread::get_id(), request, request_len);
 
     BOOST_CHECK_EQUAL(ret, REALSERVER_CONNECT);
     BOOST_CHECK_EQUAL(recive_data_global.recive_buffer, recive_data_global.recive_buffer1);
-    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, 120u);
+    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, MAX_BUFFER_SIZE);
     BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_rest_size, 0u);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 1u);
 
     //メモリの内容をチェックする
-    int cmp_ret = memcmp(request.c_array(), recive_data_global.recive_buffer, 120u);
+    int cmp_ret = memcmp(request.c_array(), recive_data_global.recive_buffer, MAX_BUFFER_SIZE);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->status, SEND_OK);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_division, EDIT_DIVISION_EDIT);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_rest_size, 0u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_possible_size, 120u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_possible_size, MAX_BUFFER_SIZE);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_offset, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->unsend_size, 0u);
 
@@ -1602,20 +1600,21 @@ void handle_client_recv_test(){
     memcpy(recive_data_global.recive_buffer, "GET / HTTP/1.0\r\nCook", 20);
 
     //リクエストデータ
-    memcpy(request.c_array(), "ie: monkey=1234567890123456789012345678901234567890123456789012345678901", 72);
-    request_len = 72;
+    memcpy(request.c_array(), "ie: monkey=", 11);
+    memset(request.c_array(), 'x', MAX_BUFFER_SIZE - 11);
+    request_len = MAX_BUFFER_SIZE;
 
     ret = handle_client_recv(boost::this_thread::get_id(), request, request_len);
 
     BOOST_CHECK_EQUAL(ret, CLIENT_RECV);
     BOOST_CHECK_EQUAL(recive_data_global.recive_buffer, recive_data_global.recive_buffer1);
-    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, 92u);
+    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, MAX_BUFFER_SIZE + 20);
     BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_rest_size, 0u);
 
     //メモリの内容をチェックする
     cmp_ret = memcmp(recive_data_global.recive_buffer, "GET / HTTP/1.0\r\nCook", 20);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
-    cmp_ret = memcmp(recive_data_global.recive_buffer + 20, request.c_array(), 72);
+    cmp_ret = memcmp(recive_data_global.recive_buffer + 20, request.c_array(), MAX_BUFFER_SIZE);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
 
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 1u);
@@ -1624,7 +1623,7 @@ void handle_client_recv_test(){
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_rest_size, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_possible_size, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_offset, 0u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->unsend_size, 92u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->unsend_size, MAX_BUFFER_SIZE + 20);
 
     cout << "[107]------------------------------------------" << endl;
     // unit_test[107] データバッファ残サイズ < リクエストデータサイズ
@@ -2930,7 +2929,7 @@ void handle_realserver_select_tcp_test(){
     cout << "[149]------------------------------------------" << endl;
     //unit_test[149] 異常系 functionがなし場合遷移先ステータスにFINALIZEを設定する
     //register function
-    tcp_schedule_func_type func_err1 = 0;
+    tcp_schedule_func_type func_err1 = NULL;
     this->register_schedule(func_err1);
     boost::asio::ip::tcp::endpoint ep_err1;
 
@@ -2945,7 +2944,7 @@ void handle_realserver_select_tcp_test(){
     //register function
     tcp_schedule_func_type func_cerr2 = &schedule_tcp_determinate;
     this->register_schedule(func_cerr2);
-    this->session_thread_data_map[boost::this_thread::get_id()] = 0;
+    this->session_thread_data_map[boost::this_thread::get_id()] = NULL;
     boost::asio::ip::tcp::endpoint ep_err2;
     ret = this->handle_realserver_select(boost::this_thread::get_id(), ep_err2);
 
@@ -3013,7 +3012,7 @@ void handle_realserver_select_tcp_test(){
 void handle_realserver_select_udp_test(){
 
     cout << "[154]------------------------------------------" << endl;
-    //unit_test[154] handle_realserver_select_udp_test return STOP
+    //unit_test[154] handle_realserver_select_udp_test 戻り値が「STOP」に設定する。
     boost::asio::ip::udp::endpoint ep;
     boost::array<char, MAX_BUFFER_SIZE> sbf;
     std::size_t d;
@@ -3025,7 +3024,7 @@ void handle_realserver_select_udp_test(){
 
 //handle_realserver_connect 郎希倹
 void handle_realserver_connect_test(){
-    size_t send_buffer_len;
+    size_t send_buffer_len = USE_BUFFER_SIZE;
     EVENT_TAG ret;
     boost::array<char, MAX_BUFFER_SIZE> send_buffer;
     send_status send_status_temp;
@@ -3066,29 +3065,20 @@ void handle_realserver_connect_test(){
 
     this->session_thread_data_map.clear();
     this->session_thread_data_map[boost::this_thread::get_id()] = psession_thread_data;
-    std::map<boost::asio::ip::tcp::endpoint, recive_data>::iterator it =
-            psession_thread_data->recive_data_map.find(endpoint_local);
-    recive_data& recive_data_global = it->second;
 
     cout << "[157]------------------------------------------" << endl;
     // unit_test[157] endpoint対応のrecive_dataなし
-    recive_data_global.recive_buffer_max_size = USE_BUFFER_SIZE;
-    recive_data_global.recive_buffer_rest_size = USE_BUFFER_SIZE;
-    delete[] recive_data_global.recive_buffer1;
-    delete[] recive_data_global.recive_buffer2;
-    recive_data_global.recive_buffer1 = new char[recive_data_global.recive_buffer_max_size];
-    recive_data_global.recive_buffer2 = new char[recive_data_global.recive_buffer_max_size];
-    recive_data_global.recive_buffer = recive_data_global.recive_buffer1;
     psession_thread_data->recive_data_map.clear();
     send_buffer_len = 0;
     memset(send_buffer.c_array(), 0, MAX_BUFFER_SIZE);
 
     ret = handle_realserver_connect(boost::this_thread::get_id(), send_buffer, send_buffer_len);
     BOOST_CHECK_EQUAL(ret, FINALIZE);
-    psession_thread_data->recive_data_map[endpoint_local] = recive_data_tmp;
 
-    it = psession_thread_data->recive_data_map.find(endpoint_local);
-    recive_data_global = it->second;
+    psession_thread_data->recive_data_map[endpoint_local] = recive_data_tmp;
+    std::map<boost::asio::ip::tcp::endpoint, recive_data>::iterator it =
+                psession_thread_data->recive_data_map.find(endpoint_local);
+    recive_data& recive_data_global = it->second;
 
     cout << "[158]------------------------------------------" << endl;
     // unit_test[158] recive_data.recive_buffer=Null
@@ -4095,7 +4085,7 @@ void handle_realserver_connection_fail_test(){
     //unit_test[181] 異常系 session_thread_data_map中にThreadID対応のデータがない
     this->session_thread_data_map.clear();
 
-    this->session_thread_data_map[boost::this_thread::get_id()] = 0;
+    this->session_thread_data_map[boost::this_thread::get_id()] = NULL;
     boost::asio::ip::tcp::endpoint ep_err1;
     ret = this->handle_realserver_connection_fail(boost::this_thread::get_id(), ep_err1);
 
@@ -4103,7 +4093,7 @@ void handle_realserver_connection_fail_test(){
     BOOST_CHECK_EQUAL(ret, FINALIZE);
 
     cout << "[182]------------------------------------------" << endl;
-    //unit_test[182] 異常系 session_thread_data_map中にThreadIDなし場合のテストない
+    //unit_test[182] 異常系 session_thread_data_map中にThreadIDなし場合のテスト
     this->session_thread_data_map.clear();
 
     ret = this->handle_realserver_connection_fail(boost::this_thread::get_id(), ep_err1);
@@ -4168,7 +4158,7 @@ void handle_realserver_send_test(){
     BOOST_CHECK_EQUAL(event_status, FINALIZE);
 
     cout << "[188]------------------------------------------" << endl;
-    //unit_test[188] 送信状態->SEND_OK,送信可能データサイズ > 0/編集データリスト=0/送信可能データあり
+    //unit_test[188] 送信状態->SEND_OK,送信可能データサイズ > 0/送信可能データあり
     //unit_test[188] test data: 送信状態に送信待を設定,送信データオフセットに送信済データサイズを加算する,送信済データサイズに0を設定する,遷移先ステータスを設定する
     real_send_status.send_possible_size = 1u;//送信可能データサイズ > 0
     real_send_status.edit_data_list.clear();//編集データリスト=0
@@ -4196,14 +4186,9 @@ void handle_realserver_send_test(){
     BOOST_CHECK_EQUAL(end_size,0u); //送信済データサイズに0を設定する
 
     cout << "[189]------------------------------------------" << endl;
-    //unit_test[189] 送信状態->SEND_OK,送信可能データサイズ > 0/編集データリスト=1/送信可能データあり
-    //unit_test[189] test data: 送信状態に送信待を設定,送信データオフセットに送信済データサイズを加算する,送信済データサイズに0を設定する,遷移先ステータスを設定する
-    real_data.insert_posission = 1u;
-    real_send_status.send_possible_size = 1u;//送信可能データサイズ > 0
-    real_send_status.edit_data_list.push_back(real_data);//編集データリスト=1
-    real_send_status.send_offset = 0u;
-    real_send_status.send_end_size = 1u;
-    real_send_status.status = SEND_OK;//送信状態->SEND_OK
+    //unit_test[189] 送信状態->SEND_NG
+    //unit_test[189] test data:遷移先ステータスを設定する
+    real_send_status.status = SEND_NG;//送信状態->SEND_NG
     real_recive_data.send_status_list.clear();
     real_recive_data.send_status_list.push_back(real_send_status);
     thread_data.recive_data_map.clear();
@@ -4213,30 +4198,13 @@ void handle_realserver_send_test(){
     this->session_thread_data_map.clear();
     this->session_thread_data_map.insert(std::pair<boost::thread::id, session_thread_data_sessionless*>(boost::this_thread::get_id(),&thread_data));
     event_status = this->handle_realserver_send(boost::this_thread::get_id());
-    send_status = thread_data.recive_data_map[endpoint].send_status_list.front().status;
-    size_t posission = thread_data.recive_data_map[endpoint].send_status_list.front().edit_data_list.front().insert_posission;
-    offset = thread_data.recive_data_map[endpoint].send_status_list.front().send_offset;
-    end_size = thread_data.recive_data_map[endpoint].send_status_list.front().send_end_size;
 
-    BOOST_CHECK_EQUAL(event_status, REALSERVER_CONNECT); //遷移先ステータスを設定する
-    BOOST_CHECK_EQUAL(send_status, SEND_OK); //送信状態に送信待を設定する
-    BOOST_CHECK_EQUAL(posission,0u); //編集データ設定位置から送信済データサイズを減算する
-    BOOST_CHECK_EQUAL(offset,1u); //送信データオフセットに送信済データサイズを加算する
-    BOOST_CHECK_EQUAL(end_size,0u); //送信済データサイズに0を設定する
+    BOOST_CHECK_EQUAL(event_status, FINALIZE); //遷移先ステータスを設定する
 
     cout << "[190]------------------------------------------" << endl;
-    //unit_test[190] 送信状態->SEND_OK,送信可能データサイズ > 0/編集データリスト=2/送信可能データあり
-    //unit_test[190] test data: 送信状態に送信待を設定,送信データオフセットに送信済データサイズを加算する,送信済データサイズに0を設定する,遷移先ステータスを設定する
-    real_data.insert_posission = 1u;
-    real_data1.insert_posission = 2u;
-    real_send_status.send_possible_size = 1u;//送信可能データサイズ > 0
-    real_send_status.status = SEND_OK; //送信状態->SEND_OK
-    //編集データリスト=2
-    real_send_status.edit_data_list.clear();
-    real_send_status.edit_data_list.push_back(real_data);
-    real_send_status.edit_data_list.push_back(real_data1);
-    real_send_status.send_offset = 0u;
-    real_send_status.send_end_size = 1u;
+    //unit_test[190] 送信状態->SEND_CONTINUE
+    //unit_test[190] test data:遷移先ステータスを設定する
+    real_send_status.status = SEND_CONTINUE; //送信状態->SEND_CONTINUE
     real_recive_data.send_status_list.clear();
     real_recive_data.send_status_list.push_back(real_send_status);
 
@@ -4247,18 +4215,8 @@ void handle_realserver_send_test(){
     this->session_thread_data_map.clear();
     this->session_thread_data_map.insert(std::pair<boost::thread::id, session_thread_data_sessionless*>(boost::this_thread::get_id(),&thread_data));
     event_status = this->handle_realserver_send(boost::this_thread::get_id());
-    send_status = thread_data.recive_data_map[endpoint].send_status_list.front().status;
-    size_t posission1 = thread_data.recive_data_map[endpoint].send_status_list.front().edit_data_list.front().insert_posission;
-    size_t posission2 = thread_data.recive_data_map[endpoint].send_status_list.front().edit_data_list.back().insert_posission;
-    offset = thread_data.recive_data_map[endpoint].send_status_list.front().send_offset;
-    end_size = thread_data.recive_data_map[endpoint].send_status_list.front().send_end_size;
 
-    BOOST_CHECK_EQUAL(event_status, REALSERVER_CONNECT); //遷移先ステータスを設定する
-    BOOST_CHECK_EQUAL(send_status, SEND_OK); //送信状態に送信待を設定する
-    BOOST_CHECK_EQUAL(posission1,0u); //編集データ設定位置から送信済データサイズを減算する
-    BOOST_CHECK_EQUAL(posission2,1u);
-    BOOST_CHECK_EQUAL(offset,1u); //送信データオフセットに送信済データサイズを加算する
-    BOOST_CHECK_EQUAL(end_size,0u);//送信済データサイズに0を設定する
+    BOOST_CHECK_EQUAL(event_status, FINALIZE); //遷移先ステータスを設定する
 
     cout << "[191]------------------------------------------" << endl;
     //unit_test[191] 送信状態->SEND_OK,送信可能データサイズ = 0/送信データ残サイズ > 0/送信可能データなし
@@ -4533,15 +4491,15 @@ void handle_sorryserver_select_test(){
     BOOST_CHECK_EQUAL(ret, SORRYSERVER_CONNECT);
 
     cout << "[203]------------------------------------------" << endl;
-    //unit_test[203]   session_thread_data_map中ã\81«ä¸\8aã\82\8aã\82¹ã\83¬ã\83\83ã\83\89中ã\81«ThreadID対å¿\9cã\81®ã\83\87ã\83¼ã\82¿ã\81\8cã\81\82ã\82\8aã\81¾ã\81\9bã\82\93
-    this->session_thread_data_map[boost::this_thread::get_id()] = 0;
+    //unit_test[203]   session_thread_data_map中ã\81«ä¸\8aã\82\8aã\82¹ã\83¬ã\83\83ã\83\89中ã\81«ThreadID対å¿\9cã\81®ã\83\87ã\83¼ã\82¿ã\81\8cã\81ªã\81\84
+    this->session_thread_data_map[boost::this_thread::get_id()] = NULL;
     ret = this->handle_sorryserver_select(boost::this_thread::get_id(), ep);
 
     //遷移先ステータスを設定する status = FINALIZE
     BOOST_CHECK_EQUAL(ret, FINALIZE);
 
     cout << "[204]------------------------------------------" << endl;
-    //unit_test[204]   session_thread_data_map中に上りスレッドのデータ無し場合のテストない
+    //unit_test[204]   session_thread_data_map中に上りスレッドのデータ無し場合のテスト
     this->session_thread_data_map.erase(boost::this_thread::get_id());
     ret = this->handle_sorryserver_select(boost::this_thread::get_id(), ep);
 
@@ -4549,7 +4507,7 @@ void handle_sorryserver_select_test(){
     BOOST_CHECK_EQUAL(ret, FINALIZE);
 
     cout << "[205]------------------------------------------" << endl;
-    //unit_test[205]   session_thread_data_map中に上りスレッドと下りスレッドのデータ無し場合のテストない
+    //unit_test[205]   session_thread_data_map中に上りスレッドと下りスレッドのデータ無し場合のテスト
     this->session_thread_data_map.clear();
     ret = this->handle_sorryserver_select(boost::this_thread::get_id(), ep);
 
@@ -4557,7 +4515,7 @@ void handle_sorryserver_select_test(){
     BOOST_CHECK_EQUAL(ret, FINALIZE);
 
     cout << "[206]------------------------------------------" << endl;
-    //unit_test[206]   session_thread_data_map中に下りスレッドのデータ無し場合のテストない
+    //unit_test[206]   session_thread_data_map中に下りスレッドのデータ無し場合のテスト
     this->session_thread_data_map.clear();
     this->session_thread_data_map[boost::this_thread::get_id()] = &dataup;
     ret = this->handle_sorryserver_select(boost::this_thread::get_id(), ep);
@@ -4571,7 +4529,7 @@ void handle_sorryserver_select_test(){
 
 //handle_sorryserver_connect 郎希倹
 void handle_sorryserver_connect_test(){
-    size_t send_buffer_len;
+    size_t send_buffer_len = USE_BUFFER_SIZE;
     EVENT_TAG ret;
     boost::array<char, MAX_BUFFER_SIZE> send_buffer;
     send_status send_status_temp;
@@ -4613,29 +4571,20 @@ void handle_sorryserver_connect_test(){
 
     this->session_thread_data_map.clear();
     this->session_thread_data_map[boost::this_thread::get_id()] = psession_thread_data;
-    std::map<boost::asio::ip::tcp::endpoint, recive_data>::iterator it =
-            psession_thread_data->recive_data_map.find(endpoint_local);
-    recive_data& recive_data_global = it->second;
 
     cout << "[209]------------------------------------------" << endl;
     // unit_test[209] endpoint対応のrecive_dataなし
-    recive_data_global.recive_buffer_max_size = USE_BUFFER_SIZE;
-    recive_data_global.recive_buffer_rest_size = USE_BUFFER_SIZE;
-    delete[] recive_data_global.recive_buffer1;
-    delete[] recive_data_global.recive_buffer2;
-    recive_data_global.recive_buffer1 = new char[recive_data_global.recive_buffer_max_size];
-    recive_data_global.recive_buffer2 = new char[recive_data_global.recive_buffer_max_size];
-    recive_data_global.recive_buffer = recive_data_global.recive_buffer1;
     psession_thread_data->recive_data_map.clear();
     send_buffer_len = 0;
     memset(send_buffer.c_array(), 0, MAX_BUFFER_SIZE);
 
     ret = handle_sorryserver_connect(boost::this_thread::get_id(), send_buffer, send_buffer_len);
     BOOST_CHECK_EQUAL(ret, FINALIZE);
-    psession_thread_data->recive_data_map[endpoint_local] = recive_data_tmp;
 
-    it = psession_thread_data->recive_data_map.find(endpoint_local);
-    recive_data_global = it->second;
+    psession_thread_data->recive_data_map[endpoint_local] = recive_data_tmp;
+    std::map<boost::asio::ip::tcp::endpoint, recive_data>::iterator it =
+                psession_thread_data->recive_data_map.find(endpoint_local);
+    recive_data& recive_data_global = it->second;
 
     cout << "[210]------------------------------------------" << endl;
     // unit_test[210] recive_data.recive_buffer=Null
@@ -4684,15 +4633,15 @@ void handle_sorryserver_connect_test(){
     send_status_temp.send_offset = 0;
     send_status_temp.send_end_size = 0;
     send_status_temp.edit_division = EDIT_DIVISION_NO_EDIT;
-    send_status_temp.send_possible_size = 30;
+    send_status_temp.send_possible_size = 40;
     recive_data_global.send_status_list.push_back(send_status_temp);
 
     init_send_status(send_status_temp);
     send_status_temp.status = SEND_OK;
-    send_status_temp.send_offset = 30;
+    send_status_temp.send_offset = 40;
     send_status_temp.send_end_size = 0;
     send_status_temp.edit_division = EDIT_DIVISION_NO_EDIT;
-    send_status_temp.send_possible_size = 45;
+    send_status_temp.send_possible_size = 35;
     recive_data_global.send_status_list.push_back(send_status_temp);
 
     memcpy(recive_data_global.recive_buffer,
@@ -4701,19 +4650,19 @@ void handle_sorryserver_connect_test(){
     ret = handle_sorryserver_connect(boost::this_thread::get_id(), send_buffer, send_buffer_len);
 
     BOOST_CHECK_EQUAL(ret, SORRYSERVER_SEND);
-    BOOST_CHECK_EQUAL(send_buffer_len, 30u);
+    BOOST_CHECK_EQUAL(send_buffer_len, 40u);
     //送信バッファの内容をチェックする。
-    int cmp_ret = memcmp(recive_data_global.recive_buffer, send_buffer.c_array(), 30);
+    int cmp_ret = memcmp(recive_data_global.recive_buffer, send_buffer.c_array(), 40);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 2u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->status, SEND_OK);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_end_size, 30u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_end_size, 40u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_possible_size, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_offset, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.rbegin()->status, SEND_OK);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.rbegin()->send_end_size, 0u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.rbegin()->send_possible_size, 45u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.rbegin()->send_offset, 30u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.rbegin()->send_possible_size, 35u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.rbegin()->send_offset, 40u);
 
     cout << "[213]------------------------------------------" << endl;
     // unit_test[213] 送信状態リストの要素の送信状態が1:送信待 2:送信不可の場合
@@ -4926,10 +4875,10 @@ void handle_sorryserver_connect_test(){
     recive_data_global.send_status_list.push_back(send_status_temp);
 
     init_edit_data(edit_data_temp);
-    edit_data_temp.data = "X-Forwarded-For: 10.10.2.2, 10.10.10.1\r\n";
-    edit_data_temp.data_size = 40;
+    edit_data_temp.data = "X-Forwarded-For: 10.10.2.2, 10.10.10.1";
+    edit_data_temp.data_size = 38;
     edit_data_temp.insert_posission = MAX_BUFFER_SIZE + 2;
-    edit_data_temp.replace_size = 28;
+    edit_data_temp.replace_size = 26;
     recive_data_global.send_status_list.begin()->edit_data_list.clear();
     recive_data_global.send_status_list.begin()->edit_data_list.push_back(edit_data_temp);
 
@@ -4940,9 +4889,9 @@ void handle_sorryserver_connect_test(){
     //送信バッファの内容をチェックする。
     cmp_ret = memcmp(send_buffer.c_array(), recive_data_global.recive_buffer + MAX_BUFFER_SIZE, 2);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
-    cmp_ret = memcmp(send_buffer.c_array() + 2, "X-Forwarded-For: 10.10.2.2, 10.10.10.1\r\n", 40);
+    cmp_ret = memcmp(send_buffer.c_array() + 2, "X-Forwarded-For: 10.10.2.2, 10.10.10.1", 38);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
-    cmp_ret = memcmp(send_buffer.c_array() + 42, recive_data_global.recive_buffer + MAX_BUFFER_SIZE + 30, 2);
+    cmp_ret = memcmp(send_buffer.c_array() + 40, recive_data_global.recive_buffer + MAX_BUFFER_SIZE + 30, 2);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 1u);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.size(), 0u);
@@ -4980,10 +4929,10 @@ void handle_sorryserver_connect_test(){
     recive_data_global.send_status_list.push_back(send_status_temp);
 
     init_edit_data(edit_data_temp);
-    edit_data_temp.data = "X-Forwarded-For: 10.10.2.2, 10.10.10.1\r\n";
-    edit_data_temp.data_size = 40;
+    edit_data_temp.data = "X-Forwarded-For: 10.10.2.2, 10.10.10.1";
+    edit_data_temp.data_size = 38;
     edit_data_temp.insert_posission = MAX_BUFFER_SIZE + 2;
-    edit_data_temp.replace_size = 28;
+    edit_data_temp.replace_size = 26;
     recive_data_global.send_status_list.begin()->edit_data_list.clear();
     recive_data_global.send_status_list.begin()->edit_data_list.push_back(edit_data_temp);
 
@@ -4994,9 +4943,9 @@ void handle_sorryserver_connect_test(){
     //送信バッファの内容をチェックする。
     cmp_ret = memcmp(send_buffer.c_array(), recive_data_global.recive_buffer + MAX_BUFFER_SIZE, 2);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
-    cmp_ret = memcmp(send_buffer.c_array() + 2, "X-Forwarded-For: 10.10.2.2, 10.10.10.1\r\n", 40);
+    cmp_ret = memcmp(send_buffer.c_array() + 2, "X-Forwarded-For: 10.10.2.2, 10.10.10.1", 38);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
-    cmp_ret = memcmp(send_buffer.c_array() + 42, recive_data_global.recive_buffer + MAX_BUFFER_SIZE + 30, 2);
+    cmp_ret = memcmp(send_buffer.c_array() + 40, recive_data_global.recive_buffer + MAX_BUFFER_SIZE + 30, 2);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 1u);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.size(), 0u);
@@ -5044,9 +4993,9 @@ void handle_sorryserver_connect_test(){
     BOOST_CHECK_EQUAL(cmp_ret, 0);
     cmp_ret = memcmp(send_buffer.c_array() + 15, recive_data_global.recive_buffer + 16, MAX_BUFFER_SIZE - 57);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
-    cmp_ret = memcmp(send_buffer.c_array() + MAX_BUFFER_SIZE - 42, "X-Forwarded-For: 10.10.2.2, 10.10.10.1\r\n", 40);
+    cmp_ret = memcmp(send_buffer.c_array() + MAX_BUFFER_SIZE - 42, "X-Forwarded-For: 10.10.2.2, 10.10.10.1", 38);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
-    cmp_ret = memcmp(send_buffer.c_array() + MAX_BUFFER_SIZE - 2, "\r\n", 2);
+    cmp_ret = memcmp(send_buffer.c_array() + MAX_BUFFER_SIZE - 4, "\r\n\r\n", 4);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 1u);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.size(), 0u);
@@ -5324,11 +5273,11 @@ void handle_sorryserver_connect_test(){
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_offset, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_division, EDIT_DIVISION_EDIT);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->data,
-            "X-Forwarded-For: 10.10.2.2, 10.10.10.1\r\n");
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->data_size, 40u);
+            "X-Forwarded-For: 10.10.2.2, 10.10.10.1");
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->data_size, 38u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->insert_posission,
             MAX_BUFFER_SIZE - 1u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->replace_size, 28u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->replace_size, 26u);
 
     cout << "[226]------------------------------------------" << endl;
     // unit_test[226] 編集データリストが空でない場合
@@ -5376,11 +5325,11 @@ void handle_sorryserver_connect_test(){
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_offset, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_division, EDIT_DIVISION_EDIT);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->data,
-            "X-Forwarded-For: 10.10.2.2, 10.10.10.1\r\n");
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->data_size, 40u);
+            "X-Forwarded-For: 10.10.2.2, 10.10.10.1");
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->data_size, 38u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->insert_posission,
             MAX_BUFFER_SIZE + 1u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->replace_size, 28u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->replace_size, 26u);
 
     cout << "[227]------------------------------------------" << endl;
     // unit_test[227] 編集データリストが空でない場合
@@ -5426,11 +5375,11 @@ void handle_sorryserver_connect_test(){
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_offset, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_division, EDIT_DIVISION_EDIT);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->data,
-            "X-Forwarded-For: 10.10.2.2, 10.10.10.1\r\n");
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->data_size, 40u);
+            "X-Forwarded-For: 10.10.2.2, 10.10.10.1");
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->data_size, 38u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->insert_posission,
             MAX_BUFFER_SIZE + 2u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->replace_size, 28u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_data_list.begin()->replace_size, 26u);
 
     cout << "[228]------------------------------------------" << endl;
     // unit_test[228] 編集区分 = 編集なし
@@ -5625,7 +5574,7 @@ void handle_sorryserver_connect_test(){
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_end_size, 50u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_possible_size, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_offset, 0u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_division, EDIT_DIVISION_EDIT);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->edit_division, EDIT_DIVISION_NO_EDIT);
 
     delete[] recive_data_global.recive_buffer1;
     delete[] recive_data_global.recive_buffer2;
@@ -5705,10 +5654,9 @@ void handle_sorryserver_send_test() {
     BOOST_CHECK_EQUAL(event_status, FINALIZE);
 
     cout << "[240]------------------------------------------" << endl;
-    //unit_test[240] 送信状態->SEND_OK,送信可能データサイズ > 0/編集データリスト=0/送信可能データあり
+    //unit_test[240] 送信状態->SEND_OK,送信可能データサイズ > 0/送信可能データあり
     //unit_test[240] test data: 送信状態に送信待を設定,送信データオフセットに送信済データサイズを加算する,送信済データサイズに0を設定する,遷移先ステータスを設定する
     sorr_send_status.send_possible_size = 1u;//送信可能データサイズ > 0
-    sorr_send_status.edit_data_list.clear();//編集データリスト=0
     sorr_send_status.send_offset = 0u;
     sorr_send_status.send_end_size = 1u;
     sorr_send_status.status = SEND_OK; //送信状態->SEND_OK
@@ -5731,16 +5679,9 @@ void handle_sorryserver_send_test() {
     BOOST_CHECK_EQUAL(end_size,0u); //送信済データサイズに0を設定する
 
     cout << "[241]------------------------------------------" << endl;
-    //unit_test[241] 送信状態->SEND_OK,送信可能データサイズ > 0/編集データリスト=1/送信可能データあり
-    //unit_test[241] test data: 送信状態に送信待を設定,送信データオフセットに送信済データサイズを加算する,送信済データサイズに0を設定する,遷移先ステータスを設定する
-    sorr_data.insert_posission = 1u;
-    sorr_send_status.send_possible_size = 1u;//送信可能データサイズ > 0
-    sorr_send_status.edit_data_list.clear();
-    sorr_send_status.edit_data_list.push_back(sorr_data);//編集データリスト=1
-
-    sorr_send_status.send_offset = 0u;
-    sorr_send_status.send_end_size = 1u;
-    sorr_send_status.status = SEND_OK; //送信状態->SEND_OK
+    //unit_test[241] 送信状態->SEND_NG
+    //unit_test[241] test data: 遷移先ステータスを設定する
+    sorr_send_status.status = SEND_NG; //送信状態->SEND_NG
     sorr_recive_data.send_status_list.clear();
     sorr_recive_data.send_status_list.push_back(sorr_send_status);
 
@@ -5751,31 +5692,13 @@ void handle_sorryserver_send_test() {
     this->session_thread_data_map.clear();
     this->session_thread_data_map.insert(std::pair<boost::thread::id, session_thread_data_sessionless*>(boost::this_thread::get_id(),&thread_data));
     event_status = this->handle_sorryserver_send(boost::this_thread::get_id());
-    send_status = thread_data.recive_data_map[endpoint].send_status_list.front().status;
-    size_t posission = thread_data.recive_data_map[endpoint].send_status_list.front().edit_data_list.front().insert_posission;
-    offset = thread_data.recive_data_map[endpoint].send_status_list.front().send_offset;
-    end_size = thread_data.recive_data_map[endpoint].send_status_list.front().send_end_size;
 
-    BOOST_CHECK_EQUAL(event_status, SORRYSERVER_CONNECT); //遷移先ステータスを設定する
-    BOOST_CHECK_EQUAL(send_status, SEND_OK); //送信状態に送信待を設定する
-    BOOST_CHECK_EQUAL(posission,0u); //編集データ設定位置から送信済データサイズを減算する
-    BOOST_CHECK_EQUAL(offset,1u); //送信データオフセットに送信済データサイズを加算する
-    BOOST_CHECK_EQUAL(end_size,0u); //送信済データサイズに0を設定する
+    BOOST_CHECK_EQUAL(event_status, FINALIZE); //遷移先ステータスを設定する
 
     cout << "[242]------------------------------------------" << endl;
-    //unit_test[242] 送信状態->SEND_OK,送信可能データサイズ > 0/編集データリスト=2/送信可能データあり
-    //unit_test[242] test data: 送信状態に送信待を設定,送信データオフセットに送信済データサイズを加算する,送信済データサイズに0を設定する,遷移先ステータスを設定する
-    sorr_data.insert_posission = 1u;
-    sorr_data1.insert_posission = 2u;
-    sorr_send_status.send_possible_size = 1u;//送信可能データサイズ > 0
-    //編集データリスト=2
-    sorr_send_status.edit_data_list.clear();
-    sorr_send_status.edit_data_list.push_back(sorr_data);
-    sorr_send_status.edit_data_list.push_back(sorr_data1);
-
-    sorr_send_status.send_offset = 0u;
-    sorr_send_status.send_end_size = 1u;
-    sorr_send_status.status = SEND_OK; //送信状態->SEND_OK
+    //unit_test[242] 送信状態->SEND_CONTINUE
+    //unit_test[242] test data: 遷移先ステータスを設定する
+    sorr_send_status.status = SEND_CONTINUE; //送信状態->SEND_CONTINUE
     sorr_recive_data.send_status_list.clear();
     sorr_recive_data.send_status_list.push_back(sorr_send_status);
 
@@ -5786,18 +5709,8 @@ void handle_sorryserver_send_test() {
     this->session_thread_data_map.clear();
     this->session_thread_data_map.insert(std::pair<boost::thread::id, protocol_module_sessionless::session_thread_data_sessionless*>(boost::this_thread::get_id(),&thread_data));
     event_status = this->handle_sorryserver_send(boost::this_thread::get_id());
-    send_status = thread_data.recive_data_map[endpoint].send_status_list.front().status;
-    size_t posission1 = thread_data.recive_data_map[endpoint].send_status_list.front().edit_data_list.front().insert_posission;
-    size_t posission2 = thread_data.recive_data_map[endpoint].send_status_list.front().edit_data_list.back().insert_posission;
-    offset = thread_data.recive_data_map[endpoint].send_status_list.front().send_offset;
-    end_size = thread_data.recive_data_map[endpoint].send_status_list.front().send_end_size;
 
-    BOOST_CHECK_EQUAL(event_status, SORRYSERVER_CONNECT); //遷移先ステータスを設定する
-    BOOST_CHECK_EQUAL(send_status, SEND_OK); //送信状態に送信待を設定する
-    BOOST_CHECK_EQUAL(posission1,0u); //編集データ設定位置から送信済データサイズを減算する
-    BOOST_CHECK_EQUAL(posission2,1u);
-    BOOST_CHECK_EQUAL(offset,1u); //送信データオフセットに送信済データサイズを加算する
-    BOOST_CHECK_EQUAL(end_size,0u); //送信済データサイズに0を設定する
+    BOOST_CHECK_EQUAL(event_status, FINALIZE); //遷移先ステータスを設定する
 
     cout << "[243]------------------------------------------" << endl;
     //unit_test[243] 送信状態->SEND_OK,送信可能データサイズ = 0/送信データ残サイズ > 0/送信可能データなし
@@ -5821,13 +5734,14 @@ void handle_sorryserver_send_test() {
     BOOST_CHECK_EQUAL(send_status, SEND_CONTINUE); //送信状態に送信待を設定する
 
     cout << "[244]------------------------------------------" << endl;
-    //unit_test[244] 送信状態->SEND_OK,送信可能データサイズ = 0/送信データ残サイズ > 0/送信可能データなし
+    //unit_test[244] 送信状態->SNED_NG,SEND_OK,/送信データ残サイズ > 0
     //unit_test[244] test data: 送信状態に送信待を設定
-    sorr_send_status.send_possible_size = 0u;//送信可能データサイズ=0
+    sorr_send_status.status = SEND_NG;
     sorr_send_status.send_rest_size = 1u;//送信データ残サイズ > 0
-    sorr_send_status.status = SEND_OK; //送信状態->SEND_OK
+    sorr_send_status1.status = SEND_OK;//送信状態->SEND_OK
     sorr_recive_data.send_status_list.clear();
     sorr_recive_data.send_status_list.push_back(sorr_send_status);
+    sorr_recive_data.send_status_list.push_back(sorr_send_status1);
 
     thread_data.client_endpoint_tcp = endpoint;
     thread_data.recive_data_map.clear();
@@ -5836,10 +5750,8 @@ void handle_sorryserver_send_test() {
     this->session_thread_data_map.clear();
     this->session_thread_data_map.insert(std::pair<boost::thread::id, session_thread_data_sessionless*>(boost::this_thread::get_id(),&thread_data));
     event_status = this->handle_sorryserver_send(boost::this_thread::get_id());
-    send_status = thread_data.recive_data_map[endpoint].send_status_list.front().status;
 
-    BOOST_CHECK_EQUAL(event_status, CLIENT_RECV); //遷移先ステータスを設定する
-    BOOST_CHECK_EQUAL(send_status, SEND_CONTINUE); //送信状態に送信待を設定する
+    BOOST_CHECK_EQUAL(event_status, FINALIZE); //遷移先ステータスを設定する
 
     cout << "[245]------------------------------------------" << endl;
     //unit_test[245] 送信状態->SEND_OK,送信可能データサイズ = 0/送信データ残サイズ = 0/送信可能データなし
@@ -5863,7 +5775,7 @@ void handle_sorryserver_send_test() {
     BOOST_CHECK_EQUAL(send_status, SEND_END); //送信状態に送信待を設定する
 
     cout << "[246]------------------------------------------" << endl;
-    //unit_test[246] 送信状態->SEND_OK,SEND_OK/送信可能データサイズ = 0/編集データリスト=0,送信データ残サイズ > 0
+    //unit_test[246] 送信状態->SEND_OK,SEND_OK/送信可能データサイズ = 0/送信データ残サイズ > 0
     //unit_test[246] test data: 遷移先ステータスを設定する
     sorr_send_status.send_possible_size = 0u;//送信可能データサイズ = 0
     sorr_send_status.status = SEND_OK;
@@ -5884,7 +5796,7 @@ void handle_sorryserver_send_test() {
     BOOST_CHECK_EQUAL(event_status, FINALIZE); //遷移先ステータスを設定する
 
     cout << "[247]------------------------------------------" << endl;
-    //unit_test[247] 送信状態->SEND_OK,SEND_OK/送信可能データサイズ = 0/編集データリスト=0,送信データ残サイズ = 0/送信可能データあり
+    //unit_test[247] 送信状態->SEND_OK,SEND_OK/送信可能データサイズ = 0/送信データ残サイズ = 0/送信可能データあり
     //unit_test[247] test data: 送信状態に送信待を設定,遷移先ステータスを設定する
     sorr_send_status.send_possible_size = 0u;//送信可能データサイズ = 0
     sorr_send_status.status = SEND_OK;
@@ -5907,7 +5819,7 @@ void handle_sorryserver_send_test() {
     BOOST_CHECK_EQUAL(send_status, SEND_END); //送信可能データサイズ = 0,送信データ残サイズ = 0,送信状態に送信待を設定する
 
     cout << "[248]------------------------------------------" << endl;
-    //unit_test[248] 送信状態->SEND_OK,SEND_NG/送信可能データサイズ = 0/編集データリスト=0,送信データ残サイズ > 0
+    //unit_test[248] 送信状態->SEND_OK,SEND_NG/送信可能データサイズ = 0/送信データ残サイズ > 0
     //unit_test[248] test data: 遷移先ステータスを設定する
     sorr_send_status.send_possible_size = 0u;//送信可能データサイズ = 0
     sorr_send_status.status = SEND_OK;
@@ -5929,7 +5841,7 @@ void handle_sorryserver_send_test() {
     BOOST_CHECK_EQUAL(event_status, FINALIZE); //遷移先ステータスを設定する
 
     cout << "[249]------------------------------------------" << endl;
-    //unit_test[249] 送信状態->SEND_OK,SEND_NG/送信可能データサイズ = 0/編集データリスト=0,送信データ残サイズ = 0/送信可能データあり
+    //unit_test[249] 送信状態->SEND_OK,SEND_NG/送信可能データサイズ = 0/送信データ残サイズ = 0/送信可能データあり
     //unit_test[249] test data: 送信状態に送信待を設定,遷移先ステータスを設定する
     sorr_send_status.send_possible_size = 0u;//送信可能データサイズ = 0
     sorr_send_status.status = SEND_OK;
@@ -5952,7 +5864,7 @@ void handle_sorryserver_send_test() {
     BOOST_CHECK_EQUAL(send_status, SEND_END); //送信可能データサイズ = 0,送信データ残サイズ = 0,送信状態に送信待を設定する
 
     cout << "[250]------------------------------------------" << endl;
-    //unit_test[250] 送信状態->SEND_END,SEND_OK/送信可能データサイズ > 0/編集データリスト=0
+    //unit_test[250] 送信状態->SEND_END,SEND_OK/送信可能データサイズ > 0
     //unit_test[250] test data: 遷移先ステータスを設定する
     sorr_send_status.status = SEND_END;
     sorr_send_status1.send_possible_size = 1u;//送信可能データサイズ > 0
@@ -5976,7 +5888,7 @@ void handle_sorryserver_send_test() {
     //unit_test[251] test data: 遷移先ステータスを設定する
     sorr_send_status.status = SEND_END;
     sorr_send_status1.send_rest_size = 1u;//送信データ残サイズ > 0
-    sorr_send_status.send_possible_size = 0u;//送信可能データサイズ = 0
+    sorr_send_status1.send_possible_size = 0u;//送信可能データサイズ = 0
     sorr_send_status1.status = SEND_OK;//送信状態->SEND_OK
     sorr_recive_data.send_status_list.clear();
     sorr_recive_data.send_status_list.push_back(sorr_send_status);
@@ -6056,7 +5968,7 @@ void handle_sorryserver_send_test() {
 //handle_realserver_recv(tcp) 郎希倹
 void handle_realserver_recv_tcp_test() {
     boost::asio::ip::tcp::endpoint rs_endpoint;
-    size_t response_len;
+    size_t response_len = USE_BUFFER_SIZE;;
     EVENT_TAG ret;
     boost::array<char, MAX_BUFFER_SIZE> response;
     send_status send_status_temp;
@@ -6098,20 +6010,10 @@ void handle_realserver_recv_tcp_test() {
 
     this->session_thread_data_map.clear();
     this->session_thread_data_map[boost::this_thread::get_id()] = psession_thread_data;
-    std::map<boost::asio::ip::tcp::endpoint, recive_data>::iterator it =
-            psession_thread_data->recive_data_map.find(endpoint_local);
-    recive_data& recive_data_global = it->second;
 
     cout << "[257]------------------------------------------" << endl;
     // unit_test[257] endpoint対応のrecive_dataなし
     // responseを設定する
-    recive_data_global.recive_buffer_max_size = USE_BUFFER_SIZE;
-    recive_data_global.recive_buffer_rest_size = USE_BUFFER_SIZE;
-    delete[] recive_data_global.recive_buffer1;
-    delete[] recive_data_global.recive_buffer2;
-    recive_data_global.recive_buffer1 = new char[recive_data_global.recive_buffer_max_size];
-    recive_data_global.recive_buffer2 = new char[recive_data_global.recive_buffer_max_size];
-    recive_data_global.recive_buffer = recive_data_global.recive_buffer1;
     psession_thread_data->recive_data_map.clear();
     psession_thread_data->recive_data_map[endpoint_not_used] = recive_data_tmp;
 
@@ -6121,9 +6023,11 @@ void handle_realserver_recv_tcp_test() {
     BOOST_CHECK_EQUAL(ret, FINALIZE);
 
     psession_thread_data->recive_data_map.clear();
+
     psession_thread_data->recive_data_map[endpoint_local] = recive_data_tmp;
-    it = psession_thread_data->recive_data_map.find(endpoint_local);
-    recive_data_global = it->second;
+    std::map<boost::asio::ip::tcp::endpoint, recive_data>::iterator it =
+                psession_thread_data->recive_data_map.find(endpoint_local);
+    recive_data& recive_data_global = it->second;
 
     cout << "[258]------------------------------------------" << endl;
     // unit_test[258] recive_data.recive_buffer=Null
@@ -6181,9 +6085,11 @@ void handle_realserver_recv_tcp_test() {
     memcpy(response.c_array(), "HTTP/1.1 200 OK\r\nContent-Length: 11\r\n\r\n01234567890", REQUEST_BUFFER_SIZE);
     response_len = REQUEST_BUFFER_SIZE;
 
+    this->getloglevel = &stb_getloglevel_is_none;
     new_install();
     ret = handle_realserver_recv(boost::this_thread::get_id(), rs_endpoint, response, response_len);
     new_uninstall();
+    this->getloglevel = &stb_getloglevel;
     BOOST_CHECK_EQUAL(ret, FINALIZE);
 
     cout << "[262]------------------------------------------" << endl;
@@ -6348,7 +6254,7 @@ void handle_realserver_recv_tcp_test() {
         }
 
         ret = handle_realserver_recv(boost::this_thread::get_id(), rs_endpoint, response, response_len);
-        std::cout << "[" << 345 + i << "]------------------------------------------" << std::endl;
+        std::cout << "[" << 265 + i << "]------------------------------------------" << std::endl;
         BOOST_CHECK_EQUAL(ret, FINALIZE);
     }
 
@@ -6698,8 +6604,8 @@ void handle_realserver_recv_tcp_test() {
 
     BOOST_CHECK_EQUAL(ret, REALSERVER_RECV);
     BOOST_CHECK_EQUAL(recive_data_global.recive_buffer, recive_data_global.recive_buffer1);
-    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, 112u);
-    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_rest_size, 0u);
+    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, MAX_BUFFER_SIZE);
+    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_rest_size, MAX_BUFFER_SIZE - 112);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 1u);
 
     //メモリの内容をチェックする
@@ -6735,20 +6641,21 @@ void handle_realserver_recv_tcp_test() {
     memcpy(recive_data_global.recive_buffer, "HTTP/1.1 200 OK\r\nCoo", 20);
 
     //レスポンスデータ
-    memcpy(response.c_array(), "kie: monkey=123456789012345678901234567890123456789012345678901234567890", 72);
-    response_len = 72;
+    memcpy(response.c_array(), "kie: monkey=", 12);
+    memset(response.c_array(), 'x', MAX_BUFFER_SIZE - 12);
+    response_len = MAX_BUFFER_SIZE;
 
     ret = handle_realserver_recv(boost::this_thread::get_id(), rs_endpoint, response, response_len);
 
     BOOST_CHECK_EQUAL(ret, REALSERVER_RECV);
     BOOST_CHECK_EQUAL(recive_data_global.recive_buffer, recive_data_global.recive_buffer1);
-    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, 92u);
+    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, MAX_BUFFER_SIZE + 20);
     BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_rest_size, 0u);
 
     //メモリの内容をチェックする
     cmp_ret = memcmp(recive_data_global.recive_buffer, "HTTP/1.1 200 OK\r\nCoo", 20);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
-    cmp_ret = memcmp(recive_data_global.recive_buffer + 20, response.c_array(), 72);
+    cmp_ret = memcmp(recive_data_global.recive_buffer + 20, response.c_array(), MAX_BUFFER_SIZE);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
 
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 1u);
@@ -6756,7 +6663,7 @@ void handle_realserver_recv_tcp_test() {
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_rest_size, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_possible_size, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_offset, 0u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->unsend_size, 92u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->unsend_size, MAX_BUFFER_SIZE + 20);
 
     cout << "[303]------------------------------------------" << endl;
     // unit_test[303] データバッファ残サイズ < レスポンスデータサイズ
@@ -7586,16 +7493,16 @@ void handle_realserver_recv_tcp_test() {
     recive_data_global.recive_buffer = recive_data_global.recive_buffer1;
     recive_data_global.send_status_list.clear();
 
-    memcpy(response.c_array(), "HTTP/2.2 200 OK34567890123456789012345678901234567", REQUEST_BUFFER_SIZE);
+    memcpy(response.c_array(), "HTTP/2.2 200 OK\r\n567890123456789012345678901234567", REQUEST_BUFFER_SIZE);
     response_len = REQUEST_BUFFER_SIZE;
 
     ret = handle_realserver_recv(boost::this_thread::get_id(), rs_endpoint, response, response_len);
 
-    BOOST_CHECK_EQUAL(ret, REALSERVER_RECV);
+    BOOST_CHECK_EQUAL(ret, CLIENT_CONNECTION_CHECK);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 1u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->status, SEND_NG);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->status, SEND_OK);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_offset, 0u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->unsend_size, 50u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_possible_size, 50u);
 
     cout << "[328]------------------------------------------" << endl;
     // unit_test[328] レスポンスデータ残サイズ > 0
@@ -7894,7 +7801,7 @@ void handle_realserver_recv_udp_test() {
 //handle_sorryserver_recv 郎希倹
 void handle_sorryserver_recv_test() {
     boost::asio::ip::tcp::endpoint sorry_endpoint;
-    size_t response_len;
+    size_t response_len = USE_BUFFER_SIZE;
     EVENT_TAG ret;
     boost::array<char, MAX_BUFFER_SIZE> response;
     send_status send_status_temp;
@@ -7936,20 +7843,10 @@ void handle_sorryserver_recv_test() {
 
     this->session_thread_data_map.clear();
     this->session_thread_data_map[boost::this_thread::get_id()] = psession_thread_data;
-    std::map<boost::asio::ip::tcp::endpoint, recive_data>::iterator it =
-            psession_thread_data->recive_data_map.find(endpoint_local);
-    recive_data& recive_data_global = it->second;
 
     cout << "[343]------------------------------------------" << endl;
     // unit_test[343] endpoint対応のrecive_dataなし
     // responseを設定する
-    recive_data_global.recive_buffer_max_size = USE_BUFFER_SIZE;
-    recive_data_global.recive_buffer_rest_size = USE_BUFFER_SIZE;
-    delete[] recive_data_global.recive_buffer1;
-    delete[] recive_data_global.recive_buffer2;
-    recive_data_global.recive_buffer1 = new char[recive_data_global.recive_buffer_max_size];
-    recive_data_global.recive_buffer2 = new char[recive_data_global.recive_buffer_max_size];
-    recive_data_global.recive_buffer = recive_data_global.recive_buffer1;
     psession_thread_data->recive_data_map.clear();
     psession_thread_data->recive_data_map[endpoint_not_used] = recive_data_tmp;
 
@@ -7960,8 +7857,9 @@ void handle_sorryserver_recv_test() {
 
     psession_thread_data->recive_data_map.clear();
     psession_thread_data->recive_data_map[endpoint_local] = recive_data_tmp;
-    it = psession_thread_data->recive_data_map.find(endpoint_local);
-    recive_data_global = it->second;
+    std::map<boost::asio::ip::tcp::endpoint, recive_data>::iterator it =
+                psession_thread_data->recive_data_map.find(endpoint_local);
+    recive_data& recive_data_global = it->second;
 
     cout << "[344]------------------------------------------" << endl;
     // unit_test[344] recive_data.recive_buffer=Null
@@ -8019,9 +7917,11 @@ void handle_sorryserver_recv_test() {
     memcpy(response.c_array(), "HTTP/1.1 200 OK\r\nContent-Length: 11\r\n\r\n01234567890", REQUEST_BUFFER_SIZE);
     response_len = REQUEST_BUFFER_SIZE;
 
+    this->getloglevel = &stb_getloglevel_is_none;
     new_install();
     ret = handle_sorryserver_recv(boost::this_thread::get_id(), sorry_endpoint, response, response_len);
     new_uninstall();
+    this->getloglevel = &stb_getloglevel;
     BOOST_CHECK_EQUAL(ret, FINALIZE);
 
     cout << "[348]------------------------------------------" << endl;
@@ -8186,7 +8086,7 @@ void handle_sorryserver_recv_test() {
         }
 
         ret = handle_sorryserver_recv(boost::this_thread::get_id(), sorry_endpoint, response, response_len);
-        std::cout << "[" << 345 + i << "]------------------------------------------" << std::endl;
+        std::cout << "[" << 352 + i << "]------------------------------------------" << std::endl;
         BOOST_CHECK_EQUAL(ret, FINALIZE);
     }
 
@@ -8536,8 +8436,8 @@ void handle_sorryserver_recv_test() {
 
     BOOST_CHECK_EQUAL(ret, SORRYSERVER_RECV);
     BOOST_CHECK_EQUAL(recive_data_global.recive_buffer, recive_data_global.recive_buffer1);
-    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, 112u);
-    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_rest_size, 0u);
+    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, MAX_BUFFER_SIZE);
+    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_rest_size, MAX_BUFFER_SIZE - 112);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 1u);
 
     //メモリの内容をチェックする
@@ -8573,20 +8473,21 @@ void handle_sorryserver_recv_test() {
     memcpy(recive_data_global.recive_buffer, "HTTP/1.1 200 OK\r\nCoo", 20);
 
     //レスポンスデータ
-    memcpy(response.c_array(), "kie: monkey=123456789012345678901234567890123456789012345678901234567890", 72);
-    response_len = 72;
+    memcpy(response.c_array(), "kie: monkey=", 12);
+    memset(response.c_array(), 'x', MAX_BUFFER_SIZE - 12);
+    response_len = MAX_BUFFER_SIZE;
 
     ret = handle_sorryserver_recv(boost::this_thread::get_id(), sorry_endpoint, response, response_len);
 
     BOOST_CHECK_EQUAL(ret, SORRYSERVER_RECV);
     BOOST_CHECK_EQUAL(recive_data_global.recive_buffer, recive_data_global.recive_buffer1);
-    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, 92u);
+    BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_max_size, MAX_BUFFER_SIZE + 20);
     BOOST_CHECK_EQUAL(recive_data_global.recive_buffer_rest_size, 0u);
 
     //メモリの内容をチェックする
     cmp_ret = memcmp(recive_data_global.recive_buffer, "HTTP/1.1 200 OK\r\nCoo", 20);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
-    cmp_ret = memcmp(recive_data_global.recive_buffer + 20, response.c_array(), 72);
+    cmp_ret = memcmp(recive_data_global.recive_buffer + 20, response.c_array(), MAX_BUFFER_SIZE);
     BOOST_CHECK_EQUAL(cmp_ret, 0);
 
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 1u);
@@ -8594,7 +8495,7 @@ void handle_sorryserver_recv_test() {
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_rest_size, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_possible_size, 0u);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_offset, 0u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->unsend_size, 92u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->unsend_size, MAX_BUFFER_SIZE + 20);
 
     cout << "[389]------------------------------------------" << endl;
     // unit_test[389] データバッファ残サイズ < レスポンスデータサイズ
@@ -9424,16 +9325,16 @@ void handle_sorryserver_recv_test() {
     recive_data_global.recive_buffer = recive_data_global.recive_buffer1;
     recive_data_global.send_status_list.clear();
 
-    memcpy(response.c_array(), "HTTP/2.2 200 OK34567890123456789012345678901234567", REQUEST_BUFFER_SIZE);
+    memcpy(response.c_array(), "HTTP/2.2 200 OK\r\n567890123456789012345678901234567", REQUEST_BUFFER_SIZE);
     response_len = REQUEST_BUFFER_SIZE;
 
     ret = handle_sorryserver_recv(boost::this_thread::get_id(), sorry_endpoint, response, response_len);
 
-    BOOST_CHECK_EQUAL(ret, SORRYSERVER_RECV);
+    BOOST_CHECK_EQUAL(ret, CLIENT_CONNECTION_CHECK);
     BOOST_REQUIRE_EQUAL(recive_data_global.send_status_list.size(), 1u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->status, SEND_NG);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->status, SEND_OK);
     BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_offset, 0u);
-    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->unsend_size, 50u);
+    BOOST_CHECK_EQUAL(recive_data_global.send_status_list.begin()->send_possible_size, 50u);
 
     cout << "[414]------------------------------------------" << endl;
     // unit_test[414] レスポンスデータ残サイズ > 0
@@ -9722,7 +9623,7 @@ void handle_sorryserver_recv_test() {
 void handle_response_send_inform_test(){
 
     cout << "[426]------------------------------------------" << endl;
-    //unit_test[426] handle_response_send_inform return STOP
+    //unit_test[426] handle_response_send_inform 戻り値が「STOP」に設定する。
     EVENT_TAG ret = this->handle_response_send_inform(boost::this_thread::get_id());
     BOOST_CHECK_EQUAL(ret, STOP);
 }
@@ -9733,7 +9634,7 @@ void handle_client_connection_check_test(){
     cout << "[427]------------------------------------------" << endl;
     //unit_test[427] 異常系 session_thread_data_map中にThreadID対応のデータがない
     this->session_thread_data_map.clear();
-    this->session_thread_data_map[boost::this_thread::get_id()] = 0;
+    this->session_thread_data_map[boost::this_thread::get_id()] = NULL;
     boost::array<char, MAX_BUFFER_SIZE> sbf_err1;
     std::size_t d_err1;
     ret = this->handle_client_connection_check(boost::this_thread::get_id(), sbf_err1, d_err1);
@@ -9867,7 +9768,7 @@ void handle_client_connection_check_test(){
 void handle_client_select_test(){
 
     cout << "[432]------------------------------------------" << endl;
-    //unit_test[432] handle_client_select return STOP
+    //unit_test[432] handle_client_select 戻り値が「STOP」に設定する。
     boost::asio::ip::udp::endpoint ep;
     boost::array<char, MAX_BUFFER_SIZE> sbf;
     std::size_t d;
@@ -9914,7 +9815,7 @@ void handle_client_send_test(){
     BOOST_CHECK_EQUAL(event_status, FINALIZE);
 
     cout << "[437]------------------------------------------" << endl;
-    //unit_test[437] 送信状態->SEND_OK/送信可能データサイズ > 0/編集データリスト=0/送信可能データあり
+    //unit_test[437] 送信状態->SEND_OK/送信可能データサイズ > 0/送信可能データあり
     //unit_test[437] test data: 送信状態に送信待を設定,送信データオフセットに送信済データサイズを加算する,送信済データサイズに0を設定する,遷移先ステータスを設定する
     client_send_status.send_possible_size = 1u;//送信可能データサイズ > 0
     client_send_status.edit_data_list.clear();//編集データリスト=0
@@ -9940,15 +9841,9 @@ void handle_client_send_test(){
     BOOST_CHECK_EQUAL(end_size,0u); //送信済データサイズに0を設定する
 
     cout << "[438]------------------------------------------" << endl;
-    //unit_test[438] 送信状態->SEND_OK/送信可能データサイズ > 0/編集データリスト=1/送信可能データあり
-    //unit_test[438] test data: 送信状態に送信待を設定,送信データオフセットに送信済データサイズを加算する,送信済データサイズに0を設定する,遷移先ステータスを設定する
-    client_data.insert_posission = 1u;
-    client_send_status.send_possible_size = 1u;//送信可能データサイズ > 0
-    client_send_status.edit_data_list.push_back(client_data);//編集データリスト=1
-
-    client_send_status.send_offset = 0u;
-    client_send_status.send_end_size = 1u;
-    client_send_status.status = SEND_OK; //送信状態->SEND_OK
+    //unit_test[438] 送信状態->SEND_NG
+    //unit_test[438] test data:遷移先ステータスを設定する
+    client_send_status.status = SEND_NG; //送信状態->SEND_NG
     client_recive_data.send_status_list.clear();
     client_recive_data.send_status_list.push_back(client_send_status);
 
@@ -9959,31 +9854,13 @@ void handle_client_send_test(){
     this->session_thread_data_map.clear();
     this->session_thread_data_map.insert(std::pair<boost::thread::id, session_thread_data_sessionless*>(boost::this_thread::get_id(),&thread_data));
     event_status = this->handle_client_send(boost::this_thread::get_id());
-    send_status = thread_data.recive_data_map[endpoint].send_status_list.front().status;
-    size_t posission = thread_data.recive_data_map[endpoint].send_status_list.front().edit_data_list.front().insert_posission;
-    offset = thread_data.recive_data_map[endpoint].send_status_list.front().send_offset;
-    end_size = thread_data.recive_data_map[endpoint].send_status_list.front().send_end_size;
 
-    BOOST_CHECK_EQUAL(event_status, CLIENT_CONNECTION_CHECK); //遷移先ステータスを設定する
-    BOOST_CHECK_EQUAL(send_status, SEND_OK); //送信状態に送信待を設定する
-    BOOST_CHECK_EQUAL(posission,0u); //編集データ設定位置から送信済データサイズを減算する
-    BOOST_CHECK_EQUAL(offset,1u); //送信データオフセットに送信済データサイズを加算する
-    BOOST_CHECK_EQUAL(end_size,0u); //送信済データサイズに0を設定する
+    BOOST_CHECK_EQUAL(event_status, FINALIZE); //遷移先ステータスを設定する
 
     cout << "[439]------------------------------------------" << endl;
-    //unit_test[439] 送信状態->SEND_OK/送信可能データサイズ > 0/編集データリスト=2/送信可能データあり
-    //unit_test[439] test data: 送信状態に送信待を設定,送信データオフセットに送信済データサイズを加算する,送信済データサイズに0を設定する,遷移先ステータスを設定する
-    client_data.insert_posission = 1u;
-    client_data1.insert_posission = 2u;
-    client_send_status.send_possible_size = 1u;//送信可能データサイズ > 0
-    //編集データリスト=2
-    client_send_status.edit_data_list.clear();
-    client_send_status.edit_data_list.push_back(client_data);
-    client_send_status.edit_data_list.push_back(client_data1);
-
-    client_send_status.send_offset = 0u;
-    client_send_status.send_end_size = 1u;
-    client_send_status.status = SEND_OK; //送信状態->SEND_OK
+    //unit_test[439] 送信状態->SEND_CONTINUE
+    //unit_test[439] test data:遷移先ステータスを設定する
+    client_send_status.status = SEND_CONTINUE; //送信状態->SEND_CONTINUE
     client_recive_data.send_status_list.clear();
     client_recive_data.send_status_list.push_back(client_send_status);
 
@@ -9994,18 +9871,8 @@ void handle_client_send_test(){
     this->session_thread_data_map.clear();
     this->session_thread_data_map.insert(std::pair<boost::thread::id, session_thread_data_sessionless*>(boost::this_thread::get_id(),&thread_data));
     event_status = this->handle_client_send(boost::this_thread::get_id());
-    send_status = thread_data.recive_data_map[endpoint].send_status_list.front().status;
-    size_t posission1 = thread_data.recive_data_map[endpoint].send_status_list.front().edit_data_list.front().insert_posission;
-    size_t posission2 = thread_data.recive_data_map[endpoint].send_status_list.front().edit_data_list.back().insert_posission;
-    offset = thread_data.recive_data_map[endpoint].send_status_list.front().send_offset;
-    end_size = thread_data.recive_data_map[endpoint].send_status_list.front().send_end_size;
 
-    BOOST_CHECK_EQUAL(event_status, CLIENT_CONNECTION_CHECK); //遷移先ステータスを設定する
-    BOOST_CHECK_EQUAL(send_status, SEND_OK); //送信状態に送信待を設定する
-    BOOST_CHECK_EQUAL(posission1,0u); //編集データ設定位置から送信済データサイズを減算する
-    BOOST_CHECK_EQUAL(posission2,1u);
-    BOOST_CHECK_EQUAL(offset,1u); //送信データオフセットに送信済データサイズを加算する
-    BOOST_CHECK_EQUAL(end_size,0u); //送信済データサイズに0を設定する
+    BOOST_CHECK_EQUAL(event_status, FINALIZE); //遷移先ステータスを設定する
 
     cout << "[440]------------------------------------------" << endl;
     //unit_test[440] 送信状態->SEND_OK/送信可能データサイズ = 0/送信データ残サイズ > 0/送信可能データなし/終了フラグがONの場合
@@ -10144,7 +10011,7 @@ void handle_client_send_test(){
     BOOST_CHECK_EQUAL(send_status, SEND_END); //送信状態に送信待を設定する
 
     cout << "[446]------------------------------------------" << endl;
-    //unit_test[446] 送信状態->SEND_OK,SEND_OK/送信可能データサイズ = 0/編集データリスト=0,送信データ残サイズ > 0
+    //unit_test[446] 送信状態->SEND_OK,SEND_OK/送信可能データサイズ = 0/送信データ残サイズ > 0
     //unit_test[446] test data: 遷移先ステータスを設定する
     client_send_status.send_possible_size = 0u; //送信可能データサイズ = 0
     client_send_status.status = SEND_OK;//送信状態->SEND_OK
@@ -10165,7 +10032,7 @@ void handle_client_send_test(){
     BOOST_CHECK_EQUAL(event_status, FINALIZE); //遷移先ステータスを設定する
 
     cout << "[447]------------------------------------------" << endl;
-    //unit_test[447] 送信状態->SEND_OK,SEND_OK/送信可能データサイズ = 0/編集データリスト=0,送信データ残サイズ = 0/送信可能データあり
+    //unit_test[447] 送信状態->SEND_OK,SEND_OK/送信可能データサイズ = 0/送信データ残サイズ = 0/送信可能データあり
     //unit_test[447] test data: 送信状態に送信待を設定,遷移先ステータスを設定する
     client_send_status.send_possible_size = 0u; //送信可能データサイズ = 0
     client_send_status.status = SEND_OK;//送信状態->SEND_OK
@@ -10188,7 +10055,7 @@ void handle_client_send_test(){
     BOOST_CHECK_EQUAL(send_status, SEND_END); //送信可能データサイズ = 0,送信データ残サイズ = 0,送信状態に送信待を設定する
 
     cout << "[448]------------------------------------------" << endl;
-    //unit_test[448] 送信状態->SEND_OK,SEND_NG/送信可能データサイズ = 0/編集データリスト=0
+    //unit_test[448] 送信状態->SEND_OK,SEND_NG/送信可能データサイズ = 0
     //unit_test[448] test data: 遷移先ステータスを設定する
     client_send_status.send_possible_size = 0u; //送信可能データサイズ = 0
     client_send_status.status = SEND_OK;//送信状態->SEND_OK
@@ -10211,7 +10078,7 @@ void handle_client_send_test(){
     BOOST_CHECK_EQUAL(event_status, FINALIZE); //遷移先ステータスを設定する
 
     cout << "[449]------------------------------------------" << endl;
-    //unit_test[449] 送信状態->SEND_OK,SEND_NG/送信可能データサイズ = 0/編集データリスト=0,送信データ残サイズ = 0/送信可能データなし/終了フラグがONの場合
+    //unit_test[449] 送信状態->SEND_OK,SEND_NG/送信可能データサイズ = 0/送信データ残サイズ = 0/送信可能データなし/終了フラグがONの場合
     //unit_test[449] test data: 送信状態に送信待を設定,遷移先ステータスを設定する
     client_send_status.send_possible_size = 0u; //送信可能データサイズ = 0
     client_send_status.status = SEND_OK;//送信状態->SEND_OK
@@ -10235,7 +10102,7 @@ void handle_client_send_test(){
     BOOST_CHECK_EQUAL(send_status, SEND_END); //送信可能データサイズ = 0,送信データ残サイズ = 0,送信状態に送信待を設定する
 
     cout << "[450]------------------------------------------" << endl;
-    //unit_test[450] 送信状態->SEND_END,SEND_OK/送信可能データサイズ > 0/編集データリスト=0
+    //unit_test[450] 送信状態->SEND_END,SEND_OK/送信可能データサイズ > 0
     //unit_test[450] test data: 送信状態に送信待を設定,遷移先ステータスを設定する
     client_send_status.status = SEND_END;//送信状態->SEND_END
     client_send_status1.send_possible_size = 1u;
@@ -10258,7 +10125,7 @@ void handle_client_send_test(){
     BOOST_CHECK_EQUAL(send_status, SEND_OK);
 
     cout << "[451]------------------------------------------" << endl;
-    //unit_test[451] 送信状態->SEND_END,SEND_OK/送信可能データサイズ = 0/編集データリスト=0,送信データ残サイズ > 0/送信可能データなし/終了フラグがONの場合
+    //unit_test[451] 送信状態->SEND_END,SEND_OK/送信可能データサイズ = 0/送信データ残サイズ > 0/送信可能データなし/終了フラグがONの場合
     //unit_test[451] test data: 送信状態に送信待を設定,遷移先ステータスを設定する
     client_send_status.status = SEND_END;//送信状態->SEND_END
     client_send_status1.send_rest_size = 1u; //送信データ残サイズ > 0
@@ -10633,7 +10500,7 @@ void handle_sorry_enable_test() {
        this->session_thread_data_map[boost::this_thread::get_id()]->recive_data_map.clear();
 
     cout << "[471]------------------------------------------" << endl;
-       // unit_test[471] 送信可能データあり status = CLIENT_CONNECTION_CHECK
+       // unit_test[471] status = CLIENT_CONNECTION_CHECK
        // unit_test[471] test data:送信不可データなし かつ 送信データ残サイズ > 0が存在しない場合,送信可能データあり list 3件
        init_send_status(sendstatus);
        init_recive_data(receivedata);
@@ -10699,7 +10566,8 @@ void handle_sorry_enable_test() {
        this->session_thread_data_map[thread_down.get_id()]->recive_data_map.clear();
 
     cout << "[475]------------------------------------------" << endl;
-    // unit_test[475] 上りスレッドと下りスレッドの場合
+    // unit_test[475] 上りスレッドの戻り値が「ACCEPT」を設定する、下りスレッドの戻り値が「CLIENT_CONNECTION_CHECK」を設定する
+    // unit_test[475] test data:上りスレッドと下りスレッドの場合
     init_send_status(sendstatus);
        init_recive_data(receivedata);
     session_thread_data_sessionless thread_data_up;
@@ -11072,7 +10940,8 @@ void handle_sorry_disable_test(){
        this->session_thread_data_map[thread_down.get_id()]->recive_data_map.clear();
 
     cout << "[494]------------------------------------------" << endl;
-    // unit_test[494] 上りスレッドと下りスレッドの場合
+    // unit_test[494] 上りスレッドの戻り値が「ACCEPT」を設定する、下りスレッドの戻り値が「CLIENT_CONNECTION_CHECK」を設定する
+    // unit_test[494] test data:上りスレッドと下りスレッドの場合
     init_send_status(sendstatus);
        init_recive_data(receivedata);
     session_thread_data_sessionless thread_data_up;
@@ -11119,7 +10988,7 @@ void handle_realserver_disconnect_tcp_test(){
     EVENT_TAG ret;
     cout << "[495]------------------------------------------" << endl;
     //unit_test[495] 異常系 上りスレッドsession_thread_data_map中にThreadID対応のデータがない
-    this->session_thread_data_map[boost::this_thread::get_id()] = 0;
+    this->session_thread_data_map[boost::this_thread::get_id()] = NULL;
     boost::asio::ip::tcp::endpoint ep_err;
     ret = this->handle_realserver_disconnect(boost::this_thread::get_id(), ep_err);
     //遷移先ステータスを設定する status = FINALIZE
@@ -11347,7 +11216,7 @@ void handle_sorryserver_disconnect_test(){
     EVENT_TAG ret;
     cout << "[506]------------------------------------------" << endl;
     //unit_test[506] 異常系 上りスレッドsession_thread_data_map中にThreadID対応のデータなし
-    this->session_thread_data_map[boost::this_thread::get_id()] = 0;
+    this->session_thread_data_map[boost::this_thread::get_id()] = NULL;
     boost::asio::ip::tcp::endpoint ep_err;
     ret = this->handle_sorryserver_disconnect(boost::this_thread::get_id(), ep_err);
     //遷移先ステータスを設定する status = FINALIZE
@@ -11363,7 +11232,7 @@ void handle_sorryserver_disconnect_test(){
     cout << "[508]------------------------------------------" << endl;
     //unit_test[508] 異常系 下りスレッドsession_thread_data_map中にThreadID対応のデータなし
     boost::thread t_err(down_thread_func);
-    this->session_thread_data_map[t_err.get_id()] = 0;
+    this->session_thread_data_map[t_err.get_id()] = NULL;
     ret = this->handle_sorryserver_disconnect(t_err.get_id(), ep_err);
     //遷移先ステータスを設定する status = FINALIZE
     BOOST_CHECK_EQUAL(ret, FINALIZE);
@@ -11455,7 +11324,7 @@ void handle_sorryserver_disconnect_test(){
     session_thread_data_sessionless data4;
     this->session_thread_data_map[boost::this_thread::get_id()] = &data4;
     //make 上りスレッドの場合 0->上りスレッド
-    data4.thread_division = 0;
+    data4.thread_division = THREAD_DIVISION_UP_STREAM;
     //make 終了フラグがOFFの場合 0->off
     data4.end_flag = 0;
     //make realserver切替中でない場合 0->切替中でない
@@ -11573,7 +11442,7 @@ void handle_sorryserver_disconnect_test_thread_func(const boost::thread::id thre
 //handle_realserver_close 馮家純
 void handle_realserver_close_test(){
     cout << "[518]------------------------------------------" << endl;
-    //unit_test[518] handle_realserver_close return STOP
+    //unit_test[518] handle_realserver_close 戻り値が「STOP」に設定する。
     boost::asio::ip::udp::endpoint ep;
     EVENT_TAG ret = this->handle_realserver_close(boost::this_thread::get_id(), ep);
     BOOST_CHECK_EQUAL(ret, STOP);
index 74e469f..97b7782 100644 (file)
@@ -244,7 +244,7 @@ class sslid_replication_data_processor_stub : public sslid_replication_data_proc
 
         ~sslid_replication_data_processor_stub(){}
 
-        sslid_replication_data* get_replication_area()
+        sslid_replication_data*& get_replication_area()
                {
                        return replication_area;
                }
@@ -290,11 +290,13 @@ protocol_module_sslid_test_class() {
 //protocol_module_sslid
 void protocol_module_sslid_test() {
 
-    //unit_test[1] module name =="sslid"
+    cout << "[1]------------------------------------------" << endl;
+    //unit_test[1] モジュール名が"sslid"に設定する。
     protocol_module_sslid obj;
     BOOST_CHECK_EQUAL(obj.get_name(), "sslid");
 
-    //unit_test[2] new
+    cout << "[2]------------------------------------------" << endl;
+    //unit_test[2] sslidのインスタンスを生成する。
     protocol_module_sslid* p = new protocol_module_sslid();
     BOOST_CHECK_EQUAL(p->get_name(), "sslid");
     delete p;
@@ -304,18 +306,21 @@ void protocol_module_sslid_test() {
 
 //is_tcp
 void is_tcp_test(){
+    cout << "[3]------------------------------------------" << endl;
        //unit_test[3] is_tcp()メソッドのテスト,正常系で必ずTRUEを返す
     BOOST_CHECK(this->is_tcp());
 }
 
 //is_udp
 void is_udp_test(){
+    cout << "[4]------------------------------------------" << endl;
        //unit_test[4] is_udp()メソッドのテスト,正常系で必ずFALSEを返す
     BOOST_CHECK(!this->is_udp());
 }
 
 //get_name
 void get_name_test(){
+    cout << "[5]------------------------------------------" << endl;
        //unit_test[5] get_name()メソッドのテスト,正常系で必ず"sslid"を返す
        BOOST_CHECK_EQUAL(this->get_name(), "sslid");
 }
@@ -332,7 +337,8 @@ void initialize_test() {
     boost::function<void(void)> inlist_lock = rslist_lock;
     boost::function<void(void)> inlist_unlock = rslist_unlock;
 
-    // unit_test[6] initialize test
+    cout << "[6]------------------------------------------" << endl;
+    // unit_test[6] initialize 初期値がある場合
     this->initialize(inrslist_begin, inrslist_end, inrslist_next,
             inlist_lock, inlist_unlock);
     BOOST_CHECK_EQUAL(this->rs_list_begin, rslist_begin);
@@ -356,7 +362,8 @@ void initialize_test() {
     this->rs_list_unlock();
     BOOST_CHECK(function_check_flag);
 
-    // unit_test[7] pass null to initialize
+    cout << "[7]------------------------------------------" << endl;
+    // unit_test[7] initialize 初期値が空の場合
     this->initialize(NULL, NULL, NULL, NULL, NULL);
     BOOST_CHECK(!this->rs_list_begin);
     BOOST_CHECK(!this->rs_list_end);
@@ -386,7 +393,8 @@ void finalize_test() {
     logger_func_type inputLogInfo = stb_putLogInfo;
     logger_func_type inputLogDebug = stb_putLogDebug;
 
-    // unit_test[8] normal
+    cout << "[8]------------------------------------------" << endl;
+    // unit_test[8] 初期値がある場合
     this->initialize(inrslist_begin, inrslist_end, inrslist_next,
             inlist_lock, inlist_unlock);
     this->finalize();
@@ -412,7 +420,8 @@ void finalize_test() {
     BOOST_CHECK(this->session_data_processor == NULL);
     BOOST_CHECK(this->replication_data_processor == NULL);
 
-    // unit_test[9] unnormal
+    cout << "[9]------------------------------------------" << endl;
+    // unit_test[9] 初期値が空の場合
     this->getloglevel = stb_getloglevel;
     this->putLogFatal = stb_putLogFatal;
     this->putLogError = stb_putLogError;
@@ -469,6 +478,7 @@ void finalize_test() {
 
 //is_use_sorry
 void is_use_sorry_test(){
+    cout << "[10]------------------------------------------" << endl;
        //unit_test[10] is_use_sorry()メソッドのテスト,正常系で必ずFALSEを返す
        BOOST_CHECK(!this->is_use_sorry());
 }
@@ -477,22 +487,27 @@ void is_use_sorry_test(){
 void check_parameter_test(){
        std::vector<std::string> args;
 
+    cout << "[11]------------------------------------------" << endl;
        //unit_test[11] オプション文字列が存在しない場合, チェック結果フラグにTRUEを設定する
        protocol_module_base::check_message_result check_message;
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[12]------------------------------------------" << endl;
        //unit_test[12] オプション文字列 = "-T", timeout設定フラグ = OFFの場合,チェック結果フラグにTRUEを設定する
        args.push_back("-T");
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
-       //unit_test[13] オプション文字列 = "--T", timeout設定フラグ = OFFの場合,チェック結果フラグにFALSEを設定する
+    cout << "[13]------------------------------------------" << endl;
+       //unit_test[13] オプション文字列 = "--T", timeout設定フラグ = OFFの場合,チェック結果フラグにFALSEを設定する、チェック結果メッセージに"Option error."を設定する
        args.clear();
        args.push_back("--T");
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,false);
+       BOOST_CHECK_EQUAL(check_message.message,"Option error.");
 
+    cout << "[14]------------------------------------------" << endl;
        //unit_test[14] オプション文字列 = "-T -T", timeout設定フラグ = OFFの場合,チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("-T");
@@ -500,6 +515,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[15]------------------------------------------" << endl;
        //unit_test[15] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-T/--timeout' option value '2ewqt' is not numeric character."を設定する
        //unit_test[15] data test:オプション文字列 = "-T 2ewqt" timeout設定フラグ = OFFの場合
        args.clear();
@@ -509,6 +525,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL(check_message.message,"'-T/--timeout' option value '2ewqt' is not numeric character.");
 
+    cout << "[16]------------------------------------------" << endl;
        //unit_test[16] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-T/--timeout' option value '$@#' is not numeric character."を設定する
        //unit_test[16] data test:オプション文字列 = "-T $@#" timeout設定フラグ = OFFの場合
        args.clear();
@@ -518,6 +535,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL(check_message.message,"'-T/--timeout' option value '$@#' is not numeric character.");
 
+    cout << "[17]------------------------------------------" << endl;
        //unit_test[17] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-T/--timeout' option value '2148583647' is too large."を設定する
        //unit_test[17] test data:オプション文字列 = "-T 2148583647" timeout設定フラグ = OFF の場合
        args.clear();
@@ -527,6 +545,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL(check_message.message,"'-T/--timeout' option value '2148583647' is too large.");
 
+    cout << "[18]------------------------------------------" << endl;
        //unit_test[18] チェック結果フラグにTRUEを設定する
        //unit_test[18] test data:オプション文字列 = "-T 2000" timeout設定フラグ = OFF の場合
        args.clear();
@@ -535,6 +554,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[19]------------------------------------------" << endl;
        //unit_test[19] チェック結果フラグにTRUEを設定する
        //unit_test[19] test data:オプション文字列 = "-T 2147483647" timeout設定フラグ = OFF の場合
        args.clear();
@@ -543,6 +563,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[20]------------------------------------------" << endl;
        //unit_test[20] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する
        //unit_test[20] test data:オプション文字列 = "-T 2000 -T" timeout設定フラグ = ON の場合
        args.clear();
@@ -553,6 +574,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-T/--timeout'.",check_message.message);
 
+    cout << "[21]------------------------------------------" << endl;
        //unit_test[21] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する
        //unit_test[21] test data:オプション文字列 = "-T 2000 -T 2000" timeout設定フラグ = ON の場合
        args.clear();
@@ -564,6 +586,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-T/--timeout'.",check_message.message);
 
+    cout << "[22]------------------------------------------" << endl;
        //unit_test[22] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する
        //unit_test[22] test data:オプション文字列 = "-T -T 20 -T" timeout設定フラグ = ON の場合
        args.clear();
@@ -575,12 +598,14 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-T/--timeout'.",check_message.message);
 
+    cout << "[23]------------------------------------------" << endl;
        //unit_test[23] オプション文字列 = "--timeout" timeout設定フラグ = OFF 次要素が存在しない場合,チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("--timeout");
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[24]------------------------------------------" << endl;
        //unit_test[24] オプション文字列 = "--timeout --timeout" の場合,チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("--timeout");
@@ -588,6 +613,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[25]------------------------------------------" << endl;
        //unit_test[25] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-T/--timeout' option value '2ewqt' is not numeric character."を設定する
        //unit_test[25] test data:オプション文字列 = "--timeout 2ewqt" timeout設定フラグ = OFF の場合
        args.clear();
@@ -597,6 +623,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL(check_message.message,"'-T/--timeout' option value '2ewqt' is not numeric character.");
 
+    cout << "[26]------------------------------------------" << endl;
        //unit_test[26] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-T/--timeout' option value '2148583647' is too large."を設定する
        //unit_test[26] test data:オプション文字列 = "--timeout 2148583647" timeout設定フラグ = OFF の場合
        args.clear();
@@ -606,6 +633,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL(check_message.message,"'-T/--timeout' option value '2148583647' is too large.");
 
+    cout << "[27]------------------------------------------" << endl;
        //unit_test[27] チェック結果フラグにTRUEを設定する
        //unit_test[27] test data:オプション文字列 = "--timeout 2000" timeout設定フラグ = OFF の場合
        args.clear();
@@ -614,6 +642,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[28]------------------------------------------" << endl;
        //unit_test[28] チェック結果フラグにTRUEを設定する
        //unit_test[28] test data:オプション文字列 = "--timeout 2147483647" timeout設定フラグ = OFFの場合
        args.clear();
@@ -622,6 +651,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[29]------------------------------------------" << endl;
        //unit_test[29] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する
        //unit_test[29] test data:オプション文字列 = "--timeout 2000 --timeout" timeout設定フラグ = ONの場合
        args.clear();
@@ -632,6 +662,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-T/--timeout'.",check_message.message);
 
+    cout << "[30]------------------------------------------" << endl;
        //unit_test[30] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する
        //unit_test[30] test data:オプション文字列 = "--timeout 2000 --timeout 2000" timeout設定フラグ = ONの場合
        args.clear();
@@ -643,6 +674,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-T/--timeout'.",check_message.message);
 
+    cout << "[31]------------------------------------------" << endl;
        //unit_test[31] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する
        //unit_test[31] test data:オプション文字列 = "--timeout --timeout 2000 --timeout" timeout設定フラグ = ONの場合
        args.clear();
@@ -654,12 +686,14 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-T/--timeout'.",check_message.message);
 
+    cout << "[32]------------------------------------------" << endl;
        //unit_test[32] オプション文字列 = "-M" maxlist設定フラグ = OFFの場合,チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("-M");
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(true,check_message.flag);
 
+    cout << "[33]------------------------------------------" << endl;
        //unit_test[33] オプション文字列 = "-M -M" maxlist設定フラグ = OFFの場合,チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("-M");
@@ -667,6 +701,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[34]------------------------------------------" << endl;
        //unit_test[34] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-M/--maxlist' option value '1st' is not numeric character."を設定する
        //unit_test[34] test data:オプション文字列 = "-M 1st" maxlist設定フラグ = OFFの場合
        args.clear();
@@ -676,6 +711,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL(check_message.message,"'-M/--maxlist' option value '1st' is not numeric character.");
 
+    cout << "[35]------------------------------------------" << endl;
        //unit_test[35] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-M/--maxlist' option value '2148583647' is too large."を設定する
        //unit_test[35] test data:オプション文字列 = "-M 2148583647" maxlist設定フラグ = OFFの場合
        args.clear();
@@ -685,6 +721,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL(check_message.message,"'-M/--maxlist' option value '2148583647' is too large.");
 
+    cout << "[36]------------------------------------------" << endl;
        //unit_test[36] チェック結果フラグにTRUEを設定する
        //unit_test[36] test data:オプション文字列 = "-M 100" maxlist設定フラグ = OFFの場合
        args.clear();
@@ -693,6 +730,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[37]------------------------------------------" << endl;
        //unit_test[37] チェック結果フラグにTRUEを設定する
        //unit_test[37] test data:オプション文字列 = "-M 2147483647" maxlist設定フラグ = OFFの場合
        args.clear();
@@ -701,6 +739,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[38]------------------------------------------" << endl;
        //unit_test[38] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する
        //unit_test[38] test data:オプション文字列 = "-M 100 -M"の場合
        args.clear();
@@ -711,6 +750,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-M/--maxlist'.",check_message.message);
 
+    cout << "[39]------------------------------------------" << endl;
        //unit_test[39] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する
        //unit_test[39] test data:オプション文字列 = "-M 100 -M 100"の場合
        args.clear();
@@ -722,6 +762,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-M/--maxlist'.",check_message.message);
 
+    cout << "[40]------------------------------------------" << endl;
        //unit_test[40] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する
        //unit_test[40] test data:オプション文字列 = "-M -M 20 -M"の場合
        args.clear();
@@ -733,6 +774,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-M/--maxlist'.",check_message.message);
 
+    cout << "[41]------------------------------------------" << endl;
        //unit_test[41] チェック結果フラグにTRUEを設定する
        //unit_test[41] test data:オプション文字列 = "--maxlist" maxlist設定フラグ = OFFの場合
        args.clear();
@@ -740,7 +782,8 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
-       //unit_test[42] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-M/--maxlist option' value 1st is not numeric character."を設定する
+    cout << "[42]------------------------------------------" << endl;
+       //unit_test[42] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-M/--maxlist option' value '1st' is not numeric character."を設定する
        //unit_test[42] test data:オプション文字列 = "--maxlist 1st" maxlist設定フラグ = OFFの場合
        args.clear();
        args.push_back("--maxlist");
@@ -749,7 +792,8 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL(check_message.message,"'-M/--maxlist' option value '1st' is not numeric character.");
 
-       //unit_test[43] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-M/--maxlist option' value 2148583647 is too large."を設定する
+    cout << "[43]------------------------------------------" << endl;
+       //unit_test[43] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-M/--maxlist option' value '2148583647' is too large."を設定する
        //unit_test[43] test data:オプション文字列 = "--maxlist 2148583647" maxlist設定フラグ = OFFの場合
        args.clear();
        args.push_back("--maxlist");
@@ -758,6 +802,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL(check_message.message,"'-M/--maxlist' option value '2148583647' is too large.");
 
+    cout << "[44]------------------------------------------" << endl;
        //unit_test[44] チェック結果フラグにTRUEを設定する
        //unit_test[44] test data:オプション文字列 = "--maxlist 100" maxlist設定フラグ = OFFの場合
        args.clear();
@@ -766,6 +811,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[45]------------------------------------------" << endl;
        //unit_test[45] チェック結果フラグにTRUEを設定する
        //unit_test[45] test data:オプション文字列 = "--maxlist 2147483647" maxlist設定フラグ = OFFの場合
        args.clear();
@@ -775,6 +821,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
 
+    cout << "[46]------------------------------------------" << endl;
        //unit_test[46] チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する
        //unit_test[46] test data:オプション文字列 = "--maxlist 100 --maxlist"の場合
        args.clear();
@@ -785,6 +832,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-M/--maxlist'.",check_message.message);
 
+    cout << "[47]------------------------------------------" << endl;
        //unit_test[47] チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する
        //unit_test[47] test data:オプション文字列 = "--maxlist 100 --maxlist"の場合
        args.clear();
@@ -796,6 +844,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-M/--maxlist'.",check_message.message);
 
+    cout << "[48]------------------------------------------" << endl;
        //unit_test[48] チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する
        //unit_test[48] test data:オプション文字列 = "--maxlist --maxlist 100 --maxlist"の場合
        args.clear();
@@ -807,6 +856,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("Cannot set multiple option '-M/--maxlist'.",check_message.message);
 
+    cout << "[49]------------------------------------------" << endl;
        //unit_test[49] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to choose either of reschedule or no_rescheduleを設定する
        //unit_test[49] test data:オプション文字列 ="-N -R"の場合
        args.clear();
@@ -816,6 +866,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("You have to choose either of reschedule or no-reschedule.",check_message.message);
 
+    cout << "[50]------------------------------------------" << endl;
        //unit_test[50] オプション文字列 ="-N",reschedule設定フラグ = ON,チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to choose either of reschedule or no_rescheduleを設定する
        //unit_test[50] test data:オプション文字列 ="-R -N"の場合
        args.clear();
@@ -825,7 +876,8 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("You have to choose either of reschedule or no-reschedule.",check_message.message);
 
-       //unit_test[51] オプション文字列 ="-T -M -R -N"の場合,チェック結果フラグにFALSEを設定する
+    cout << "[51]------------------------------------------" << endl;
+       //unit_test[51] オプション文字列 ="-T -M -R -N"の場合,チェック結果フラグにFALSEを設定する、チェック結果メッセージに"You have to choose either of reschedule or no_rescheduleを設定する
        args.clear();
        args.push_back("-T");
        args.push_back("-M");
@@ -833,8 +885,10 @@ void check_parameter_test(){
        args.push_back("-N");
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,false);
+       BOOST_CHECK_EQUAL("You have to choose either of reschedule or no-reschedule.",check_message.message);
 
-       //unit_test[52] オプション文字列 ="-M -T -N -R"の場合,チェック結果フラグにFALSEを設定する
+    cout << "[52]------------------------------------------" << endl;
+       //unit_test[52] オプション文字列 ="-M -T -N -R"の場合,チェック結果フラグにFALSEを設定する、チェック結果メッセージに"You have to choose either of reschedule or no_rescheduleを設定する
        args.clear();
        args.push_back("-M");
        args.push_back("-T");
@@ -842,7 +896,9 @@ void check_parameter_test(){
        args.push_back("-R");
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,false);
+       BOOST_CHECK_EQUAL("You have to choose either of reschedule or no-reschedule.",check_message.message);
 
+    cout << "[53]------------------------------------------" << endl;
        //unit_test[53] オプション文字列 ="-T 2000 -M 100 -R"の場合,チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("-T");
@@ -853,6 +909,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[54]------------------------------------------" << endl;
        //unit_test[54] オプション文字列 ="--timeout 2000 -M 100 -R"の場合,チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("--timeout");
@@ -863,6 +920,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[55]------------------------------------------" << endl;
        //unit_test[55] オプション文字列 ="-T 2000 --maxlist 100 -R"の場合,チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("-T");
@@ -873,6 +931,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[56]------------------------------------------" << endl;
        //unit_test[56] オプション文字列 ="--timeout 2000 --maxlist 100 -R"の場合,チェック結果フラグにTRUEを設定する
        args.clear();
        args.push_back("--timeout");
@@ -883,6 +942,7 @@ void check_parameter_test(){
        check_message=this->check_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[57]------------------------------------------" << endl;
        //unit_test[57] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to choose either of reschedule or no_rescheduleを設定する
        //unit_test[57] test data:オプション文字列 ="-T 2000 --maxlist 100 -R -N"の場合
        args.clear();
@@ -896,6 +956,7 @@ void check_parameter_test(){
        BOOST_CHECK_EQUAL(check_message.flag,false);
        BOOST_CHECK_EQUAL("You have to choose either of reschedule or no-reschedule.",check_message.message);
 
+    cout << "[58]------------------------------------------" << endl;
        //unit_test[58] オプション文字列 = 上記以外の場合,チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Option error"を設定する
        args.clear();
        args.push_back("-A");
@@ -906,6 +967,7 @@ void check_parameter_test(){
 
 //set_parameter
 void set_parameter_test(){
+    cout << "[59]------------------------------------------" << endl;
        //unit_test[59] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[59] test data:オプション文字列が存在しない,timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        protocol_module_base::check_message_result check_message;
@@ -922,6 +984,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[60]------------------------------------------" << endl;
        //unit_test[60] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[60] test data:オプション文字列 = "-T",timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -937,18 +1000,21 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
-       //unit_test[61] チェック結果フラグにFALSEを設定する,sessionデータをreplication_areaから回復する
+    cout << "[61]------------------------------------------" << endl;
+       //unit_test[61] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Option error"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[61] test data:オプション文字列 = "--T",timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
        args.push_back("--T");
        check_message=this->set_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,false);
+       BOOST_CHECK_EQUAL("Option error.",check_message.message);
        BOOST_CHECK(this->session_data_processor!=NULL);
        BOOST_CHECK(this->replication_data_processor!=NULL);
        this->timeout=111;
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[62]------------------------------------------" << endl;
        //unit_test[62] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[62] test data:オプション文字列 = "-T -T",timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -965,6 +1031,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[63]------------------------------------------" << endl;
        //unit_test[63] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-T/--timeout' option value '2ewqt' is not numeric character."を設定する,sessionデータをreplication_areaから回復する
        //unit_test[63] test data:オプション文字列 = "-T 2ewqt",timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -979,6 +1046,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[64]------------------------------------------" << endl;
        //unit_test[64] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-T/--timeout option' value '$@#' is not numeric character."を設定する,sessionデータをreplication_areaから回復する
        //unit_test[64] test data:オプション文字列 = "-T $@#",timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -993,6 +1061,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[65]------------------------------------------" << endl;
        //unit_test[65] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-T/--timeout' option value '2148583647' is too large."を設定する,sessionデータをreplication_areaから回復する
        //unit_test[65] test data:オプション文字列 = "-T 2148583647"の場合
        args.clear();
@@ -1005,6 +1074,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[66]------------------------------------------" << endl;
        //unit_test[66] チェック結果フラグにTRUEを設定する,timeoutに2000を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[66] test data:オプション文字列 = "-T 2000",timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1021,6 +1091,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[67]------------------------------------------" << endl;
        //unit_test[67] チェック結果フラグにTRUEを設定する,timeoutに2147483647を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[67] test data:オプション文字列 = "-T 2147483647",timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1037,6 +1108,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[68]------------------------------------------" << endl;
        //unit_test[68] チェック結果フラグにTRUEを設定する,timeoutに2147483647を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[68] test data:オプション文字列 = "-T -T 2147483647",timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1054,6 +1126,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[69]------------------------------------------" << endl;
        //unit_test[69] チェック結果フラグにFALSEを設定する,timeoutに2147483647を設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[69] test data:オプション文字列 = "-T 2147483647 -T",timeout設定フラグ = ON,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1070,6 +1143,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[70]------------------------------------------" << endl;
        //unit_test[70] チェック結果フラグにFALSEを設定する,timeoutに2147483647を設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[70] test data:オプション文字列 = "-T 2147483647 -T 2147483647",timeout設定フラグ = ON,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1085,6 +1159,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[71]------------------------------------------" << endl;
        //unit_test[71] チェック結果フラグにFALSEを設定する,timeoutに2147483647を設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[71] test data:オプション文字列 = "-T -T 2147483647 -T" timeout設定フラグ = ON,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1102,6 +1177,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[72]------------------------------------------" << endl;
        //unit_test[72] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[72] test data:オプション文字列 = "--timeout" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFF の場合
        args.clear();
@@ -1115,6 +1191,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[73]------------------------------------------" << endl;
        //unit_test[73] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[73] test data:オプション文字列 = "--timeout --timeout" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1131,6 +1208,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[74]------------------------------------------" << endl;
        //unit_test[74] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-T/--timeout' option value '2ewqt' is not numeric character."を設定する,sessionデータをreplication_areaから回復する
        //unit_test[74] test data:オプション文字列 = "--timeout 2ewqt" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1145,6 +1223,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[75]------------------------------------------" << endl;
        //unit_test[75] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-T/--timeout' option value '2148583647' is too large."を設定する,sessionデータをreplication_areaから回復する
        //unit_test[75] test data:オプション文字列 = "--timeout 2148583647" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1159,6 +1238,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[76]------------------------------------------" << endl;
        //unit_test[76] チェック結果フラグにTRUEを設定する,timeoutに2000を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[76] test data:オプション文字列 = "--timeout 2000" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1175,6 +1255,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[77]------------------------------------------" << endl;
        //unit_test[77] チェック結果フラグにTRUEを設定する,timeoutに2147483647を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[77] test data:オプション文字列 = "--timeout" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1191,6 +1272,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[78]------------------------------------------" << endl;
        //unit_test[78] チェック結果フラグにTRUEを設定する,timeoutに2147483647を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[78] test data:オプション文字列 = "--timeout --timeout 2147483647" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1208,6 +1290,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[79]------------------------------------------" << endl;
        //unit_test[79] チェック結果フラグにFALSEを設定する,timeoutに2147483647を設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[79] test data:オプション文字列 = "--timeout 2147483647 --timeout" timeout設定フラグ = ON,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1224,6 +1307,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[80]------------------------------------------" << endl;
        //unit_test[80] チェック結果フラグにFALSEを設定する,timeoutに2147483647を設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[80] test data:オプション文字列 = "--timeout 2147483647 --timeout 2147483647" timeout設定フラグ = ON,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1241,6 +1325,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[81]------------------------------------------" << endl;
        //unit_test[81] チェック結果フラグにFALSEを設定する,timeoutに2147483647を設定する,チェック結果メッセージに"Cannot set multiple option '-T/timeout'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[81] test data:オプション文字列 = "--timeout 2147483647 --timeout" timeout設定フラグ = ON,maxlist設定フラグ = OFF,reschedule設定フラグ = OFFの場合
        args.clear();
@@ -1257,6 +1342,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[82]------------------------------------------" << endl;
        //unit_test[82] チェック結果フラグにTRUEを設定する,timeに3600を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[82] test data:オプション文字列 = "-M" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1272,6 +1358,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[83]------------------------------------------" << endl;
        //unit_test[83] チェック結果フラグにTRUEを設定する,timeに3600を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[83] test data:オプション文字列 = "-M -M" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1288,6 +1375,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[84]------------------------------------------" << endl;
        //unit_test[84] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-M/--maxlist' option value '2ewqt' is not numeric character."を設定する,sessionデータをreplication_areaから回復する
        //unit_test[84] test data:オプション文字列 = "-M 2ewqt" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1302,6 +1390,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[85]------------------------------------------" << endl;
        //unit_test[85] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-M/--maxlist' option value '2148583647' is too large."を設定する,sessionデータをreplication_areaから回復する
        //unit_test[85] test data:オプション文字列 = "-M 2148583647" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1316,6 +1405,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[86]------------------------------------------" << endl;
        //unit_test[86] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに100を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[86] test data:オプション文字列 = "-M 100" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschdule設定フラグ = OFF
        args.clear();
@@ -1332,6 +1422,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[87]------------------------------------------" << endl;
        //unit_test[87] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに100を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[87] test data:オプション文字列 = "-M -M 100" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschdule設定フラグ = OFF
        args.clear();
@@ -1349,6 +1440,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[88]------------------------------------------" << endl;
        //unit_test[88] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに2147483674を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[88] test data:オプション文字列 = "-M 1024" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1365,6 +1457,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[89]------------------------------------------" << endl;
        //unit_test[89] チェック結果フラグにFALSEを設定する,maxlistに200を設定する,チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[89] test data:オプション文字列 = "-M 200 -M" maxlist設定フラグ = ON,timeout設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1381,6 +1474,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[90]------------------------------------------" << endl;
        //unit_test[90] チェック結果フラグにFALSEを設定する,maxlistに200を設定する,チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[90] test data:オプション文字列 = "-M 200 -M 200" maxlist設定フラグ = ON,timeout設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1398,6 +1492,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[91]------------------------------------------" << endl;
        //unit_test[91] チェック結果フラグにFALSEを設定する,maxlistに200を設定する,チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[91] test data:オプション文字列 = "-M -M 200 -M" maxlist設定フラグ = ON,timeout設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1415,6 +1510,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[92]------------------------------------------" << endl;
        //unit_test[92] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[92] test data:オプション文字列 = "--maxlist" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1430,6 +1526,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[93]------------------------------------------" << endl;
        //unit_test[93] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに1024を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[93] test data:オプション文字列 = "--maxlist --maxlist" timeout設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1446,6 +1543,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[94]------------------------------------------" << endl;
        //unit_test[94] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-M/--maxlist' option value '2ewqt' is not numeric character."を設定する,sessionデータをreplication_areaから回復する
        //unit_test[94] test data:オプション文字列 = "--maxlist 2ewqt" maxlist設定フラグ = OFF,maxlist設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1460,6 +1558,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[95]------------------------------------------" << endl;
        //unit_test[95] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"'-M/--maxlist' option value '2148583647' is too large."を設定する,sessionデータをreplication_areaから回復する
        //unit_test[95] test data:オプション文字列 = "--maxlist 2148583647" timeout設定フラグ = OFF ,maxlist設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1474,6 +1573,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[96]------------------------------------------" << endl;
        //unit_test[96] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに100を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[96] test data:オプション文字列 = "--maxlist 100" timeout設定フラグ = OFF ,maxlist設定フラグ = OFF,reschedule設定フラグ = OFF
        args.clear();
@@ -1490,6 +1590,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[97]------------------------------------------" << endl;
        //unit_test[97] チェック結果フラグにTRUEを設定する,timeoutに3600を設定する,maxlistに100を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[97] test data:オプション文字列 = "--maxlist --maxlist 100" timeout設定フラグ = OFF ,reschedule設定フラグ = OFF
        args.clear();
@@ -1507,6 +1608,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[98]------------------------------------------" << endl;
        //unit_test[98] チェック結果フラグにTRUEを設定する,maxlistにINT_MAXを設定する,timeoutに3600を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[98] test data:オプション文字列 = "--maxlist 1024" maxlist設定フラグ = OFF,timeout設定フラグ = OFF ,reschedule設定フラグ = OFF
        args.clear();
@@ -1523,6 +1625,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[99]------------------------------------------" << endl;
        //unit_test[99] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[99] test data:オプション文字列 = "--maxlist 20 --maxlist"
        args.clear();
@@ -1538,6 +1641,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[100]------------------------------------------" << endl;
        //unit_test[100] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[100] test data:オプション文字列 = "--maxlist 20 --maxlist 20"
        args.clear();
@@ -1554,6 +1658,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[101]------------------------------------------" << endl;
        //unit_test[101] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot set multiple option '-M/maxlist'"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[101] test data:オプション文字列 = "--maxlist --maxlist 20 --maxlist"
        args.clear();
@@ -1570,6 +1675,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[102]------------------------------------------" << endl;
        //unit_test[102] チェック結果フラグにTRUEを設定する,rescheduleに1を設定する,timeoutに3600を設定する,maxlistに1024を設定する,sessionデータをreplication_areaから回復する
        //unit_test[102] test data:オプション文字列 = "-R" no_reschedule設定フラグ = OFF
        args.clear();
@@ -1585,6 +1691,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[103]------------------------------------------" << endl;
        //unit_test[103] チェック結果フラグにFALSEを設定する,rescheduleに0を設定する,チェック結果メッセージに"You have to choose either of reschedule or no_reschedule"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[103] test data:オプション文字列 ="-N -R"
        args.clear();
@@ -1600,6 +1707,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[104]------------------------------------------" << endl;
        //unit_test[104] チェック結果フラグにTRUEを設定する,rescheduleに0を設定する,timeoutに3600を設定する,maxlistに1024を設定する,sessionデータをreplication_areaから回復する
        //unit_test[104] test data:オプション文字列 = "-N" reschedule設定フラグ = OFF
        args.clear();
@@ -1615,6 +1723,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[105]------------------------------------------" << endl;
        //unit_test[105] チェック結果フラグにFALSEを設定する,rescheduleに1を設定する,チェック結果メッセージに"You have to choose either of reschedule or no_reschedule"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[105] test data:オプション文字列 = "-R -N"
        args.clear();
@@ -1630,7 +1739,8 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
-       //unit_test[106] チェック結果フラグにFALSEを設定する,timeoutに2000を設定する,maxlistに100を設定する,rescheduleに1を設定する,sessionデータをreplication_areaから回復する
+    cout << "[106]------------------------------------------" << endl;
+       //unit_test[106] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to choose either of reschedule or no_reschedule"を設定する,timeoutに2000を設定する,maxlistに100を設定する,rescheduleに1を設定する,sessionデータをreplication_areaから回復する
        //unit_test[106] test data:オプション文字列 = "-T -M -R -N"
        args.clear();
        args.push_back("-T");
@@ -1639,13 +1749,15 @@ void set_parameter_test(){
        args.push_back("-N");
        check_message=this->set_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,false);
+       BOOST_CHECK_EQUAL("You have to choose either of reschedule or no-reschedule.",check_message.message);
        BOOST_CHECK(this->session_data_processor!=NULL);
        BOOST_CHECK(this->replication_data_processor!=NULL);
        this->timeout=111;
        this->maxlist=111;
        this->reschedule=111;
 
-       //unit_test[107] チェック結果フラグにFALSEを設定する,timeoutに2000を設定する,maxlistに100を設定する,rescheduleに1を設定する,sessionデータをreplication_areaから回復する
+    cout << "[107]------------------------------------------" << endl;
+       //unit_test[107] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to choose either of reschedule or no_reschedule"を設定する,timeoutに2000を設定する,maxlistに100を設定する,rescheduleに1を設定する,sessionデータをreplication_areaから回復する
        //unit_test[107] test data:オプション文字列 = "-M -T -N -R"
        args.clear();
        args.push_back("-M");
@@ -1654,12 +1766,14 @@ void set_parameter_test(){
        args.push_back("-R");
        check_message=this->set_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,false);
+       BOOST_CHECK_EQUAL("You have to choose either of reschedule or no-reschedule.",check_message.message);
        BOOST_CHECK(this->session_data_processor!=NULL);
        BOOST_CHECK(this->replication_data_processor!=NULL);
        this->timeout=111;
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[108]------------------------------------------" << endl;
        //unit_test[108] チェック結果フラグにTRUEを設定する,timeoutに2000を設定する,maxlistに100を設定する,rescheduleに1を設定する,sessionデータをreplication_areaから回復する
        //unit_test[108] test data:オプション文字列 = "-T 2000 -M 100 -R"
        args.clear();
@@ -1679,6 +1793,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[109]------------------------------------------" << endl;
        //unit_test[109] チェック結果フラグにTRUEを設定する,reschedule設定フラグ = OFF,timeoutに2000を設定する,maxlistに100を設定する,rescheduleに1を設定する,sessionデータをreplication_areaから回復する
        //unit_test[109] test data:オプション文字列 = "-T 2000 --maxlist 100 -R"
        args.clear();
@@ -1698,6 +1813,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[110]------------------------------------------" << endl;
        //unit_test[110] チェック結果フラグにTRUEを設定する,reschedule設定フラグ = OFF,timeoutに2000を設定する,maxlistに100を設定する,rescheduleに1を設定する,sessionデータをreplication_areaから回復する
        //unit_test[110] test data:オプション文字列 = "--timeout 2000 -M 100 -R"
        args.clear();
@@ -1717,6 +1833,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[111]------------------------------------------" << endl;
        //unit_test[111] チェック結果フラグにTRUEを設定する,reschedule設定フラグ = OFF,timeoutに2000を設定する,maxlistに100を設定する,rescheduleに1を設定する,sessionデータをreplication_areaから回復する
        //unit_test[111] test data:オプション文字列 = "--timeout 2000 --maxlist 100 -R"
        args.clear();
@@ -1736,7 +1853,8 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
-       //unit_test[112] チェック結果フラグにFALSEを設定する,timeoutに2000を設定する,maxlistに100を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
+    cout << "[112]------------------------------------------" << endl;
+       //unit_test[112] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"You have to choose either of reschedule or no_reschedule"を設定する,timeoutに2000を設定する,maxlistに100を設定する,rescheduleに0を設定する,sessionデータをreplication_areaから回復する
        //unit_test[112] test data:オプション文字列 = "-T 2000 --maxlist 100 -R -N"
        args.clear();
        args.push_back("-T");
@@ -1747,6 +1865,7 @@ void set_parameter_test(){
        args.push_back("-N");
        check_message=this->set_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,false);
+       BOOST_CHECK_EQUAL("You have to choose either of reschedule or no-reschedule.",check_message.message);
        BOOST_CHECK_EQUAL(this->timeout,2000);
        BOOST_CHECK_EQUAL(this->maxlist,100);
        BOOST_CHECK(this->session_data_processor!=NULL);
@@ -1755,6 +1874,7 @@ void set_parameter_test(){
        this->maxlist=111;
        this->reschedule=111;
 
+    cout << "[113]------------------------------------------" << endl;
        //unit_test[113] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Option error"を設定する,sessionデータをreplication_areaから回復する
        //unit_test[113] test data:オプション文字列 = 上記以外
        args.clear();
@@ -1767,39 +1887,19 @@ void set_parameter_test(){
        this->timeout=111;
        this->maxlist=111;
        this->reschedule=111;
-
-
-       //unit_test[109] sessionデータをreplication_areaから回復する
-       //unit_test[109] test data:オプション文字列 = "-T",replication_area_lockにNULLを設定する,replication_area_unlockにNULLを設定する
-//     this->init_replication_functions(replication_pay_memory,NULL,NULL,tcp_ep,udp_ep);
-//     BOOST_CHECK(this->replication_data_processor->replication_area_lock==NULL);
-//     BOOST_CHECK(this->replication_data_processor->replication_area_unlock==NULL);
-//     BOOST_CHECK_EQUAL(this->session_data_processor->session_endpoint_map.empty(),false);
-//     BOOST_CHECK_EQUAL(this->session_data_processor->session_lasttime_map.empty(),false);
-//     BOOST_CHECK_EQUAL(this->session_data_processor->lasttime_session_map.empty(),false);
-
-       //unit_test[110] オプション文字列 = "-T"の場合,sessionデータをreplication_areaから回復する
-       //unit_test[110] test data:オプション文字列 = "-T"
-//     this->init_replication_functions(replication_pay_memory,replication_area_lock,replication_area_unlock,tcp_ep,udp_ep);
-//     void* data_addr=replication_pay_memory(moudle_name,&data_size);
-//     this->replication_data_processor->replication_area_lock();
-//     BOOST_CHECK_EQUAL(check_resule_lock,true);
-//     this->replication_data_processor->replication_area_unlock();
-//     BOOST_CHECK_EQUAL(check_resule_unlock,true);
-//     BOOST_CHECK_EQUAL(this->session_data_processor->session_endpoint_map.empty(),false);
-//     BOOST_CHECK_EQUAL(this->session_data_processor->session_lasttime_map.empty(),false);
-//     BOOST_CHECK_EQUAL(this->session_data_processor->lasttime_session_map.empty(),false);
 }
 
 //add_parameter
 void add_parameter_test(){
        std::vector<std::string> args;
 
+    cout << "[114]------------------------------------------" << endl;
        //unit_test[114] オプション文字列が存在ない場合,チェック結果フラグにTRUEを設定する
        check_message_result check_message;
        check_message=this->add_parameter(args);
        BOOST_CHECK_EQUAL(check_message.flag,true);
 
+    cout << "[115]------------------------------------------" << endl;
        //unit_test[115] チェック結果フラグにFALSEを設定する,チェック結果メッセージに"Cannot add option."を設定する
        //unit_test[115] test data:オプション文字列が存在する場合
        args.push_back("-T");
@@ -1819,13 +1919,13 @@ void register_schedule_tcp_test(){
        protocol_module_base::rs_list_itr_next_func_type rs_3;
        boost::asio::ip::tcp::endpoint ep;
        protocol_module_base::tcp_schedule_func_type tcp_schedule;
-       //unit_test[116] schedule_tcpにNULLを設定する
-       //unit_test[116] test data:NULL
+    cout << "[116]------------------------------------------" << endl;
+       //unit_test[116] parameterがNULLの場合,schedule_tcpにNULLを設定する
        tcp_schedule=NULL;
        this->register_schedule(tcp_schedule);
        BOOST_CHECK(this->schedule_tcp==NULL);
-       //unit_test[117] schedule_tcpにt_scheduleを設定する
-       //unit_test[117] test data:NULL
+    cout << "[117]------------------------------------------" << endl;
+       //unit_test[117] parameterがtcp_scheduleの場合,schedule_tcpにt_scheduleを設定する
        tcp_schedule=&t_schedule;
        this->register_schedule(tcp_schedule);
        this->schedule_tcp(boost::this_thread::get_id(),rs_1,rs_2,rs_3,ep);
@@ -1842,7 +1942,8 @@ void handle_session_initialize_test() {
     boost::asio::ip::tcp::endpoint client_endpoint_tcp;
     boost::asio::ip::udp::endpoint client_endpoint_udp;
 
-    // unit_test[118] handle_session_initialize
+    cout << "[118]------------------------------------------" << endl;
+    // unit_test[118] パラメータが正常に入力去れた場合、戻り値にACCEPTを設定する。
     EVENT_TAG status =
             this->handle_session_initialize(boost::this_thread::get_id(),
                     down_thread.get_id(), client_endpoint_tcp,
@@ -1881,7 +1982,8 @@ void handle_session_finalize_test() {
     boost::asio::ip::tcp::endpoint client_endpoint_tcp;
     boost::asio::ip::udp::endpoint client_endpoint_udp;
 
-    // unit_test[119] handle_session_finalize normal
+    cout << "[119]------------------------------------------" << endl;
+    // unit_test[119] パラメータが正常に入力された場合、戻り値にSTOPを設定する。
     this->handle_session_initialize(boost::this_thread::get_id(),
             down_thread.get_id(), client_endpoint_tcp, client_endpoint_udp);
     status = this->handle_session_finalize(boost::this_thread::get_id(),
@@ -1894,7 +1996,8 @@ void handle_session_finalize_test() {
     itr = this->session_thread_data_map.find(down_thread.get_id());
     BOOST_CHECK(itr == this->session_thread_data_map.end());
 
-    // unit_test[120] handle_session_finalize STOP
+    cout << "[120]------------------------------------------" << endl;
+    // unit_test[120] 初期化しなくて、直接該当関数を呼び出す場合、戻り値にSTOPを設定する。
     this->session_thread_data_map[boost::this_thread::get_id()] = new session_thread_data_sslid;
     this->session_thread_data_map[down_thread.get_id()] = new session_thread_data_sslid;
     status = this->handle_session_finalize(boost::this_thread::get_id(),
@@ -1906,9 +2009,9 @@ void handle_session_finalize_test() {
     BOOST_CHECK(itr == this->session_thread_data_map.end());
 }
 
-//120end===========================================
 //handle_accept
 void handle_accept_test(){
+    cout << "[121]------------------------------------------" << endl;
        //unit_test[121] handle_accpet()メソッドのテスト,正常系で必ずCLIENT_RECVを返す
        boost::asio::ip::tcp::endpoint ep;
        session_thread_data_sslid thread_up_data_value;
@@ -1935,8 +2038,8 @@ void handle_client_recv_test() {
     int mem_cmp_result;
        int mem_cmp_length;
 
-    // unit_test[122] end_flag = END_FLAG_ON
-    // unit_test[122] test data:handle_client_recv() return CLIENT_RECV
+    cout << "[122]------------------------------------------" << endl;
+    // unit_test[122] 終了フラグがONの場合、戻り値にCLIENT_RECVを設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_ON;
     this->session_thread_data_map[boost::this_thread::get_id()]
@@ -1947,9 +2050,9 @@ void handle_client_recv_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[123] end_flag = END_FLAG_OFF, data_size = 0, current_record_rest_size > 0,
-    // unit_test[123] recvlen > 0,data_begain_offset = 0
-    // unit_test[123] test data:handle_client_recv() return REALSERVER_SELECT, data_size, data_begain_offset
+    cout << "[123]------------------------------------------" << endl;
+    // unit_test[123] 終了フラグがOFFで、且つ データサイズが0で、且つ 新SSLレコードでなくて、
+    // unit_test[123] 且つ受信データサイズ > 0、且つdata_begain_offset = 0の場合、戻り値をREALSERVER_SELECTに設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 0u;
@@ -1972,9 +2075,9 @@ void handle_client_recv_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[124] end_flag = END_FLAG_OFF, data_size = 0, current_record_rest_size > 0, recvlen > 0,
-    // unit_test[124] data_begain_offset > 0
-    // unit_test[124] test data:handle_client_recv() return REALSERVER_SELECT, data_size, data_begain_offset
+    cout << "[124]------------------------------------------" << endl;
+    // unit_test[124] 終了フラグがOFFで、且つ データサイズが0で、且つ 新SSLレコードでなくて、
+    // unit_test[124] 且つ受信データサイズ > 0、且つdata_begain_offset > 0の場合、戻り値をREALSERVER_SELECTに設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 0u;
@@ -1997,9 +2100,9 @@ void handle_client_recv_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[125] end_flag = END_FLAG_OFF, data_size = 0, current_record_rest_size = 0,
-    // unit_test[125] data_begain_offset = 0,check_ssl_record_sendable() return -1 (異常)
-    // unit_test[125] test data:handle_client_recv() return FINALIZE, data_size, data_begain_offset
+    cout << "[125]------------------------------------------" << endl;
+    // unit_test[125] 終了フラグがOFFで、 且つ データサイズが0で、 且つ 新SSLレコードで、
+    // unit_test[125] 且つdata_begain_offset が 0で,且つcheck_ssl_record_sendable()の戻り値が-1 (異常)の場合、戻り値をFINALIZEに設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 0u;
@@ -2023,9 +2126,9 @@ void handle_client_recv_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[126] end_flag = END_FLAG_OFF, data_size = 0, current_record_rest_size = 0,
-    // unit_test[126] data_begain_offset > 0,check_ssl_record_sendable() return -1 (異常)
-    // unit_test[126] test data:handle_client_recv() return FINALIZE, data_size, data_begain_offset
+    cout << "[126]------------------------------------------" << endl;
+    // unit_test[126] 終了フラグがOFFで、 且つ データサイズが0で、 且つ 新SSLレコードで、
+    // unit_test[126] 且つdata_begain_offset > 0で,且つcheck_ssl_record_sendable()の戻り値が-1 (異常)の場合、戻り値をFINALIZEに設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 0u;
@@ -2049,9 +2152,9 @@ void handle_client_recv_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[127] end_flag = END_FLAG_OFF, data_size = 0, current_record_rest_size = 0,
-    // unit_test[127] data_begain_offset = 0,check_ssl_record_sendable() return 1 (送信不可)
-    // unit_test[127] test data:handle_client_recv() return CLIENT_RECV, data_size, data_begain_offset
+    cout << "[127]------------------------------------------" << endl;
+    // unit_test[127] 終了フラグがOFFで、 且つ データサイズが0で、 且つ 新SSLレコードで、
+    // unit_test[127] 且つdata_begain_offset = 0で,且つcheck_ssl_record_sendable()の戻り値が1(送信不可)の場合、戻り値をCLIENT_RECVに設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 0u;
@@ -2071,9 +2174,9 @@ void handle_client_recv_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[128] end_flag = END_FLAG_OFF, data_size = 0, current_record_rest_size = 0,
-    // unit_test[128] data_begain_offset > 0,check_ssl_record_sendable() return 1 (送信不可)
-    // unit_test[128] test data:handle_client_recv() return CLIENT_RECV, data_size, data_begain_offset
+    cout << "[128]------------------------------------------" << endl;
+    // unit_test[128] 終了フラグがOFFで、 且つ データサイズが0で、 且つ 新SSLレコードで、
+    // unit_test[128] 且つdata_begain_offset > 0で、且つcheck_ssl_record_sendable()の戻り値が1(送信不可)の場合、戻り値をCLIENT_RECVに設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 0u;
@@ -2093,10 +2196,9 @@ void handle_client_recv_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[129] end_flag = END_FLAG_OFF, data_size = 0, current_record_rest_size = 0, data_begain_offset = 0,
-    // unit_test[129] check_ssl_record_sendable() return 0 (送信可能),is hello message
-    // unit_test[129] test data:hello_message_flag = true, handle_client_recv() return REALSERVER_SELECT,
-    // unit_test[129] current_record_rest_size, data_size, data_begain_offset
+    cout << "[129]------------------------------------------" << endl;
+    // unit_test[129] 終了フラグがOFFで、 且つ データサイズが0で、 且つ 新SSLレコードで、
+    // unit_test[129] 且つdata_begain_offset = 0で,且つcheck_ssl_record_sendable()の戻り値が0(送信可能)の場合、戻り値をREALSERVER_SELECTに設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 0u;
@@ -2132,10 +2234,9 @@ void handle_client_recv_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[130] end_flag = END_FLAG_OFF, data_size = 0, current_record_rest_size = 0,data_begain_offset > 0
-    // unit_test[130] check_ssl_record_sendable() return 0 (送信可能), is hello message
-    // unit_test[130] test data:hello_message_flag = true, handle_client_recv() return REALSERVER_SELECT,
-    // unit_test[130] current_record_rest_size, data_size, data_begain_offset
+    cout << "[130]------------------------------------------" << endl;
+    // unit_test[130] 終了フラグがOFFで、 且つ データサイズが0で、 且つ 新SSLレコードで、
+    // unit_test[130] 且つ、data_begain_offset > 0で、且つcheck_ssl_record_sendable()の戻り値が0(送信可能)の場合、戻り値にREALSERVER_SELECTを設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 0u;
@@ -2171,10 +2272,9 @@ void handle_client_recv_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[130] end_flag = END_FLAG_OFF, data_size = 0, current_record_rest_size = 0, data_begain_offset = 0
-    // unit_test[130] check_ssl_record_sendable() return 0 (送信可能), is not hello message
-    // unit_test[130] test data:hello_message_flag = false, handle_client_recv() return REALSERVER_SELECT,
-    // unit_test[130] current_record_rest_size, data_size, data_begain_offset
+    cout << "[131]------------------------------------------" << endl;
+    // unit_test[131] 終了フラグがOFFで、 且つ データサイズが0で、 且つ 新SSLレコードで、
+    // unit_test[131] 且つ data_begain_offset = 0で、且つ且つcheck_ssl_record_sendable()の戻り値が0(送信可能)の場合、戻り値をREALSERVER_SELECTに設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 0u;
@@ -2201,10 +2301,9 @@ void handle_client_recv_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[131] end_flag = END_FLAG_OFF, data_size = 0, current_record_rest_size = 0, data_begain_offset > 0
-    // unit_test[131] check_ssl_record_sendable() return 0 (送信可能), is not hello message
-    // unit_test[131] test data:hello_message_flag = false, handle_client_recv() return REALSERVER_SELECT,
-    // unit_test[131] current_record_rest_size, data_size, data_begain_offset
+    cout << "[132]------------------------------------------" << endl;
+    // unit_test[132] 終了フラグがOFFで、 且つ データサイズが0で、 且つ 新SSLレコードで、
+    // unit_test[132] 且つdata_begain_offset > 0で、且つcheck_ssl_record_sendable()の戻り値が0(送信可能)の場合、戻り値がREALSERVER_SELECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 0u;
@@ -2231,9 +2330,9 @@ void handle_client_recv_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[132] end_flag = END_FLAG_OFF, data_size > 0, current_record_rest_size != 0,
-    // unit_test[132] data_begain_offset != 0
-    // unit_test[132] test data:handle_client_recv() return REALSERVER_SELECT, data_size, data_begain_offset
+    cout << "[133]------------------------------------------" << endl;
+    // unit_test[133] 終了フラグがOFFで、 且つ データサイズ > 0、且つ新SSLレコードでなくて、且つdata_begain_offset > 0の場合
+    // unit_test[133] 戻り値がREALSERVER_SELECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 10u;
@@ -2261,8 +2360,9 @@ void handle_client_recv_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[133] end_flag = END_FLAG_OFF, data_size > 0, current_record_rest_size != 0, data_begain_offset = 0
-    // unit_test[133] test data:handle_client_recv() return REALSERVER_SELECT, data_size, data_begain_offset
+    cout << "[134]------------------------------------------" << endl;
+    // unit_test[134] 終了フラグがOFFで、且つ データサイズ > 0、且つ新SSLレコードでなくて、且つdata_begain_offset = 0の場合
+    // unit_test[134] 戻り値がREALSERVER_SELECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 10u;
@@ -2290,9 +2390,10 @@ void handle_client_recv_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[134] end_flag = END_FLAG_OFF, data_size > 0,current_record_rest_size = 0,data_begain_offset != 0
-    // unit_test[134] check_ssl_record_sendable() return -1 (異常)
-    // unit_test[134] test data:handle_client_recv() return FINALIZE, data_size, data_begain_offset
+    cout << "[135]------------------------------------------" << endl;
+    // unit_test[135] 終了フラグがOFFで、且つ データサイズ > 0、且つ新SSLレコードで,且つdata_begain_offset > 0
+    // unit_test[135] 且つcheck_ssl_record_sendable()の戻り値が-1(異常)の場合
+    // unit_test[135] 戻り値がFINALIZEで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 10u;
@@ -2321,9 +2422,10 @@ void handle_client_recv_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[135] end_flag = END_FLAG_OFF, data_size > 0,current_record_rest_size = 0,data_begain_offset = 0
-    // unit_test[135] check_ssl_record_sendable() return -1 (異常)
-    // unit_test[135] test data:handle_client_recv() return FINALIZE, data_size, data_begain_offset
+    cout << "[136]------------------------------------------" << endl;
+    // unit_test[136] 終了フラグがOFFで、 且つ データサイズ > 0、且つ新SSLレコードで、且つdata_begain_offset = 0
+    // unit_test[136] 且つcheck_ssl_record_sendable()の戻り値が-1 (異常)の場合
+    // unit_test[136] 戻り値がFINALIZEで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 10u;
@@ -2352,9 +2454,10 @@ void handle_client_recv_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[136] end_flag = END_FLAG_OFF, data_size > 0,current_record_rest_size = 0,data_begain_offset != 0
-    // unit_test[136] check_ssl_record_sendable() return 1 (送信不可)
-    // unit_test[136] test data:handle_client_recv() return CLIENT_RECV, data_size, data_begain_offset
+    cout << "[137]------------------------------------------" << endl;
+    // unit_test[137] 終了フラグがOFFで、 且つ データサイズ > 0、且つ新SSLレコードで、且つdata_begain_offset > 0
+    // unit_test[137] 且つcheck_ssl_record_sendable()の戻り値が1 (送信不可)の場合
+    // unit_test[137] 戻り値が CLIENT_RECVで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 1u;
@@ -2382,9 +2485,10 @@ void handle_client_recv_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[137] end_flag = END_FLAG_OFF, data_size > 0,current_record_rest_size = 0,data_begain_offset = 0
-    // unit_test[137] check_ssl_record_sendable() return 1 (送信不可)
-    // unit_test[137] test data:handle_client_recv() return CLIENT_RECV, data_size, data_begain_offset
+    cout << "[138]------------------------------------------" << endl;
+    // unit_test[138] 終了フラグがOFFで、 且つ データサイズ > 0、且つ新SSLレコードで、且つdata_begain_offset = 0
+    // unit_test[138] 且つcheck_ssl_record_sendable()の戻り値が1 (送信不可)の場合
+    // unit_test[138] 戻り値が CLIENT_RECVで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 1u;
@@ -2412,10 +2516,10 @@ void handle_client_recv_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[138] end_flag = END_FLAG_OFF, data_size > 0, current_record_rest_size = 0,data_begain_offset != 0
-    // unit_test[138] check_ssl_record_sendable() return 0 (送信可能), is hello message
-    // unit_test[138] test data:handle_client_recv() return REALSERVER_SELECT, data_size, data_begain_offset,
-    // unit_test[138] current_record_rest_size, hello_message_flag
+    cout << "[139]------------------------------------------" << endl;
+    // unit_test[139] 終了フラグがOFFで、 且つ データサイズ > 0、且つ新SSLレコードで、且つdata_begain_offset > 0
+    // unit_test[139] 且つcheck_ssl_record_sendable()の戻り値が0(送信可能)の場合
+    // unit_test[139] 戻り値がREALSERVER_SELECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 3u;
@@ -2456,10 +2560,10 @@ void handle_client_recv_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[139] end_flag = END_FLAG_OFF, data_size > 0, current_record_rest_size = 0,data_begain_offset = 0
-    // unit_test[139] check_ssl_record_sendable() return 0 (送信可能), is hello message
-    // unit_test[139] test data:handle_client_recv() return REALSERVER_SELECT, data_size, data_begain_offset,
-    // unit_test[139] current_record_rest_size, hello_message_flag
+    cout << "[140]------------------------------------------" << endl;
+    // unit_test[140] 終了フラグがOFFで、 且つ データサイズ > 0、且つ新SSLレコードで、且つdata_begain_offset = 0
+    // unit_test[140] 且つheck_ssl_record_sendable()の戻り値が0(送信可能)の場合
+    // unit_test[140] 戻り値がREALSERVER_SELECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 3u;
@@ -2500,10 +2604,10 @@ void handle_client_recv_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[140] end_flag = END_FLAG_OFF,data_size>0,current_record_rest_size=0,data_begain_offset != 0
-    // unit_test[140] check_ssl_record_sendable() return 0 (送信可能), is not hello message
-    // unit_test[140] test data:handle_client_recv() return REALSERVER_SELECT, data_size, data_begain_offset,
-    // unit_test[140] current_record_rest_size, hello_message_flag
+    cout << "[141]------------------------------------------" << endl;
+    // unit_test[141] 終了フラグがOFFで、且つ データサイズ > 0、且つ新SSLレコードで、且つdata_begain_offset > 0
+    // unit_test[141] 且つheck_ssl_record_sendable()の戻り値が0(送信可能)の場合
+    // unit_test[141] 戻り値がREALSERVER_SELECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 3u;
@@ -2538,18 +2642,18 @@ void handle_client_recv_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[141] end_flag = END_FLAG_OFF,data_size>0,current_record_rest_size=0,data_begain_offset = 0
-    // unit_test[141] check_ssl_record_sendable() return 0 (送信可能), is not hello message
-    // unit_test[141] test data:handle_client_recv() return REALSERVER_SELECT, data_size, data_begain_offset,
-    // unit_test[141] current_record_rest_size, hello_message_flag
+    cout << "[142]------------------------------------------" << endl;
+    // unit_test[142] 終了フラグがOFFで、且つ データサイズ > 0、且つ新SSLレコードで、且つdata_begain_offset = 0
+    // unit_test[142] 且つcheck_ssl_record_sendable()の戻り値が0(送信可能)の場合
+    // unit_test[142] 戻り値がREALSERVER_SELECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = 3u;
     up_thread_data->data_begain_offset = 0u;
     up_thread_data->current_record_rest_size = 0u;
-    up_thread_data->data_buffer[12] = 0x17;
-    up_thread_data->data_buffer[13] = 0x03;
-    up_thread_data->data_buffer[14] = 0x01;
+    up_thread_data->data_buffer[0] = 0x17;
+    up_thread_data->data_buffer[1] = 0x03;
+    up_thread_data->data_buffer[2] = 0x01;
     this->session_thread_data_map[boost::this_thread::get_id()]
             = up_thread_data;
     recvlen = 6;
@@ -2576,21 +2680,24 @@ void handle_client_recv_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[142] recvlen > recvbuffer.size()
-    // unit_test[142] test data:handle_client_recv() return FINALIZE
+    cout << "[143]------------------------------------------" << endl;
+    // unit_test[143] 受信データサイズ > 受信バッファサイズの場合
+    // unit_test[143] 戻り値がFINALIZEで設定する。
     recvlen = recvbuffer.size() + 1;
     status = this->handle_client_recv(boost::this_thread::get_id(),
             recvbuffer, recvlen);
     BOOST_CHECK_EQUAL(status, FINALIZE);
 
-    // unit_test[143] thread id is not in map
-    // unit_test[143] test data:handle_client_recv() return FINALIZE
+    cout << "[144]------------------------------------------" << endl;
+    // unit_test[144] スレッドIDがmapに存在しない場合
+    // unit_test[144] 戻り値がFINALIZEで設定する。
     status = this->handle_client_recv(boost::this_thread::get_id(),
             recvbuffer, recvlen);
     BOOST_CHECK_EQUAL(status, FINALIZE);
 
-    // unit_test[144] end_flag = END_FLAG_OFF, data_size+recvlen > MAX_SSLID_BUFFER_SIZE
-    // unit_test[144] test data:handle_client_recv() return FINALIZE, end_flag=END_FLAG_ON
+    cout << "[145]------------------------------------------" << endl;
+    // unit_test[145] 終了フラグがOFFで,且つ data_size+recvlen > MAX_SSLID_BUFFER_SIZEの場合
+    // unit_test[145] 戻り値がFINALIZEで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->end_flag = END_FLAG_OFF;
     up_thread_data->data_size = static_cast<size_t>(MAX_BUFFER_SIZE) + 76u;
@@ -2634,8 +2741,8 @@ void handle_realserver_select_tcp_test() {
     boost::function<void(const unsigned int, const std::string&,
             const char*, int)> inputLogDebug = stb_putLogDebug;
 
-    // unit_test[145] realserver_connect_failed_count = realserver_connect_failed_max_count
-    // unit_test[145] test data:end_flag = END_FLAG_ON, handle_realserver_select() return CLIENT_DISCONNECT
+    cout << "[146]------------------------------------------" << endl;
+    // unit_test[146] realserver接続回数が最大回数の場合、戻り値がCLIENT_DISCONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count
             = this->realserver_connect_failed_max_count;
@@ -2648,8 +2755,8 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[146] realserver_connect_failed_count > realserver_connect_failed_max_count
-    // unit_test[146] test data:end_flag = END_FLAG_ON, handle_realserver_select() return CLIENT_DISCONNECT
+    cout << "[147]------------------------------------------" << endl;
+    // unit_test[147] realserver接続回数が最大回数を越える場合、戻り値がCLIENT_DISCONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count
             = this->realserver_connect_failed_max_count + 1;
@@ -2662,9 +2769,9 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[147] 0< realserver_connect_failed_count < realserver_connect_failed_max_count, reschedule = 1(ON)
-    // unit_test[147] get endpoint OK !
-    // unit_test[147] test data:selected_realserver, handle_realserver_select() return REALSERVER_CONNECT
+    cout << "[148]------------------------------------------" << endl;
+    // unit_test[148] realserver接続回数が最大回数に未満で, reschedule が 1(ON)、endpointが決定の場合
+    // unit_test[148] 戻り値が REALSERVER_CONNECTで設定する。
     this->schedule_tcp = schedule_tcp_func1;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count
@@ -2679,9 +2786,9 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[148] 0< realserver_connect_failed_count < realserver_connect_failed_max_count, reschedule = 1(ON)
-    // unit_test[148] get endpoint failed !
-    // unit_test[148] test data:end_flag = END_FLAG_ON, handle_realserver_select() return CLIENT_DISCONNECT
+    cout << "[149]------------------------------------------" << endl;
+    // unit_test[149] realserver接続回数が最大回数に未満で, reschedule が 1(ON)、endpointが未決定の場合
+    // unit_test[149] 戻り値が CLIENT_DISCONNECTで設定する。
     this->schedule_tcp = schedule_tcp_func2;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count
@@ -2696,8 +2803,9 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[149] 0< realserver_connect_failed_count < realserver_connect_failed_max_count, reschedule = 0 (OFF)
-    // unit_test[149] test data:end_flag = END_FLAG_ON, handle_realserver_select() return CLIENT_DISCONNECT
+    cout << "[150]------------------------------------------" << endl;
+    // unit_test[150] realserver接続回数が最大回数に未満で, 且つreschedule が 0 (OFF)の場合
+    // unit_test[150] 戻り値が CLIENT_DISCONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count
             = this->realserver_connect_failed_max_count - 1;
@@ -2711,8 +2819,9 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[150] realserver_connect_failed_count = 0, selected_realserver != NULL
-    // unit_test[150] test data:handle_realserver_select() return REALSERVER_CONNECT
+    cout << "[151]------------------------------------------" << endl;
+    // unit_test[151] realserverの接続失敗回数が0, 且つselected_realserver が NULLでない場合
+    // unit_test[151] 戻り値がREALSERVER_CONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = 0;
     up_thread_data->selected_realserver = ep1;
@@ -2724,8 +2833,9 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[151] realserver_connect_failed_count = 0, selected_realserver = NULL, hello_message_flag = false
-    // unit_test[151] test data:handle_realserver_select() return FINALIZE, end_flag = END_FLAG_ON
+    cout << "[152]------------------------------------------" << endl;
+    // unit_test[152] realserverの接続失敗回数が0, 且つselected_realserver が NULLで、 且つhello_message_flagがfalseの場合
+    // unit_test[152] 戻り値がFINALIZEで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = 0;
     up_thread_data->selected_realserver = ep2;
@@ -2740,15 +2850,17 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[152] realserver_connect_failed_count = 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[152] no ssl session id, get endpoint OK!
-    // unit_test[152] test data:handle_realserver_select() return REALSERVER_CONNECT
+    cout << "[153]------------------------------------------" << endl;
+    // unit_test[153] realserverの接続失敗回数が0, 且つselected_realserver が NULLで、 且つhello_message_flagがtrueで
+    // unit_test[153] 且つendpointが決定の場合
+    // unit_test[153] 戻り値がREALSERVER_CONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = 0;
     up_thread_data->selected_realserver = ep2;
     up_thread_data->hello_message_flag = true;
     up_thread_data->data_buffer[43] = 0x00;
     up_thread_data->data_size = 76u;
+    up_thread_data->data_begain_offset = 0u;
     this->session_thread_data_map[boost::this_thread::get_id()]
             = up_thread_data;
     this->schedule_tcp = schedule_tcp_func1;
@@ -2759,9 +2871,10 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[153] realserver_connect_failed_count = 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[153] no session id, get endpoint failed !
-    // unit_test[153] test data:handle_realserver_select() return CLIENT_DISCONNECT
+    cout << "[154]------------------------------------------" << endl;
+    // unit_test[154] realserver接続失敗回数が0で, 且つselected_realserverがNULLで、且つhello_message_flagがtrueで
+    // unit_test[154] 且つセッションIDがなくで、且つendpointが未決定の場合
+    // unit_test[154] 戻り値がCLIENT_DISCONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = 0;
     up_thread_data->selected_realserver = ep2;
@@ -2769,6 +2882,7 @@ void handle_realserver_select_tcp_test() {
     up_thread_data->data_buffer[43] = 0x00;
     up_thread_data->data_size = 76u;
     up_thread_data->end_flag = END_FLAG_OFF;
+    up_thread_data->data_begain_offset = 0u;
     this->session_thread_data_map[boost::this_thread::get_id()]
             = up_thread_data;
     this->schedule_tcp = schedule_tcp_func2;
@@ -2779,15 +2893,17 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[154] realserver_connect_failed_count = 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[154] have a ssl session id, get endpoint OK !
-    // unit_test[154] test data:handle_realserver_select() return REALSERVER_CONNECT
+    cout << "[155]------------------------------------------" << endl;
+    // unit_test[155] realserver接続失敗回数が0で, 且つselected_realserverがNULLで、且つhello_message_flagがtrueで
+    // unit_test[155] 且つセッションIDがあるで, 且つendpointが決定の場合
+    // unit_test[155] 戻り値がREALSERVER_CONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = 0;
     up_thread_data->selected_realserver = ep2;
     up_thread_data->hello_message_flag = true;
     up_thread_data->data_buffer[43] = 0x20;
     up_thread_data->data_size = 76u;
+    up_thread_data->data_begain_offset = 0u;
     for (int i = 0; i < 32; i++) {
         up_thread_data->data_buffer[44 + i] = 0x01;
     }
@@ -2814,15 +2930,17 @@ void handle_realserver_select_tcp_test() {
     delete this->session_data_processor;
     this->session_thread_data_map.clear();
 
-    // unit_test[155] realserver_connect_failed_count = 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[155] have a ssl session id, get endpoint failed !reschedule, get endpoint OK !
-    // unit_test[155] test data:handle_realserver_select() return REALSERVER_CONNECT
+    cout << "[156]------------------------------------------" << endl;
+    // unit_test[156] realserver接続失敗回数が0で, 且つselected_realserverがNULLで、且つhello_message_flagがtrueで
+    // unit_test[156] 且つセッションIDがあり, endpointが未決定で、reschedule後、endpointが決定の場合
+    // unit_test[156] 戻り値がREALSERVER_CONNECTで設定する。
     this->schedule_tcp = schedule_tcp_func1;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = 0;
     up_thread_data->selected_realserver = ep2;
     up_thread_data->hello_message_flag = true;
     up_thread_data->data_buffer[43] = 0x20;
+    up_thread_data->data_begain_offset = 0u;
     for (int i = 0; i < 32; i++) {
         up_thread_data->data_buffer[44 + i] = 0x01;
     }
@@ -2840,15 +2958,17 @@ void handle_realserver_select_tcp_test() {
     delete this->session_data_processor;
     this->session_thread_data_map.clear();
 
-    // unit_test[156] realserver_connect_failed_count = 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[156] have a ssl session id, get endpoint failed !reschedule, get endpoint failed !
-    // unit_test[156] test data:handle_realserver_select() return CLIENT_DISCONNECT
+    cout << "[157]------------------------------------------" << endl;
+    // unit_test[157] realserver接続失敗回数が0で, 且つselected_realserverがNULLで、且つhello_message_flagがtrueで
+    // unit_test[157] 且つセッションIDがあり, endpointが未決定で、reschedule後、endpointも未決定の場合
+    // unit_test[157] 戻り値がCLIENT_DISCONNECTで設定する。
     this->schedule_tcp = schedule_tcp_func2;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = 0;
     up_thread_data->selected_realserver = ep2;
     up_thread_data->hello_message_flag = true;
     up_thread_data->data_buffer[43] = 0x20;
+    up_thread_data->data_begain_offset = 0u;
     for (int i = 0; i < 32; i++) {
         up_thread_data->data_buffer[44 + i] = 0x01;
     }
@@ -2866,14 +2986,16 @@ void handle_realserver_select_tcp_test() {
     delete this->session_data_processor;
     this->session_thread_data_map.clear();
 
-    // unit_test[157] realserver_connect_failed_count = 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[157] have a ssl session id, get endpoint failed! no reschedule
-    // unit_test[157] test data:handle_realserver_select() return CLIENT_DISCONNECT
+    cout << "[158]------------------------------------------" << endl;
+    // unit_test[158] realserver接続失敗回数が0で, 且つselected_realserverがNULLで, 且つhello_message_flagがtrueで
+    // unit_test[158] 且つセッションIDがあり, endpointが未決定で、且つ no rescheduleの場合
+    // unit_test[158] 戻り値がCLIENT_DISCONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = 0;
     up_thread_data->selected_realserver = ep2;
     up_thread_data->hello_message_flag = true;
     up_thread_data->data_buffer[43] = 0x20;
+    up_thread_data->data_begain_offset = 0u;
     for (int i = 0; i < 32; i++) {
         up_thread_data->data_buffer[44 + i] = 0x01;
     }
@@ -2890,8 +3012,9 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[158] realserver_connect_failed_count < 0, selected_realserver != NULL
-    // unit_test[158] test data:handle_realserver_select() return REALSERVER_CONNECT
+    cout << "[159]------------------------------------------" << endl;
+    // unit_test[159] realserver接続失敗回数が0で, 且つselected_realserver が NULLないの場合
+    // unit_test[159] 戻り値がREALSERVER_CONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = -1;
     up_thread_data->selected_realserver = ep1;
@@ -2903,8 +3026,9 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[159] realserver_connect_failed_count < 0, selected_realserver = NULL, hello_message_flag = false
-    // unit_test[159] test data:handle_realserver_select() return FINALIZE, end_flag = END_FLAG_ON
+    cout << "[160]------------------------------------------" << endl;
+    // unit_test[160] realserver接続失敗回数が0で, 且つselected_realserver が NULLで, 且つhello_message_flag が falseの場合
+    // unit_test[160] 戻り値がFINALIZEで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = -1;
     up_thread_data->selected_realserver = ep2;
@@ -2919,15 +3043,17 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[160] realserver_connect_failed_count < 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[160] no ssl session id, get endpoint OK!
-    // unit_test[160] test data:handle_realserver_select() return REALSERVER_CONNECT
+    cout << "[161]------------------------------------------" << endl;
+    // unit_test[161] realserver接続失敗回数 < 0で, 且つselected_realserver が NULLで, 且つhello_message_flag が trueで
+    // unit_test[161] 且つセッションIDがなくで、且つendpointが決定の場合
+    // unit_test[161] 戻り値がREALSERVER_CONNECT設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = -1;
     up_thread_data->selected_realserver = ep2;
     up_thread_data->hello_message_flag = true;
     up_thread_data->data_buffer[43] = 0x00;
     up_thread_data->data_size = 76u;
+    up_thread_data->data_begain_offset = 0u;
     this->session_thread_data_map[boost::this_thread::get_id()]
             = up_thread_data;
     this->schedule_tcp = schedule_tcp_func1;
@@ -2938,15 +3064,17 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[161] realserver_connect_failed_count < 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[161] no session id, get endpoint failed !
-    // unit_test[161] test data:handle_realserver_select() return CLIENT_DISCONNECT
+    cout << "[162]------------------------------------------" << endl;
+    // unit_test[162] realserver接続失敗回数 < 0で, 且つselected_realserver が NULLで, 且つhello_message_flag が trueで
+    // unit_test[162] 且つセッションIDがなくで、且つendpointが未決定の場合
+    // unit_test[162] 戻り値がCLIENT_DISCONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = -1;
     up_thread_data->selected_realserver = ep2;
     up_thread_data->hello_message_flag = true;
     up_thread_data->data_buffer[43] = 0x00;
     up_thread_data->data_size = 76u;
+    up_thread_data->data_begain_offset = 0u;
     up_thread_data->end_flag = END_FLAG_OFF;
     this->session_thread_data_map[boost::this_thread::get_id()]
             = up_thread_data;
@@ -2958,15 +3086,17 @@ void handle_realserver_select_tcp_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[162] realserver_connect_failed_count < 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[162] have a ssl session id, get endpoint OK !
-    // unit_test[162] test data:handle_realserver_select() return REALSERVER_CONNECT
+    cout << "[163]------------------------------------------" << endl;
+    // unit_test[163] realserver接続失敗回数 < 0で, 且つselected_realserver が NULLで, 且つhello_message_flag が trueで
+    // unit_test[163] 且つセッションIDがあるで, 且つendpointが決定の場合
+    // unit_test[163] 戻り値がREALSERVER_CONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = -1;
     up_thread_data->selected_realserver = ep2;
     up_thread_data->hello_message_flag = true;
     up_thread_data->data_buffer[43] = 0x20;
     up_thread_data->data_size = 76u;
+    up_thread_data->data_begain_offset = 0u;
     for (int i = 0; i < 32; i++) {
         up_thread_data->data_buffer[44 + i] = 0x01;
     }
@@ -2990,15 +3120,17 @@ void handle_realserver_select_tcp_test() {
     delete this->session_data_processor;
     this->session_thread_data_map.clear();
 
-    // unit_test[163] realserver_connect_failed_count < 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[163] have a ssl session id, get endpoint failed !reschedule, get endpoint OK !
-    // unit_test[163] test data:handle_realserver_select() return REALSERVER_CONNECT
+    cout << "[164]------------------------------------------" << endl;
+    // unit_test[164] realserver接続失敗回数 < 0で, 且つselected_realserver が NULLで, 且つhello_message_flag が trueで
+    // unit_test[164] 且つセッションIDがあるで, endpointが未決定で、reschedule後、endpointが決定の場合
+    // unit_test[164] 戻り値がREALSERVER_CONNECTで設定する。
     this->schedule_tcp = schedule_tcp_func1;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = -1;
     up_thread_data->selected_realserver = ep2;
     up_thread_data->hello_message_flag = true;
     up_thread_data->data_buffer[43] = 0x20;
+    up_thread_data->data_begain_offset = 0u;
     for (int i = 0; i < 32; i++) {
         up_thread_data->data_buffer[44 + i] = 0x01;
     }
@@ -3016,15 +3148,17 @@ void handle_realserver_select_tcp_test() {
     delete this->session_data_processor;
     this->session_thread_data_map.clear();
 
-    // unit_test[164] realserver_connect_failed_count < 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[164] have a ssl session id, get endpoint failed !reschedule, get endpoint failed !
-    // unit_test[164] test data:handle_realserver_select() return CLIENT_DISCONNECT
+    cout << "[165]------------------------------------------" << endl;
+    // unit_test[165] realserver接続失敗回数 < 0で, 且つselected_realserver が NULLで, 且つhello_message_flag が trueで
+    // unit_test[165] 且つセッションIDがあるで, endpointが未決定で、reschedule後、endpointも未決定の場合
+    // unit_test[165] 戻り値がCLIENT_DISCONNECTで設定する。
     this->schedule_tcp = schedule_tcp_func2;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = -1;
     up_thread_data->selected_realserver = ep2;
     up_thread_data->hello_message_flag = true;
     up_thread_data->data_buffer[43] = 0x20;
+    up_thread_data->data_begain_offset = 0u;
     for (int i = 0; i < 32; i++) {
         up_thread_data->data_buffer[44 + i] = 0x01;
     }
@@ -3042,14 +3176,16 @@ void handle_realserver_select_tcp_test() {
     delete this->session_data_processor;
     this->session_thread_data_map.clear();
 
-    // unit_test[165] realserver_connect_failed_count < 0, selected_realserver = NULL, hello_message_flag = true
-    // unit_test[165] have a ssl session id, get endpoint failed! no reschedule
-    // unit_test[165] test data:handle_realserver_select() return CLIENT_DISCONNECT
+    cout << "[166]------------------------------------------" << endl;
+    // unit_test[166] realserver接続失敗回数 < 0で, 且つselected_realserver が NULLで, 且つhello_message_flag が trueで
+    // unit_test[166] セッションIDがあり、endpointが未決定でrescheduleしない場合
+    // unit_test[166] 戻り値がCLIENT_DISCONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->realserver_connect_failed_count = -1;
     up_thread_data->selected_realserver = ep2;
     up_thread_data->hello_message_flag = true;
     up_thread_data->data_buffer[43] = 0x20;
+    up_thread_data->data_begain_offset = 0u;
     for (int i = 0; i < 32; i++) {
         up_thread_data->data_buffer[44 + i] = 0x01;
     }
@@ -3069,8 +3205,8 @@ void handle_realserver_select_tcp_test() {
 
 //handle_realserver_select(udp)
 void handle_realserver_select_udp_test(){
-    // unit_test[166] for udp
-    // unit_test[166] test data:handle_realserver_select() return STOP
+    cout << "[167]------------------------------------------" << endl;
+    // unit_test[167] 戻り値が STOPで設定する。
     EVENT_TAG status;
     boost::array<char,MAX_BUFFER_SIZE> sendbuffer;
     size_t datalen;
@@ -3091,9 +3227,9 @@ void handle_realserver_connect_test() {
        int mem_cmp_length;
        int mem_cmp_result;
 
-    // unit_test[167] current_record_rest_size>data_size, data_size<送信バッファサイズ
-    // unit_test[167] test data:data_begain_offset,current_record_rest_size,data_size, datalen
-    // unit_test[167] handle_realserver_connect() return REALSERVER_SEND, realserver_connect_failed_count =0
+    cout << "[168]------------------------------------------" << endl;
+    // unit_test[168] current_record_rest_size>data_sizeで、且つdata_size<送信バッファサイズの場合
+    // unit_test[168] 戻り値がREALSERVER_SENDで設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = 20u;
@@ -3122,9 +3258,9 @@ void handle_realserver_connect_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[168] current_record_rest_size>data_size, data_size=送信バッファサイズ
-    // unit_test[168] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[168] handle_realserver_connect() return REALSERVER_SEND, realserver_connect_failed_count =0
+    cout << "[169]------------------------------------------" << endl;
+    // unit_test[169] current_record_rest_size>data_sizeで, 且つdata_sizeが送信バッファサイズの場合
+    // unit_test[169] 戻り値がREALSERVER_SENDで設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE) + 1u;
@@ -3153,9 +3289,9 @@ void handle_realserver_connect_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[169] current_record_rest_size=data_size, data_size<送信バッファサイズ
-    // unit_test[169] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[169] handle_realserver_connect() return REALSERVER_SEND, realserver_connect_failed_count =0
+    cout << "[170]------------------------------------------" << endl;
+    // unit_test[170] current_record_rest_sizeがdata_sizeで, 且つdata_size<送信バッファサイズの場合
+    // unit_test[170] 戻り値がREALSERVER_SENDで設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = 10u;
@@ -3184,9 +3320,9 @@ void handle_realserver_connect_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[170] current_record_rest_size=data_size, data_size=送信バッファサイズ
-    // unit_test[170] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[170] handle_realserver_connect() return REALSERVER_SEND, realserver_connect_failed_count =0
+    cout << "[171]------------------------------------------" << endl;
+    // unit_test[171] current_record_rest_sizeがdata_sizeで, 且つdata_sizeが送信バッファサイズの場合
+    // unit_test[171] 戻り値がREALSERVER_SENDで設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE);
@@ -3215,9 +3351,9 @@ void handle_realserver_connect_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[171] current_record_rest_size>data_size,data_size>送信バッファサイズ
-    // unit_test[171] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[171] handle_realserver_connect() return REALSERVER_SEND, realserver_connect_failed_count =0
+    cout << "[172]------------------------------------------" << endl;
+    // unit_test[172] current_record_rest_size>data_sizeで,且つdata_size>送信バッファサイズの場合
+    // unit_test[172] 戻り値がREALSERVER_SENDで設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE) + 10u;
@@ -3246,9 +3382,9 @@ void handle_realserver_connect_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[172] current_record_rest_size=data_size,data_size>送信バッファサイズ
-    // unit_test[172] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[172] handle_realserver_connect() return REALSERVER_SEND, realserver_connect_failed_count =0
+    cout << "[173]------------------------------------------" << endl;
+    // unit_test[173] current_record_rest_sizeがdata_sizeで,且つdata_size>送信バッファサイズの場合
+    // unit_test[173] 戻り値がREALSERVER_SENDで設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE) + 10u;
@@ -3277,9 +3413,9 @@ void handle_realserver_connect_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[173] current_record_rest_size<data_size, current_record_rest_size<送信バッファサイズ
-    // unit_test[173] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[173] handle_realserver_connect() return REALSERVER_SEND, realserver_connect_failed_count =0
+    cout << "[174]------------------------------------------" << endl;
+    // unit_test[174] current_record_rest_size<data_sizeで, 且つcurrent_record_rest_size<送信バッファサイズの場合
+    // unit_test[174] 戻り値がREALSERVER_SENDで設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = 10u;
@@ -3308,9 +3444,9 @@ void handle_realserver_connect_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[174] current_record_rest_size<data_size, current_record_rest_size=送信バッファサイズ
-    // unit_test[174] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[174] handle_realserver_connect() return REALSERVER_SEND, realserver_connect_failed_count =0
+    cout << "[175]------------------------------------------" << endl;
+    // unit_test[175] current_record_rest_size<data_sizeで, 且つcurrent_record_rest_sizeが送信バッファサイズの場合
+    // unit_test[175] 戻り値がREALSERVER_SENDで設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE);
@@ -3339,9 +3475,9 @@ void handle_realserver_connect_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[175] current_record_rest_size<data_size,current_record_rest_size>送信バッファサイズ
-    // unit_test[175] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[175] handle_realserver_connect() return REALSERVER_SEND, realserver_connect_failed_count =0
+    cout << "[176]------------------------------------------" << endl;
+    // unit_test[176] current_record_rest_size<data_sizeで,且つcurrent_record_rest_size>送信バッファサイズの場合
+    // unit_test[176] 戻り値がREALSERVER_SENDで設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE) + 10u;
@@ -3388,30 +3524,34 @@ void handle_realserver_connection_fail_test(){
        iter=this->session_thread_data_map.find(boost::this_thread::get_id());
        session_thread_data_sslid* data=iter->second;
 
-       //unit_test[176] 終了フラグをON,遷移先ステータスを設定する,status = CLIENT_DISCONNECT
-       //unit_test[176] test data:no rescheduleモードの場合,the first fail
+    cout << "[177]------------------------------------------" << endl;
+       //unit_test[177] 終了フラグをON,遷移先ステータスを設定する,status = CLIENT_DISCONNECT
+       //unit_test[177] test data:no rescheduleモード、初めて失敗するの場合
        this->reschedule=0;
        EVENT_TAG schedule=this->handle_realserver_connection_fail(boost::this_thread::get_id(), ep);
        BOOST_CHECK_EQUAL(data->end_flag,END_FLAG_ON);
        BOOST_CHECK_EQUAL(schedule, protocol_module_base::CLIENT_DISCONNECT);
 
-       //unit_test[177] realserver_connect_failed_count で1を加算する,遷移先ステータスを設定する,status = REALSERVER_SELECT
-       //unit_test[177] test data:rescheduleモードの場合,the first fail
+    cout << "[178]------------------------------------------" << endl;
+       //unit_test[178] realserver_connect_failed_count で1を加算する,遷移先ステータスを設定する,status = REALSERVER_SELECT
+       //unit_test[178] test data:rescheduleモード、初めて失敗するの場合
        this->reschedule=1;
        schedule=this->handle_realserver_connection_fail(boost::this_thread::get_id(), ep);
        BOOST_CHECK_EQUAL(data->realserver_connect_failed_count,1);
        BOOST_CHECK_EQUAL(schedule, protocol_module_base::REALSERVER_SELECT);
 
-       //unit_test[178] realserver_connect_failed_count で1を加算する,遷移先ステータスにREALSERVER_SELECTを設定する
-       //unit_test[178] test data:rescheduleモードの場合, the third fail
+    cout << "[179]------------------------------------------" << endl;
+       //unit_test[179] realserver_connect_failed_count で1を加算する,遷移先ステータスにREALSERVER_SELECTを設定する
+       //unit_test[179] test data:rescheduleモード、3目失敗するの場合
        this->reschedule=1;
        schedule=this->handle_realserver_connection_fail(boost::this_thread::get_id(), ep);
        schedule=this->handle_realserver_connection_fail(boost::this_thread::get_id(), ep);
        BOOST_CHECK_EQUAL(data->realserver_connect_failed_count,3);
        BOOST_CHECK_EQUAL(schedule, protocol_module_base::REALSERVER_SELECT);
 
-       //unit_test[179] 終了フラグをON,遷移先ステータスにCLIENT_DISCONNECTを設定する
-       //unit_test[179] test data:no rescheduleモードの場合,the forth fail
+    cout << "[180]------------------------------------------" << endl;
+       //unit_test[180] 終了フラグをON,遷移先ステータスにCLIENT_DISCONNECTを設定する
+       //unit_test[180] test data:no rescheduleモード、4目失敗するの場合
        this->reschedule=0;
        schedule=this->handle_realserver_connection_fail(boost::this_thread::get_id(), ep);
        BOOST_CHECK_EQUAL(data->end_flag,END_FLAG_ON);
@@ -3425,8 +3565,9 @@ void handle_realserver_send_test() {
     session_thread_data_sslid* up_thread_data;
     EVENT_TAG status;
 
-    // unit_test[180] data_size = 0,data_begain_offset = 0
-    // unit_test[180] test data:handle_realserver_send() return CLIENT_RECV
+    cout << "[181]------------------------------------------" << endl;
+    // unit_test[181] データサイズが0で、且つdata_begain_offsetが0の場合
+    // unit_test[181] 戻り値がCLIENT_RECVで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 0u;
     up_thread_data->data_begain_offset = 0u;
@@ -3437,8 +3578,9 @@ void handle_realserver_send_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[180] data_size = 0,data_begain_offset >0
-    // unit_test[180] test data:handle_realserver_send() return CLIENT_RECV
+    cout << "[182]------------------------------------------" << endl;
+    // unit_test[182] データサイズが0で,且つdata_begain_offset >0の場合
+    // unit_test[182] 戻り値がCLIENT_RECVで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 0u;
     up_thread_data->data_begain_offset = 10u;
@@ -3449,8 +3591,9 @@ void handle_realserver_send_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[181] data_size > 0, current_record_rest_size > 0,data_begain_offset=0
-    // unit_test[181] test data:handle_realserver_send() return REALSERVER_CONNECT
+    cout << "[183]------------------------------------------" << endl;
+    // unit_test[183] データサイズ > 0で, 且つcurrent_record_rest_size > 0で,且つdata_begain_offset=0の場合
+    // unit_test[183] 戻り値がREALSERVER_CONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 10u;
     up_thread_data->current_record_rest_size = 10u;
@@ -3462,8 +3605,9 @@ void handle_realserver_send_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[181] data_size > 0, current_record_rest_size > 0,data_begain_offset>0
-    // unit_test[181] test data:handle_realserver_send() return REALSERVER_CONNECT
+    cout << "[184]------------------------------------------" << endl;
+    // unit_test[184] データサイズ > 0で, 且つcurrent_record_rest_size > 0で,且つdata_begain_offset>0の場合
+    // unit_test[184] 戻り値がREALSERVER_CONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 10u;
     up_thread_data->current_record_rest_size = 10u;
@@ -3475,8 +3619,9 @@ void handle_realserver_send_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[182] data_size > 0, current_record_rest_size = 0, check_ssl_record_sendable() return -1 (異常),data_begain_offset=0
-    // unit_test[182] test data:handle_realserver_send() return FINALIZE, end_flag = END_FLAG_ON
+    cout << "[185]------------------------------------------" << endl;
+    // unit_test[185] データサイズ > 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_sendable()の戻り値が-1(異常)で,且つdata_begain_offsetが0の場合
+    // unit_test[185] 戻り値がFINALIZEで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 10u;
     up_thread_data->data_begain_offset = 0u;
@@ -3491,8 +3636,9 @@ void handle_realserver_send_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[182] data_size > 0, current_record_rest_size = 0, check_ssl_record_sendable() return -1 (異常),data_begain_offset>0
-    // unit_test[182] test data:handle_realserver_send() return FINALIZE, end_flag = END_FLAG_ON
+    cout << "[186]------------------------------------------" << endl;
+    // unit_test[186] データサイズ > 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_sendable()の戻り値が-1(異常)で,且つdata_begain_offset>0の場合
+    // unit_test[186] 戻り値がFINALIZEで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 10u;
     up_thread_data->data_begain_offset = 0u;
@@ -3507,8 +3653,9 @@ void handle_realserver_send_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[183] data_size > 0, current_record_rest_size = 0, check_ssl_record_sendable() return 1 (送信不可),data_begain_offset=0
-    // unit_test[183] test data:handle_realserver_send() return CLIENT_RECV
+    cout << "[187]------------------------------------------" << endl;
+    // unit_test[187] データサイズ > 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_sendable()の戻り値が1(送信不可)で,且つdata_begain_offsetが0の場合
+    // unit_test[187] 戻り値がCLIENT_RECVで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 1u;
     up_thread_data->current_record_rest_size = 0u;
@@ -3520,8 +3667,9 @@ void handle_realserver_send_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[183] data_size > 0, current_record_rest_size = 0, check_ssl_record_sendable() return 1 (送信不可),data_begain_offset>0
-    // unit_test[183] test data:handle_realserver_send() return CLIENT_RECV
+    cout << "[188]------------------------------------------" << endl;
+    // unit_test[188] データサイズ > 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_sendable()の戻り値が1(送信不可)で,且つdata_begain_offset>0の場合
+    // unit_test[188] 戻り値がCLIENT_RECVで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 1u;
     up_thread_data->current_record_rest_size = 0u;
@@ -3533,10 +3681,9 @@ void handle_realserver_send_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[184] data_size > 0, current_record_rest_size = 0, check_ssl_record_send() return 0 (送信可能),data_begain_offset =0
-    // unit_test[184] is a hello message
-    // unit_test[184] test data:handle_realserver_send() return REALSERVER_CONNECT,current_record_rest_size,
-    // unit_test[184] hello_message_flag
+    cout << "[189]------------------------------------------" << endl;
+    // unit_test[189] データサイズ > 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_send()の戻り値が0(送信可能)で,且つdata_begain_offset が0の場合
+    // unit_test[189] 戻り値がREALSERVER_CONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 76u;
     up_thread_data->current_record_rest_size = 0u;
@@ -3559,10 +3706,9 @@ void handle_realserver_send_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[184] data_size > 0, current_record_rest_size = 0, check_ssl_record_send() return 0 (送信可能),data_begain_offset > 0
-    // unit_test[184] is a hello message
-    // unit_test[184] test data:handle_realserver_send() return REALSERVER_CONNECT,current_record_rest_size,
-    // unit_test[184] hello_message_flag
+    cout << "[190]------------------------------------------" << endl;
+    // unit_test[190] データサイズ > 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_send()の戻り値が0(送信可能)で,且つdata_begain_offset > 0の場合
+    // unit_test[190] 戻り値がREALSERVER_CONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 76u;
     up_thread_data->current_record_rest_size = 0u;
@@ -3585,10 +3731,9 @@ void handle_realserver_send_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[185] data_size > 0, current_record_rest_size = 0, check_ssl_record_send() return 0 (送信可能),data_begain_offset =0
-    // unit_test[185] is not a hello message
-    // unit_test[185] test data:handle_realserver_send(0 return REALSERVER_CONNECT,current_record_rest_size,
-    // unit_test[185] hello_message_flag
+    cout << "[191]------------------------------------------" << endl;
+    // unit_test[191] データサイズ > 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_send()の戻り値が0(送信可能)で,且つdata_begain_offset が0の場合
+    // unit_test[191] 戻り値がREALSERVER_CONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 10u;
     up_thread_data->current_record_rest_size = 0u;
@@ -3608,10 +3753,9 @@ void handle_realserver_send_test() {
     delete up_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[185] data_size > 0, current_record_rest_size = 0, check_ssl_record_send() return 0 (送信可能),data_begain_offset > 0
-    // unit_test[185] is not a hello message
-    // unit_test[185] test data:handle_realserver_send(0 return REALSERVER_CONNECT,current_record_rest_size,
-    // unit_test[185] hello_message_flag
+    cout << "[192]------------------------------------------" << endl;
+    // unit_test[192] データサイズ > 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_send()の戻り値が0(送信可能)で,且つdata_begain_offset > 0の場合
+    // unit_test[192] 戻り値がREALSERVER_CONNECTで設定する。
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->data_size = 10u;
     up_thread_data->current_record_rest_size = 0u;
@@ -3645,8 +3789,9 @@ void handle_realserver_recv_tcp_test() {
        int mem_cmp_length;
        char* mem_cmp_buffer;
 
-    // unit_test[186] data_size = 0, current_record_rest_size > 0
-    // unit_test[186] test data:handle_realserver_recv() return CLIENT_CONNECTION_CHECK
+    cout << "[193]------------------------------------------" << endl;
+    // unit_test[193] データサイズ が 0で, 且つcurrent_record_rest_size > 0の場合
+    // unit_test[193] 戻り値がCLIENT_CONNECTION_CHECK設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 0u;
     down_thread_data->current_record_rest_size = 10u;
@@ -3658,12 +3803,13 @@ void handle_realserver_recv_tcp_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[187] data_size = 0, current_record_rest_size = 0, check_ssl_record_sendable() return -1 (異常)
-    // unit_test[187] test data:handle_realserver_recv() return FINALIZE, end_flag = END_FLAG_ON
+    cout << "[194]------------------------------------------" << endl;
+    // unit_test[194] データサイズ が 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_sendable()の戻り値が-1(異常)の場合
+    // unit_test[194] 戻り値がFINALIZEで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 0u;
     down_thread_data->current_record_rest_size = 0u;
-       down_thread_data->data_begain_offset = 0;
+       down_thread_data->data_begain_offset = 0u;
     this->session_thread_data_map[boost::this_thread::get_id()] = down_thread_data;
     recvbuffer[0] = 0x00;
     recvlen = 6;
@@ -3685,11 +3831,12 @@ void handle_realserver_recv_tcp_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[188] data_size = 0, current_record_rest_size = 0, check_ssl_record_sendable() return 1 (送信不可)
-    // unit_test[188] test data:handle_realserver_recv() return REALSERVER_RECV
+    cout << "[195]------------------------------------------" << endl;
+    // unit_test[195] データサイズ が 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_sendable()の戻り値が1(送信不可)の場合
+    // unit_test[195] 戻り値がREALSERVER_RECVで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 0u;
-       down_thread_data->data_begain_offset = 0;
+       down_thread_data->data_begain_offset = 0u;
     down_thread_data->current_record_rest_size = 0u;
     this->session_thread_data_map[boost::this_thread::get_id()] = down_thread_data;
     recvlen = 3;
@@ -3710,12 +3857,12 @@ void handle_realserver_recv_tcp_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[189] data_size = 0, current_record_rest_size = 0, check_ssl_record_sendable() return 0 (送信可能)
-    // unit_test[189] is a hello message
-    // unit_test[189] test data:handle_realserver_recv() return CLIENT_CONNECTION_CHECK
+    cout << "[196]------------------------------------------" << endl;
+    // unit_test[196] データサイズ が 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_sendable()の戻り値が0(送信可能)の場合
+    // unit_test[196] 戻り値がCLIENT_CONNECTION_CHECKで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 0u;
-       down_thread_data->data_begain_offset = 0;
+       down_thread_data->data_begain_offset = 0u;
     down_thread_data->current_record_rest_size = 0u;
     this->session_thread_data_map[boost::this_thread::get_id()] = down_thread_data;
     recvbuffer[0] = 0x16;
@@ -3749,12 +3896,12 @@ void handle_realserver_recv_tcp_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[190] data_size = 0, current_record_rest_size = 0, check_ssl_record_sendable() return 0 (送信可能)
-    // unit_test[190] is not a hello message
-    // unit_test[190] test data:handle_realserver_recv() return CLIENT_CONNECTION_CHECK
+    cout << "[197]------------------------------------------" << endl;
+    // unit_test[197] データサイズ が 0で, 且つcurrent_record_rest_size が 0で, 且つcheck_ssl_record_sendable()の戻り値0(送信可能)の場合
+    // unit_test[197] 戻り値がCLIENT_CONNECTION_CHECKで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 0u;
-       down_thread_data->data_begain_offset = 0;
+       down_thread_data->data_begain_offset = 0u;
     down_thread_data->current_record_rest_size = 0u;
     this->session_thread_data_map[boost::this_thread::get_id()] = down_thread_data;
     recvbuffer[0] = 0x17;
@@ -3782,11 +3929,12 @@ void handle_realserver_recv_tcp_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[191] data_size > 0, current_record_rest_size > 0, data_begain_offset>0
-    // unit_test[191] test data:handle_realserver_recv() return CLIENT_CONNECTION_CHECK
+    cout << "[198]------------------------------------------" << endl;
+    // unit_test[198] データサイズ > 0で, 且つcurrent_record_rest_size > 0で, 且つdata_begain_offset>0の場合
+    // unit_test[198] 戻り値がCLIENT_CONNECTION_CHECKで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 10u;
-    down_thread_data->data_begain_offset = 5;
+    down_thread_data->data_begain_offset = 5u;
     down_thread_data->current_record_rest_size = 10u;
     this->session_thread_data_map[boost::this_thread::get_id()] = down_thread_data;
     recvlen = 15;
@@ -3809,8 +3957,9 @@ void handle_realserver_recv_tcp_test() {
        delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[192] data_size + recvlen > MAX_SSLID_BUFFER_SIZE
-    // unit_test[192] test data:handle_realserver_recv() return FINALIZE
+    cout << "[199]------------------------------------------" << endl;
+    // unit_test[199] データサイズ + 受信データサイズ > MAX_SSLID_BUFFER_SIZEの場合
+    // unit_test[199] 戻り値がFINALIZEで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 76u + 1u;
     this->session_thread_data_map[boost::this_thread::get_id()] = down_thread_data;
@@ -3827,8 +3976,8 @@ void handle_realserver_recv_tcp_test() {
 
 //handle_realserver_recv(udp)
 void handle_realserver_recv_udp_test(){
-    // unit_test[193] for udp
-    // unit_test[193] test data:handle_realserver_recv() return STOP
+    cout << "[200]------------------------------------------" << endl;
+    // unit_test[200] 戻り値が STOPで設定する。
     boost::array<char, MAX_BUFFER_SIZE> recvbuffer;
     size_t recvlen;
     boost::asio::ip::udp::endpoint rs_endpoint_udp;
@@ -3859,14 +4008,16 @@ void handle_client_connection_check_test() {
     logger_func_type inputLogDebug = stb_putLogDebug;
        boost::asio::ip::tcp::endpoint rs_endpoint(boost::asio::ip::address::from_string("192.168.120.249"), 12345);
 
-    // unit_test[194] down_thread_id is not in the map
-    // unit_test[194] test data:handle_client_connection return FINALIZE
+    cout << "[201]------------------------------------------" << endl;
+    // unit_test[201] mapに下りスレッドIDが存在しない場合
+    // unit_test[201] 戻り値がFINALIZEで設定する。
     status = this->handle_client_connection_check(boost::this_thread::get_id(),
             sendbuffer, datalen);
     BOOST_CHECK_EQUAL(status, FINALIZE);
 
-    // unit_test[195] current_record_rest_size>0,data_begain_offset = 0
-    // unit_test[195] test data:handle_client_connection return CLIENT_SEND
+    cout << "[202]------------------------------------------" << endl;
+    // unit_test[202] current_record_rest_size>0で,且つdata_begain_offset が 0の場合
+    // unit_test[202] 戻り値がCLIENT_SENDで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->current_record_rest_size = 10u;
     down_thread_data->data_size = 76u;
@@ -3881,8 +4032,9 @@ void handle_client_connection_check_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[195] current_record_rest_size>0,data_begain_offset >0
-    // unit_test[195] test data:handle_client_connection return CLIENT_SEND
+    cout << "[203]------------------------------------------" << endl;
+    // unit_test[203] current_record_rest_size>0で,且つdata_begain_offset >0の場合
+    // unit_test[203] 戻り値がCLIENT_SENDで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->current_record_rest_size = 10u;
     down_thread_data->data_size = 76u;
@@ -3898,9 +4050,10 @@ void handle_client_connection_check_test() {
     this->session_thread_data_map.clear();
 
 
-    // unit_test[196] current_record_rest_size=0,hello_message_flag=true,data_size >= 76,data_begain_offset=0
-    // unit_test[196] get_ssl_session_id return 0 (have session id)
-    // unit_test[196] test data:handle_client_connection return CLIENT_SEND
+    cout << "[204]------------------------------------------" << endl;
+    // unit_test[204] current_record_rest_sizeが0で、且つhello_message_flagがtrueで、且つdata_size ≧ 76で、且つdata_begain_offsetが0で
+    // unit_test[204] 且つget_ssl_session_id() の戻り値が 0 の場合
+    // unit_test[204] 戻り値がCLIENT_SENDで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->current_record_rest_size = 0u;
     down_thread_data->hello_message_flag = true;
@@ -3933,16 +4086,17 @@ void handle_client_connection_check_test() {
     delete replication_data_processor;
     this->session_thread_data_map.clear();
 
-    // unit_test[196] current_record_rest_size=0,hello_message_flag=true,data_size >= 76,data_begain_offset>0
-    // unit_test[196] get_ssl_session_id return 0 (have session id)
-    // unit_test[196] test data:handle_client_connection return CLIENT_SEND
+    cout << "[205]------------------------------------------" << endl;
+    // unit_test[205] current_record_rest_sizeが0で,且つhello_message_flagがtrueで,且つdata_size ≧ 76で,且つdata_begain_offset>0で
+    // unit_test[205] 且つget_ssl_session_id()の戻り値が0の場合
+    // unit_test[205] 戻り値がCLIENT_SENDで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->current_record_rest_size = 0u;
     down_thread_data->hello_message_flag = true;
     down_thread_data->data_buffer[53] = 0x20;
-    down_thread_data->data_size = 86u;
+    down_thread_data->data_size = 76u;
     down_thread_data->data_begain_offset = 10u;
-    for(size_t i=44; i<down_thread_data->data_size; i++)
+    for(size_t i=54; i<down_thread_data->data_size; i++)
     {
        down_thread_data->data_buffer[i] = 0x01;
        }
@@ -3961,7 +4115,7 @@ void handle_client_connection_check_test() {
             sendbuffer, datalen);
        BOOST_CHECK_EQUAL((dynamic_cast<sslid_session_data_processor_stub*>(this->session_data_processor))->get_session_endpoint_map()[session_id], rs_endpoint);
     BOOST_CHECK_EQUAL(status, CLIENT_SEND);
-    BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->data_size, 86u);
+    BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->data_size, 76u);
     BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->data_begain_offset, 10u);
     BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->current_record_rest_size, 0u);
     delete down_thread_data;
@@ -3969,9 +4123,10 @@ void handle_client_connection_check_test() {
     this->session_thread_data_map.clear();
 
 
-    // unit_test[197] current_record_rest_size=0,hello_message_flag=true,data_begain_offset=0
-    // unit_test[197] get_ssl_session_id return 1 (no session id)
-    // unit_test[197] test data:handle_client_connection return CLIENT_SEND
+    cout << "[206]------------------------------------------" << endl;
+    // unit_test[206] current_record_rest_sizeが0で,且つhello_message_flagがtrueで,且つdata_begain_offsetが0で
+    // unit_test[206] 且つget_ssl_session_id()の戻り値が1の場合
+    // unit_test[206] 戻り値がCLIENT_SENDで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->current_record_rest_size = 0u;
     down_thread_data->hello_message_flag = true;
@@ -3988,27 +4143,29 @@ void handle_client_connection_check_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[197] current_record_rest_size=0,hello_message_flag=true,data_begain_offset>0
-    // unit_test[197] get_ssl_session_id return 1 (no session id)
-    // unit_test[197] test data:handle_client_connection return CLIENT_SEND
+    cout << "[207]------------------------------------------" << endl;
+    // unit_test[207] current_record_rest_sizeが0で,且つhello_message_flagがtrueで,且つdata_begain_offset>0で
+    // unit_test[207] 且つget_ssl_session_id()の戻り値が1の場合
+    // unit_test[207] 戻り値がCLIENT_SENDで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->current_record_rest_size = 0u;
     down_thread_data->hello_message_flag = true;
     down_thread_data->data_buffer[53] = 0x00;
-    down_thread_data->data_size = 86u;
+    down_thread_data->data_size = 76u;
     down_thread_data->data_begain_offset = 10u;
     this->session_thread_data_map[boost::this_thread::get_id()] = down_thread_data;
     status = this->handle_client_connection_check(boost::this_thread::get_id(),
             sendbuffer, datalen);
     BOOST_CHECK_EQUAL(status, CLIENT_SEND);
-    BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->data_size, 86u);
+    BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->data_size, 76u);
     BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->data_begain_offset, 10u);
     BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->current_record_rest_size, 0u);
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[198] current_record_rest_size=0,hello_message_flag=false,data_begain_offset=0
-    // unit_test[198] test data:handle_client_connection return CLIENT_SEND
+    cout << "[208]------------------------------------------" << endl;
+    // unit_test[208] current_record_rest_sizeが0で,且つhello_message_flagがfalseで,且つdata_begain_offsetが0の場合
+    // unit_test[208] 戻り値がCLIENT_SENDで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->current_record_rest_size = 0u;
     down_thread_data->hello_message_flag = false;
@@ -4024,18 +4181,19 @@ void handle_client_connection_check_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[198] current_record_rest_size=0,hello_message_flag=false,data_begain_offset>0
-    // unit_test[198] test data:handle_client_connection return CLIENT_SEND
+    cout << "[209]------------------------------------------" << endl;
+    // unit_test[209] current_record_rest_sizeが0で,且つhello_message_flagがfalseで,且つdata_begain_offset>0の場合
+    // unit_test[209] 戻り値がCLIENT_SENDで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->current_record_rest_size = 0u;
     down_thread_data->hello_message_flag = false;
-    down_thread_data->data_size = 86u;
+    down_thread_data->data_size = 76u;
     down_thread_data->data_begain_offset = 10u;
     this->session_thread_data_map[boost::this_thread::get_id()] = down_thread_data;
     status = this->handle_client_connection_check(boost::this_thread::get_id(),
             sendbuffer, datalen);
     BOOST_CHECK_EQUAL(status, CLIENT_SEND);
-    BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->data_size, 86u);
+    BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->data_size, 76u);
     BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->data_begain_offset, 10u);
     BOOST_CHECK_EQUAL(this->session_thread_data_map[boost::this_thread::get_id()]->current_record_rest_size, 0u);
     delete down_thread_data;
@@ -4044,7 +4202,8 @@ void handle_client_connection_check_test() {
 
 //handle_client_select
 void handle_client_select_test(){
-       // unit_test[200] test data:handle_client_select() return STOP
+    cout << "[210]------------------------------------------" << endl;
+       // unit_test[210] 戻り値がSTOPで設定する。
        boost::asio::ip::udp::endpoint cl_endpoint;
        boost::array<char,MAX_BUFFER_SIZE> sendbuffer;
        size_t datalen;
@@ -4059,14 +4218,16 @@ void handle_client_send_test() {
     session_thread_data_sslid* down_thread_data;
     EVENT_TAG status;
 
-    // unit_test[201] down_thread_id is not in the map
-    // unit_test[201] test data:handle_client_send() return FINALIZE
+    cout << "[211]------------------------------------------" << endl;
+    // unit_test[211] 下りスレッドIDがmapに存在しない場合
+    // unit_test[211] 戻り値がFINALIZEで設定する。
     this->session_thread_data_map.clear();
     status = this->handle_client_send(boost::this_thread::get_id());
     BOOST_CHECK_EQUAL(status, FINALIZE);
 
-    // unit_test[202] data_size=0,end_flag=END_FLAG_ON,data_begain_offset=0
-    // unit_test[202] test data:handle_client_send() return CLIENT_DISCONNECT
+    cout << "[212]------------------------------------------" << endl;
+    // unit_test[212] データサイズが0で,且つ終了フラグがONで,且つdata_begain_offsetが0の場合
+    // unit_test[212] 戻り値がCLIENT_DISCONNECTで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 0u;
     down_thread_data->end_flag = END_FLAG_ON;
@@ -4077,8 +4238,9 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[202] data_size=0,end_flag=END_FLAG_ON,data_begain_offset>0
-    // unit_test[202] test data:handle_client_send() return CLIENT_DISCONNECT
+    cout << "[213]------------------------------------------" << endl;
+    // unit_test[213] データサイズが0で,且つ終了フラグがONで,且つdata_begain_offset>0の場合
+    // unit_test[213] 戻り値がCLIENT_DISCONNECTで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 0u;
     down_thread_data->end_flag = END_FLAG_ON;
@@ -4089,8 +4251,9 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[203] data_size=0,end_flag=END_FLAG_OFF,data_begain_offset = 0
-    // unit_test[203] test data:handle_client_send() return REALSERVER_RECV
+    cout << "[214]------------------------------------------" << endl;
+    // unit_test[214] データサイズが0で,且つ終了フラグがOFFで,且つdata_begain_offset が 0の場合
+    // unit_test[214] 戻り値がREALSERVER_RECVで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 0u;
     down_thread_data->end_flag = END_FLAG_OFF;
@@ -4101,8 +4264,9 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[203] data_size=0,end_flag=END_FLAG_OFF,data_begain_offset > 0
-    // unit_test[203] test data:handle_client_send() return REALSERVER_RECV
+    cout << "[215]------------------------------------------" << endl;
+    // unit_test[215] データサイズが0で,且つ終了フラグがOFFで,且つdata_begain_offset > 0の場合
+    // unit_test[215] 戻り値がREALSERVER_RECVで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 0u;
     down_thread_data->end_flag = END_FLAG_OFF;
@@ -4113,8 +4277,9 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[204] data_size>0,current_record_rest_size>0,data_begain_offset=0
-    // unit_test[204] test data:handle_client_send() return CLIENT_CONNECTION_CHECK
+    cout << "[216]------------------------------------------" << endl;
+    // unit_test[216] データサイズ>0で,且つcurrent_record_rest_size>0で,且つdata_begain_offsetが0の場合
+    // unit_test[216] 戻り値がCLIENT_CONNECTION_CHECKで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 10u;
     down_thread_data->current_record_rest_size = 8u;
@@ -4125,8 +4290,9 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[204] data_size>0,current_record_rest_size>0,data_begain_offset=0,data_begain_offset>0
-    // unit_test[204] test data:handle_client_send() return CLIENT_CONNECTION_CHECK
+    cout << "[217]------------------------------------------" << endl;
+    // unit_test[217] データサイズ>0で,且つcurrent_record_rest_size>0で,且つdata_begain_offsetが0で,且つdata_begain_offset>0の場合
+    // unit_test[217] 戻り値がCLIENT_CONNECTION_CHECKで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 10u;
     down_thread_data->current_record_rest_size = 8u;
@@ -4137,8 +4303,9 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[205] data_size>0,current_record_rest_size=0,check_ssl_record_sendable() return -1 (異常),data_begain_offset=0
-    // unit_test[205] test data:end_flag == END_FLAG_ON,handle_client_send() return FINALIZE
+    cout << "[218]------------------------------------------" << endl;
+    // unit_test[218] データサイズ>0で,且つcurrent_record_rest_sizeが0で,且つcheck_ssl_record_sendable()の戻り値が-1(異常)で,且つdata_begain_offsetが0の場合
+    // unit_test[218] 戻り値がFINALIZEで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 10u;
     down_thread_data->current_record_rest_size = 0u;
@@ -4151,8 +4318,9 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[205] data_size>0,current_record_rest_size=0,check_ssl_record_sendable() return -1 (異常),data_begain_offset>0
-    // unit_test[205] test data:end_flag == END_FLAG_ON,handle_client_send() return FINALIZE
+    cout << "[219]------------------------------------------" << endl;
+    // unit_test[219] データサイズ>0で,且つcurrent_record_rest_sizeが0で,且つcheck_ssl_record_sendable()の戻り値が-1(異常)で,且つdata_begain_offset>0の場合
+    // unit_test[219] 戻り値がFINALIZEで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 10u;
     down_thread_data->current_record_rest_size = 0u;
@@ -4165,9 +4333,10 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[206] data_size>0,current_record_rest_size=0,check_ssl_record_sendable() return 1 (送信不可),data_begain_offset=0
-    // unit_test[206] end_flag=END_FLAG_ON
-    // unit_test[206] test data:handle_client_send() return CLIENT_DISCONNECT
+    cout << "[220]------------------------------------------" << endl;
+    // unit_test[220] データサイズ>0で,且つcurrent_record_rest_sizeが0で,且つcheck_ssl_record_sendable()の戻り値が1(送信不可)で,且つdata_begain_offsetが0で
+    // unit_test[220] 且つ終了フラグがONの場合
+    // unit_test[220] 戻る値がCLIENT_DISCONNECTで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 3u;
     down_thread_data->current_record_rest_size = 0u;
@@ -4179,9 +4348,10 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[206] data_size>0,current_record_rest_size=0,check_ssl_record_sendable() return 1 (送信不可),data_begain_offset>0
-    // unit_test[206] end_flag=END_FLAG_ON
-    // unit_test[206] test data:handle_client_send() return CLIENT_DISCONNECT
+    cout << "[221]------------------------------------------" << endl;
+    // unit_test[221] データサイズ>0で,且つcurrent_record_rest_sizeが0で,且つcheck_ssl_record_sendable()の戻り値が1(送信不可)で,且つdata_begain_offset>0で
+    // unit_test[221] 且つ終了フラグがONの場合
+    // unit_test[221] 戻り値がCLIENT_DISCONNECTで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 3u;
     down_thread_data->current_record_rest_size = 0u;
@@ -4193,9 +4363,10 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[207] data_size>0,current_record_rest_size=0,check_ssl_record_sendable()return 1 (送信不可),data_begain_offset=0
-    // unit_test[207] end_flag=END_FLAG_OFF
-    // unit_test[207] test data:handle_client_send() return REALSERVER_RECV
+    cout << "[222]------------------------------------------" << endl;
+    // unit_test[222] データサイズ>0で,且つcurrent_record_rest_sizeが0で,且つcheck_ssl_record_sendable()の戻り値が1(送信不可)で,且つdata_begain_offsetが0で
+    // unit_test[222] 且つ終了フラグがOFFの場合
+    // unit_test[222] 戻り値がREALSERVER_RECVで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 3u;
     down_thread_data->current_record_rest_size = 0u;
@@ -4207,9 +4378,10 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[207] data_size>0,current_record_rest_size=0,check_ssl_record_sendable()return 1 (送信不可),data_begain_offset>0
-    // unit_test[207] end_flag=END_FLAG_OFF
-    // unit_test[207] test data:handle_client_send() return REALSERVER_RECV
+    cout << "[223]------------------------------------------" << endl;
+    // unit_test[223] データサイズ>0で,且つcurrent_record_rest_sizeが0で,且つcheck_ssl_record_sendable()の戻り値が1(送信不可)で,且つdata_begain_offset>0で
+    // unit_test[223] 且つ終了フラグがOFFの場合
+    // unit_test[223] 戻り値がREALSERVER_RECVで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 3u;
     down_thread_data->current_record_rest_size = 0u;
@@ -4221,10 +4393,9 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[208] data_size>=76,current_record_rest_size=0,check_ssl_record_sendable() return 0 (送信可能),data_begain_offset=0
-    // unit_test[208] is hello message
-    // unit_test[208] test data:current_record_rest_size == all_length,hello_message_flag == TRUE
-    // unit_test[208] handle_client_send() return CLIENT_CONNECTION_CHECK
+    cout << "[224]------------------------------------------" << endl;
+    // unit_test[224] データサイズ>=76で,且つcurrent_record_rest_sizeが0で,且つcheck_ssl_record_sendable()の戻り値が0(送信可能)で,且つdata_begain_offsetが0の場合
+    // unit_test[224] 戻り値がCLIENT_CONNECTION_CHECKで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 76;
     down_thread_data->current_record_rest_size = 0;
@@ -4245,10 +4416,9 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[208] data_size>=76,current_record_rest_size=0,check_ssl_record_sendable() return 0 (送信可能),data_begain_offset>0
-    // unit_test[208] is hello message
-    // unit_test[208] test data:current_record_rest_size == all_length,hello_message_flag == TRUE
-    // unit_test[208] handle_client_send() return CLIENT_CONNECTION_CHECK
+    cout << "[225]------------------------------------------" << endl;
+    // unit_test[225] データサイズ>=76で,且つcurrent_record_rest_sizeが0で,且つcheck_ssl_record_sendable()の戻り値が0(送信可能)で,且つdata_begain_offset>0が0の場合
+    // unit_test[225] 戻り値がCLIENT_CONNECTION_CHECKで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 86;
     down_thread_data->current_record_rest_size = 0;
@@ -4269,10 +4439,9 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[209] data_size>=6,current_record_rest_size=0,check_ssl_record_sendable() return 0 (送信可能),data_begain_offset=0
-    // unit_test[209] is not hello message
-    // unit_test[209] test data:current_record_rest_size == all_length,hello_message_flag == FALSE
-    // unit_test[209] handle_client_send() return CLIENT_CONNECTION_CHECK
+    cout << "[226]------------------------------------------" << endl;
+    // unit_test[226] データサイズ>=6で,且つcurrent_record_rest_sizeが0で,且つcheck_ssl_record_sendable()の戻り値が0(送信可能)で,且つdata_begain_offsetが0の場合
+    // unit_test[226] 戻り値がCLIENT_CONNECTION_CHECKで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 10;
     down_thread_data->current_record_rest_size = 0;
@@ -4290,10 +4459,9 @@ void handle_client_send_test() {
     delete down_thread_data;
     this->session_thread_data_map.clear();
 
-    // unit_test[209] data_size>=6,current_record_rest_size=0,check_ssl_record_sendable() return 0 (送信可能),data_begain_offset>0
-    // unit_test[209] is not hello message
-    // unit_test[209] test data:current_record_rest_size == all_length,hello_message_flag == FALSE
-    // unit_test[209] handle_client_send() return CLIENT_CONNECTION_CHECK
+    cout << "[227]------------------------------------------" << endl;
+    // unit_test[227] データサイズ>=6で,且つcurrent_record_rest_sizeが0で,且つcheck_ssl_record_sendable()の戻り値が0(送信可能)で,且つdata_begain_offset>0の場合
+    // unit_test[227] 戻り値がCLIENT_CONNECTION_CHECKで設定する。
     down_thread_data = new session_thread_data_sslid;
     down_thread_data->data_size = 10;
     down_thread_data->current_record_rest_size = 0;
@@ -4314,7 +4482,8 @@ void handle_client_send_test() {
 
 //handle_client_disconnect
 void handle_client_disconnect_test(){
-       //unit_test[210] handle_client_disconnect()メソッドのテスト,up and down threads,正常系で必ずFINALIZEを返す
+    cout << "[228]------------------------------------------" << endl;
+       //unit_test[228] handle_client_disconnect()メソッドのテスト,up and down threads,正常系で必ずFINALIZEを返す
        boost::thread tdown_for_get_id(down_thread_func);
        boost::thread_group threads;
        threads.create_thread(bind(&protocol_module_sslid_test_class::handle_client_disconnect_test_thread_func,
@@ -4325,7 +4494,8 @@ void handle_client_disconnect_test(){
                                    tdown_for_get_id.get_id()));
        threads.join_all();
 
-       //unit_test[] one thread,return FINALIZE
+    cout << "[229]------------------------------------------" << endl;
+       //unit_test[229] one thread,return FINALIZE
        BOOST_CHECK_EQUAL(this->handle_client_disconnect(boost::this_thread::get_id()),FINALIZE);
 }
 void handle_client_disconnect_test_thread_func(const boost::thread::id thread_id){
@@ -4335,21 +4505,24 @@ void handle_client_disconnect_test_thread_func(const boost::thread::id thread_id
 
 //handle_realserver_disconnect
 void handle_realserver_disconnect_test(){
-       //unit_test[211] 正常系で必ずSTOPを返す
+    cout << "[230]------------------------------------------" << endl;
+       //unit_test[230] 正常系で必ずSTOPを返す
        boost::asio::ip::tcp::endpoint ep;
        BOOST_CHECK_EQUAL(this->handle_realserver_disconnect(boost::this_thread::get_id(),ep), STOP);
 }
 
 //handle_sorryserver_select
 void handle_sorryserver_select_test(){
-       //unit_test[212] 正常系で必ずSTOPを返す
+    cout << "[231]------------------------------------------" << endl;
+       //unit_test[231] 正常系で必ずSTOPを返す
        boost::asio::ip::tcp::endpoint ep;
        BOOST_CHECK_EQUAL(this->handle_sorryserver_select(boost::this_thread::get_id(),ep), STOP);
 }
 
 //handle_sorryserver_connect
 void handle_sorryserver_connect_test(){
-       //unit_test[213] 正常系で必ずSTOPを返す
+    cout << "[232]------------------------------------------" << endl;
+       //unit_test[232] 正常系で必ずSTOPを返す
        boost::asio::ip::tcp::endpoint ep;
        boost::array<char,MAX_BUFFER_SIZE> buffer;
        size_t datalen;
@@ -4358,20 +4531,23 @@ void handle_sorryserver_connect_test(){
 
 //handle_sorryserver_connection_fail
 void handle_sorryserver_connection_fail_test(){
-       //unit_test[214] 正常系で必ずSTOPを返す
+    cout << "[233]------------------------------------------" << endl;
+       //unit_test[233] 正常系で必ずSTOPを返す
        boost::asio::ip::tcp::endpoint ep;
        BOOST_CHECK_EQUAL(this->handle_sorryserver_connection_fail(boost::this_thread::get_id(),ep), STOP);
 }
 
 //handle_sorryserver_send
 void handle_sorryserver_send_test(){
-       //unit_test[215] 正常系で必ずSTOPを返す
+    cout << "[234]------------------------------------------" << endl;
+       //unit_test[234] 正常系で必ずSTOPを返す
        BOOST_CHECK_EQUAL(this->handle_sorryserver_send(boost::this_thread::get_id()), STOP);
 }
 
 //handle_sorryserver_recv
 void handle_sorryserver_recv_test(){
-       //unit_test[216] 正常系で必ずSTOPを返す
+    cout << "[235]------------------------------------------" << endl;
+       //unit_test[235] 正常系で必ずSTOPを返す
        boost::asio::ip::tcp::endpoint ep;
        boost::array<char,MAX_BUFFER_SIZE> buffer;
        size_t datalen;
@@ -4380,29 +4556,33 @@ void handle_sorryserver_recv_test(){
 
 //handle_response_send_inform
 void handle_response_send_inform_test(){
-       //unit_test[217] 正常系で必ずSTOPを返す
+    cout << "[236]------------------------------------------" << endl;
+       //unit_test[236] 正常系で必ずSTOPを返す
        boost::asio::ip::tcp::endpoint ep;
        BOOST_CHECK_EQUAL(this->handle_response_send_inform(boost::this_thread::get_id()), STOP);
 }
 
 //handle_sorry_enable
 void handle_sorry_enable_test(){
-       //unit_test[218] 全部の場合,遷移先ステータスを設定する,status = STOP
-       //unit_test[218] test data:NULL
+    cout << "[237]------------------------------------------" << endl;
+       //unit_test[237] 全部の場合,遷移先ステータスを設定する,status = STOP
+       //unit_test[237] test data:NULL
        boost::asio::ip::tcp::endpoint ep;
        BOOST_CHECK_EQUAL(this->handle_sorry_enable(boost::this_thread::get_id()), STOP);
 }
 
 //handle_sorry_disable
 void handle_sorry_disable_test(){
-       //unit_test[219] 正常系で必ずSTOPを返す
+    cout << "[238]------------------------------------------" << endl;
+       //unit_test[238] 正常系で必ずSTOPを返す
        boost::asio::ip::tcp::endpoint ep;
        BOOST_CHECK_EQUAL(this->handle_sorry_disable(boost::this_thread::get_id()), STOP);
 }
 
 //handle_sorryserver_disconnect
 void handle_sorryserver_disconnect_test(){
-       //unit_test[220] 正常系で必ずSTOPを返す
+    cout << "[239]------------------------------------------" << endl;
+       //unit_test[239] 正常系で必ずSTOPを返す
        boost::asio::ip::tcp::endpoint ep;
        BOOST_CHECK_EQUAL(this->handle_sorryserver_disconnect(boost::this_thread::get_id(),ep), STOP);
 }
@@ -4419,8 +4599,8 @@ void replication_interrupt_test(){
                                        stb_putLogFatal, stb_putLogError, stb_putLogWarn, stb_putLogInfo,
                                        stb_putLogDebug);
 
-       //unit_test[] add the replication_data to replication_area
-       //unit_test[] the replication_data is add
+    cout << "[240]------------------------------------------" << endl;
+       //unit_test[240] op_codeが「A」の場合、replication_dataをreplication_areaに追加する。
        time_t last_time_A = time(0);
        boost::asio::ip::tcp::endpoint real_ep_A;
        struct sslid_replication_temp_data replication_temp_data_add;
@@ -4437,22 +4617,23 @@ void replication_interrupt_test(){
        {
                std::cout<<"bad_cast:::"<<std::endl;
        }
+       pstub->get_replication_area()=new sslid_replication_data;
        pstub->register_replication_area_lock(replication_area_lock_stb);
        pstub->register_replication_area_unlock(replication_area_unlock_stb);
        pstub->get_temp_list().push_back(replication_temp_data_add);
-       pstub->get_replication_area()[0].valid=0;
+       pstub->get_replication_area()->valid=0;
 
        boost::thread test_thread1(boost::bind(&protocol_module_sslid_test_class::replication_interrupt,this));
        sleep(5);
-       BOOST_CHECK_EQUAL(pstub->get_replication_area()[0].valid,1);
-       BOOST_CHECK_EQUAL(pstub->get_replication_area()[0].last_time,last_time_A);
-       BOOST_CHECK_EQUAL(memcmp(pstub->get_replication_area()[0].session_id,"11111111111111111111111111111111",SSLID_LENGTH),0);
-       BOOST_CHECK_EQUAL(pstub->get_replication_area()[0].realserver_ip,real_ep_A.address().to_string().c_str());
-       BOOST_CHECK_EQUAL(pstub->get_replication_area()[0].realserver_port,real_ep_A.port());
+       BOOST_CHECK_EQUAL(pstub->get_replication_area()->valid,1);
+       BOOST_CHECK_EQUAL(pstub->get_replication_area()->last_time,last_time_A);
+       BOOST_CHECK_EQUAL(memcmp(pstub->get_replication_area()->session_id,"11111111111111111111111111111111",SSLID_LENGTH),0);
+       BOOST_CHECK_EQUAL(pstub->get_replication_area()->realserver_ip,real_ep_A.address().to_string().c_str());
+       BOOST_CHECK_EQUAL(pstub->get_replication_area()->realserver_port,real_ep_A.port());
        test_thread1.interrupt();
 
-       //unit_test[] update the replication_data in the replication_area
-       //unit_test[] the replication_data is update
+    cout << "[241]------------------------------------------" << endl;
+       //unit_test[241] op_codeが「U」、validが1且つセッションIDが一致の場合、replication_area中の該当データを更新する。
        time_t last_time_U = time(0);
        boost::asio::ip::tcp::endpoint real_ep_U;
        struct sslid_replication_temp_data replication_temp_data_update;
@@ -4461,18 +4642,18 @@ void replication_interrupt_test(){
        replication_temp_data_update.last_time=last_time_U;
        replication_temp_data_update.realserver_addr=real_ep_U;
        pstub->get_temp_list().push_back(replication_temp_data_update);
-       pstub->get_replication_area()[0].valid=1;
-       strcpy(pstub->get_replication_area()[0].session_id,"11111111111111111111111111111111");
+       pstub->get_replication_area()->valid=1;
+       strcpy(pstub->get_replication_area()->session_id,"11111111111111111111111111111111");
        boost::thread test_thread2(boost::bind(&protocol_module_sslid_test_class::replication_interrupt,this));
        sleep(5);
-       BOOST_CHECK_EQUAL(pstub->get_replication_area()[0].valid,1);
-       BOOST_CHECK_EQUAL(pstub->get_replication_area()[0].last_time,last_time_U);
-       BOOST_CHECK_EQUAL(pstub->get_replication_area()[0].realserver_ip,real_ep_U.address().to_string().c_str());
-       BOOST_CHECK_EQUAL(pstub->get_replication_area()[0].realserver_port,real_ep_U.port());
+       BOOST_CHECK_EQUAL(pstub->get_replication_area()->valid,1);
+       BOOST_CHECK_EQUAL(pstub->get_replication_area()->last_time,last_time_U);
+       BOOST_CHECK_EQUAL(pstub->get_replication_area()->realserver_ip,real_ep_U.address().to_string().c_str());
+       BOOST_CHECK_EQUAL(pstub->get_replication_area()->realserver_port,real_ep_U.port());
        test_thread2.interrupt();
 
-       //unit_test[] delete the replication_data in the replication_area
-       //unit_test[] the replication_data is delete
+    cout << "[242]------------------------------------------" << endl;
+       //unit_test[242] op_codeが「D」、validが1且つセッションIDが存在する場合、replication_areaから該当データを削除する。
        time_t last_time_D = time(0);
        boost::asio::ip::tcp::endpoint real_ep_D;
        struct sslid_replication_temp_data replication_temp_data_delete;
@@ -4481,11 +4662,11 @@ void replication_interrupt_test(){
        replication_temp_data_delete.last_time=last_time_D;
        replication_temp_data_delete.realserver_addr=real_ep_D;
        pstub->get_temp_list().push_back(replication_temp_data_delete);
-       pstub->get_replication_area()[0].valid=1;
-       strcpy(pstub->get_replication_area()[0].session_id,"11111111111111111111111111111111");
+       pstub->get_replication_area()->valid=1;
+       strcpy(pstub->get_replication_area()->session_id,"11111111111111111111111111111111");
        boost::thread test_thread3(boost::bind(&protocol_module_sslid_test_class::replication_interrupt,this));
        sleep(5);
-       BOOST_CHECK_EQUAL(pstub->get_replication_area()[0].valid,0);
+       BOOST_CHECK_EQUAL(pstub->get_replication_area()->valid,0);
        test_thread3.interrupt();
        sleep(5);
        delete this->replication_data_processor;
@@ -4501,14 +4682,15 @@ void put_data_to_sendbuffer_test(){
     int mem_cmp_length;
     char* mem_cmp_buffer;
 
-    // unit_test[221] thread id is not in the map
-    // unit_test[221] test data:put_data_to_sendbuffer() return -1
+    cout << "[243]------------------------------------------" << endl;
+    // unit_test[243] スレッドIDがmapに存在していない場合
+    // unit_test[243] 戻り値が -1で設定する。
     ret = this->put_data_to_sendbuffer(boost::this_thread::get_id(), sendbuffer, datalen);
     BOOST_CHECK_EQUAL(ret, -1);
 
-    // unit_test[222] current_record_rest_size>data_size, data_size<送信バッファサイズ
-    // unit_test[222] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[222] put_data_to_sendbuffer() return 0
+    cout << "[244]------------------------------------------" << endl;
+    // unit_test[244] current_record_rest_size>data_sizeで, 且つdata_size<送信バッファサイズの場合
+    // unit_test[244] 戻り値が0で設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = 20u;
@@ -4536,9 +4718,9 @@ void put_data_to_sendbuffer_test(){
     delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[223] current_record_rest_size>data_size, data_size=送信バッファサイズ
-    // unit_test[223] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[223] put_data_to_sendbuffer() return 0
+    cout << "[245]------------------------------------------" << endl;
+    // unit_test[245] current_record_rest_size>data_sizeで, 且つdata_size=送信バッファサイズの場合
+    // unit_test[245] 戻り値が0で設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE) + 1u;
@@ -4566,9 +4748,9 @@ void put_data_to_sendbuffer_test(){
     delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[234] current_record_rest_size=data_size, data_size<送信バッファサイズ
-    // unit_test[234] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[234] put_data_to_sendbuffer() return 0
+    cout << "[246]------------------------------------------" << endl;
+    // unit_test[246] current_record_rest_sizeがdata_sizeで, 且つdata_size<送信バッファサイズの場合
+    // unit_test[246] 戻り値が0設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = 10u;
@@ -4596,9 +4778,9 @@ void put_data_to_sendbuffer_test(){
     delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[235] current_record_rest_size=data_size, data_size=送信バッファサイズ
-    // unit_test[235] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[235] put_data_to_sendbuffer() return 0
+    cout << "[247]------------------------------------------" << endl;
+    // unit_test[247] current_record_rest_sizeがdata_sizeで, 且つdata_sizeが送信バッファサイズの場合
+    // unit_test[247] 戻り値が0で設定する
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE);
@@ -4626,9 +4808,9 @@ void put_data_to_sendbuffer_test(){
     delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[236] current_record_rest_size>data_size,data_size>送信バッファサイズ
-    // unit_test[236] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[236] put_data_to_sendbuffer() 0
+    cout << "[248]------------------------------------------" << endl;
+    // unit_test[248] current_record_rest_size>data_sizeで,且つdata_size>送信バッファサイズの場合
+    // unit_test[248] 戻り値が0で設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE) + 10u;
@@ -4656,9 +4838,9 @@ void put_data_to_sendbuffer_test(){
     delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[237] current_record_rest_size=data_size,data_size>送信バッファサイズ
-    // unit_test[237] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[237] put_data_to_sendbuffer() return 0
+    cout << "[249]------------------------------------------" << endl;
+    // unit_test[249] current_record_rest_sizeがdata_sizeで,且つdata_size>送信バッファサイズの場合
+    // unit_test[249] 戻り値が0で設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE) + 10u;
@@ -4686,9 +4868,9 @@ void put_data_to_sendbuffer_test(){
     delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[238] current_record_rest_size<data_size, current_record_rest_size<送信バッファサイズ
-    // unit_test[238] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[238] put_data_to_sendbuffer() return 0
+    cout << "[250]------------------------------------------" << endl;
+    // unit_test[250] current_record_rest_size<data_sizeで, 且つcurrent_record_rest_size<送信バッファサイズの場合
+    // unit_test[250] 戻り値が0で設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = 10u;
@@ -4716,9 +4898,9 @@ void put_data_to_sendbuffer_test(){
     delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[239] current_record_rest_size<data_size, current_record_rest_size=送信バッファサイズ
-    // unit_test[239] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[239] put_data_to_sendbuffer() return 0
+    cout << "[251]------------------------------------------" << endl;
+    // unit_test[251] current_record_rest_size<data_sizeで, 且つcurrent_record_rest_sizeが送信バッファサイズの場合
+    // unit_test[251] 戻り値が0で設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE);
@@ -4746,9 +4928,9 @@ void put_data_to_sendbuffer_test(){
     delete[] mem_cmp_buffer;
     this->session_thread_data_map.clear();
 
-    // unit_test[240] current_record_rest_size<data_size,current_record_rest_size>送信バッファサイズ
-    // unit_test[240] test data:data_begain_offset,current_record_rest_size,data_size,datalen
-    // unit_test[240] put_data_to_sendbuffer() return 0
+    cout << "[252]------------------------------------------" << endl;
+    // unit_test[252] current_record_rest_size<data_sizeで,且つcurrent_record_rest_size>送信バッファサイズの場合
+    // unit_test[252] 戻り値が0で設定する。
     datalen = 0;
     up_thread_data = new session_thread_data_sslid;
     up_thread_data->current_record_rest_size = static_cast<size_t>(MAX_BUFFER_SIZE) + 10u;
@@ -4779,7 +4961,8 @@ void put_data_to_sendbuffer_test(){
 
 //realserver_selected
 void realserver_selected_test(){
-       //unit_test[241] 正常系で必ずFALSEを返す
+    cout << "[253]------------------------------------------" << endl;
+       //unit_test[253] 正常系で必ずFALSEを返す
        boost::asio::ip::tcp::endpoint ep;
        BOOST_CHECK_EQUAL(this->realserver_selected(ep), false);
 }
@@ -5000,3 +5183,4 @@ void protocol_module_sslid_test_main() {
        ts->add(BOOST_TEST_CASE( &realserver_selected_test ));
        framework::master_test_suite().add(ts);
 }
+
index 9985a4e..4b6a619 100644 (file)
@@ -207,38 +207,43 @@ public:
                int ret = 0;
                char *record_data;
 
-               // unit_test[1] condition: recv_length = 0, record_data = NULL
-               // unit_test[1] check: get_ssl_session_id() return -1 (error)
+    cout << "[1]------------------------------------------" << endl;
+               // unit_test[1] recv_length が 0で, 且つrecord_data が NULLの場合
+               // unit_test[1] 戻り値が-1(error)で設定する。
                record_data = NULL;
                ret = this->get_ssl_session_id(NULL, 0, session_id);
                BOOST_CHECK_EQUAL(ret, -1);
 
-               // unit_test[2] condition: recv_length = HELLO_MSG_HEADER_LENGTH, record_data != NULL, record_data has a session id
-               // unit_test[2] check: get_ssl_session_id() return 0 (get a session id successed!)
+    cout << "[2]------------------------------------------" << endl;
+               // unit_test[2] recv_length が HELLO_MSG_HEADER_LENGTHで, 且つrecord_data != NULLの場合
+               // unit_test[2] 戻り値が0で設定する。
                record_data = new char[HELLO_MSG_HEADER_LENGTH];
                record_data[SESSION_ID_BEGAIN_OFFSET-1] = 0x20;
                ret = this->get_ssl_session_id(record_data, HELLO_MSG_HEADER_LENGTH, session_id);
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[3] condition: recv_length = HELLO_MSG_HEADER_LENGTH, record_data != NULL, record_data has not a session id
-               // unit_test[3] check: get_ssl_session_id() return 1 (get a session id failed!)
+    cout << "[3]------------------------------------------" << endl;
+               // unit_test[3] recv_length が HELLO_MSG_HEADER_LENGTHで, 且つrecord_data != NULLの場合
+               // unit_test[3] 戻り値が1で設定する。
                record_data = new char[HELLO_MSG_HEADER_LENGTH];
                record_data[SESSION_ID_BEGAIN_OFFSET-1] = 0x00;
                ret = this->get_ssl_session_id(record_data, HELLO_MSG_HEADER_LENGTH, session_id);
                BOOST_CHECK_EQUAL(ret, 1);
                delete[] record_data;
 
-               // unit_test[4] condition: recv_length > HELLO_MSG_HEADER_LENGTH, record_data != NULL, record_data has a session id
-               // unit_test[4] check: get_ssl_session_id() return 0 (get a session id successed!)
+    cout << "[4]------------------------------------------" << endl;
+               // unit_test[4] recv_length > HELLO_MSG_HEADER_LENGTHで, 且つrecord_data != NULLの場合
+               // unit_test[4] 戻り値が0で設定する。
                record_data = new char[HELLO_MSG_HEADER_LENGTH+1];
                record_data[SESSION_ID_BEGAIN_OFFSET-1] = 0x20;
                ret = this->get_ssl_session_id(record_data, HELLO_MSG_HEADER_LENGTH+1, session_id);
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[5] condition: recv_length > HELLO_MSG_HEADER_LENGTH, record_data != NULL, record_data has not a session id
-               // unit_test[5] check: get_ssl_session_id() return 1 (get a session id failed!)
+    cout << "[5]------------------------------------------" << endl;
+               // unit_test[5] recv_length > HELLO_MSG_HEADER_LENGTHで, 且つrecord_data != NULLの場合
+               // unit_test[5] 戻り値が1で設定する。
                record_data = new char[HELLO_MSG_HEADER_LENGTH+1];
                record_data[SESSION_ID_BEGAIN_OFFSET-1] = 0x00;
                ret = this->get_ssl_session_id(record_data, HELLO_MSG_HEADER_LENGTH+1, session_id);
@@ -256,8 +261,9 @@ public:
                bool is_hello_message;
                int ret;
 
-               // unit_test[6] condition: recv_length = 0, record_data = NULL, is_message_from_client = false
-               // unit_test[6] check: check_ssl_record_sendable() return -1 (error)
+    cout << "[6]------------------------------------------" << endl;
+               // unit_test[6] recv_length が 0で, 且つrecord_data が NULLで, 且つis_message_from_client が falseの場合
+               // unit_test[6] 戻り値が-1(error)で設定する。
                recv_length = 0u;
                record_data = NULL;
                is_message_from_client = false;
@@ -265,8 +271,9 @@ public:
                                record_data, recv_length, all_length, is_hello_message);
                BOOST_CHECK_EQUAL(ret, -1);
 
-               // unit_test[7] condition: 0 < recv_length < 6, record_data != NULL, is_message_from_client = false
-               // unit_test[7] check: check_ssl_record_sendable() return 1 (送信不可)
+    cout << "[7]------------------------------------------" << endl;
+               // unit_test[7] 0 < recv_length < 6で, 且つrecord_data != NULLで, 且つis_message_from_client が falseの場合
+               // unit_test[7] 戻り値が1(送信不可)で設定する。
                recv_length = 5u;
                record_data = new char[recv_length];
                is_message_from_client = false;
@@ -277,8 +284,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 1);
                delete[] record_data;
 
-               // unit_test[8] condition: recv_length < 6, record_data != NULL, is_message_from_client = true
-               // unit_test[8] check: check_ssl_record_sendable() return 1 (送信不可)
+    cout << "[8]------------------------------------------" << endl;
+               // unit_test[8] recv_length < 6で, 且つrecord_data != NULLで, 且つis_message_from_client が trueの場合
+               // unit_test[8] 戻り値が1(送信不可)で設定する。
                recv_length = 5u;
                record_data = new char[recv_length];
                is_message_from_client = true;
@@ -289,8 +297,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 1);
                delete[] record_data;
 
-               // unit_test[9] condition: recv_length = 6, record_data != NULL, is_message_from_client = true, record_data is not a ssl record
-               // unit_test[9] check: check_ssl_record_sendable() return -1 (異常)
+    cout << "[9]------------------------------------------" << endl;
+               // unit_test[9] recv_length が 6で, 且つrecord_data != NULLで, 且つis_message_from_client が trueの場合
+               // unit_test[9] 戻り値が-1(異常)で設定する。
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x00;
@@ -302,8 +311,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[10] condition: recv_length = 6, record_data != NULL, is_message_from_client = false, record_data is not a ssl record
-               // unit_test[10] check: check_ssl_record_sendable() return -1 (異常)
+    cout << "[10]------------------------------------------" << endl;
+               // unit_test[10] recv_length が 6で, 且つrecord_data != NULLで, 且つis_message_from_client が falseの場合
+               // unit_test[10] 戻り値が-1(異常)で設定する。
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x00;
@@ -315,8 +325,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[11] condition: recv_length = 6, is_message_from_client = true, record_data is a ssl record(minimal size), but is not a hello message.
-               // unit_test[11] check: check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[11]------------------------------------------" << endl;
+               // unit_test[11] recv_length が 6で, 且つis_message_from_client が trueで, record_dataがsslレコード(最小サイズ)で、且つhello messageでない場合
+               // unit_test[11] 戻り値が0(送信可能)で設定する。
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x17;
@@ -335,8 +346,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[11] condition: recv_length = 6, is_message_from_client = true, record_data is a ssl record(minimal size), but is not a hello message.
-               // unit_test[11] check: check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[12]------------------------------------------" << endl;
+               // unit_test[12] recv_length が 6で, 且つis_message_from_client が trueで, record_dataがsslレコード(最小サイズ)で、且つhello messageでない場合
+               // unit_test[12] 戻り値が0(送信可能)で設定する。
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x14;
@@ -355,8 +367,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[11] condition: recv_length = 6, is_message_from_client = true, record_data is a ssl record(minimal size), but is not a hello message.
-               // unit_test[11] check: check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[13]------------------------------------------" << endl;
+               // unit_test[13] recv_length が 6で, 且つis_message_from_client が trueで, record_dataがsslレコード(最小サイズ)で、且つhello messageでない場合
+               // unit_test[13] 戻り値が0(送信可能)で設定する。
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x15;
@@ -375,8 +388,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[12] condition: recv_length = 6, is_message_from_client = false, record_data is a ssl record(minimal size), but is not a hello message.
-               // unit_test[12] check: check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[14]------------------------------------------" << endl;
+               // unit_test[14] recv_length が 6で, 且つis_message_from_client が falseで, record_dataがsslレコード(最小サイズ)で、且つhello messageでない場合
+               // unit_test[14] 戻り値が0(送信可能)で設定する。
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x17;
@@ -395,8 +409,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[13] condition: recv_length = 6, is_message_from_client = true, record_data is a ssl record(minimal size), but is not a hello message.
-               // unit_test[13] check: check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[15]------------------------------------------" << endl;
+               // unit_test[15] recv_length が 6で, 且つis_message_from_client が trueで, record_dataがsslレコード(最小サイズ)で、且つhello messageでない場合
+               // unit_test[15] 戻り値が0(送信可能)で設定する。
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x17;
@@ -415,8 +430,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[14] condition: recv_length = 6, is_message_from_client = false, record_data is a ssl record(minimal size), but is not a hello message.
-               // unit_test[14] check: check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[16]------------------------------------------" << endl;
+               // unit_test[16] recv_length が 6で, 且つis_message_from_client が falseで, record_dataがsslレコード(最小サイズ)で、且つhello messageでない場合
+               // unit_test[16] 戻り値が0(送信可能)で設定する
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x17;
@@ -435,8 +451,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[15] condition: recv_length = 6, is_message_from_client = true ,record_data is a ssl record(minimal size), and is a hello message.
-               // unit_test[15] check: check_ssl_record_sendable() return 1 (送信不可)
+    cout << "[17]------------------------------------------" << endl;
+               // unit_test[17] recv_length が 6で, 且つis_message_from_client が trueで ,record_dataがsslレコード(最小サイズ)で、且つhello messageの場合
+               // unit_test[17] 戻り値が1(送信不可)で設定する。
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -453,8 +470,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 1);
                delete[] record_data;
 
-               // unit_test[16] condition: recv_length = 6, is_message_from_client = false ,record_data is a ssl record(minimal size), and is a hello message.
-               // unit_test[16] check: check_ssl_record_sendable() return 1 (送信不可)
+    cout << "[18]------------------------------------------" << endl;
+               // unit_test[18] recv_length が 6で, 且つis_message_from_client が falseで ,record_dataがsslレコード(最小サイズ)で、且つhello messageの場合
+               // unit_test[18] 戻り値が1(送信不可)で設定する。
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -471,8 +489,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 1);
                delete[] record_data;
 
-               // unit_test[17] condition:recv_length = 6, is_message_from_client = true ,record_data is a ssl record(minimal size), and is a hello message.
-               // unit_test[17] check:check_ssl_record_sendable() return 1 (送信不可)
+    cout << "[19]------------------------------------------" << endl;
+               // unit_test[19] recv_length が 6で, 且つis_message_from_client が trueで ,record_dataがsslレコード(最小サイズ)で、且つhello messageの場合
+               // unit_test[19] 戻り値が1(送信不可)で設定する。
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -489,8 +508,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 1);
                delete[] record_data;
 
-               // unit_test[18] condition:recv_length = 6, is_message_from_client = false ,record_data is a ssl record(minimal size), and is a hello message.
-               // unit_test[18] check:check_ssl_record_sendable() return 1 (送信不可)
+    cout << "[20]------------------------------------------" << endl;
+               // unit_test[20] recv_length が 6で, 且つis_message_from_client が falseで ,record_dataがsslレコード(最小サイズ)で、且つhello messageの場合
+               // unit_test[20] 戻り値が1(送信不可)で設定する。
                recv_length = 6u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -507,8 +527,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 1);
                delete[] record_data;
 
-               // unit_test[19] condition:recv_length > 6, is_message_from_client = true ,record_data is  not ssl record data
-               // unit_test[19] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[21]------------------------------------------" << endl;
+               // unit_test[21] recv_length > 6で, 且つis_message_from_client が trueで,record_dataがsslレコードでない場合
+               // unit_test[21] 戻り値が-1(異常)で設定する。
                recv_length = 10u;
                record_data = new char[recv_length];
                record_data[0] = 0x00;
@@ -520,8 +541,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[20] condition:recv_length > 6, is_message_from_client = false ,record_data is  not ssl record data
-               // unit_test[20] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[22]------------------------------------------" << endl;
+               // unit_test[22] recv_length > 6で, 且つis_message_from_client が falseで,record_dataがsslレコードでない場合
+               // unit_test[22] 戻り値が-1(異常)で設定する
                recv_length = 10u;
                record_data = new char[recv_length];
                record_data[0] = 0x00;
@@ -533,8 +555,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[21] condition:recv_length > 6, is_message_from_client = true ,record_data is ssl record data, but is not a hello message
-               // unit_test[21] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[23]------------------------------------------" << endl;
+               // unit_test[23] recv_length > 6で, 且つis_message_from_client が trueで ,record_dataがsslレコードで、且つhello messageでない場合
+               // unit_test[23] 戻り値が0(送信可能)で設定する。
                recv_length = 10u;
                record_data = new char[recv_length];
                record_data[0] = 0x17;
@@ -552,8 +575,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[22] condition:recv_length > 6, is_message_from_client = false ,record_data is ssl record data, but is not a hello message
-               // unit_test[22] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[24]------------------------------------------" << endl;
+               // unit_test[24] recv_length > 6で, 且つis_message_from_client が falseで,record_dataがsslレコードで、且つhello messageでない場合
+               // unit_test[24] 戻り値が0(送信可能)で設定する。
                recv_length = 10u;
                record_data = new char[recv_length];
                record_data[0] = 0x17;
@@ -571,8 +595,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[23] condition:recv_length > 6, is_message_from_client = true, record_data is ssl record data, but is not a hello message
-               // unit_test[23] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[25]------------------------------------------" << endl;
+               // unit_test[25] recv_length > 6で, 且つis_message_from_client が trueで, record_dataがsslレコードで、且つhello messageでない場合
+               // unit_test[25] 戻り値が0(送信可能)で設定する。
                recv_length = 10u;
                record_data = new char[recv_length];
                record_data[0] = 0x17;
@@ -590,8 +615,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[24] condition:recv_length > 6, is_message_from_client = false, record_data is ssl record data, but is not a hello message
-               // unit_test[24] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[26]------------------------------------------" << endl;
+               // unit_test[26] recv_length > 6で, 且つis_message_from_client が falseで, record_dataがsslレコードで、且つhello messageでない場合
+               // unit_test[26] 戻り値が0(送信可能)で設定する。
                recv_length = 10u;
                record_data = new char[recv_length];
                record_data[0] = 0x17;
@@ -609,8 +635,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[25] condition:recv_length > 6, recv_length < HELLO_MSG_HEADER_LENGTH, is_message_from_client= true,record_data is ssl record data, is a hello message
-               // unit_test[25] check:check_ssl_record_sendable() return 1 (送信不可)
+    cout << "[27]------------------------------------------" << endl;
+               // unit_test[27] recv_length > 6で, 且つrecv_length < HELLO_MSG_HEADER_LENGTHで, 且つis_message_from_clientが trueで,record_dataがsslレコードで、且つhello messageの場合
+               // unit_test[27] 戻り値が1(送信不可)で設定する。
                recv_length = 10u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -627,8 +654,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 1);
                delete[] record_data;
 
-               // unit_test[26] condition:recv_length > 6, recv_length < HELLO_MSG_HEADER_LENGTH, is_message_from_client= false,record_data is ssl record data, is a hello message
-               // unit_test[26] check:check_ssl_record_sendable() return 1 (送信不可)
+    cout << "[28]------------------------------------------" << endl;
+               // unit_test[28] recv_length > 6で, 且つrecv_length < HELLO_MSG_HEADER_LENGTHで, 且つis_message_from_clientが falseで,record_dataがsslレコードで、且つhello messageの場合
+               // unit_test[28] 戻り値が1(送信不可)で設定する。
                recv_length = 10u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -645,8 +673,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 1);
                delete[] record_data;
 
-               // unit_test[27] condition:recv_length > 6, recv_length < HELLO_MSG_HEADER_LENGTH, is_message_from_client = false,record_data is ssl record data, is a hello message
-               // unit_test[27] check:check_ssl_record_sendable() return 1 (送信不可)
+    cout << "[29]------------------------------------------" << endl;
+               // unit_test[29] recv_length > 6で, 且つrecv_length < HELLO_MSG_HEADER_LENGTHで, 且つis_message_from_client が falseで,record_dataがsslレコードで、且つhello messageの場合
+               // unit_test[29] 戻り値が1(送信不可)で設定する。
                recv_length = 10u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -663,8 +692,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 1);
                delete[] record_data;
 
-               // unit_test[28] condition:recv_length > 6, recv_length < HELLO_MSG_HEADER_LENGTH, is_message_from_client = true, record_data is ssl record data, is a hello message
-               // unit_test[28] check:check_ssl_record_sendable() return 1 (送信不可)
+    cout << "[30]------------------------------------------" << endl;
+               // unit_test[30] recv_length > 6で, 且つrecv_length < HELLO_MSG_HEADER_LENGTHで, 且つis_message_from_client が trueで, record_dataがsslレコードで、且つhello messageの場合
+               // unit_test[30] 戻り値が1(送信不可)で設定する。
                recv_length = 10u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -681,9 +711,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 1);
                delete[] record_data;
 
-/*---------------------------------------------------------------------------------------*/
-               // unit_test[29] condition:recv_length = HELLO_MSG_HEADER_LENGTH,is_message_from_client = true, record_data is ssl record data, but is a error hello message,
-               // unit_test[29] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[31]------------------------------------------" << endl;
+               // unit_test[31] recv_length が HELLO_MSG_HEADER_LENGTHで,且つis_message_from_client が trueで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[31] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -703,8 +733,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[30] condition:recv_length = HELLO_MSG_HEADER_LENGTH, is_message_from_client = false,record_data is ssl record data, but is a error hello message,
-               // unit_test[30] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[32]------------------------------------------" << endl;
+               // unit_test[32] recv_length が HELLO_MSG_HEADER_LENGTHで, 且つis_message_from_client が falseで,record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[32] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -724,8 +755,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[31] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message,
-               // unit_test[31] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[33]------------------------------------------" << endl;
+               // unit_test[33] recv_length が HELLO_MSG_HEADER_LENGTHで, 且つrecord_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[33] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -744,8 +776,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[32] condition:recv_length = HELLO_MSG_HEADER_LENGTH, is_message_from_client = true,record_data is ssl record data, but is a error hello message,
-               // unit_test[32] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[34]------------------------------------------" << endl;
+               // unit_test[34] recv_length が HELLO_MSG_HEADER_LENGTHで, 且つis_message_from_client が trueで,record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[34] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -765,8 +798,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[33] condition:recv_length = HELLO_MSG_HEADER_LENGTH, is_message_from_client = false,record_data is ssl record data, but is a error hello message,
-               // unit_test[33] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[35]------------------------------------------" << endl;
+               // unit_test[35] recv_length が HELLO_MSG_HEADER_LENGTHで, 且つis_message_from_client が falseで,record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[35] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -786,8 +820,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[34] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[34] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[36]------------------------------------------" << endl;
+               // unit_test[36] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[36] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -807,8 +842,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[35] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[35] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[37]------------------------------------------" << endl;
+               // unit_test[37] recv_length が HELLO_MSG_HEADER_LENGTHで, 且つrecord_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[37] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -828,8 +864,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[36] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[36] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[38]------------------------------------------" << endl;
+               // unit_test[38] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[38] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -849,8 +886,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[37] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[37] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[39]------------------------------------------" << endl;
+               // unit_test[39] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[39] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -870,8 +908,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[38] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[38] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[40]------------------------------------------" << endl;
+               // unit_test[40] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[40] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -891,8 +930,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[39] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[39] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[41]------------------------------------------" << endl;
+               // unit_test[41] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[41] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -912,8 +952,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[40] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[40] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[42]------------------------------------------" << endl;
+               // unit_test[42] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[42] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -933,8 +974,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[41] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[41] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[43]------------------------------------------" << endl;
+               // unit_test[43] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[43] 戻り値が-1(異常)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -954,8 +996,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[42] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is client hello message
-               // unit_test[42] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[44]------------------------------------------" << endl;
+               // unit_test[44] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つclient hello messageの場合
+               // unit_test[44] 戻り値が0(送信可能)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -977,8 +1020,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[43] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is client hello message
-               // unit_test[43] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[45]------------------------------------------" << endl;
+               // unit_test[45] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つclient hello messageの場合
+               // unit_test[45] 戻り値が0(送信可能)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -999,8 +1043,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[44] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is client hello message
-               // unit_test[44] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[46]------------------------------------------" << endl;
+               // unit_test[46] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つclient hello messageの場合
+               // unit_test[46] 戻り値が0(送信可能)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1021,8 +1066,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[45] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is client hello message
-               // unit_test[45] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[47]------------------------------------------" << endl;
+               // unit_test[47] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つclient hello messageの場合
+               // unit_test[47] 戻り値が0(送信可能)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1043,8 +1089,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[46] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is server hello message
-               // unit_test[46] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[48]------------------------------------------" << endl;
+               // unit_test[48] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つserver hello messageの場合
+               // unit_test[48] 戻り値が0(送信可能)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1065,8 +1112,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[47] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is server hello message
-               // unit_test[47] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[49]------------------------------------------" << endl;
+               // unit_test[49] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つserver hello messageの場合
+               // unit_test[49] 戻り値が0(送信可能)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1087,8 +1135,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[48] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is server hello message
-               // unit_test[48] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[50]------------------------------------------" << endl;
+               // unit_test[50] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つserver hello messageの場合
+               // unit_test[50] 戻り値が0(送信可能)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1109,8 +1158,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[49] condition:recv_length = HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is server hello message
-               // unit_test[49] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[51]------------------------------------------" << endl;
+               // unit_test[51] recv_length が HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つserver hello messageの場合
+               // unit_test[51] 戻り値が0(送信可能)で設定する。
                recv_length = HELLO_MSG_HEADER_LENGTH;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1131,8 +1181,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[50] condition:recv_length > HELLO_MSG_HEADER_LENGTH, is_message_from_client = true,record_data is ssl record data, but is a error hello message,
-               // unit_test[50] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[52]------------------------------------------" << endl;
+               // unit_test[52] recv_length > HELLO_MSG_HEADER_LENGTHで, 且つis_message_from_client が trueで,record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[52] 戻り値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1152,8 +1203,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[51] condition:recv_length > HELLO_MSG_HEADER_LENGTH, is_message_from_client = false,record_data is ssl record data, but is a error hello message,
-               // unit_test[51] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[53]------------------------------------------" << endl;
+               // unit_test[53] recv_length > HELLO_MSG_HEADER_LENGTHで, 且つis_message_from_client が falseで,record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[53] 戻り値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1173,8 +1225,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[52] condition:recv_length > HELLO_MSG_HEADER_LENGTH, is_message_from_client = true, record_data is ssl record data, but is a error hello message,
-               // unit_test[52] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[54]------------------------------------------" << endl;
+               // unit_test[54] recv_length > HELLO_MSG_HEADER_LENGTHで, 且つis_message_from_client が trueで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[54] 戻り値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1194,8 +1247,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[53] condition:recv_length > HELLO_MSG_HEADER_LENGTH, is_message_from_client = false, record_data is ssl record data, but is a error hello message,
-               // unit_test[53] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[55]------------------------------------------" << endl;
+               // unit_test[55] recv_length > HELLO_MSG_HEADER_LENGTHで, 且つis_message_from_client が falseで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[55] 戻り値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1215,8 +1269,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[54] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[54] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[56]------------------------------------------" << endl;
+               // unit_test[56] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[56] 戻り値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1236,8 +1291,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[55] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[55] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[57]------------------------------------------" << endl;
+               // unit_test[57] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[57] 戻り値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1257,8 +1313,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[56] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[56] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[58]------------------------------------------" << endl;
+               // unit_test[58] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[58] 戻り値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1278,8 +1335,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[57] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[57] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[59]------------------------------------------" << endl;
+               // unit_test[59] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[59] 戻る値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1299,8 +1357,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[58] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[58] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[60]------------------------------------------" << endl;
+               // unit_test[60] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[60] 戻り値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1320,8 +1379,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[59] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[59] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[61]------------------------------------------" << endl;
+               // unit_test[61] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[61] 戻り値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1341,8 +1401,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[60] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[60] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[62]------------------------------------------" << endl;
+               // unit_test[62] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[62] 戻り値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1362,8 +1423,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[61] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, but is a error hello message
-               // unit_test[61] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[63]------------------------------------------" << endl;
+               // unit_test[63] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,誤りのhello messageの場合
+               // unit_test[63] 戻り値が-1(異常)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1383,8 +1445,9 @@ public:
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[62] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is client hello message
-               // unit_test[62] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[64]------------------------------------------" << endl;
+               // unit_test[64] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つclient hello messageの場合
+               // unit_test[64] 戻り値が0(送信可能)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1406,8 +1469,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[63] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is client hello message
-               // unit_test[63] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[65]------------------------------------------" << endl;
+               // unit_test[65] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つclient hello messageの場合
+               // unit_test[65] 戻り値が0(送信可能)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1429,8 +1493,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[64] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is client hello message
-               // unit_test[64] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[66]------------------------------------------" << endl;
+               // unit_test[66] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つclient hello messageの場合
+               // unit_test[66] 戻り値が0(送信可能)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1452,8 +1517,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[65] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is client hello message
-               // unit_test[65] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[67]------------------------------------------" << endl;
+               // unit_test[67] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つclient hello messageの場合
+               // unit_test[67] 戻り値が0(送信可能)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1475,8 +1541,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[66] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is server hello message
-               // unit_test[66] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[68]------------------------------------------" << endl;
+               // unit_test[68] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つserver hello messageの場合
+               // unit_test[68] 戻り値が0(送信可能)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1498,8 +1565,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[67] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is server hello message
-               // unit_test[67] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[69]------------------------------------------" << endl;
+               // unit_test[69] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つserver hello messageの場合
+               // unit_test[69] 戻り値が0(送信可能)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1521,8 +1589,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[68] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is server hello message
-               // unit_test[68] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[70]------------------------------------------" << endl;
+               // unit_test[70] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つserver hello messageの場合
+               // unit_test[70] 戻り値が0(送信可能)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1544,8 +1613,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[69] condition:recv_length > HELLO_MSG_HEADER_LENGTH, record_data is ssl record data, and is server hello message
-               // unit_test[69] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[71]------------------------------------------" << endl;
+               // unit_test[71] recv_length > HELLO_MSG_HEADER_LENGTHで, record_dataがsslレコードで,且つserver hello messageの場合
+               // unit_test[71] 戻り値が0(送信可能)で設定する。
                recv_length = 100u;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1567,8 +1637,9 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[70] condition:recv_length = MAX_SSLID_BUFFER_SIZE, record_data is ssl record data, and is server hello message
-               // unit_test[70] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[72]------------------------------------------" << endl;
+               // unit_test[72] recv_length が MAX_SSLID_BUFFER_SIZEで, record_dataがsslレコードで,且つserver hello messageの場合
+               // unit_test[72] 戻り値が0(送信可能)で設定する。
                recv_length = MAX_SSLID_BUFFER_SIZE;
                record_data = new char[recv_length];
                record_data[0] = 0x16;
@@ -1590,16 +1661,18 @@ public:
                BOOST_CHECK_EQUAL(ret, 0);
                delete[] record_data;
 
-               // unit_test[71] condition:record_data = NULL
-               // unit_test[71] check:check_ssl_record_sendable() return -1 (異常)
+    cout << "[73]------------------------------------------" << endl;
+               // unit_test[73] record_data が NULLの場合
+               // unit_test[73] 戻り値が-1(異常)で設定する。
                record_data = NULL;
                ret = this->check_ssl_record_sendable(is_message_from_client,
                                record_data, 0u, all_length, is_hello_message);
                BOOST_CHECK_EQUAL(ret, -1);
                delete[] record_data;
 
-               // unit_test[72] condition:recv_length=SESSION_ID_BEGAIN_OFFSET, record_data is ssl record data, but no session id
-               // uint_test[72] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[74]------------------------------------------" << endl;
+               // unit_test[74] recv_lengthがSESSION_ID_BEGAIN_OFFSETで, record_dataがsslレコードで,セッションIDがない場合
+               // uint_test[74] 戻り値が0(送信可能)で設定する。
                recv_length = SESSION_ID_BEGAIN_OFFSET;
                record_data = new char[SESSION_ID_BEGAIN_OFFSET];
                record_data[0] = 0x16;
@@ -1618,8 +1691,9 @@ public:
         BOOST_CHECK_EQUAL(all_length, 44u);
         delete[] record_data;
 
-        // unit_test[73] condition:recv_length>SESSION_ID_BEGAIN_OFFSET, record_data is ssl record data, but no session id
-               // uint_test[73] check:check_ssl_record_sendable() return 0 (送信可能)
+    cout << "[75]------------------------------------------" << endl;
+               // unit_test[75] recv_length>SESSION_ID_BEGAIN_OFFSETで, record_dataがsslレコードで,セッションIDがない場合
+               // uint_test[75] 戻り値が0(送信可能)で設定する。
                recv_length = SESSION_ID_BEGAIN_OFFSET+1;
                record_data = new char[SESSION_ID_BEGAIN_OFFSET];
                record_data[0] = 0x16;
index 7d35f97..23e98ea 100644 (file)
@@ -233,7 +233,7 @@ public:
                test_data1.session_id = "test_id123456789abcdefghijklmnop";
                test_data1.op_code = 'A';
                test_data1.realserver_addr = endpoint;
-               test_data1.last_time = time(0);
+               test_data1.last_time = 1000;
                this->temp_list.push_back(test_data1);
                this->temp_list.push_back(test_data1);
                this->temp_list.push_back(test_data1);
@@ -243,26 +243,276 @@ public:
 
        // get_from_temp_list test thread
        void get_from_temp_list_thread2() {
+               boost::asio::ip::tcp::endpoint endpoint;
                l7vs::sslid_replication_temp_data get_data;
                this->get_from_temp_list(get_data);
+               BOOST_CHECK_EQUAL(get_data.session_id, "test_id123456789abcdefghijklmnop");
+               BOOST_CHECK_EQUAL(get_data.op_code, 'A');
+               BOOST_CHECK_EQUAL(get_data.realserver_addr, endpoint);
+               BOOST_CHECK_EQUAL(get_data.last_time, 1000);
        }
 
        // sslid_replication_data_processor
        void sslid_replication_data_processor_test(int expecting_maxlist,
                        l7vs::sslid_replication_data* expecting_replication_area,
-                       boost::asio::ip::tcp::endpoint expecting_virtual_service_endpoint) {
+                       boost::asio::ip::tcp::endpoint expecting_virtual_service_endpoint,
+                       char* replication_data_area, int data_area_size, char* header_start_address,
+                       char* real_data_start_address) {
+
+               int maxlist_test = 5;
+               boost::asio::ip::tcp::endpoint test_virtual_service_endpoint;
+               test_virtual_service_endpoint.port(999);
+               l7vs::sslid_replication_data_header* first_header = reinterpret_cast<sslid_replication_data_header*>(header_start_address);
 
-               // unit_test[1] member variable initialization test
+    cout << "[1]------------------------------------------" << endl;
+               // unit_test[1] メンバー変数が初期化されるチェックする。
                BOOST_CHECK_EQUAL(this->maxlist, expecting_maxlist);
                BOOST_CHECK_EQUAL(this->max_temp_list, expecting_maxlist * 2);
                BOOST_CHECK_EQUAL(this->temp_list.size(), 0u);
                BOOST_CHECK_EQUAL(this->replication_area, expecting_replication_area);
+               BOOST_CHECK_EQUAL(this->virtual_service_endpoint, expecting_virtual_service_endpoint);
                BOOST_CHECK_EQUAL(this->getloglevel, replication_getloglevel);
                BOOST_CHECK_EQUAL(this->putLogFatal, replication_putLogFatal);
                BOOST_CHECK_EQUAL(this->putLogError, replication_putLogError);
                BOOST_CHECK_EQUAL(this->putLogWarn, replication_putLogWarn);
                BOOST_CHECK_EQUAL(this->putLogInfo, replication_putLogInfo);
                BOOST_CHECK_EQUAL(this->putLogDebug, replication_putLogDebug);
+
+
+       cout << "[2]------------------------------------------" << endl;
+               // unit_test[2] replication_data_area が NULLの場合, 例外が発生しない。
+               try {
+                       sslid_replication_data_processor test_object1(maxlist_test,
+                                       NULL, SECTION_NUMBER, test_virtual_service_endpoint, replication_ingetloglevel,
+                                       replication_inputLogFatal, replication_inputLogError,
+                                       replication_inputLogWarn, replication_inputLogInfo,
+                                       replication_inputLogDebug);
+               } catch (...) {
+                       BOOST_ERROR("exception: sslid_replication_data_processor");
+               }
+
+       cout << "[3]------------------------------------------" << endl;
+               // unit_test[3] maxlist < 0の場合, 例外が発生する。
+               bool exception_occured = false;
+               try {
+                       sslid_replication_data_processor test_object(-1,
+                                       replication_data_area, SECTION_NUMBER, test_virtual_service_endpoint, replication_ingetloglevel,
+                                       replication_inputLogFatal, replication_inputLogError,
+                                       replication_inputLogWarn, replication_inputLogInfo,
+                                       replication_inputLogDebug);
+               } catch (...) {
+                       exception_occured = true;
+               }
+               BOOST_CHECK(exception_occured);
+
+       cout << "[4]------------------------------------------" << endl;
+               // unit_test[4] maxlist = 0の場合, 例外が発生しない。
+               try {
+                       sslid_replication_data_processor test_object(0,
+                                       replication_data_area, SECTION_NUMBER, test_virtual_service_endpoint, replication_ingetloglevel,
+                                       replication_inputLogFatal, replication_inputLogError,
+                                       replication_inputLogWarn, replication_inputLogInfo,
+                                       replication_inputLogDebug);
+               } catch (...) {
+                       BOOST_ERROR("exception: sslid_replication_data_processor");
+               }
+
+       cout << "[5]------------------------------------------" << endl;
+               // unit_test[5] maxlist が 1 の場合, 例外が発生しない。
+               try {
+                       sslid_replication_data_processor test_object(1,
+                                       replication_data_area, SECTION_NUMBER, test_virtual_service_endpoint, replication_ingetloglevel,
+                                       replication_inputLogFatal, replication_inputLogError,
+                                       replication_inputLogWarn, replication_inputLogInfo,
+                                       replication_inputLogDebug);
+               } catch (...) {
+                       BOOST_ERROR("exception: sslid_replication_data_processor");
+               }
+
+       cout << "[6]------------------------------------------" << endl;
+               // unit_test[6] sslid_replication_area_size < 0, 例外が発生する。
+               exception_occured = false;
+               try {
+                       memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
+                       for(int i = 0; i < 128; i++){
+                               l7vs::sslid_replication_data_header* temp= ((l7vs::sslid_replication_data_header*)replication_data_area) + i;
+                               temp->size = static_cast<size_t>(2 * sizeof(l7vs::sslid_replication_data));
+                       }
+                       l7vs::sslid_replication_data_processor test_object2(2,
+                                       replication_data_area, -1, test_virtual_service_endpoint,
+                                       replication_ingetloglevel, replication_inputLogFatal,
+                                       replication_inputLogError, replication_inputLogWarn,
+                                       replication_inputLogInfo, replication_inputLogDebug);
+               } catch (...) {
+                       exception_occured = true;
+               }
+               BOOST_CHECK(exception_occured);
+
+       cout << "[7]------------------------------------------" << endl;
+               // unit_test[7] sslid_replication_area_sizeが0の場合, 例外が発生しない。
+               try {
+                       memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
+                       for(int i = 0; i < 128; i++){
+                               l7vs::sslid_replication_data_header* temp= ((l7vs::sslid_replication_data_header*)replication_data_area) + i;
+                               temp->size = static_cast<size_t>(2 * sizeof(l7vs::sslid_replication_data));
+                       }
+                       l7vs::sslid_replication_data_processor test_object2(2,
+                                       replication_data_area, 0, test_virtual_service_endpoint,
+                                       replication_ingetloglevel, replication_inputLogFatal,
+                                       replication_inputLogError, replication_inputLogWarn,
+                                       replication_inputLogInfo, replication_inputLogDebug);
+               } catch (...) {
+                       BOOST_ERROR("exception: sslid_replication_data_processor");
+               }
+
+       cout << "[8]------------------------------------------" << endl;
+               // unit_test[8] virtual service が存在して、且つvirtual serviceのデータエリアが実際サイズより小さい場合、
+               // unit_test[8] virtual service対応のreplicationデータヘッダーの情報を再設定する。
+               int max_list_size = 3;
+               std::string virtual_service_ip = "192.168.120.102";
+               memset(replication_data_area, 0, data_area_size);
+               test_virtual_service_endpoint.address(boost::asio::ip::address::from_string(virtual_service_ip));
+               test_virtual_service_endpoint.port(80);
+               memcpy(first_header->virtualserver_ip, virtual_service_ip.c_str(), virtual_service_ip.length());
+               first_header->virtualserver_port = 80;
+               first_header->size = static_cast<size_t>((max_list_size - 1) * sizeof(l7vs::sslid_replication_data));
+               first_header->offset = static_cast<size_t>(real_data_start_address - header_start_address);
+               l7vs::sslid_replication_data_processor test_object3(
+                               max_list_size, replication_data_area,
+                               SECTION_NUMBER, test_virtual_service_endpoint,
+                               replication_ingetloglevel, replication_inputLogFatal,
+                               replication_inputLogError, replication_inputLogWarn,
+                               replication_inputLogInfo, replication_inputLogDebug);
+               // the virtual service's size is resetted, check it
+               size_t expecting_size = static_cast<size_t>(max_list_size * sizeof(l7vs::sslid_replication_data));
+               BOOST_CHECK_EQUAL((first_header+1)->size, expecting_size);
+
+       cout << "[9]------------------------------------------" << endl;
+               // unit_test[9] virtual service対応のreplicationデータヘッダーの情報を再設定して、ヘッダーエリアがfullの場合,処理を行わない。
+               try {
+                       memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
+                       for(int i = 0; i < 128; i++){
+                               l7vs::sslid_replication_data_header* temp= ((l7vs::sslid_replication_data_header*)replication_data_area) + i;
+                               temp->size = sizeof(l7vs::sslid_replication_data);
+                       }
+                       memcpy(first_header->virtualserver_ip, virtual_service_ip.c_str(), virtual_service_ip.length());
+                       first_header->virtualserver_port = 80;
+                       first_header->size = static_cast<size_t>((max_list_size - 1) * sizeof(l7vs::sslid_replication_data));
+                       first_header->offset = static_cast<size_t>(real_data_start_address - header_start_address);
+                       l7vs::sslid_replication_data_processor test_object4(
+                                       max_list_size, replication_data_area,
+                                       SECTION_NUMBER, test_virtual_service_endpoint,
+                                       replication_ingetloglevel, replication_inputLogFatal,
+                                       replication_inputLogError, replication_inputLogWarn,
+                                       replication_inputLogInfo, replication_inputLogDebug);
+               } catch (...) {
+                       BOOST_ERROR("exception: sslid_replication_data_processor");
+               }
+
+       cout << "[10]------------------------------------------" << endl;
+               // unit_test[10] virtual service対応のreplicationデータヘッダーの情報を再設定する時, ヘッダーエリアがfullでない場合
+               // unit_test[10] replicationデータヘッダーの情報を変更する。
+               memset(replication_data_area, 0, data_area_size);
+               memcpy(first_header->virtualserver_ip, virtual_service_ip.c_str(), virtual_service_ip.length());
+               first_header->virtualserver_port = 80;
+               first_header->size = static_cast<size_t>((max_list_size - 1) * sizeof(l7vs::sslid_replication_data));
+               first_header->offset = static_cast<size_t>(real_data_start_address - header_start_address);
+               l7vs::sslid_replication_data_processor test_object5(
+                               max_list_size, replication_data_area,
+                               SECTION_NUMBER, test_virtual_service_endpoint,
+                               replication_ingetloglevel, replication_inputLogFatal,
+                               replication_inputLogError, replication_inputLogWarn,
+                               replication_inputLogInfo, replication_inputLogDebug);
+               // the virtual service information's size is resized, get it
+               expecting_size = static_cast<size_t>(max_list_size * sizeof(l7vs::sslid_replication_data));
+               // the virtual service information's offset is resized, get it
+               size_t expecting_offset = static_cast<size_t>(real_data_start_address - header_start_address + first_header->size);
+               // size check
+               BOOST_CHECK_EQUAL((first_header+1)->size, expecting_size);
+               // offset check
+               BOOST_CHECK_EQUAL((first_header+1)->offset, expecting_offset);
+
+       cout << "[11]------------------------------------------" << endl;
+               // unit_test[11] virtual service対応のreplicationデータヘッダーが存在しなくて、且つヘッダーエリアがfullでなく、且つ
+               // unit_test[11] replicationデータエリアの領域が足りない場合、処理を行わない。
+               try {
+                       memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
+                       std::string temp_virtual_service_ip = "255.255.255.255";
+                       for(int i = 0; i < 128; i++){
+                               l7vs::sslid_replication_data_header* temp= ((l7vs::sslid_replication_data_header*)replication_data_area) + i;
+                               temp->size = static_cast<size_t>((max_list_size + 1) * sizeof(l7vs::sslid_replication_data));
+                               memcpy(temp->virtualserver_ip, temp_virtual_service_ip.c_str(), temp_virtual_service_ip.length());
+                               if(i == 127) {
+                                       temp->size = 0;
+                               }
+                       }
+                       l7vs::sslid_replication_data_processor test_object6(
+                                       max_list_size, replication_data_area,
+                                       SECTION_NUMBER, test_virtual_service_endpoint,
+                                       replication_ingetloglevel, replication_inputLogFatal,
+                                       replication_inputLogError, replication_inputLogWarn,
+                                       replication_inputLogInfo, replication_inputLogDebug);
+               } catch (...) {
+                       BOOST_ERROR("exception: sslid_replication_data_processor");
+               }
+
+       cout << "[12]------------------------------------------" << endl;
+               // unit_test[12] virtual service対応のreplicationデータヘッダーが存在しなくて、且つreplicationデータエリアの領域が足りる場合、
+               // unit_test[12] ヘッダーエリアに、virtual serviceを追加する。
+               memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
+               l7vs::sslid_replication_data_processor test_object7(
+                               max_list_size, replication_data_area,
+                               SECTION_NUMBER, test_virtual_service_endpoint,
+                               replication_ingetloglevel, replication_inputLogFatal,
+                               replication_inputLogError, replication_inputLogWarn,
+                               replication_inputLogInfo, replication_inputLogDebug);
+               expecting_size = static_cast<size_t>(max_list_size * sizeof(l7vs::sslid_replication_data));
+               expecting_offset = static_cast<size_t>(real_data_start_address - header_start_address);
+               // session information's size check
+               BOOST_CHECK_EQUAL(first_header->size, expecting_size);
+               // session information's offset check
+               BOOST_CHECK_EQUAL(first_header->offset, expecting_offset);
+
+       cout << "[13]------------------------------------------" << endl;
+               // unit_test[13] virtual serviceが存在しなくて、且つヘッダーエリアがfullの場合,処理を行わない。
+               try {
+                       memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
+                       std::string temp_virtual_service_ip = "255.255.255.255";
+                       for(int i = 0; i < 128; i++){
+                               l7vs::sslid_replication_data_header* temp= ((l7vs::sslid_replication_data_header*)replication_data_area) + i;
+                               temp->size = static_cast<size_t>(max_list_size * sizeof(l7vs::sslid_replication_data));
+                               memcpy(temp->virtualserver_ip, temp_virtual_service_ip.c_str(), temp_virtual_service_ip.length());
+                       }
+                       l7vs::sslid_replication_data_processor test_object8(
+                                       max_list_size, replication_data_area,
+                                       SECTION_NUMBER, test_virtual_service_endpoint,
+                                       replication_ingetloglevel, replication_inputLogFatal,
+                                       replication_inputLogError, replication_inputLogWarn,
+                                       replication_inputLogInfo, replication_inputLogDebug);
+               } catch (...) {
+                       BOOST_ERROR("exception: sslid_replication_data_processor");
+               }
+
+       cout << "[14]------------------------------------------" << endl;
+               // unit_test[14] virtual serviceのipがipv6で、virtual serviceが存在して、且つ
+               // unit_test[14] virtual service対応のデータ領域が足りない場合、virtual service対応のreplicationデータヘッダーの情報を再設定する。
+               virtual_service_ip = "abcd:21d0:8936:4866:eefe:567d:3a4b:1230";
+               memset(replication_data_area, 0, data_area_size);
+               test_virtual_service_endpoint.address(boost::asio::ip::address::from_string(virtual_service_ip));
+               test_virtual_service_endpoint.port(80);
+               memcpy(first_header->virtualserver_ip, virtual_service_ip.c_str(), virtual_service_ip.length());
+               first_header->virtualserver_port = 80;
+               first_header->size = static_cast<size_t>((max_list_size - 1) * sizeof(l7vs::sslid_replication_data));
+               first_header->offset = static_cast<size_t>(real_data_start_address - header_start_address);
+               l7vs::sslid_replication_data_processor test_object9(
+                               max_list_size, replication_data_area,
+                               SECTION_NUMBER, test_virtual_service_endpoint,
+                               replication_ingetloglevel, replication_inputLogFatal,
+                               replication_inputLogError, replication_inputLogWarn,
+                               replication_inputLogInfo, replication_inputLogDebug);
+               // the virtual service's size is resetted, check it
+               expecting_size = static_cast<size_t>(max_list_size * sizeof(l7vs::sslid_replication_data));
+               BOOST_CHECK_EQUAL((first_header+1)->size, expecting_size);
        }
 
        // put_into_temp_list_test
@@ -277,7 +527,8 @@ public:
                l7vs::sslid_replication_temp_data test_data2;
                l7vs::sslid_replication_temp_data test_data3;
 
-               // unit_test[2] put into temp_list test(put into 1 item)
+    cout << "[15]------------------------------------------" << endl;
+               // unit_test[15] 1つのアイテムの場合、temp_listにデータを追加する。
                test_data1.session_id = session_id1;
                test_data1.last_time = last_time;
                test_data1.op_code = 'A';
@@ -295,7 +546,8 @@ public:
                // realserver_addr check
                BOOST_CHECK_EQUAL(put_into_data.realserver_addr, test_data1.realserver_addr);
 
-               // unit_test[3] put into temp_list test(put into 2 items)
+    cout << "[16]------------------------------------------" << endl;
+               // unit_test[16] 2つのアイテムの場合、temp_listにデータを追加する。
                test_data1.session_id = session_id1;
                test_data1.last_time = last_time;
                test_data1.op_code = 'U';
@@ -323,7 +575,8 @@ public:
                BOOST_CHECK_EQUAL(first_put_into_data.realserver_addr, test_data1.realserver_addr);
                BOOST_CHECK_EQUAL(second_put_into_data.realserver_addr, test_data2.realserver_addr);
 
-               // unit_test[4] put into temp_list test(put into 3 items)
+    cout << "[17]------------------------------------------" << endl;
+               // unit_test[17] 3つのアイテムの場合、temp_listにデータを追加する。
                test_data1.session_id = session_id1;
                test_data1.last_time = last_time;
                test_data1.op_code = 'U';
@@ -361,7 +614,8 @@ public:
                BOOST_CHECK_EQUAL(second_put_into_data.realserver_addr, test_data2.realserver_addr);
                BOOST_CHECK_EQUAL(third_put_into_data.realserver_addr, test_data3.realserver_addr);
 
-               // unit_test[5] multi-threads test
+    cout << "[18]------------------------------------------" << endl;
+               // unit_test[18] マルチスレッドの場合、temp_listにデータを正常追加する。
                try{
                        boost::thread_group thread_group;
                        this->temp_list.clear();
@@ -400,7 +654,8 @@ public:
                        }
                }
 
-               // unit_test[6] while temp_list size = max_temp_list, test it
+    cout << "[19]------------------------------------------" << endl;
+               // unit_test[19] マルチスレッド がつ temp_listのサイズが max_temp_listの場合、temp_listにデータを正常追加する。
                try{
                        boost::thread_group thread_group;
                        this->temp_list.clear();
@@ -424,7 +679,8 @@ public:
                        BOOST_CHECK_EQUAL(temp.op_code, 'A');
                }
 
-               // unit_test[7] while temp_list size > max_temp_list, test it
+    cout << "[20]------------------------------------------" << endl;
+               // unit_test[20] ルチスレッド がつ temp_list size > max_temp_listの場合、temp_listにデータを正常追加する。
                try{
                        boost::thread_group thread_group;
                        this->temp_list.clear();
@@ -448,7 +704,8 @@ public:
                        BOOST_CHECK_EQUAL(temp.op_code, 'A');
                }
 
-               // unit_test[8] while temp_list is full and one thread is waiting, test
+    cout << "[21]------------------------------------------" << endl;
+               // unit_test[21] temp_listがfullで、且1つのスレッドが待ち状態の場合、waitingフラグを待ちに設定する。
                try{
                        boost::thread_group thread_group;
 
@@ -469,7 +726,8 @@ public:
                        BOOST_ERROR("exception: put_into_temp_list");
                }
 
-               // unit_test[9] while temp_list is full and two threads are waiting, test
+    cout << "[22]------------------------------------------" << endl;
+               // unit_test[22] temp_listがfullで、且2つのスレッドが待ち状態の場合、waitingフラグを待ちに設定する。
                try{
                        boost::thread_group thread_group;
 
@@ -500,7 +758,8 @@ public:
                        BOOST_ERROR("exception: put_into_temp_list");
                }
 
-               // unit_test[10] while temp_list is full and 3 threads are waiting, test
+    cout << "[23]------------------------------------------" << endl;
+               // unit_test[23] temp_listがfullで、且3つのスレッドが待ち状態の場合、waitingフラグを待ちに設定する。
                try{
                        boost::thread_group thread_group;
 
@@ -551,7 +810,8 @@ public:
                this->replication_area_lock = lock_function;
                this->replication_area_unlock = unlock_function;
 
-               // unit_test[11] when temp_list is empty, test it
+    cout << "[24]------------------------------------------" << endl;
+               // unit_test[24] temp_listが空の場合、例外が発生しない。
                try {
                        this->temp_list.clear();
                        boost::thread test_thread1(boost::bind(&sslid_replication_data_processor_test_class::write_replicaion_area, this));
@@ -564,7 +824,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[12] data add test(when data area has one sslip_replication_data)
+    cout << "[25]------------------------------------------" << endl;
+               // unit_test[25] op_codeが「A」で、且つreplication_areaに1つのデータが存在する場合、新データを追加する。
                temp_session_id = "temp_id1rtrrrrtttttteeeeeeemmmmp";
                memset(this->replication_area, 0, this->maxlist*sizeof(struct l7vs::sslid_replication_data));
                temp_data.last_time = time(0);
@@ -612,7 +873,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[13] data add test(when data area has two sslip_replication_data,and the first sslip_replication_data's valid flag is unused)
+    cout << "[26]------------------------------------------" << endl;
+               // unit_test[26] op_codeが「A」で、且つreplication_areaに2つのデータが存在して、且つ1つ目データのvalidフラグが0の場合、新のデータを追加する。
                memset(this->replication_area, 0, this->maxlist*sizeof(struct l7vs::sslid_replication_data));
                temp_session_id = "temp_id2eeeeeetttteeeeeeemmmmuui";
                temp_data.last_time = time(0);
@@ -663,7 +925,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[14] data add test(when data area has no sslip_replication_data)
+    cout << "[27]------------------------------------------" << endl;
+               // unit_test[27] op_codeが「A」で、且つreplication_areaにデータが存在しない場合、新のデータを追加する。
                memset(this->replication_area, 0, this->maxlist*sizeof(struct l7vs::sslid_replication_data));
                realserver_addr.address(boost::asio::ip::address::from_string("192.168.120.102"));
                realserver_addr.port(80);
@@ -696,8 +959,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[15] data update test
-               // update the added data
+    cout << "[28]------------------------------------------" << endl;
+               // unit_test[28] op_codeが「U」で、且つセッションIDが存在している場合、該当データを更新する。
                realserver_addr.address(boost::asio::ip::address::from_string("255.255.255.255"));
                realserver_addr.port(port);
                test_data1.op_code = 'U';
@@ -728,7 +991,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[16] data delete test
+    cout << "[29]------------------------------------------" << endl;
+               // unit_test[29] op_codeが「D」で、且つセッションIDが存在している場合、該当データを削除する。
                realserver_addr.address(boost::asio::ip::address::from_string("192.168.120.102"));
                realserver_addr.port(80);
                test_data1.op_code = 'D';
@@ -757,7 +1021,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[17] when op_code is out of 'A','U','D', old data is not changed test
+    cout << "[30]------------------------------------------" << endl;
+               // unit_test[30] op_codeが「A」,「U」,「D」以外の場合、データを変更しない。
                memset(this->replication_area, 0, this->maxlist*sizeof(struct l7vs::sslid_replication_data));
                realserver_addr.address(boost::asio::ip::address::from_string("192.168.120.102"));
                realserver_addr.port(port);
@@ -781,7 +1046,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[18] replication_area_lock function is called test
+    cout << "[31]------------------------------------------" << endl;
+               // unit_test[31] データを追加するの場合、replication_area_lock関数を呼び出す。
                memset(this->replication_area, 0, this->maxlist*sizeof(struct l7vs::sslid_replication_data));
                test_data1.op_code = 'A';
                this->temp_list.clear();
@@ -804,7 +1070,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[19] replication_area_unlock function is called test
+    cout << "[32]------------------------------------------" << endl;
+               // unit_test[32] データを追加するの場合、replication_area_unlock関数を呼び出す。
                memset(this->replication_area, 0, this->maxlist*sizeof(struct l7vs::sslid_replication_data));
                test_data1.op_code = 'A';
                this->temp_list.clear();
@@ -827,7 +1094,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[20] ipv6 test(condition: while data area has no sslip_replication_data and one data will add to to the data area)
+    cout << "[33]------------------------------------------" << endl;
+               // unit_test[33] endpointがipv6で、replicationエリアにデータがなくて、該当ipv6のendpointを追加する。
                memset(this->replication_area, 0, this->maxlist*sizeof(struct l7vs::sslid_replication_data));
                realserver_addr.address(boost::asio::ip::address::from_string("abcd:21d0:8936:4866:eefe:567d:3a4b:1230"));
                realserver_addr.port(80);
@@ -859,7 +1127,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[21] ipv6 test(condition: while update data)
+    cout << "[34]------------------------------------------" << endl;
+               // unit_test[34] op_codeが「U」で、endpointがipv6で、replicationエリアにデータがある場合、該当ipv6のendpointを更新する。
                realserver_addr.address(boost::asio::ip::address::from_string("1:21d0:1:4866:1:1:3a4b:1230"));
                realserver_addr.port(port);
                test_data1.op_code = 'U';
@@ -881,7 +1150,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[22] ipv6 test(condition: while delete data)
+    cout << "[35]------------------------------------------" << endl;
+               // unit_test[35] op_codeが「D」で、endpointがipv6で、replicationエリアにデータがある場合、該当ipv6のendpointを変更しない、validに0を設定する。
                realserver_addr.address(boost::asio::ip::address::from_string("ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff"));
                test_data1.op_code = 'D';
                test_data1.last_time = delete_time;
@@ -912,11 +1182,13 @@ public:
 
                boost::function<void(void)> register_function = &lock_function;
 
-               // unit_test[23] registered function is NULL test
+    cout << "[36]------------------------------------------" << endl;
+               // unit_test[36] register_replication_area_lock()関数のパラメータがNULLの場合、replication_area_lockがNULLある。
                this->register_replication_area_lock(NULL);
                BOOST_CHECK_EQUAL(this->replication_area_lock.empty(), true);
 
-               // unit_test[24] while registered replication_area_lock function is not NULL test
+    cout << "[37]------------------------------------------" << endl;
+               // unit_test[37] register_replication_area_lock()関数のパラメータがNULLでない場合、replication_area_lockがパラメータと一致する。
                this->register_replication_area_lock(register_function);
                // function registered correctly check;
                BOOST_CHECK_EQUAL(this->replication_area_lock, lock_function);
@@ -927,12 +1199,14 @@ public:
 
                boost::function<void(void)> register_function = &unlock_function;
 
-               // unit_test[25] registered function is NULL test
+    cout << "[38]------------------------------------------" << endl;
+               // unit_test[38] register_replication_area_unlock()関数のパラメータがNULLの場合、replication_area_unlockがNULLある。
                this->register_replication_area_unlock(NULL);
                // function registered correctly check;
                BOOST_CHECK_EQUAL(this->replication_area_unlock.empty(), true);
 
-               // unit_test[26] while registered replication_area_unlock function is not NULL, test
+    cout << "[39]------------------------------------------" << endl;
+               // unit_test[39] register_replication_area_unlock()関数のパラメータがNULLでない場合、replication_area_unlockがパラメータと一致する。
                this->register_replication_area_unlock(register_function);
                // function registered correctly check;
                BOOST_CHECK_EQUAL(this->replication_area_unlock, unlock_function);
@@ -946,7 +1220,8 @@ public:
                l7vs::sslid_replication_temp_data get_data;
                boost::asio::ip::tcp::endpoint endpoint;
 
-               // unit_test[27] when temp_list is empty, test
+    cout << "[40]------------------------------------------" << endl;
+               // unit_test[40] temp_listが空の場合、例外が発生しない。
                try{
                        this->temp_list.clear();
                        boost::thread test_thread(boost::bind(&sslid_replication_data_processor_test_class::get_from_temp_list, this, get_data));
@@ -957,7 +1232,8 @@ public:
                this->put_into_temp_list(test_data1);
                sleep(1);
 
-               // unit_test[28] muliti-threads test
+    cout << "[41]------------------------------------------" << endl;
+               // unit_test[41] マルチスレッドの場合、temp_listにデータを正常取得する。
                try {
                        this->temp_list.clear();
                        boost::thread_group thread_group1;
@@ -969,7 +1245,8 @@ public:
                        BOOST_ERROR("exception: get_from_temp_list");
                }
 
-               // unit_test[29] first element of temp_list is removed test
+    cout << "[42]------------------------------------------" << endl;
+               // unit_test[42] temp_listにデータがある場合、1つ目のデータを削除する。
                test_data1.session_id = "test_id123456789abcdefghijklmnop";
                test_data1.op_code = 'T';
                test_data1.realserver_addr = endpoint;
@@ -994,7 +1271,8 @@ public:
                // last_time check
                BOOST_CHECK_EQUAL(leave_data.last_time, test_data2.last_time);
 
-               // unit_test[30] get data test(list has one item)
+    cout << "[43]------------------------------------------" << endl;
+               // unit_test[43] temp_listに1つデータがある場合、get_from_temp_list()で取得したデータがtemp_listの内容と一致する。
                test_data1.op_code = 'A';
                this->temp_list.clear();
                this->temp_list.push_back(test_data1);
@@ -1009,7 +1287,8 @@ public:
                // last_time check
                BOOST_CHECK_EQUAL(get_data.last_time, test_data1.last_time);
 
-               // unit_test[31] get data test(list has two items, get the item which first put into)
+    cout << "[44]------------------------------------------" << endl;
+               // unit_test[44] temp_listに2つデータがある場合、get_from_temp_list()で取得したデータがtemp_listの1つ目の内容と一致する。
                test_data1.op_code = 'U';
                test_data2.op_code = 'D';
                this->temp_list.clear();
@@ -1030,7 +1309,8 @@ public:
        // get_replication_area_test
        void get_replication_area_test(sslid_replication_data* expecting_sslid_replication_data) {
 
-               // unit_test[32] get_replication_area function test
+    cout << "[45]------------------------------------------" << endl;
+               // unit_test[45] get_replication_area()関数の戻り値はコンストラクタが正常に生成する値と一致する。
                sslid_replication_data* get_data = this->get_replication_area();
                BOOST_CHECK_EQUAL(get_data, expecting_sslid_replication_data);
        }
@@ -1045,7 +1325,6 @@ void sslid_replication_data_processor_test(){
        char *header_start_address = replication_data_area;
        char *real_data_start_address = header_start_address + 128*sizeof(struct l7vs::sslid_replication_data_header);
        boost::asio::ip::tcp::endpoint virtual_service_endpoint;
-       l7vs::sslid_replication_data_header* first_header = (sslid_replication_data_header*)header_start_address;
 
        memset(replication_data_area, 0, data_area_size);
 
@@ -1056,231 +1335,9 @@ void sslid_replication_data_processor_test(){
                        replication_inputLogError, replication_inputLogWarn,
                        replication_inputLogInfo, replication_inputLogDebug);
        test_object.sslid_replication_data_processor_test(maxlist_test,
-                       (l7vs::sslid_replication_data*) real_data_start_address,
-                       virtual_service_endpoint);
-
-       // unit_test[33] while replication_data_area is NULL, exception not occur, test it
-       try {
-               sslid_replication_data_processor test_object1(maxlist_test,
-                               NULL, SECTION_NUMBER, virtual_service_endpoint, replication_ingetloglevel,
-                               replication_inputLogFatal, replication_inputLogError,
-                               replication_inputLogWarn, replication_inputLogInfo,
-                               replication_inputLogDebug);
-       } catch (...) {
-               BOOST_ERROR("exception: sslid_replication_data_processor");
-       }
-
-       // unit_test[34] while maxlist < 0, exception occur, test it
-       bool exception_occured = false;
-       try {
-               sslid_replication_data_processor test_object(-1,
-                               replication_data_area, SECTION_NUMBER, virtual_service_endpoint, replication_ingetloglevel,
-                               replication_inputLogFatal, replication_inputLogError,
-                               replication_inputLogWarn, replication_inputLogInfo,
-                               replication_inputLogDebug);
-       } catch (...) {
-               exception_occured = true;
-       }
-       BOOST_CHECK(exception_occured);
-
-       // unit_test[35] while maxlist = 0, exception not occur, test it
-       try {
-               sslid_replication_data_processor test_object(0,
-                               replication_data_area, SECTION_NUMBER, virtual_service_endpoint, replication_ingetloglevel,
-                               replication_inputLogFatal, replication_inputLogError,
-                               replication_inputLogWarn, replication_inputLogInfo,
-                               replication_inputLogDebug);
-       } catch (...) {
-               BOOST_ERROR("exception: sslid_replication_data_processor");
-       }
-
-       // unit_test[36] while maxlist = 1, exception not occur, test it
-       try {
-               sslid_replication_data_processor test_object(1,
-                               replication_data_area, SECTION_NUMBER, virtual_service_endpoint, replication_ingetloglevel,
-                               replication_inputLogFatal, replication_inputLogError,
-                               replication_inputLogWarn, replication_inputLogInfo,
-                               replication_inputLogDebug);
-       } catch (...) {
-               BOOST_ERROR("exception: sslid_replication_data_processor");
-       }
-
-       // unit_test[37] while sslid_replication_area_size < 0, exception occur, test it
-       exception_occured = false;
-       try {
-               memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
-               for(int i = 0; i < 128; i++){
-                       l7vs::sslid_replication_data_header* temp= ((l7vs::sslid_replication_data_header*)replication_data_area) + i;
-                       temp->size = static_cast<size_t>(2 * sizeof(l7vs::sslid_replication_data));
-               }
-               l7vs::sslid_replication_data_processor test_object2(2,
-                               replication_data_area, -1, virtual_service_endpoint,
-                               replication_ingetloglevel, replication_inputLogFatal,
-                               replication_inputLogError, replication_inputLogWarn,
-                               replication_inputLogInfo, replication_inputLogDebug);
-       } catch (...) {
-               exception_occured = true;
-       }
-       BOOST_CHECK(exception_occured);
-
-       // unit_test[38] while sslid_replication_area_size = 0, exception not occur, test it
-       try {
-               memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
-               for(int i = 0; i < 128; i++){
-                       l7vs::sslid_replication_data_header* temp= ((l7vs::sslid_replication_data_header*)replication_data_area) + i;
-                       temp->size = static_cast<size_t>(2 * sizeof(l7vs::sslid_replication_data));
-               }
-               l7vs::sslid_replication_data_processor test_object2(2,
-                               replication_data_area, 0, virtual_service_endpoint,
-                               replication_ingetloglevel, replication_inputLogFatal,
-                               replication_inputLogError, replication_inputLogWarn,
-                               replication_inputLogInfo, replication_inputLogDebug);
-       } catch (...) {
-               BOOST_ERROR("exception: sslid_replication_data_processor");
-       }
-
-       // unit_test[39] when virtual service data has exist and the virtual service's data area is samller than needed,
-       // unit_test[39] need to reset the virtual service session information, test
-       int max_list_size = 3;
-       std::string virtual_service_ip = "192.168.120.102";
-       memset(replication_data_area, 0, data_area_size);
-       virtual_service_endpoint.address(boost::asio::ip::address::from_string(virtual_service_ip));
-       virtual_service_endpoint.port(80);
-       memcpy(first_header->virtualserver_ip, virtual_service_ip.c_str(), virtual_service_ip.length());
-       first_header->virtualserver_port = 80;
-       first_header->size = static_cast<size_t>((max_list_size - 1) * sizeof(l7vs::sslid_replication_data));
-       first_header->offset = static_cast<size_t>(real_data_start_address - header_start_address);
-       l7vs::sslid_replication_data_processor test_object3(
-                       max_list_size, replication_data_area,
-                       SECTION_NUMBER, virtual_service_endpoint,
-                       replication_ingetloglevel, replication_inputLogFatal,
-                       replication_inputLogError, replication_inputLogWarn,
-                       replication_inputLogInfo, replication_inputLogDebug);
-       // the virtual service's size is resetted, check it
-       size_t expecting_size = static_cast<size_t>(max_list_size * sizeof(l7vs::sslid_replication_data));
-       BOOST_CHECK_EQUAL((first_header+1)->size, expecting_size);
-
-       // unit_test[40] when resize the virtual service session information, if header area is full, nothing to do, test it
-       try {
-               memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
-               for(int i = 0; i < 128; i++){
-                       l7vs::sslid_replication_data_header* temp= ((l7vs::sslid_replication_data_header*)replication_data_area) + i;
-                       temp->size = sizeof(l7vs::sslid_replication_data);
-               }
-               memcpy(first_header->virtualserver_ip, virtual_service_ip.c_str(), virtual_service_ip.length());
-               first_header->virtualserver_port = 80;
-               first_header->size = static_cast<size_t>((max_list_size - 1) * sizeof(l7vs::sslid_replication_data));
-               first_header->offset = static_cast<size_t>(real_data_start_address - header_start_address);
-               l7vs::sslid_replication_data_processor test_object4(
-                               max_list_size, replication_data_area,
-                               SECTION_NUMBER, virtual_service_endpoint,
-                               replication_ingetloglevel, replication_inputLogFatal,
-                               replication_inputLogError, replication_inputLogWarn,
-                               replication_inputLogInfo, replication_inputLogDebug);
-       } catch (...) {
-               BOOST_ERROR("exception: sslid_replication_data_processor");
-       }
-
-       // unit_test[41] when resize the virtual service session information, if header area is not full,
-       // unit_test[41] virtual service session information is changed, test it
-       memset(replication_data_area, 0, data_area_size);
-       memcpy(first_header->virtualserver_ip, virtual_service_ip.c_str(), virtual_service_ip.length());
-       first_header->virtualserver_port = 80;
-       first_header->size = static_cast<size_t>((max_list_size - 1) * sizeof(l7vs::sslid_replication_data));
-       first_header->offset = static_cast<size_t>(real_data_start_address - header_start_address);
-       l7vs::sslid_replication_data_processor test_object5(
-                       max_list_size, replication_data_area,
-                       SECTION_NUMBER, virtual_service_endpoint,
-                       replication_ingetloglevel, replication_inputLogFatal,
-                       replication_inputLogError, replication_inputLogWarn,
-                       replication_inputLogInfo, replication_inputLogDebug);
-       // the virtual service information's size is resized, get it
-       expecting_size = static_cast<size_t>(max_list_size * sizeof(l7vs::sslid_replication_data));
-       // the virtual service information's offset is resized, get it
-       size_t expecting_offset = static_cast<size_t>(real_data_start_address - header_start_address + first_header->size);
-       // size check
-       BOOST_CHECK_EQUAL((first_header+1)->size, expecting_size);
-       // offset check
-       BOOST_CHECK_EQUAL((first_header+1)->offset, expecting_offset);
-
-       // unit_test[42] when virtual service data is not exist and header area is not full and the
-       // unit_test[42] sslip replication data area there is no enough sapce to add data, nothing to do, test it
-       try {
-               memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
-               std::string temp_virtual_service_ip = "255.255.255.255";
-               for(int i = 0; i < 128; i++){
-                       l7vs::sslid_replication_data_header* temp= ((l7vs::sslid_replication_data_header*)replication_data_area) + i;
-                       temp->size = static_cast<size_t>((max_list_size + 1) * sizeof(l7vs::sslid_replication_data));
-                       memcpy(temp->virtualserver_ip, temp_virtual_service_ip.c_str(), temp_virtual_service_ip.length());
-                       if(i == 127) {
-                               temp->size = 0;
-                       }
-               }
-               l7vs::sslid_replication_data_processor test_object6(
-                               max_list_size, replication_data_area,
-                               SECTION_NUMBER, virtual_service_endpoint,
-                               replication_ingetloglevel, replication_inputLogFatal,
-                               replication_inputLogError, replication_inputLogWarn,
-                               replication_inputLogInfo, replication_inputLogDebug);
-       } catch (...) {
-               BOOST_ERROR("exception: sslid_replication_data_processor");
-       }
-
-       // unit_test[43] when virtual service data is not exist and the sslip replication area there is
-       // unit_test[43] enough sapce to add data, add the data to the replication area, test it
-       memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
-       l7vs::sslid_replication_data_processor test_object7(
-                       max_list_size, replication_data_area,
-                       SECTION_NUMBER, virtual_service_endpoint,
-                       replication_ingetloglevel, replication_inputLogFatal,
-                       replication_inputLogError, replication_inputLogWarn,
-                       replication_inputLogInfo, replication_inputLogDebug);
-       expecting_size = static_cast<size_t>(max_list_size * sizeof(l7vs::sslid_replication_data));
-       expecting_offset = static_cast<size_t>(real_data_start_address - header_start_address);
-       // session information's size check
-       BOOST_CHECK_EQUAL(first_header->size, expecting_size);
-       // session information's offset check
-       BOOST_CHECK_EQUAL(first_header->offset, expecting_offset);
-
-       // unit_test[44] when virtual service data is not exist and the sslip replication header area
-       // unit_test[44] is full, nothing to do, test it
-       try {
-               memset(replication_data_area, 0, 128*sizeof(struct l7vs::sslid_replication_data_header));
-               std::string temp_virtual_service_ip = "255.255.255.255";
-               for(int i = 0; i < 128; i++){
-                       l7vs::sslid_replication_data_header* temp= ((l7vs::sslid_replication_data_header*)replication_data_area) + i;
-                       temp->size = static_cast<size_t>(max_list_size * sizeof(l7vs::sslid_replication_data));
-                       memcpy(temp->virtualserver_ip, temp_virtual_service_ip.c_str(), temp_virtual_service_ip.length());
-               }
-               l7vs::sslid_replication_data_processor test_object8(
-                               max_list_size, replication_data_area,
-                               SECTION_NUMBER, virtual_service_endpoint,
-                               replication_ingetloglevel, replication_inputLogFatal,
-                               replication_inputLogError, replication_inputLogWarn,
-                               replication_inputLogInfo, replication_inputLogDebug);
-       } catch (...) {
-               BOOST_ERROR("exception: sslid_replication_data_processor");
-       }
-
-       // unit_test[45] while virtual service ip is ipv6, test(condition: virtual service data has exist and
-       // unit_test[45] the virtual service's data area is samller than needed, need to reset the virtual service session information)
-       virtual_service_ip = "abcd:21d0:8936:4866:eefe:567d:3a4b:1230";
-       memset(replication_data_area, 0, data_area_size);
-       virtual_service_endpoint.address(boost::asio::ip::address::from_string(virtual_service_ip));
-       virtual_service_endpoint.port(80);
-       memcpy(first_header->virtualserver_ip, virtual_service_ip.c_str(), virtual_service_ip.length());
-       first_header->virtualserver_port = 80;
-       first_header->size = static_cast<size_t>((max_list_size - 1) * sizeof(l7vs::sslid_replication_data));
-       first_header->offset = static_cast<size_t>(real_data_start_address - header_start_address);
-       l7vs::sslid_replication_data_processor test_object9(
-                       max_list_size, replication_data_area,
-                       SECTION_NUMBER, virtual_service_endpoint,
-                       replication_ingetloglevel, replication_inputLogFatal,
-                       replication_inputLogError, replication_inputLogWarn,
-                       replication_inputLogInfo, replication_inputLogDebug);
-       // the virtual service's size is resetted, check it
-       expecting_size = static_cast<size_t>(max_list_size * sizeof(l7vs::sslid_replication_data));
-       BOOST_CHECK_EQUAL((first_header+1)->size, expecting_size);
+                       reinterpret_cast<l7vs::sslid_replication_data*>(real_data_start_address),
+                       virtual_service_endpoint, replication_data_area, data_area_size,
+                       header_start_address, real_data_start_address);
 
        delete []replication_data_area;
 }
index c4e9756..f10f5a2 100644 (file)
@@ -6,6 +6,8 @@ using namespace l7vs;
 #define SECTION_NUMBER 200
 #define STRUCT_NUMBER  256
 
+bool clear_function_return_fail = false;
+
 LOG_LEVEL_TAG getloglevel_test(){
 
        return LOG_LV_NONE;
@@ -89,6 +91,15 @@ public:
 
        }
 
+       // clear_expired_session_data
+       int clear_expired_session_data(){
+               if(clear_function_return_fail){
+                       return 1;
+               } else {
+                       return sslid_session_data_processor::clear_expired_session_data();
+               }
+       }
+
        // write_session_data_test thread
        void write_session_data_test_thread(
             const std::string& session_id,
@@ -103,7 +114,8 @@ public:
                        int expecting_timeout,
                        sslid_replication_data_processor* expecting_replication_data_processor) {
 
-               // unit_test[1] member variable initialization test
+    cout << "[1]------------------------------------------" << endl;
+               // unit_test[1] メンバー変数が初期化されるチェックする。
                // maxlist check
                BOOST_CHECK_EQUAL(this->maxlist, expecting_maxlist);
                // timeout check
@@ -128,6 +140,62 @@ public:
                BOOST_CHECK_EQUAL(this->session_lasttime_map.size(), 0u);
                // lasttime_session_map
                BOOST_CHECK_EQUAL(this->lasttime_session_map.size(), 0u);
+
+       cout << "[2]------------------------------------------" << endl;
+               // unit_test[2] maxlist < 0の場合, 例外が発生する。
+               bool exception_occur = false;
+               try{
+                       l7vs::sslid_session_data_processor(-1, 1, expecting_replication_data_processor,
+                                       ingetloglevel2, inputLogFatal2, inputLogError2, inputLogWarn2,
+                                       inputLogInfo2, inputLogDebug2);
+               } catch(...) {
+                       exception_occur = true;
+               }
+               BOOST_CHECK(exception_occur);
+
+       cout << "[3]------------------------------------------" << endl;
+               // unit_test[3] maxlist が0の場合, 例外が発生しない。
+               try{
+                       l7vs::sslid_session_data_processor(0, 1, expecting_replication_data_processor,
+                                       ingetloglevel2, inputLogFatal2, inputLogError2, inputLogWarn2,
+                                       inputLogInfo2, inputLogDebug2);
+               } catch(...) {
+                       BOOST_ERROR("exception: sslid_session_data_processor");
+               }
+
+       cout << "[4]------------------------------------------" << endl;
+               // unit_test[4] timeout < 0の場合, 例外が発生する。
+               exception_occur = false;
+               try{
+                       l7vs::sslid_session_data_processor(2, -2, expecting_replication_data_processor,
+                                       ingetloglevel2, inputLogFatal2, inputLogError2, inputLogWarn2,
+                                       inputLogInfo2, inputLogDebug2);
+               } catch(...) {
+                       exception_occur = true;
+               }
+               BOOST_CHECK(exception_occur);
+
+       cout << "[5]------------------------------------------" << endl;
+               // unit_test[5] timeout が0の場合, 例外が発生しない。
+               try{
+                       l7vs::sslid_session_data_processor(2, 0, expecting_replication_data_processor,
+                                       ingetloglevel2, inputLogFatal2, inputLogError2, inputLogWarn2,
+                                       inputLogInfo2, inputLogDebug2);
+               } catch(...) {
+                       BOOST_ERROR("exception: sslid_session_data_processor");
+               }
+
+       cout << "[6]------------------------------------------" << endl;
+               // unit_test[6] replication_data_processorがNULLの場合, 例外が発生する。
+               exception_occur = false;
+               try{
+                       l7vs::sslid_session_data_processor(2, 2, NULL,
+                                       ingetloglevel2, inputLogFatal2, inputLogError2, inputLogWarn2,
+                                       inputLogInfo2, inputLogDebug2);
+               } catch(...) {
+                       exception_occur = true;
+               }
+               BOOST_CHECK(exception_occur);
        }
 
        // get_endpoint_from_session_data_test
@@ -142,8 +210,8 @@ public:
                sslid_replication_data_processor_replacement *this_replication_data_processor =
                        dynamic_cast<sslid_replication_data_processor_replacement *>(this->replication_data_processor);
 
-               // unit_test[2] session_endpoint_map and session_lasttime_map are all empty test
-               // unit_test[2] return value: 1
+    cout << "[7]------------------------------------------" << endl;
+               // unit_test[7] session_endpoint_map と session_lasttime_mapが空の場合、戻り値が失敗(1)で設定する。
                session_id = "test_id123456789abcdefghijklmnop";
                this->session_endpoint_map.clear();
                this->session_lasttime_map.clear();
@@ -152,8 +220,8 @@ public:
                // function result check
                BOOST_CHECK_EQUAL(result, 1);
 
-               // unit_test[3] when session_endpoint_map is empty, but session_lasttime_map is not empty test
-               // unit_test[3] return value: 1
+    cout << "[8]------------------------------------------" << endl;
+               // unit_test[8] session_endpoint_mapが空で,session_lasttime_mapが空でない場合、戻り値が失敗(1)で設定する。
                this->session_endpoint_map.clear();
                this->session_lasttime_map.clear();
                this->lasttime_session_map.clear();
@@ -162,8 +230,8 @@ public:
                // function result check
                BOOST_CHECK_EQUAL(result, 1);
 
-               // unit_test[4] when session_endpoint_map is not empty, but session_lasttime_map is empty test
-               // unit_test[4] return value: 1
+    cout << "[9]------------------------------------------" << endl;
+               // unit_test[9] session_lasttime_mapが空で,session_endpoint_mapが空でない場合、戻り値が失敗(1)で設定する。
                this->session_endpoint_map.clear();
                this->session_lasttime_map.clear();
                this->lasttime_session_map.clear();
@@ -172,8 +240,8 @@ public:
                // function result check
                BOOST_CHECK_EQUAL(result, 1);
 
-               // unit_test[5] while exist one data and does not time out, test
-               // unit_test[5] return value: 0
+    cout << "[10]------------------------------------------" << endl;
+               // unit_test[10] 1つのデータがmapに存在して、タイムアウトしない場合、戻り値が正常(0)で設定する。
                result = 10;
                session_id = "test_id123456789abcdefghijklmnop";
                saved_endpoint.address(boost::asio::ip::address::from_string("192.168.120.102"));
@@ -191,8 +259,8 @@ public:
                // function result check
                BOOST_CHECK_EQUAL(result, 0);
 
-               // unit_test[6] while exist one data and time out test
-               // unit_test[6] return value: 0
+    cout << "[11]------------------------------------------" << endl;
+               // unit_test[11] 1つのデータがmapに存在して、タイムアウトの場合、戻り値が正常(0)で設定する。
                result = 10;
                this->timeout = 0;
                this->session_endpoint_map.clear();
@@ -217,8 +285,8 @@ public:
                BOOST_CHECK_EQUAL(temp_list_data.op_code, 'D');
                BOOST_CHECK_EQUAL(temp_list_data.session_id, session_id);
 
-               // unit_test[7] while map has 3 data and all data does not time out, test
-               // unit_test[7] return value: 0
+    cout << "[12]------------------------------------------" << endl;
+               // unit_test[12] mapに3つデータがあり、且つ3つデータが全部タイムアウトしない場合、戻り値が正常(0)で設定する。
                result = 10;
                std::string temp_session_id1 = "temp_session_idyyyyyuuuu33456780";
                std::string temp_session_id2 = "temp_session_id456789012rtyuerxy";
@@ -243,7 +311,8 @@ public:
                // got endpoint check
                BOOST_CHECK_EQUAL(get_endpoint, saved_endpoint);
 
-               // unit_test[8] while map has 3 data, two data does not time out, but the other time out
+    cout << "[13]------------------------------------------" << endl;
+               // unit_test[13] mapに3つデータがあり、且つ2つデータがタイムアウトしなくて,1つのデータだけタイムアウトの場合、戻り値が正常(0)で設定する。
                time_t temp_last_time = time(0) - 10;
                time_t out_time = time(0) - 5000;
                result = 10;
@@ -266,8 +335,8 @@ public:
                // got endpoint check
                BOOST_CHECK_EQUAL(get_endpoint, saved_endpoint);
 
-               // unit_test[9] while map has 3 data and all data time out, test
-               // unit_test[9] return value: 0
+    cout << "[14]------------------------------------------" << endl;
+               // unit_test[14] mapに3つデータがあり、且つ3つデータが全部タイムアウトの場合、戻り値が正常(0)で設定する。
                temp_last_time = last_time - 10;
                this->timeout = 0;
                this->session_endpoint_map.clear();
@@ -298,8 +367,8 @@ public:
                BOOST_CHECK_EQUAL(temp_list_data.op_code, 'D');
                BOOST_CHECK_EQUAL(temp_list_data.session_id, session_id);
 
-               // unit_test[10] while vaule of timeout is not 0 and the searching data time out, test
-               // unit_test[10] return value: 0
+    cout << "[15]------------------------------------------" << endl;
+               // unit_test[15] メンバー関数timeoutが0でなくて、且つ検索対象データがタイムアウトの場合、戻り値が正常(0)で設定する。
                temp_last_time = time(0) - 20;
                this->timeout = 10;
                this->session_endpoint_map.clear();
@@ -324,7 +393,8 @@ public:
                BOOST_CHECK_EQUAL(temp_list_data.op_code, 'D');
                BOOST_CHECK_EQUAL(temp_list_data.session_id, session_id);
 
-               // unit_test[11] ipv6 test(exist one data and does not time out)
+    cout << "[16]------------------------------------------" << endl;
+               // unit_test[16] endpointがipv6で、1つのデータが存在して、且つタイムアウトしない場合、戻り値が正常(0)で設定する。
                saved_endpoint.address(boost::asio::ip::address::from_string("abcd:21d0:8936:4866:eefe:567d:3a4b:1230"));
                result = 10;
                this->timeout = 10000;
@@ -355,8 +425,19 @@ public:
                sslid_replication_data_processor_replacement *this_replication_data_processor =
                        dynamic_cast<sslid_replication_data_processor_replacement *> (this->replication_data_processor);
 
-               // unit_test[12] while map is empty, test
+       cout << "[17]------------------------------------------" << endl;
+               // unit_test[17] maxlistが0の場合、戻り値が正常(0)で設定する。
+               this->session_endpoint_map.clear();
+               this->session_lasttime_map.clear();
+               this->lasttime_session_map.clear();
+               this->maxlist = 0;
+               result = this->write_session_data(session_id, new_saved_endpoint, write_time);
+               BOOST_CHECK_EQUAL(result, 0);
+
+    cout << "[18]------------------------------------------" << endl;
+               // unit_test[18] mapが空の場合、例外が発生しない。
                try{
+                       this->maxlist = 3;
                        this->session_endpoint_map.clear();
                        this->session_lasttime_map.clear();
                        this->lasttime_session_map.clear();
@@ -382,7 +463,8 @@ public:
                        BOOST_ERROR("exception: write_session_data");
                }
 
-               // unit_test[13] session_id exist test
+    cout << "[19]------------------------------------------" << endl;
+               // unit_test[19] mapにセッションIDが存在している場合、戻り値が正常(0)で設定する。
                old_saved_endpoint.address(boost::asio::ip::address::from_string("0.0.0.0"));
                new_saved_endpoint.address(boost::asio::ip::address::from_string("192.168.120.102"));
                session_id = "test_id123456789abcdefghijklmnop";
@@ -411,7 +493,8 @@ public:
                BOOST_CHECK_EQUAL(temp_list_data.realserver_addr, new_saved_endpoint);
                BOOST_CHECK_EQUAL(temp_list_data.last_time, write_time);
 
-               // unit_test[14] while session_id exists, test(session_endpoint_map size = maxlist - 1)
+    cout << "[20]------------------------------------------" << endl;
+               // unit_test[20] mapにセッションIDが存在して、session_endpoint_mapのサイズがmaxlist - 1の場合、戻り値が正常(0)で設定する。
                std::string temp_session_id = "test_id2abcdefghijklmnop23456789";
                this->session_endpoint_map.clear();
                this->session_lasttime_map.clear();
@@ -441,7 +524,8 @@ public:
                BOOST_CHECK_EQUAL(temp_list_data.realserver_addr, new_saved_endpoint);
                BOOST_CHECK_EQUAL(temp_list_data.last_time, write_time);
 
-               // unit_test[15] while session_id exists, test(session_endpoint_map size = maxlist)
+    cout << "[21]------------------------------------------" << endl;
+               // unit_test[21] mapにセッションIDが存在して、session_endpoint_mapのサイズがmaxlistの場合、戻り値が正常(0)で設定する。
                std::string temp_session_id1 = "test_idthhhffffeeeeddddffffeeeed";
                this->session_endpoint_map.clear();
                this->session_lasttime_map.clear();
@@ -474,7 +558,8 @@ public:
                BOOST_CHECK_EQUAL(temp_list_data.realserver_addr, new_saved_endpoint);
                BOOST_CHECK_EQUAL(temp_list_data.last_time, write_time);
 
-               // unit_test[16] session_id not exist test(session_endpoint_map size = maxlist - 1)
+    cout << "[22]------------------------------------------" << endl;
+               // unit_test[22] mapにセッションIDが存在しない、session_endpoint_mapのサイズがmaxlist - 1の場合、戻り値が正常(0)で設定する。
                this->session_endpoint_map.clear();
                this->session_lasttime_map.clear();
                this->lasttime_session_map.clear();
@@ -503,7 +588,8 @@ public:
                BOOST_CHECK_EQUAL(temp_list_data.realserver_addr, new_saved_endpoint);
                BOOST_CHECK_EQUAL(temp_list_data.last_time, write_time);
 
-               // unit_test[17] session_id not exist test(session_endpoint_map size = maxlist)
+    cout << "[23]------------------------------------------" << endl;
+               // unit_test[23] mapにセッションIDが存在しない、session_endpoint_mapのサイズがmaxlistの場合、戻り値が正常(0)で設定する。
                std::string temp_session_id2 = "33rty567234ertgh6890sdfghbnmeeed";
                time_t earlier_time = last_time - 10;
                this->timeout = 10000;
@@ -541,7 +627,30 @@ public:
                BOOST_CHECK_EQUAL(last_temp_list_data.realserver_addr, new_saved_endpoint);
                BOOST_CHECK_EQUAL(last_temp_list_data.last_time, write_time);
 
-               // unit_test[18] while session_id not exist and session_endpoint_map size = maxlist and one data is time out, test
+       cout << "[24]------------------------------------------" << endl;
+               // unit_test[24]  mapにセッションIDが存在しない、がつ session_endpoint_mapのサイズがmaxlist、がつ clear_expired_session_data()の戻る値が1場合、
+               // unit_test[24]  戻り値が正常(0)で設定する。
+               clear_function_return_fail = true;
+               this->session_endpoint_map.clear();
+               this->session_lasttime_map.clear();
+               this->lasttime_session_map.clear();
+               this_replication_data_processor->get_temp_list().clear();
+               this->session_endpoint_map.insert(std::make_pair(temp_session_id, new_saved_endpoint));
+               this->session_endpoint_map.insert(std::make_pair(temp_session_id1, new_saved_endpoint));
+               this->session_endpoint_map.insert(std::make_pair(temp_session_id2, new_saved_endpoint));
+               this->session_lasttime_map.insert(std::make_pair(temp_session_id, earlier_time));
+               this->session_lasttime_map.insert(std::make_pair(temp_session_id1, last_time));
+               this->session_lasttime_map.insert(std::make_pair(temp_session_id2, last_time));
+               this->lasttime_session_map.insert(std::make_pair(earlier_time, temp_session_id));
+               this->lasttime_session_map.insert(std::make_pair(last_time, temp_session_id1));
+               this->lasttime_session_map.insert(std::make_pair(last_time, temp_session_id2));
+               result = this->write_session_data(session_id, new_saved_endpoint, write_time);
+               clear_function_return_fail = false;
+               BOOST_CHECK_EQUAL(result, 0);
+
+    cout << "[25]------------------------------------------" << endl;
+               // unit_test[25] mapにセッションIDが存在しなくて、且つsession_endpoint_mapのサイズが maxlistで1つのデータがタイムアウトの場合
+               // unit_test[25] 戻り値が正常(0)で設定する。
                time_t out_of_time = time(0) - 2000;
                this->timeout = 1000;
                this->session_endpoint_map.clear();
@@ -578,7 +687,9 @@ public:
                BOOST_CHECK_EQUAL(last_temp_list_data.realserver_addr, new_saved_endpoint);
                BOOST_CHECK_EQUAL(last_temp_list_data.last_time, write_time);
 
-               // unit_test[19] while session_id not exist and session_endpoint_map size = maxlist and two data is time out, test
+    cout << "[26]------------------------------------------" << endl;
+               // unit_test[26] mapにセッションIDが存在しなくて、且つsession_endpoint_mapのサイズが maxlistで1つのデータがタイムアウトの場合
+               // unit_test[26] 戻り値が正常(0)で設定する。
                out_of_time = time(0) - 2000;
                this->timeout = 1000;
                this->session_endpoint_map.clear();
@@ -620,7 +731,8 @@ public:
                        }
                }
 
-               // unit_test[20] multi-threads test
+    cout << "[27]------------------------------------------" << endl;
+               // unit_test[27] マルチスレッドの場合、mapにデータを正常追加する
                try{
                        this->session_endpoint_map.clear();
                        this->session_lasttime_map.clear();
@@ -641,14 +753,27 @@ public:
                                                        write_time));
                        thread_group.join_all();
 
+                       std::map<std::string, boost::asio::ip::tcp::endpoint>::iterator it1 = this->session_endpoint_map.begin();
+                       std::map<std::string, time_t>::iterator it2 =  this->session_lasttime_map.begin();
+                       std::multimap<time_t, std::string>::iterator it3 = this->lasttime_session_map.begin();
                        BOOST_CHECK_EQUAL(this->session_endpoint_map.size(), 3u);
                        BOOST_CHECK_EQUAL(this->session_lasttime_map.size(), 3u);
                        BOOST_CHECK_EQUAL(this->lasttime_session_map.size(), 3u);
+                       for(; it1 != this->session_endpoint_map.end(); it1++){
+                               BOOST_CHECK_EQUAL(it1->second, new_saved_endpoint);
+                       }
+                       for(; it2 != this->session_lasttime_map.end(); it2++){
+                               BOOST_CHECK_EQUAL(it2->second, write_time);
+                       }
+                       for(; it3 != this->lasttime_session_map.end(); it3++){
+                               BOOST_CHECK_EQUAL(it3->first, write_time);
+                       }
                } catch(...){
                        BOOST_ERROR("exception: write_session_data");
                }
 
-               // unit_test[21] ipv6 test(session_id exist)
+    cout << "[28]------------------------------------------" << endl;
+               // unit_test[28] endpointがipv6で、mapにセッションIDが存在する場合、戻り値が正常(0)で設定する。
                old_saved_endpoint.address(boost::asio::ip::address::from_string("0:0:0:0:0:0:0:0"));
                new_saved_endpoint.address(boost::asio::ip::address::from_string("abcd:21d0:8936:4866:eefe:567d:3a4b:1230"));
                session_id = "test_id123456789abcdefghijklmnop";
@@ -686,7 +811,8 @@ public:
                sslid_replication_data_processor_replacement *this_replication_data_processor =
                        dynamic_cast<sslid_replication_data_processor_replacement *> (this->replication_data_processor);
 
-               // unit_test[22] map empty test
+    cout << "[29]------------------------------------------" << endl;
+               // unit_test[29] mapが空の場合、戻り値が失敗(1)で設定する。
                this->timeout = 0;
                this->session_endpoint_map.clear();
                this->session_lasttime_map.clear();
@@ -697,9 +823,10 @@ public:
                        BOOST_ERROR("exception: clear_expired_session_data");
                }
                // function result check
-               BOOST_CHECK_EQUAL(result, 0);
+               BOOST_CHECK_EQUAL(result, 1);
 
-               // unit_test[23] when time out items exist(all items is time out), items remove test
+    cout << "[30]------------------------------------------" << endl;
+               // unit_test[30] mapに全てのアイテムがタイムアウトの場合、全てのアイテムを削除する。
                test_time = time(0) - 5;
                this->timeout = 0;
                this->session_endpoint_map.clear();
@@ -731,7 +858,8 @@ public:
                BOOST_CHECK_EQUAL(last_temp_list_data.op_code, 'D');
                BOOST_CHECK_EQUAL(last_temp_list_data.session_id, session_id2);
 
-               // unit_test[24] when time out item exists(one item is time out, but another item is not), item remove test
+    cout << "[31]------------------------------------------" << endl;
+               // unit_test[31] mapに1つのアイテムがタイムアウトで、もう1つのアイテムがタイムアウトしない場合、タイムアウトのアイテムだけ削除する。
                saved_endpoint2.port(88);
                this->timeout = 100;
                test_time = time(0);
@@ -772,7 +900,8 @@ public:
                BOOST_CHECK_EQUAL(first_temp_list_data.op_code, 'D');
                BOOST_CHECK_EQUAL(first_temp_list_data.session_id, session_id1);
 
-               // unit_test[25] when all items are not time out, item remove test
+    cout << "[32]------------------------------------------" << endl;
+               // unit_test[32] mapに全てのアイテムがタイムアウトしない場合、一番古いアイテムを削除する。
                this->timeout = 10000;
                time_t earlier_time = test_time -5;
                time_t earliest_time = test_time -10;
@@ -811,7 +940,8 @@ public:
                BOOST_CHECK_EQUAL(first_temp_list_data.op_code, 'D');
                BOOST_CHECK_EQUAL(first_temp_list_data.session_id, session_id2);
 
-               // unit_test[26] while all items are not time out and all item's lasttime is equal, first item remove test
+    cout << "[33]------------------------------------------" << endl;
+               // unit_test[33] mapに全てのアイテムがタイムアウトしない場合、lasttimeが全て同じの場合、1つ目のアイテムを削除する。
                std::string session_id3 = "test_id3wasfgasdasdwasdrggrtrrrr";
                this->timeout = 10000;
                this->session_endpoint_map.clear();
@@ -850,7 +980,7 @@ public:
 
                int result = 10;
                unsigned short port1 = 888;
-               unsigned short port2 = 999;
+               unsigned short port2 = -999;
                unsigned short port3 = 333;
                unsigned short port4 = 444;
                unsigned short port5 = 555;
@@ -912,7 +1042,8 @@ public:
                (first_real_data + 4)->realserver_port = port5;
                (first_real_data + 4)->last_time = last_time5;
 
-               // unit_test[27] NULL pointer test
+    cout << "[34]------------------------------------------" << endl;
+               // unit_test[34] パラメータがNULLの場合、戻り値が異常(-1)で設定する。
                result = 10;
                try {
                        result = this->read_session_data_from_replication_area(NULL);
@@ -922,7 +1053,8 @@ public:
                // function result check
                BOOST_CHECK_EQUAL(result, -1);
 
-               // unit_test[28] read data test(read the first data)
+    cout << "[35]------------------------------------------" << endl;
+               // unit_test[35] maxlistが1で、5つデータが存在して、パラメータがfirst_real_data の場合、replicationエリアから1つ目のデータを取得する。
                result = 10;
                this->maxlist = 1;
                this->session_endpoint_map.clear();
@@ -954,7 +1086,8 @@ public:
                // lasttime_session_map's session_id check
                BOOST_CHECK_EQUAL(it3->second, session_id1);
 
-               // unit_test[29] read data test(read the second data)
+    cout << "[36]------------------------------------------" << endl;
+               // unit_test[36] maxlistが1で、5つデータが存在して、パラメータがfirst_real_data + 1の場合、replicationエリアから2つ目のデータを取得する。
                result = 10;
                this->maxlist = 1;
                this->session_endpoint_map.clear();
@@ -986,7 +1119,8 @@ public:
                // lasttime_session_map's session_id check
                BOOST_CHECK_EQUAL(it3->second, session_id2);
 
-               // unit_test[30] read data test(read the thrid data, because the valid is 0, so nothing can be read)
+    cout << "[37]------------------------------------------" << endl;
+               // unit_test[37] maxlistが1で、5つデータが存在して、パラメータがfirst_real_data + 2で 、対応するvalidが0の場合, mapのサイズが0である。
                result = 10;
                this->maxlist = 1;
                this->session_endpoint_map.clear();
@@ -1002,7 +1136,8 @@ public:
                // lasttime_session_map check(nothing to read)
                BOOST_CHECK_EQUAL(this->lasttime_session_map.size(), 0u);
 
-               // unit_test[31] while  maxlist is 2, once can read two data, test
+    cout << "[38]------------------------------------------" << endl;
+               // unit_test[38] maxlistが2の場合、mapに2件のデータ読み込む。
                result = 10;
                this->maxlist = 2;
                this->session_endpoint_map.clear();
@@ -1059,7 +1194,8 @@ public:
                        it3++;
                }
 
-               // unit_test[32] while  maxlist is 2 and the second to read data's valid is 0, test
+    cout << "[39]------------------------------------------" << endl;
+               // unit_test[39] maxlistが2で、2つ目データのvalidが0の場合、1件目のみ読み込む。
                result = 10;
                this->maxlist = 2;
                this->session_endpoint_map.clear();
@@ -1109,7 +1245,8 @@ public:
                        it3++;
                }
 
-               // unit_test[33] while  maxlist is 2 and the first to read data's valid is 0, test
+    cout << "[40]------------------------------------------" << endl;
+               // unit_test[40] maxlistが2で、1つ目データのvalidが0の場合、2件目のみ読み込む。
                result = 10;
                this->maxlist = 2;
                this->session_endpoint_map.clear();
@@ -1159,8 +1296,8 @@ public:
                        it3++;
                }
 
-               // unit_test[34] when the realserver_ip is ipv6, test
-               // set the real data area(ipv6)
+    cout << "[41]------------------------------------------" << endl;
+               // unit_test[41] realserverがipv6の場合、取得のipが正しいです。
                std::string realserver_ipv6_ip1 = "abcd:21d0:8936:4866:eefe:567d:3a4b:1230";
                memcpy(first_real_data->realserver_ip, realserver_ipv6_ip1.c_str(), realserver_ipv6_ip1.length());
                result = 10;
@@ -1195,46 +1332,6 @@ void sslid_session_data_processor_test(){
 
        test_object.sslid_session_data_processor_test(3, 5, &replication_data_processor);
 
-       // unit_test[35] while maxlist < 0, exception occur, test
-       bool exception_occur = false;
-       try{
-               l7vs::sslid_session_data_processor(-1, 1, &replication_data_processor,
-                               ingetloglevel2, inputLogFatal2, inputLogError2, inputLogWarn2,
-                               inputLogInfo2, inputLogDebug2);
-       } catch(...) {
-               exception_occur = true;
-       }
-       BOOST_CHECK(exception_occur);
-
-       // unit_test[36] while maxlist = 0, exception not occur, test
-       try{
-               l7vs::sslid_session_data_processor(0, 1, &replication_data_processor,
-                               ingetloglevel2, inputLogFatal2, inputLogError2, inputLogWarn2,
-                               inputLogInfo2, inputLogDebug2);
-       } catch(...) {
-               BOOST_ERROR("exception: sslid_session_data_processor");
-       }
-
-       // unit_test[37] while timeout < 0, exception occur, test
-       exception_occur = false;
-       try{
-               l7vs::sslid_session_data_processor(2, -2, &replication_data_processor,
-                               ingetloglevel2, inputLogFatal2, inputLogError2, inputLogWarn2,
-                               inputLogInfo2, inputLogDebug2);
-       } catch(...) {
-               exception_occur = true;
-       }
-       BOOST_CHECK(exception_occur);
-
-       // unit_test[38] while timeout = 0, exception not occur, test
-       try{
-               l7vs::sslid_session_data_processor(2, 0, &replication_data_processor,
-                               ingetloglevel2, inputLogFatal2, inputLogError2, inputLogWarn2,
-                               inputLogInfo2, inputLogDebug2);
-       } catch(...) {
-               BOOST_ERROR("exception: sslid_session_data_processor");
-       }
-
        delete []replication_data_area;
 }