recive_data_itr = thread_data->recive_data_map.begin();
+ thread_data->sorryserver_switch_flag = SORRYSERVER_SWITCH_FLAG_ON;
+
thread_data->sorry_flag = SORRY_FLAG_ON;
status = SORRYSERVER_RECV;
recive_data_itr = thread_data->recive_data_map.begin();
+ thread_data->realserver_switch_flag = REALSERVER_SWITCH_FLAG_ON;
+
thread_data->sorry_flag = SORRY_FLAG_OFF;
status = REALSERVER_RECV;
if( thread_data->sorryserver_switch_flag == SORRYSERVER_SWITCH_FLAG_ON )
{
+ thread_data->sorryserver_switch_flag = SORRYSERVER_SWITCH_FLAG_OFF;
+
recive_data_itr = thread_data->recive_data_map.find( thread_data->client_endpoint_tcp );
if( recive_data_itr != thread_data->recive_data_map.end() )
}
else
{
- thread_data->end_flag = END_FLAG_ON;
- recive_data_itr = thread_data->recive_data_map.begin();
+ if( thread_data->end_flag == END_FLAG_ON )
+ {
+ status = CLIENT_DISCONNECT;
+ }
+ else
+ {
+ if( thread_data->sorryserver_switch_flag == SORRYSERVER_SWITCH_FLAG_ON )
+ {
+
+ thread_data->sorryserver_switch_flag = SORRYSERVER_SWITCH_FLAG_OFF;
+ status = SORRYSERVER_RECV;
+
+ }
+ else
+ {
+
+ thread_data->end_flag = END_FLAG_ON;
+ status = CLIENT_DISCONNECT;
+
+ }
+ }
- status = CLIENT_DISCONNECT;
+ recive_data_itr = thread_data->recive_data_map.begin();
while( recive_data_itr != thread_data->recive_data_map.end() )
{
else
{
- if( thread_data->realserver_switch_flag == REALSERVER_SWITCH_FLAG_ON )
+ if( thread_data->realserver_switch_flag == REALSERVER_SWITCH_FLAG_ON )
{
+ thread_data->realserver_switch_flag = REALSERVER_SWITCH_FLAG_OFF;
+
recive_data_itr = thread_data->recive_data_map.find( thread_data->client_endpoint_tcp );
if( recive_data_itr != thread_data->recive_data_map.end() )
}
else
{
- thread_data->end_flag = END_FLAG_ON;
- recive_data_itr = thread_data->recive_data_map.begin();
+ if( thread_data->end_flag == END_FLAG_ON )
+ {
+ status = CLIENT_DISCONNECT;
+ }
+ else
+ {
+ if( thread_data->realserver_switch_flag == REALSERVER_SWITCH_FLAG_ON )
+ {
+
+ thread_data->realserver_switch_flag = REALSERVER_SWITCH_FLAG_OFF;
+ status = REALSERVER_RECV;
+
+ }
+ else
+ {
+
+ thread_data->end_flag = END_FLAG_ON;
+ status = CLIENT_DISCONNECT;
+
+ }
+ }
- status = CLIENT_DISCONNECT;
+ recive_data_itr = thread_data->recive_data_map.begin();
while( recive_data_itr != thread_data->recive_data_map.end() )
{