2 * Copyright (c) 2018 Cisco and/or its affiliates.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at:
7 * http://www.apache.org/licenses/LICENSE-2.0
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
16 #include <vnet/vnet.h>
17 #include <vlibapi/api.h>
18 #include <vlibmemory/api.h>
19 #include <vpp/app/version.h>
20 #include <tlsopenssl/tls_openssl.h>
22 /* define message IDs */
23 #include <tlsopenssl/tls_openssl.api_enum.h>
24 #include <tlsopenssl/tls_openssl.api_types.h>
27 #define REPLY_MSG_ID_BASE om->msg_id_base
28 #include <vlibapi/api_helper_macros.h>
30 extern openssl_main_t openssl_main;
32 /* API message handler */
34 vl_api_tls_openssl_set_engine_t_handler (vl_api_tls_openssl_set_engine_t * mp)
36 vl_api_tls_openssl_set_engine_reply_t *rmp;
37 openssl_main_t *om = &openssl_main;
42 ciphers = (char *) &mp->ciphers;
45 tls_openssl_set_ciphers (ciphers);
47 engine = (char *) mp->engine;
49 alg = (char *) mp->algorithm;
51 rv = openssl_engine_register (engine, alg, mp->async_enable);
52 om->async = mp->async_enable;
54 REPLY_MACRO (VL_API_TLS_OPENSSL_SET_ENGINE_REPLY);
57 #include <tlsopenssl/tls_openssl.api.c>
59 tls_openssl_api_init (vlib_main_t * vm)
61 openssl_main_t *om = &openssl_main;
63 /* Ask for a correctly-sized block of API message decode slots */
64 om->msg_id_base = setup_message_id_table ();
70 * fd.io coding-style-patch-verification: ON
73 * eval: (c-set-style "gnu")