@@ -64,7 +64,8 @@ HTTPWorker::HTTPWorker(
6464 caf::actor_config &cfg,
6565 time_t connection_timeout,
6666 time_t read_timeout,
67- time_t write_timeout)
67+ time_t write_timeout,
68+ bool ssl_verify)
6869 : caf::event_based_actor(cfg) {
6970 behavior_.assign (
7071 [=](xstudio::broadcast::broadcast_down_atom, const caf::actor_addr &) {},
@@ -81,6 +82,7 @@ HTTPWorker::HTTPWorker(
8182 cli.set_connection_timeout (connection_timeout, 0 );
8283 cli.set_read_timeout (read_timeout, 0 );
8384 cli.set_write_timeout (write_timeout, 0 );
85+ cli.enable_server_certificate_verification (ssl_verify);
8486 auto res = [&]() -> httplib::Result {
8587 if (content_type.empty ())
8688 return cli.Delete (path.c_str (), headers);
@@ -135,6 +137,7 @@ HTTPWorker::HTTPWorker(
135137 cli.set_connection_timeout (connection_timeout, 0 );
136138 cli.set_read_timeout (read_timeout, 0 );
137139 cli.set_write_timeout (write_timeout, 0 );
140+ cli.enable_server_certificate_verification (ssl_verify);
138141
139142 // cli.set_logger([](const auto& req, const auto& res) {
140143 // spdlog::warn("{}", req.);
@@ -200,6 +203,7 @@ HTTPWorker::HTTPWorker(
200203 cli.set_connection_timeout (connection_timeout, 0 );
201204 cli.set_read_timeout (read_timeout, 0 );
202205 cli.set_write_timeout (write_timeout, 0 );
206+ cli.enable_server_certificate_verification (ssl_verify);
203207 auto res = [&]() -> httplib::Result {
204208 if (content_type.empty ())
205209 return cli.Post (path.c_str (), headers, params);
@@ -257,6 +261,7 @@ HTTPWorker::HTTPWorker(
257261 cli.set_connection_timeout (connection_timeout, 0 );
258262 cli.set_read_timeout (read_timeout, 0 );
259263 cli.set_write_timeout (write_timeout, 0 );
264+ cli.enable_server_certificate_verification (ssl_verify);
260265
261266 auto res = [&]() -> httplib::Result {
262267 if (content_type.empty ())
@@ -311,11 +316,13 @@ HTTPClientActor::HTTPClientActor(
311316 caf::actor_config &cfg,
312317 time_t connection_timeout,
313318 time_t read_timeout,
314- time_t write_timeout)
319+ time_t write_timeout,
320+ bool ssl_verify)
315321 : caf::event_based_actor(cfg),
316322 connection_timeout_(connection_timeout),
317323 read_timeout_(read_timeout),
318- write_timeout_(write_timeout) {
324+ write_timeout_(write_timeout),
325+ ssl_verify_(ssl_verify) {
319326 init ();
320327}
321328
@@ -339,7 +346,7 @@ void HTTPClientActor::init() {
339346 worker_count,
340347 [&] {
341348 return system ().spawn <HTTPWorker>(
342- connection_timeout_, read_timeout_, write_timeout_);
349+ connection_timeout_, read_timeout_, write_timeout_, ssl_verify_ );
343350 },
344351 caf::actor_pool::round_robin ());
345352
0 commit comments