diff options
Diffstat (limited to 'src/vnet/session-apps')
-rw-r--r-- | src/vnet/session-apps/echo_client.c | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/src/vnet/session-apps/echo_client.c b/src/vnet/session-apps/echo_client.c index 1fd7ad0cd9f..1ece0196dde 100644 --- a/src/vnet/session-apps/echo_client.c +++ b/src/vnet/session-apps/echo_client.c @@ -352,16 +352,6 @@ echo_clients_init (vlib_main_t * vm) return 0; } -static void -echo_clients_session_disconnect (stream_session_t * s) -{ - echo_client_main_t *ecm = &echo_client_main; - vnet_disconnect_args_t _a, *a = &_a; - a->handle = session_handle (s); - a->app_index = ecm->app_index; - vnet_disconnect_session (a); -} - static int echo_clients_session_connected_callback (u32 app_index, u32 api_context, stream_session_t * s, u8 is_fail) @@ -377,6 +367,7 @@ echo_clients_session_connected_callback (u32 app_index, u32 api_context, if (is_fail) { clib_warning ("connection %d failed!", api_context); + ecm->run_test = ECHO_CLIENTS_EXITING; signal_evt_to_cli (-1); return 0; } @@ -454,6 +445,16 @@ echo_clients_session_disconnect_callback (stream_session_t * s) return; } +void +echo_clients_session_disconnect (stream_session_t * s) +{ + echo_client_main_t *ecm = &echo_client_main; + vnet_disconnect_args_t _a, *a = &_a; + a->handle = session_handle (s); + a->app_index = ecm->app_index; + vnet_disconnect_session (a); +} + static int echo_clients_rx_callback (stream_session_t * s) { |