diff --git a/src/tsg_entry.cpp b/src/tsg_entry.cpp index 5c3114c..70f88ff 100644 --- a/src/tsg_entry.cpp +++ b/src/tsg_entry.cpp @@ -70,6 +70,8 @@ struct id2field g_tsg_fs2_field[TSG_FS2_MAX]={{0, TSG_FS2_TCP_LINKS, "tcp_links" {0, TSG_FS2_CTRL_CLOSING, "ctrl_close"}, {0, TSG_FS2_CTRL_ACTIVE, "ctrl_active"}, {0, TSG_FS2_CTRL_RESETALL, "ctrl_rstall"}, + {0, TSG_FS2_INJECT_CTRL_SUCCESS, "inject_ctrl_succuess"}, + {0, TSG_FS2_INJECT_CTRL_FAILED, "inject_ctrl_failed"}, {0, TSG_FS2_EXCLUSION, "exclusion"}, {0, TSG_FS2_APP_DPKT_RESULT, "D_result"}, {0, TSG_FS2_APP_Q_RESULT, "Q_result"}, diff --git a/src/tsg_sync_state.cpp b/src/tsg_sync_state.cpp index c18e18e..14e038f 100644 --- a/src/tsg_sync_state.cpp +++ b/src/tsg_sync_state.cpp @@ -43,9 +43,14 @@ static int mpack_send_pkt(const struct streaminfo *a_stream, mpack_writer_t *wri ret = sapp_inject_ctrl_pkt((struct streaminfo *)a_stream, SIO_DEFAULT, *mpack_data, *mpack_size, a_stream->routedir); if (ret == -1) { - MESA_handle_runtime_log(g_tsg_para.logger, RLOG_LV_FATAL, "MSGPACK_BUFF_SEND", "An error occurred injecting the data!"); + FS_operate(g_tsg_para.fs2_handle, g_tsg_para.fs2_field_id[TSG_FS2_INJECT_CTRL_FAILED], 0, FS_OP_ADD, 1); + MESA_handle_runtime_log(g_tsg_para.logger, RLOG_LV_DEBUG, "MSGPACK_BUFF_SEND", "An error occurred injecting the data! addr: %s", PRINTADDR(a_stream, g_tsg_para.level)); } - + else + { + FS_operate(g_tsg_para.fs2_handle, g_tsg_para.fs2_field_id[TSG_FS2_INJECT_CTRL_SUCCESS], 0, FS_OP_ADD, 1); + } + free(*mpack_data); *mpack_data = NULL; *mpack_size = 0; diff --git a/src/tsg_variable.h b/src/tsg_variable.h index 63f4774..2b9a0ef 100644 --- a/src/tsg_variable.h +++ b/src/tsg_variable.h @@ -21,6 +21,8 @@ enum TSG_FS2_TYPE TSG_FS2_CTRL_CLOSING, TSG_FS2_CTRL_ACTIVE, TSG_FS2_CTRL_RESETALL, + TSG_FS2_INJECT_CTRL_SUCCESS, + TSG_FS2_INJECT_CTRL_FAILED, TSG_FS2_EXCLUSION, TSG_FS2_APP_DPKT_RESULT, TSG_FS2_APP_Q_RESULT, diff --git a/test/src/gtest_sync_state.cpp b/test/src/gtest_sync_state.cpp index 244a6bd..f7827f8 100644 --- a/test/src/gtest_sync_state.cpp +++ b/test/src/gtest_sync_state.cpp @@ -54,6 +54,11 @@ int session_log_update_data_put(const struct streaminfo *a_stream, enum TSG_SERV } } +int FS_operate(screen_stat_handle_t handle,int id,int column_id,enum field_op op,long long value) +{ + return 0; +} + TEST(SESSION_STATE, IllegalPara) { struct streaminfo a_stream = {0};