aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2019-11-19 17:23:22 -0800
committerAndrew Yourtchenko <ayourtch@gmail.com>2020-08-07 21:45:43 +0000
commitabfdb9e23b12fbc32d6173d673a20a07f631b5e7 (patch)
tree993b493379d8b86fc62277bba9cf0930e35c5a14 /src/plugins
parent4b5723a43e980328bca039dbc1e5785c23cbf378 (diff)
session: fix transport proto unformat
Type: fix Change-Id: I38a5cbd53b278c21142bac4ee1bbe5dc8bcaaac9 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit 3bbbf0dbd367fd8611f9f390a2c6e31a89ce08a9)
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/hs_apps/echo_client.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/plugins/hs_apps/echo_client.c b/src/plugins/hs_apps/echo_client.c
index 076fca22deb..a8b9f68e74f 100644
--- a/src/plugins/hs_apps/echo_client.c
+++ b/src/plugins/hs_apps/echo_client.c
@@ -727,8 +727,14 @@ echo_clients_connect (vlib_main_t * vm, u32 n_clients)
a->uri = (char *) ecm->connect_uri;
a->api_context = i;
a->app_index = ecm->app_index;
+
+ vlib_worker_thread_barrier_sync (vm);
if ((rv = vnet_connect_uri (a)))
- return clib_error_return (0, "connect returned: %d", rv);
+ {
+ vlib_worker_thread_barrier_release (vm);
+ return clib_error_return (0, "connect returned: %d", rv);
+ }
+ vlib_worker_thread_barrier_release (vm);
/* Crude pacing for call setups */
if ((i % 16) == 0)
@@ -870,7 +876,8 @@ echo_clients_command_fn (vlib_main_t * vm,
if ((rv = parse_uri ((char *) ecm->connect_uri, &sep)))
return clib_error_return (0, "Uri parse error: %d", rv);
ecm->transport_proto = sep.transport_proto;
- ecm->is_dgram = (sep.transport_proto == TRANSPORT_PROTO_UDP);
+ ecm->is_dgram = (sep.transport_proto == TRANSPORT_PROTO_UDP
+ || sep.transport_proto == TRANSPORT_PROTO_UDPC);
#if ECHO_CLIENT_PTHREAD
echo_clients_start_tx_pthread ();
@@ -903,7 +910,9 @@ echo_clients_command_fn (vlib_main_t * vm,
/* Fire off connect requests */
time_before_connects = vlib_time_now (vm);
if ((error = echo_clients_connect (vm, n_clients)))
- goto cleanup;
+ {
+ goto cleanup;
+ }
/* Park until the sessions come up, or ten seconds elapse... */
vlib_process_wait_for_event_or_clock (vm, syn_timeout);