if (vcm->proto == VPPCOM_PROTO_TLS)
{
+ vtinf ("Adding tls certs ...");
vppcom_session_tls_add_cert (ctrl->fd, vcl_test_crt_rsa,
vcl_test_crt_rsa_len);
vppcom_session_tls_add_key (ctrl->fd, vcl_test_key_rsa,
vcl_test_key_rsa_len);
}
-
vtinf ("Connecting to server...");
rv = vppcom_session_connect (ctrl->fd, &vcm->server_endpt);
if (rv)
/* App is a transport proto, so fetch the calling app's ns */
if (app->flags & APP_OPTIONS_FLAGS_IS_TRANSPORT_APP)
- {
- app_worker_t *owner_wrk;
- application_t *owner_app;
+ ns_index = sep->ns_index;
- owner_wrk = app_worker_get (sep->app_wrk_index);
- owner_app = application_get (owner_wrk->app_index);
- ns_index = owner_app->ns_index;
- }
app_ns = app_namespace_get (ns_index);
if (!app_ns)
return;
#undef _
u32 app_wrk_index;
u32 opaque;
+ u32 ns_index;
u8 *hostname;
} session_endpoint_cfg_t;
app_session->session_type = app_listener->session_type;
app_session->listener_index = app_listener->session_index;
app_session->t_app_index = tls_main.app_index;
+ app_session->session_state = SESSION_STATE_ACCEPTING;
if ((rv = app_worker_init_accepted (app_session)))
{
cargs->sep.transport_proto = TRANSPORT_PROTO_TCP;
cargs->app_index = tm->app_index;
cargs->api_context = ctx_index;
+ cargs->sep_ext.ns_index = app->ns_index;
if ((rv = vnet_connect (cargs)))
return rv;
clib_memset (args, 0, sizeof (*args));
args->app_index = tm->app_index;
args->sep_ext = *sep;
+ args->sep_ext.ns_index = app->ns_index;
if (vnet_listen (args))
return -1;
format_tls_listener (u8 * s, va_list * args)
{
u32 tc_index = va_arg (*args, u32);
+ u32 __clib_unused verbose = va_arg (*args, u32);
tls_ctx_t *ctx = tls_listener_ctx_get (tc_index);
u32 listener_index, thread_index;
a->options = options;
a->name = format (0, "tls");
a->options[APP_OPTIONS_SEGMENT_SIZE] = segment_size;
+ a->options[APP_OPTIONS_ADD_SEGMENT_SIZE] = segment_size;
a->options[APP_OPTIONS_RX_FIFO_SIZE] = fifo_size;
a->options[APP_OPTIONS_TX_FIFO_SIZE] = fifo_size;
a->options[APP_OPTIONS_FLAGS] = APP_OPTIONS_FLAGS_IS_BUILTIN;
super(VCLThruHostStackEcho, self).tearDown()
+class VCLThruHostStackTLS(VCLTestCase):
+ """ VCL Thru Host Stack TLS """
+
+ @classmethod
+ def setUpClass(cls):
+ super(VCLThruHostStackTLS, cls).setUpClass()
+
+ @classmethod
+ def tearDownClass(cls):
+ super(VCLThruHostStackTLS, cls).tearDownClass()
+
+ def setUp(self):
+ super(VCLThruHostStackTLS, self).setUp()
+
+ self.thru_host_stack_setup()
+ self.client_uni_dir_tls_timeout = 20
+ self.server_tls_args = ["-S", self.server_port]
+ self.client_uni_dir_tls_test_args = ["-N", "1000", "-U", "-X", "-S",
+ self.loop0.local_ip4,
+ self.server_port]
+
+ def test_vcl_thru_host_stack_tls_uni_dir(self):
+ """ run VCL thru host stack uni-directional TLS test """
+
+ self.timeout = self.client_uni_dir_tls_timeout
+ self.thru_host_stack_test("vcl_test_server", self.server_tls_args,
+ "vcl_test_client",
+ self.client_uni_dir_tls_test_args)
+
+ def tearDown(self):
+ self.logger.debug(self.vapi.cli("show app server"))
+ self.logger.debug(self.vapi.cli("show session verbose"))
+ self.thru_host_stack_tear_down()
+ super(VCLThruHostStackTLS, self).tearDown()
+
+
class VCLThruHostStackBidirNsock(VCLTestCase):
""" VCL Thru Host Stack Bidir Nsock """