couchbase 3.0.1-universal-darwin-19 → 3.0.2-universal-darwin-19

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1318) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +73 -4
  3. data/ext/extconf.rb +0 -95
  4. data/lib/couchbase.rb +1 -0
  5. data/lib/couchbase/analytics_options.rb +1 -71
  6. data/lib/couchbase/binary_collection.rb +60 -22
  7. data/lib/couchbase/binary_collection_options.rb +0 -76
  8. data/lib/couchbase/bucket.rb +40 -36
  9. data/lib/couchbase/cluster.rb +89 -156
  10. data/lib/couchbase/collection.rb +290 -72
  11. data/lib/couchbase/collection_options.rb +30 -243
  12. data/lib/couchbase/datastructures/couchbase_list.rb +5 -16
  13. data/lib/couchbase/datastructures/couchbase_map.rb +5 -16
  14. data/lib/couchbase/datastructures/couchbase_queue.rb +5 -16
  15. data/lib/couchbase/datastructures/couchbase_set.rb +5 -16
  16. data/lib/couchbase/diagnostics.rb +181 -0
  17. data/lib/couchbase/json_transcoder.rb +1 -1
  18. data/lib/couchbase/libcouchbase.bundle +0 -0
  19. data/lib/couchbase/{common_options.rb → logger.rb} +24 -11
  20. data/lib/couchbase/management/query_index_manager.rb +1 -1
  21. data/lib/couchbase/management/user_manager.rb +3 -0
  22. data/lib/couchbase/options.rb +2094 -0
  23. data/lib/couchbase/query_options.rb +1 -144
  24. data/lib/couchbase/scope.rb +8 -25
  25. data/lib/couchbase/search_options.rb +0 -93
  26. data/lib/couchbase/version.rb +20 -1
  27. data/lib/couchbase/view_options.rb +1 -91
  28. metadata +8 -1296
  29. data/ext/CMakeLists.txt +0 -127
  30. data/ext/LICENSE.txt +0 -202
  31. data/ext/build_config.hxx.in +0 -20
  32. data/ext/build_version.hxx.in +0 -27
  33. data/ext/cmake/Backtrace.cmake +0 -35
  34. data/ext/cmake/BuildTracing.cmake +0 -6
  35. data/ext/cmake/Cache.cmake +0 -29
  36. data/ext/cmake/CompilerWarnings.cmake +0 -78
  37. data/ext/cmake/PreventInSourceBuilds.cmake +0 -18
  38. data/ext/cmake/Sanitizers.cmake +0 -66
  39. data/ext/cmake/StandardProjectSettings.cmake +0 -40
  40. data/ext/cmake/StaticAnalyzers.cmake +0 -37
  41. data/ext/cmake/Testing.cmake +0 -52
  42. data/ext/cmake/ThirdPartyDependencies.cmake +0 -20
  43. data/ext/cmake/VersionInfo.cmake +0 -37
  44. data/ext/couchbase/bucket.hxx +0 -338
  45. data/ext/couchbase/capabilities.hxx +0 -117
  46. data/ext/couchbase/cbcrypto/cbcrypto.cc +0 -888
  47. data/ext/couchbase/cbcrypto/cbcrypto.h +0 -89
  48. data/ext/couchbase/cbsasl/client.cc +0 -48
  49. data/ext/couchbase/cbsasl/client.h +0 -127
  50. data/ext/couchbase/cbsasl/context.cc +0 -33
  51. data/ext/couchbase/cbsasl/context.h +0 -52
  52. data/ext/couchbase/cbsasl/error.h +0 -72
  53. data/ext/couchbase/cbsasl/mechanism.cc +0 -48
  54. data/ext/couchbase/cbsasl/mechanism.h +0 -55
  55. data/ext/couchbase/cbsasl/plain/plain.cc +0 -36
  56. data/ext/couchbase/cbsasl/plain/plain.h +0 -53
  57. data/ext/couchbase/cbsasl/scram-sha/scram-sha.cc +0 -390
  58. data/ext/couchbase/cbsasl/scram-sha/scram-sha.h +0 -185
  59. data/ext/couchbase/cbsasl/scram-sha/stringutils.cc +0 -81
  60. data/ext/couchbase/cbsasl/scram-sha/stringutils.h +0 -48
  61. data/ext/couchbase/cluster.hxx +0 -267
  62. data/ext/couchbase/cluster_options.hxx +0 -54
  63. data/ext/couchbase/collections_manifest.hxx +0 -88
  64. data/ext/couchbase/configuration.hxx +0 -650
  65. data/ext/couchbase/couchbase.cxx +0 -6431
  66. data/ext/couchbase/diagnostics.hxx +0 -251
  67. data/ext/couchbase/document_id.hxx +0 -40
  68. data/ext/couchbase/error_map.hxx +0 -261
  69. data/ext/couchbase/errors.hxx +0 -706
  70. data/ext/couchbase/io/dns_client.hxx +0 -217
  71. data/ext/couchbase/io/dns_codec.hxx +0 -207
  72. data/ext/couchbase/io/dns_config.hxx +0 -116
  73. data/ext/couchbase/io/dns_message.hxx +0 -555
  74. data/ext/couchbase/io/http_command.hxx +0 -95
  75. data/ext/couchbase/io/http_context.hxx +0 -37
  76. data/ext/couchbase/io/http_message.hxx +0 -47
  77. data/ext/couchbase/io/http_parser.hxx +0 -176
  78. data/ext/couchbase/io/http_session.hxx +0 -442
  79. data/ext/couchbase/io/http_session_manager.hxx +0 -182
  80. data/ext/couchbase/io/mcbp_command.hxx +0 -246
  81. data/ext/couchbase/io/mcbp_message.hxx +0 -63
  82. data/ext/couchbase/io/mcbp_parser.hxx +0 -101
  83. data/ext/couchbase/io/mcbp_session.hxx +0 -1283
  84. data/ext/couchbase/io/query_cache.hxx +0 -61
  85. data/ext/couchbase/io/retry_action.hxx +0 -30
  86. data/ext/couchbase/io/retry_context.hxx +0 -38
  87. data/ext/couchbase/io/retry_orchestrator.hxx +0 -112
  88. data/ext/couchbase/io/retry_reason.hxx +0 -235
  89. data/ext/couchbase/io/retry_strategy.hxx +0 -156
  90. data/ext/couchbase/io/streams.hxx +0 -216
  91. data/ext/couchbase/mutation_token.hxx +0 -38
  92. data/ext/couchbase/operations.hxx +0 -104
  93. data/ext/couchbase/operations/analytics_dataset_create.hxx +0 -117
  94. data/ext/couchbase/operations/analytics_dataset_drop.hxx +0 -103
  95. data/ext/couchbase/operations/analytics_dataset_get_all.hxx +0 -107
  96. data/ext/couchbase/operations/analytics_dataverse_create.hxx +0 -104
  97. data/ext/couchbase/operations/analytics_dataverse_drop.hxx +0 -104
  98. data/ext/couchbase/operations/analytics_get_pending_mutations.hxx +0 -91
  99. data/ext/couchbase/operations/analytics_index_create.hxx +0 -128
  100. data/ext/couchbase/operations/analytics_index_drop.hxx +0 -110
  101. data/ext/couchbase/operations/analytics_index_get_all.hxx +0 -106
  102. data/ext/couchbase/operations/analytics_link_connect.hxx +0 -102
  103. data/ext/couchbase/operations/analytics_link_disconnect.hxx +0 -101
  104. data/ext/couchbase/operations/bucket_create.hxx +0 -147
  105. data/ext/couchbase/operations/bucket_drop.hxx +0 -68
  106. data/ext/couchbase/operations/bucket_flush.hxx +0 -68
  107. data/ext/couchbase/operations/bucket_get.hxx +0 -72
  108. data/ext/couchbase/operations/bucket_get_all.hxx +0 -65
  109. data/ext/couchbase/operations/bucket_settings.hxx +0 -150
  110. data/ext/couchbase/operations/bucket_update.hxx +0 -124
  111. data/ext/couchbase/operations/cluster_developer_preview_enable.hxx +0 -63
  112. data/ext/couchbase/operations/collection_create.hxx +0 -95
  113. data/ext/couchbase/operations/collection_drop.hxx +0 -85
  114. data/ext/couchbase/operations/collections_manifest_get.hxx +0 -70
  115. data/ext/couchbase/operations/design_document.hxx +0 -59
  116. data/ext/couchbase/operations/document_analytics.hxx +0 -293
  117. data/ext/couchbase/operations/document_decrement.hxx +0 -87
  118. data/ext/couchbase/operations/document_exists.hxx +0 -84
  119. data/ext/couchbase/operations/document_get.hxx +0 -69
  120. data/ext/couchbase/operations/document_get_and_lock.hxx +0 -71
  121. data/ext/couchbase/operations/document_get_and_touch.hxx +0 -71
  122. data/ext/couchbase/operations/document_get_projected.hxx +0 -249
  123. data/ext/couchbase/operations/document_increment.hxx +0 -89
  124. data/ext/couchbase/operations/document_insert.hxx +0 -81
  125. data/ext/couchbase/operations/document_lookup_in.hxx +0 -111
  126. data/ext/couchbase/operations/document_mutate_in.hxx +0 -145
  127. data/ext/couchbase/operations/document_query.hxx +0 -422
  128. data/ext/couchbase/operations/document_remove.hxx +0 -74
  129. data/ext/couchbase/operations/document_replace.hxx +0 -83
  130. data/ext/couchbase/operations/document_search.hxx +0 -370
  131. data/ext/couchbase/operations/document_touch.hxx +0 -67
  132. data/ext/couchbase/operations/document_unlock.hxx +0 -67
  133. data/ext/couchbase/operations/document_upsert.hxx +0 -81
  134. data/ext/couchbase/operations/document_view.hxx +0 -228
  135. data/ext/couchbase/operations/group_drop.hxx +0 -71
  136. data/ext/couchbase/operations/group_get.hxx +0 -75
  137. data/ext/couchbase/operations/group_get_all.hxx +0 -70
  138. data/ext/couchbase/operations/group_upsert.hxx +0 -118
  139. data/ext/couchbase/operations/query_index_build_deferred.hxx +0 -86
  140. data/ext/couchbase/operations/query_index_create.hxx +0 -145
  141. data/ext/couchbase/operations/query_index_drop.hxx +0 -119
  142. data/ext/couchbase/operations/query_index_get_all.hxx +0 -117
  143. data/ext/couchbase/operations/rbac.hxx +0 -276
  144. data/ext/couchbase/operations/role_get_all.hxx +0 -70
  145. data/ext/couchbase/operations/scope_create.hxx +0 -88
  146. data/ext/couchbase/operations/scope_drop.hxx +0 -82
  147. data/ext/couchbase/operations/scope_get_all.hxx +0 -76
  148. data/ext/couchbase/operations/search_get_stats.hxx +0 -59
  149. data/ext/couchbase/operations/search_index.hxx +0 -79
  150. data/ext/couchbase/operations/search_index_analyze_document.hxx +0 -92
  151. data/ext/couchbase/operations/search_index_control_ingest.hxx +0 -80
  152. data/ext/couchbase/operations/search_index_control_plan_freeze.hxx +0 -80
  153. data/ext/couchbase/operations/search_index_control_query.hxx +0 -80
  154. data/ext/couchbase/operations/search_index_drop.hxx +0 -77
  155. data/ext/couchbase/operations/search_index_get.hxx +0 -80
  156. data/ext/couchbase/operations/search_index_get_all.hxx +0 -82
  157. data/ext/couchbase/operations/search_index_get_documents_count.hxx +0 -89
  158. data/ext/couchbase/operations/search_index_get_stats.hxx +0 -81
  159. data/ext/couchbase/operations/search_index_upsert.hxx +0 -106
  160. data/ext/couchbase/operations/user_drop.hxx +0 -72
  161. data/ext/couchbase/operations/user_get.hxx +0 -76
  162. data/ext/couchbase/operations/user_get_all.hxx +0 -71
  163. data/ext/couchbase/operations/user_upsert.hxx +0 -125
  164. data/ext/couchbase/operations/view_index_drop.hxx +0 -67
  165. data/ext/couchbase/operations/view_index_get.hxx +0 -90
  166. data/ext/couchbase/operations/view_index_get_all.hxx +0 -125
  167. data/ext/couchbase/operations/view_index_upsert.hxx +0 -87
  168. data/ext/couchbase/origin.hxx +0 -178
  169. data/ext/couchbase/platform/backtrace.c +0 -189
  170. data/ext/couchbase/platform/backtrace.h +0 -54
  171. data/ext/couchbase/platform/base64.cc +0 -234
  172. data/ext/couchbase/platform/base64.h +0 -47
  173. data/ext/couchbase/platform/random.cc +0 -119
  174. data/ext/couchbase/platform/random.h +0 -39
  175. data/ext/couchbase/platform/string_hex.cc +0 -99
  176. data/ext/couchbase/platform/string_hex.h +0 -50
  177. data/ext/couchbase/platform/terminate_handler.cc +0 -123
  178. data/ext/couchbase/platform/terminate_handler.h +0 -36
  179. data/ext/couchbase/platform/uuid.cc +0 -96
  180. data/ext/couchbase/platform/uuid.h +0 -56
  181. data/ext/couchbase/protocol/client_opcode.hxx +0 -264
  182. data/ext/couchbase/protocol/client_request.hxx +0 -160
  183. data/ext/couchbase/protocol/client_response.hxx +0 -218
  184. data/ext/couchbase/protocol/cmd_cluster_map_change_notification.hxx +0 -79
  185. data/ext/couchbase/protocol/cmd_decrement.hxx +0 -187
  186. data/ext/couchbase/protocol/cmd_exists.hxx +0 -171
  187. data/ext/couchbase/protocol/cmd_get.hxx +0 -122
  188. data/ext/couchbase/protocol/cmd_get_and_lock.hxx +0 -142
  189. data/ext/couchbase/protocol/cmd_get_and_touch.hxx +0 -142
  190. data/ext/couchbase/protocol/cmd_get_cluster_config.hxx +0 -126
  191. data/ext/couchbase/protocol/cmd_get_collection_id.hxx +0 -117
  192. data/ext/couchbase/protocol/cmd_get_collections_manifest.hxx +0 -99
  193. data/ext/couchbase/protocol/cmd_get_error_map.hxx +0 -126
  194. data/ext/couchbase/protocol/cmd_hello.hxx +0 -156
  195. data/ext/couchbase/protocol/cmd_increment.hxx +0 -187
  196. data/ext/couchbase/protocol/cmd_info.hxx +0 -25
  197. data/ext/couchbase/protocol/cmd_insert.hxx +0 -172
  198. data/ext/couchbase/protocol/cmd_lookup_in.hxx +0 -219
  199. data/ext/couchbase/protocol/cmd_mutate_in.hxx +0 -365
  200. data/ext/couchbase/protocol/cmd_remove.hxx +0 -134
  201. data/ext/couchbase/protocol/cmd_replace.hxx +0 -172
  202. data/ext/couchbase/protocol/cmd_sasl_auth.hxx +0 -106
  203. data/ext/couchbase/protocol/cmd_sasl_list_mechs.hxx +0 -100
  204. data/ext/couchbase/protocol/cmd_sasl_step.hxx +0 -104
  205. data/ext/couchbase/protocol/cmd_select_bucket.hxx +0 -85
  206. data/ext/couchbase/protocol/cmd_touch.hxx +0 -102
  207. data/ext/couchbase/protocol/cmd_unlock.hxx +0 -95
  208. data/ext/couchbase/protocol/cmd_upsert.hxx +0 -172
  209. data/ext/couchbase/protocol/datatype.hxx +0 -48
  210. data/ext/couchbase/protocol/durability_level.hxx +0 -67
  211. data/ext/couchbase/protocol/frame_info_id.hxx +0 -187
  212. data/ext/couchbase/protocol/hello_feature.hxx +0 -255
  213. data/ext/couchbase/protocol/magic.hxx +0 -83
  214. data/ext/couchbase/protocol/server_opcode.hxx +0 -57
  215. data/ext/couchbase/protocol/server_request.hxx +0 -122
  216. data/ext/couchbase/protocol/status.hxx +0 -343
  217. data/ext/couchbase/protocol/unsigned_leb128.h +0 -195
  218. data/ext/couchbase/service_type.hxx +0 -60
  219. data/ext/couchbase/timeout_defaults.hxx +0 -41
  220. data/ext/couchbase/utils/byteswap.hxx +0 -33
  221. data/ext/couchbase/utils/connection_string.hxx +0 -379
  222. data/ext/couchbase/utils/crc32.hxx +0 -48
  223. data/ext/couchbase/utils/url_codec.hxx +0 -225
  224. data/ext/couchbase/version.hxx +0 -24
  225. data/ext/test/test_helper.hxx +0 -141
  226. data/ext/test/test_helper_native.hxx +0 -59
  227. data/ext/test/test_helper_ruby.hxx +0 -72
  228. data/ext/test/test_native_diagnostics.cxx +0 -385
  229. data/ext/test/test_native_trivial_crud.cxx +0 -83
  230. data/ext/test/test_ruby_trivial_crud.cxx +0 -35
  231. data/ext/test/test_ruby_trivial_query.cxx +0 -34
  232. data/ext/third_party/asio/asio/include/asio.hpp +0 -182
  233. data/ext/third_party/asio/asio/include/asio/any_io_executor.hpp +0 -71
  234. data/ext/third_party/asio/asio/include/asio/associated_allocator.hpp +0 -125
  235. data/ext/third_party/asio/asio/include/asio/associated_executor.hpp +0 -166
  236. data/ext/third_party/asio/asio/include/asio/async_result.hpp +0 -582
  237. data/ext/third_party/asio/asio/include/asio/awaitable.hpp +0 -133
  238. data/ext/third_party/asio/asio/include/asio/basic_datagram_socket.hpp +0 -1215
  239. data/ext/third_party/asio/asio/include/asio/basic_deadline_timer.hpp +0 -693
  240. data/ext/third_party/asio/asio/include/asio/basic_io_object.hpp +0 -290
  241. data/ext/third_party/asio/asio/include/asio/basic_raw_socket.hpp +0 -1206
  242. data/ext/third_party/asio/asio/include/asio/basic_seq_packet_socket.hpp +0 -761
  243. data/ext/third_party/asio/asio/include/asio/basic_serial_port.hpp +0 -907
  244. data/ext/third_party/asio/asio/include/asio/basic_signal_set.hpp +0 -568
  245. data/ext/third_party/asio/asio/include/asio/basic_socket.hpp +0 -1894
  246. data/ext/third_party/asio/asio/include/asio/basic_socket_acceptor.hpp +0 -2501
  247. data/ext/third_party/asio/asio/include/asio/basic_socket_iostream.hpp +0 -407
  248. data/ext/third_party/asio/asio/include/asio/basic_socket_streambuf.hpp +0 -687
  249. data/ext/third_party/asio/asio/include/asio/basic_stream_socket.hpp +0 -1053
  250. data/ext/third_party/asio/asio/include/asio/basic_streambuf.hpp +0 -452
  251. data/ext/third_party/asio/asio/include/asio/basic_streambuf_fwd.hpp +0 -36
  252. data/ext/third_party/asio/asio/include/asio/basic_waitable_timer.hpp +0 -811
  253. data/ext/third_party/asio/asio/include/asio/bind_executor.hpp +0 -575
  254. data/ext/third_party/asio/asio/include/asio/buffer.hpp +0 -2496
  255. data/ext/third_party/asio/asio/include/asio/buffered_read_stream.hpp +0 -253
  256. data/ext/third_party/asio/asio/include/asio/buffered_read_stream_fwd.hpp +0 -25
  257. data/ext/third_party/asio/asio/include/asio/buffered_stream.hpp +0 -279
  258. data/ext/third_party/asio/asio/include/asio/buffered_stream_fwd.hpp +0 -25
  259. data/ext/third_party/asio/asio/include/asio/buffered_write_stream.hpp +0 -245
  260. data/ext/third_party/asio/asio/include/asio/buffered_write_stream_fwd.hpp +0 -25
  261. data/ext/third_party/asio/asio/include/asio/buffers_iterator.hpp +0 -521
  262. data/ext/third_party/asio/asio/include/asio/co_spawn.hpp +0 -471
  263. data/ext/third_party/asio/asio/include/asio/completion_condition.hpp +0 -218
  264. data/ext/third_party/asio/asio/include/asio/compose.hpp +0 -136
  265. data/ext/third_party/asio/asio/include/asio/connect.hpp +0 -1076
  266. data/ext/third_party/asio/asio/include/asio/coroutine.hpp +0 -328
  267. data/ext/third_party/asio/asio/include/asio/deadline_timer.hpp +0 -38
  268. data/ext/third_party/asio/asio/include/asio/defer.hpp +0 -130
  269. data/ext/third_party/asio/asio/include/asio/detached.hpp +0 -112
  270. data/ext/third_party/asio/asio/include/asio/detail/array.hpp +0 -38
  271. data/ext/third_party/asio/asio/include/asio/detail/array_fwd.hpp +0 -34
  272. data/ext/third_party/asio/asio/include/asio/detail/assert.hpp +0 -32
  273. data/ext/third_party/asio/asio/include/asio/detail/atomic_count.hpp +0 -64
  274. data/ext/third_party/asio/asio/include/asio/detail/base_from_completion_cond.hpp +0 -69
  275. data/ext/third_party/asio/asio/include/asio/detail/bind_handler.hpp +0 -934
  276. data/ext/third_party/asio/asio/include/asio/detail/blocking_executor_op.hpp +0 -107
  277. data/ext/third_party/asio/asio/include/asio/detail/buffer_resize_guard.hpp +0 -66
  278. data/ext/third_party/asio/asio/include/asio/detail/buffer_sequence_adapter.hpp +0 -650
  279. data/ext/third_party/asio/asio/include/asio/detail/buffered_stream_storage.hpp +0 -126
  280. data/ext/third_party/asio/asio/include/asio/detail/bulk_executor_op.hpp +0 -88
  281. data/ext/third_party/asio/asio/include/asio/detail/call_stack.hpp +0 -125
  282. data/ext/third_party/asio/asio/include/asio/detail/chrono.hpp +0 -66
  283. data/ext/third_party/asio/asio/include/asio/detail/chrono_time_traits.hpp +0 -190
  284. data/ext/third_party/asio/asio/include/asio/detail/completion_handler.hpp +0 -88
  285. data/ext/third_party/asio/asio/include/asio/detail/concurrency_hint.hpp +0 -94
  286. data/ext/third_party/asio/asio/include/asio/detail/conditionally_enabled_event.hpp +0 -120
  287. data/ext/third_party/asio/asio/include/asio/detail/conditionally_enabled_mutex.hpp +0 -149
  288. data/ext/third_party/asio/asio/include/asio/detail/config.hpp +0 -1822
  289. data/ext/third_party/asio/asio/include/asio/detail/consuming_buffers.hpp +0 -414
  290. data/ext/third_party/asio/asio/include/asio/detail/cstddef.hpp +0 -31
  291. data/ext/third_party/asio/asio/include/asio/detail/cstdint.hpp +0 -60
  292. data/ext/third_party/asio/asio/include/asio/detail/date_time_fwd.hpp +0 -34
  293. data/ext/third_party/asio/asio/include/asio/detail/deadline_timer_service.hpp +0 -295
  294. data/ext/third_party/asio/asio/include/asio/detail/dependent_type.hpp +0 -36
  295. data/ext/third_party/asio/asio/include/asio/detail/descriptor_ops.hpp +0 -139
  296. data/ext/third_party/asio/asio/include/asio/detail/descriptor_read_op.hpp +0 -148
  297. data/ext/third_party/asio/asio/include/asio/detail/descriptor_write_op.hpp +0 -148
  298. data/ext/third_party/asio/asio/include/asio/detail/dev_poll_reactor.hpp +0 -218
  299. data/ext/third_party/asio/asio/include/asio/detail/epoll_reactor.hpp +0 -266
  300. data/ext/third_party/asio/asio/include/asio/detail/event.hpp +0 -48
  301. data/ext/third_party/asio/asio/include/asio/detail/eventfd_select_interrupter.hpp +0 -83
  302. data/ext/third_party/asio/asio/include/asio/detail/executor_function.hpp +0 -203
  303. data/ext/third_party/asio/asio/include/asio/detail/executor_op.hpp +0 -84
  304. data/ext/third_party/asio/asio/include/asio/detail/fd_set_adapter.hpp +0 -39
  305. data/ext/third_party/asio/asio/include/asio/detail/fenced_block.hpp +0 -80
  306. data/ext/third_party/asio/asio/include/asio/detail/functional.hpp +0 -38
  307. data/ext/third_party/asio/asio/include/asio/detail/future.hpp +0 -33
  308. data/ext/third_party/asio/asio/include/asio/detail/gcc_arm_fenced_block.hpp +0 -91
  309. data/ext/third_party/asio/asio/include/asio/detail/gcc_hppa_fenced_block.hpp +0 -68
  310. data/ext/third_party/asio/asio/include/asio/detail/gcc_sync_fenced_block.hpp +0 -65
  311. data/ext/third_party/asio/asio/include/asio/detail/gcc_x86_fenced_block.hpp +0 -99
  312. data/ext/third_party/asio/asio/include/asio/detail/global.hpp +0 -52
  313. data/ext/third_party/asio/asio/include/asio/detail/handler_alloc_helpers.hpp +0 -284
  314. data/ext/third_party/asio/asio/include/asio/detail/handler_cont_helpers.hpp +0 -45
  315. data/ext/third_party/asio/asio/include/asio/detail/handler_invoke_helpers.hpp +0 -80
  316. data/ext/third_party/asio/asio/include/asio/detail/handler_tracking.hpp +0 -264
  317. data/ext/third_party/asio/asio/include/asio/detail/handler_type_requirements.hpp +0 -556
  318. data/ext/third_party/asio/asio/include/asio/detail/handler_work.hpp +0 -438
  319. data/ext/third_party/asio/asio/include/asio/detail/hash_map.hpp +0 -331
  320. data/ext/third_party/asio/asio/include/asio/detail/impl/buffer_sequence_adapter.ipp +0 -118
  321. data/ext/third_party/asio/asio/include/asio/detail/impl/descriptor_ops.ipp +0 -608
  322. data/ext/third_party/asio/asio/include/asio/detail/impl/dev_poll_reactor.hpp +0 -91
  323. data/ext/third_party/asio/asio/include/asio/detail/impl/dev_poll_reactor.ipp +0 -446
  324. data/ext/third_party/asio/asio/include/asio/detail/impl/epoll_reactor.hpp +0 -89
  325. data/ext/third_party/asio/asio/include/asio/detail/impl/epoll_reactor.ipp +0 -787
  326. data/ext/third_party/asio/asio/include/asio/detail/impl/eventfd_select_interrupter.ipp +0 -169
  327. data/ext/third_party/asio/asio/include/asio/detail/impl/handler_tracking.ipp +0 -396
  328. data/ext/third_party/asio/asio/include/asio/detail/impl/kqueue_reactor.hpp +0 -93
  329. data/ext/third_party/asio/asio/include/asio/detail/impl/kqueue_reactor.ipp +0 -570
  330. data/ext/third_party/asio/asio/include/asio/detail/impl/null_event.ipp +0 -74
  331. data/ext/third_party/asio/asio/include/asio/detail/impl/pipe_select_interrupter.ipp +0 -129
  332. data/ext/third_party/asio/asio/include/asio/detail/impl/posix_event.ipp +0 -59
  333. data/ext/third_party/asio/asio/include/asio/detail/impl/posix_mutex.ipp +0 -46
  334. data/ext/third_party/asio/asio/include/asio/detail/impl/posix_thread.ipp +0 -84
  335. data/ext/third_party/asio/asio/include/asio/detail/impl/posix_tss_ptr.ipp +0 -46
  336. data/ext/third_party/asio/asio/include/asio/detail/impl/reactive_descriptor_service.ipp +0 -223
  337. data/ext/third_party/asio/asio/include/asio/detail/impl/reactive_serial_port_service.ipp +0 -149
  338. data/ext/third_party/asio/asio/include/asio/detail/impl/reactive_socket_service_base.ipp +0 -300
  339. data/ext/third_party/asio/asio/include/asio/detail/impl/resolver_service_base.ipp +0 -158
  340. data/ext/third_party/asio/asio/include/asio/detail/impl/scheduler.ipp +0 -654
  341. data/ext/third_party/asio/asio/include/asio/detail/impl/select_reactor.hpp +0 -100
  342. data/ext/third_party/asio/asio/include/asio/detail/impl/select_reactor.ipp +0 -338
  343. data/ext/third_party/asio/asio/include/asio/detail/impl/service_registry.hpp +0 -94
  344. data/ext/third_party/asio/asio/include/asio/detail/impl/service_registry.ipp +0 -197
  345. data/ext/third_party/asio/asio/include/asio/detail/impl/signal_set_service.ipp +0 -668
  346. data/ext/third_party/asio/asio/include/asio/detail/impl/socket_ops.ipp +0 -3962
  347. data/ext/third_party/asio/asio/include/asio/detail/impl/socket_select_interrupter.ipp +0 -185
  348. data/ext/third_party/asio/asio/include/asio/detail/impl/strand_executor_service.hpp +0 -385
  349. data/ext/third_party/asio/asio/include/asio/detail/impl/strand_executor_service.ipp +0 -134
  350. data/ext/third_party/asio/asio/include/asio/detail/impl/strand_service.hpp +0 -117
  351. data/ext/third_party/asio/asio/include/asio/detail/impl/strand_service.ipp +0 -178
  352. data/ext/third_party/asio/asio/include/asio/detail/impl/throw_error.ipp +0 -60
  353. data/ext/third_party/asio/asio/include/asio/detail/impl/timer_queue_ptime.ipp +0 -91
  354. data/ext/third_party/asio/asio/include/asio/detail/impl/timer_queue_set.ipp +0 -101
  355. data/ext/third_party/asio/asio/include/asio/detail/impl/win_event.ipp +0 -76
  356. data/ext/third_party/asio/asio/include/asio/detail/impl/win_iocp_handle_service.ipp +0 -525
  357. data/ext/third_party/asio/asio/include/asio/detail/impl/win_iocp_io_context.hpp +0 -103
  358. data/ext/third_party/asio/asio/include/asio/detail/impl/win_iocp_io_context.ipp +0 -603
  359. data/ext/third_party/asio/asio/include/asio/detail/impl/win_iocp_serial_port_service.ipp +0 -192
  360. data/ext/third_party/asio/asio/include/asio/detail/impl/win_iocp_socket_service_base.ipp +0 -801
  361. data/ext/third_party/asio/asio/include/asio/detail/impl/win_mutex.ipp +0 -84
  362. data/ext/third_party/asio/asio/include/asio/detail/impl/win_object_handle_service.ipp +0 -448
  363. data/ext/third_party/asio/asio/include/asio/detail/impl/win_static_mutex.ipp +0 -136
  364. data/ext/third_party/asio/asio/include/asio/detail/impl/win_thread.ipp +0 -150
  365. data/ext/third_party/asio/asio/include/asio/detail/impl/win_tss_ptr.ipp +0 -57
  366. data/ext/third_party/asio/asio/include/asio/detail/impl/winrt_ssocket_service_base.ipp +0 -626
  367. data/ext/third_party/asio/asio/include/asio/detail/impl/winrt_timer_scheduler.hpp +0 -92
  368. data/ext/third_party/asio/asio/include/asio/detail/impl/winrt_timer_scheduler.ipp +0 -121
  369. data/ext/third_party/asio/asio/include/asio/detail/impl/winsock_init.ipp +0 -82
  370. data/ext/third_party/asio/asio/include/asio/detail/io_control.hpp +0 -84
  371. data/ext/third_party/asio/asio/include/asio/detail/io_object_impl.hpp +0 -175
  372. data/ext/third_party/asio/asio/include/asio/detail/is_buffer_sequence.hpp +0 -312
  373. data/ext/third_party/asio/asio/include/asio/detail/is_executor.hpp +0 -126
  374. data/ext/third_party/asio/asio/include/asio/detail/keyword_tss_ptr.hpp +0 -70
  375. data/ext/third_party/asio/asio/include/asio/detail/kqueue_reactor.hpp +0 -242
  376. data/ext/third_party/asio/asio/include/asio/detail/limits.hpp +0 -26
  377. data/ext/third_party/asio/asio/include/asio/detail/local_free_on_block_exit.hpp +0 -59
  378. data/ext/third_party/asio/asio/include/asio/detail/macos_fenced_block.hpp +0 -62
  379. data/ext/third_party/asio/asio/include/asio/detail/memory.hpp +0 -73
  380. data/ext/third_party/asio/asio/include/asio/detail/mutex.hpp +0 -48
  381. data/ext/third_party/asio/asio/include/asio/detail/non_const_lvalue.hpp +0 -54
  382. data/ext/third_party/asio/asio/include/asio/detail/noncopyable.hpp +0 -43
  383. data/ext/third_party/asio/asio/include/asio/detail/null_event.hpp +0 -106
  384. data/ext/third_party/asio/asio/include/asio/detail/null_fenced_block.hpp +0 -47
  385. data/ext/third_party/asio/asio/include/asio/detail/null_global.hpp +0 -59
  386. data/ext/third_party/asio/asio/include/asio/detail/null_mutex.hpp +0 -64
  387. data/ext/third_party/asio/asio/include/asio/detail/null_reactor.hpp +0 -68
  388. data/ext/third_party/asio/asio/include/asio/detail/null_signal_blocker.hpp +0 -69
  389. data/ext/third_party/asio/asio/include/asio/detail/null_socket_service.hpp +0 -519
  390. data/ext/third_party/asio/asio/include/asio/detail/null_static_mutex.hpp +0 -60
  391. data/ext/third_party/asio/asio/include/asio/detail/null_thread.hpp +0 -67
  392. data/ext/third_party/asio/asio/include/asio/detail/null_tss_ptr.hpp +0 -68
  393. data/ext/third_party/asio/asio/include/asio/detail/object_pool.hpp +0 -171
  394. data/ext/third_party/asio/asio/include/asio/detail/old_win_sdk_compat.hpp +0 -214
  395. data/ext/third_party/asio/asio/include/asio/detail/op_queue.hpp +0 -162
  396. data/ext/third_party/asio/asio/include/asio/detail/operation.hpp +0 -38
  397. data/ext/third_party/asio/asio/include/asio/detail/pipe_select_interrupter.hpp +0 -89
  398. data/ext/third_party/asio/asio/include/asio/detail/pop_options.hpp +0 -141
  399. data/ext/third_party/asio/asio/include/asio/detail/posix_event.hpp +0 -175
  400. data/ext/third_party/asio/asio/include/asio/detail/posix_fd_set_adapter.hpp +0 -118
  401. data/ext/third_party/asio/asio/include/asio/detail/posix_global.hpp +0 -80
  402. data/ext/third_party/asio/asio/include/asio/detail/posix_mutex.hpp +0 -76
  403. data/ext/third_party/asio/asio/include/asio/detail/posix_signal_blocker.hpp +0 -85
  404. data/ext/third_party/asio/asio/include/asio/detail/posix_static_mutex.hpp +0 -64
  405. data/ext/third_party/asio/asio/include/asio/detail/posix_thread.hpp +0 -109
  406. data/ext/third_party/asio/asio/include/asio/detail/posix_tss_ptr.hpp +0 -79
  407. data/ext/third_party/asio/asio/include/asio/detail/push_options.hpp +0 -185
  408. data/ext/third_party/asio/asio/include/asio/detail/reactive_descriptor_service.hpp +0 -416
  409. data/ext/third_party/asio/asio/include/asio/detail/reactive_null_buffers_op.hpp +0 -98
  410. data/ext/third_party/asio/asio/include/asio/detail/reactive_serial_port_service.hpp +0 -237
  411. data/ext/third_party/asio/asio/include/asio/detail/reactive_socket_accept_op.hpp +0 -242
  412. data/ext/third_party/asio/asio/include/asio/detail/reactive_socket_connect_op.hpp +0 -123
  413. data/ext/third_party/asio/asio/include/asio/detail/reactive_socket_recv_op.hpp +0 -159
  414. data/ext/third_party/asio/asio/include/asio/detail/reactive_socket_recvfrom_op.hpp +0 -164
  415. data/ext/third_party/asio/asio/include/asio/detail/reactive_socket_recvmsg_op.hpp +0 -145
  416. data/ext/third_party/asio/asio/include/asio/detail/reactive_socket_send_op.hpp +0 -162
  417. data/ext/third_party/asio/asio/include/asio/detail/reactive_socket_sendto_op.hpp +0 -156
  418. data/ext/third_party/asio/asio/include/asio/detail/reactive_socket_service.hpp +0 -528
  419. data/ext/third_party/asio/asio/include/asio/detail/reactive_socket_service_base.hpp +0 -541
  420. data/ext/third_party/asio/asio/include/asio/detail/reactive_wait_op.hpp +0 -98
  421. data/ext/third_party/asio/asio/include/asio/detail/reactor.hpp +0 -32
  422. data/ext/third_party/asio/asio/include/asio/detail/reactor_fwd.hpp +0 -40
  423. data/ext/third_party/asio/asio/include/asio/detail/reactor_op.hpp +0 -67
  424. data/ext/third_party/asio/asio/include/asio/detail/reactor_op_queue.hpp +0 -168
  425. data/ext/third_party/asio/asio/include/asio/detail/recycling_allocator.hpp +0 -106
  426. data/ext/third_party/asio/asio/include/asio/detail/regex_fwd.hpp +0 -35
  427. data/ext/third_party/asio/asio/include/asio/detail/resolve_endpoint_op.hpp +0 -140
  428. data/ext/third_party/asio/asio/include/asio/detail/resolve_op.hpp +0 -45
  429. data/ext/third_party/asio/asio/include/asio/detail/resolve_query_op.hpp +0 -150
  430. data/ext/third_party/asio/asio/include/asio/detail/resolver_service.hpp +0 -145
  431. data/ext/third_party/asio/asio/include/asio/detail/resolver_service_base.hpp +0 -143
  432. data/ext/third_party/asio/asio/include/asio/detail/scheduler.hpp +0 -232
  433. data/ext/third_party/asio/asio/include/asio/detail/scheduler_operation.hpp +0 -78
  434. data/ext/third_party/asio/asio/include/asio/detail/scheduler_thread_info.hpp +0 -40
  435. data/ext/third_party/asio/asio/include/asio/detail/scoped_lock.hpp +0 -101
  436. data/ext/third_party/asio/asio/include/asio/detail/scoped_ptr.hpp +0 -87
  437. data/ext/third_party/asio/asio/include/asio/detail/select_interrupter.hpp +0 -46
  438. data/ext/third_party/asio/asio/include/asio/detail/select_reactor.hpp +0 -238
  439. data/ext/third_party/asio/asio/include/asio/detail/service_registry.hpp +0 -164
  440. data/ext/third_party/asio/asio/include/asio/detail/signal_blocker.hpp +0 -44
  441. data/ext/third_party/asio/asio/include/asio/detail/signal_handler.hpp +0 -90
  442. data/ext/third_party/asio/asio/include/asio/detail/signal_init.hpp +0 -47
  443. data/ext/third_party/asio/asio/include/asio/detail/signal_op.hpp +0 -49
  444. data/ext/third_party/asio/asio/include/asio/detail/signal_set_service.hpp +0 -229
  445. data/ext/third_party/asio/asio/include/asio/detail/socket_holder.hpp +0 -98
  446. data/ext/third_party/asio/asio/include/asio/detail/socket_ops.hpp +0 -383
  447. data/ext/third_party/asio/asio/include/asio/detail/socket_option.hpp +0 -316
  448. data/ext/third_party/asio/asio/include/asio/detail/socket_select_interrupter.hpp +0 -91
  449. data/ext/third_party/asio/asio/include/asio/detail/socket_types.hpp +0 -416
  450. data/ext/third_party/asio/asio/include/asio/detail/solaris_fenced_block.hpp +0 -62
  451. data/ext/third_party/asio/asio/include/asio/detail/source_location.hpp +0 -45
  452. data/ext/third_party/asio/asio/include/asio/detail/static_mutex.hpp +0 -52
  453. data/ext/third_party/asio/asio/include/asio/detail/std_event.hpp +0 -188
  454. data/ext/third_party/asio/asio/include/asio/detail/std_fenced_block.hpp +0 -62
  455. data/ext/third_party/asio/asio/include/asio/detail/std_global.hpp +0 -70
  456. data/ext/third_party/asio/asio/include/asio/detail/std_mutex.hpp +0 -73
  457. data/ext/third_party/asio/asio/include/asio/detail/std_static_mutex.hpp +0 -81
  458. data/ext/third_party/asio/asio/include/asio/detail/std_thread.hpp +0 -71
  459. data/ext/third_party/asio/asio/include/asio/detail/strand_executor_service.hpp +0 -166
  460. data/ext/third_party/asio/asio/include/asio/detail/strand_service.hpp +0 -145
  461. data/ext/third_party/asio/asio/include/asio/detail/string_view.hpp +0 -47
  462. data/ext/third_party/asio/asio/include/asio/detail/thread.hpp +0 -60
  463. data/ext/third_party/asio/asio/include/asio/detail/thread_context.hpp +0 -42
  464. data/ext/third_party/asio/asio/include/asio/detail/thread_group.hpp +0 -95
  465. data/ext/third_party/asio/asio/include/asio/detail/thread_info_base.hpp +0 -183
  466. data/ext/third_party/asio/asio/include/asio/detail/throw_error.hpp +0 -53
  467. data/ext/third_party/asio/asio/include/asio/detail/throw_exception.hpp +0 -51
  468. data/ext/third_party/asio/asio/include/asio/detail/timer_queue.hpp +0 -360
  469. data/ext/third_party/asio/asio/include/asio/detail/timer_queue_base.hpp +0 -68
  470. data/ext/third_party/asio/asio/include/asio/detail/timer_queue_ptime.hpp +0 -99
  471. data/ext/third_party/asio/asio/include/asio/detail/timer_queue_set.hpp +0 -66
  472. data/ext/third_party/asio/asio/include/asio/detail/timer_scheduler.hpp +0 -35
  473. data/ext/third_party/asio/asio/include/asio/detail/timer_scheduler_fwd.hpp +0 -40
  474. data/ext/third_party/asio/asio/include/asio/detail/tss_ptr.hpp +0 -69
  475. data/ext/third_party/asio/asio/include/asio/detail/type_traits.hpp +0 -148
  476. data/ext/third_party/asio/asio/include/asio/detail/variadic_templates.hpp +0 -294
  477. data/ext/third_party/asio/asio/include/asio/detail/wait_handler.hpp +0 -90
  478. data/ext/third_party/asio/asio/include/asio/detail/wait_op.hpp +0 -45
  479. data/ext/third_party/asio/asio/include/asio/detail/win_event.hpp +0 -164
  480. data/ext/third_party/asio/asio/include/asio/detail/win_fd_set_adapter.hpp +0 -149
  481. data/ext/third_party/asio/asio/include/asio/detail/win_fenced_block.hpp +0 -90
  482. data/ext/third_party/asio/asio/include/asio/detail/win_global.hpp +0 -71
  483. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_handle_read_op.hpp +0 -117
  484. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_handle_service.hpp +0 -335
  485. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_handle_write_op.hpp +0 -110
  486. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_io_context.hpp +0 -342
  487. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_null_buffers_op.hpp +0 -127
  488. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_operation.hpp +0 -96
  489. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_overlapped_op.hpp +0 -96
  490. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_overlapped_ptr.hpp +0 -171
  491. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_serial_port_service.hpp +0 -232
  492. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_socket_accept_op.hpp +0 -312
  493. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_socket_connect_op.hpp +0 -135
  494. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_socket_recv_op.hpp +0 -124
  495. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_socket_recvfrom_op.hpp +0 -133
  496. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_socket_recvmsg_op.hpp +0 -125
  497. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_socket_send_op.hpp +0 -118
  498. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_socket_service.hpp +0 -581
  499. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_socket_service_base.hpp +0 -600
  500. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_thread_info.hpp +0 -34
  501. data/ext/third_party/asio/asio/include/asio/detail/win_iocp_wait_op.hpp +0 -128
  502. data/ext/third_party/asio/asio/include/asio/detail/win_mutex.hpp +0 -78
  503. data/ext/third_party/asio/asio/include/asio/detail/win_object_handle_service.hpp +0 -195
  504. data/ext/third_party/asio/asio/include/asio/detail/win_static_mutex.hpp +0 -74
  505. data/ext/third_party/asio/asio/include/asio/detail/win_thread.hpp +0 -147
  506. data/ext/third_party/asio/asio/include/asio/detail/win_tss_ptr.hpp +0 -79
  507. data/ext/third_party/asio/asio/include/asio/detail/winapp_thread.hpp +0 -124
  508. data/ext/third_party/asio/asio/include/asio/detail/wince_thread.hpp +0 -124
  509. data/ext/third_party/asio/asio/include/asio/detail/winrt_async_manager.hpp +0 -305
  510. data/ext/third_party/asio/asio/include/asio/detail/winrt_async_op.hpp +0 -65
  511. data/ext/third_party/asio/asio/include/asio/detail/winrt_resolve_op.hpp +0 -125
  512. data/ext/third_party/asio/asio/include/asio/detail/winrt_resolver_service.hpp +0 -212
  513. data/ext/third_party/asio/asio/include/asio/detail/winrt_socket_connect_op.hpp +0 -98
  514. data/ext/third_party/asio/asio/include/asio/detail/winrt_socket_recv_op.hpp +0 -119
  515. data/ext/third_party/asio/asio/include/asio/detail/winrt_socket_send_op.hpp +0 -110
  516. data/ext/third_party/asio/asio/include/asio/detail/winrt_ssocket_service.hpp +0 -250
  517. data/ext/third_party/asio/asio/include/asio/detail/winrt_ssocket_service_base.hpp +0 -362
  518. data/ext/third_party/asio/asio/include/asio/detail/winrt_timer_scheduler.hpp +0 -147
  519. data/ext/third_party/asio/asio/include/asio/detail/winrt_utils.hpp +0 -106
  520. data/ext/third_party/asio/asio/include/asio/detail/winsock_init.hpp +0 -128
  521. data/ext/third_party/asio/asio/include/asio/detail/work_dispatcher.hpp +0 -148
  522. data/ext/third_party/asio/asio/include/asio/detail/wrapped_handler.hpp +0 -327
  523. data/ext/third_party/asio/asio/include/asio/dispatch.hpp +0 -121
  524. data/ext/third_party/asio/asio/include/asio/error.hpp +0 -356
  525. data/ext/third_party/asio/asio/include/asio/error_code.hpp +0 -202
  526. data/ext/third_party/asio/asio/include/asio/execution.hpp +0 -48
  527. data/ext/third_party/asio/asio/include/asio/execution/allocator.hpp +0 -249
  528. data/ext/third_party/asio/asio/include/asio/execution/any_executor.hpp +0 -2264
  529. data/ext/third_party/asio/asio/include/asio/execution/bad_executor.hpp +0 -47
  530. data/ext/third_party/asio/asio/include/asio/execution/blocking.hpp +0 -1351
  531. data/ext/third_party/asio/asio/include/asio/execution/blocking_adaptation.hpp +0 -1064
  532. data/ext/third_party/asio/asio/include/asio/execution/bulk_execute.hpp +0 -390
  533. data/ext/third_party/asio/asio/include/asio/execution/bulk_guarantee.hpp +0 -1018
  534. data/ext/third_party/asio/asio/include/asio/execution/connect.hpp +0 -486
  535. data/ext/third_party/asio/asio/include/asio/execution/context.hpp +0 -185
  536. data/ext/third_party/asio/asio/include/asio/execution/context_as.hpp +0 -201
  537. data/ext/third_party/asio/asio/include/asio/execution/detail/as_invocable.hpp +0 -152
  538. data/ext/third_party/asio/asio/include/asio/execution/detail/as_operation.hpp +0 -105
  539. data/ext/third_party/asio/asio/include/asio/execution/detail/as_receiver.hpp +0 -128
  540. data/ext/third_party/asio/asio/include/asio/execution/detail/bulk_sender.hpp +0 -261
  541. data/ext/third_party/asio/asio/include/asio/execution/detail/submit_receiver.hpp +0 -233
  542. data/ext/third_party/asio/asio/include/asio/execution/detail/void_receiver.hpp +0 -90
  543. data/ext/third_party/asio/asio/include/asio/execution/execute.hpp +0 -264
  544. data/ext/third_party/asio/asio/include/asio/execution/executor.hpp +0 -238
  545. data/ext/third_party/asio/asio/include/asio/execution/impl/bad_executor.ipp +0 -40
  546. data/ext/third_party/asio/asio/include/asio/execution/impl/receiver_invocation_error.ipp +0 -36
  547. data/ext/third_party/asio/asio/include/asio/execution/invocable_archetype.hpp +0 -71
  548. data/ext/third_party/asio/asio/include/asio/execution/mapping.hpp +0 -917
  549. data/ext/third_party/asio/asio/include/asio/execution/occupancy.hpp +0 -178
  550. data/ext/third_party/asio/asio/include/asio/execution/operation_state.hpp +0 -94
  551. data/ext/third_party/asio/asio/include/asio/execution/outstanding_work.hpp +0 -721
  552. data/ext/third_party/asio/asio/include/asio/execution/prefer_only.hpp +0 -327
  553. data/ext/third_party/asio/asio/include/asio/execution/receiver.hpp +0 -280
  554. data/ext/third_party/asio/asio/include/asio/execution/receiver_invocation_error.hpp +0 -48
  555. data/ext/third_party/asio/asio/include/asio/execution/relationship.hpp +0 -720
  556. data/ext/third_party/asio/asio/include/asio/execution/schedule.hpp +0 -290
  557. data/ext/third_party/asio/asio/include/asio/execution/scheduler.hpp +0 -86
  558. data/ext/third_party/asio/asio/include/asio/execution/sender.hpp +0 -311
  559. data/ext/third_party/asio/asio/include/asio/execution/set_done.hpp +0 -253
  560. data/ext/third_party/asio/asio/include/asio/execution/set_error.hpp +0 -253
  561. data/ext/third_party/asio/asio/include/asio/execution/set_value.hpp +0 -486
  562. data/ext/third_party/asio/asio/include/asio/execution/start.hpp +0 -250
  563. data/ext/third_party/asio/asio/include/asio/execution/submit.hpp +0 -450
  564. data/ext/third_party/asio/asio/include/asio/execution_context.hpp +0 -412
  565. data/ext/third_party/asio/asio/include/asio/executor.hpp +0 -347
  566. data/ext/third_party/asio/asio/include/asio/executor_work_guard.hpp +0 -287
  567. data/ext/third_party/asio/asio/include/asio/generic/basic_endpoint.hpp +0 -193
  568. data/ext/third_party/asio/asio/include/asio/generic/datagram_protocol.hpp +0 -123
  569. data/ext/third_party/asio/asio/include/asio/generic/detail/endpoint.hpp +0 -133
  570. data/ext/third_party/asio/asio/include/asio/generic/detail/impl/endpoint.ipp +0 -110
  571. data/ext/third_party/asio/asio/include/asio/generic/raw_protocol.hpp +0 -121
  572. data/ext/third_party/asio/asio/include/asio/generic/seq_packet_protocol.hpp +0 -122
  573. data/ext/third_party/asio/asio/include/asio/generic/stream_protocol.hpp +0 -127
  574. data/ext/third_party/asio/asio/include/asio/handler_alloc_hook.hpp +0 -104
  575. data/ext/third_party/asio/asio/include/asio/handler_continuation_hook.hpp +0 -54
  576. data/ext/third_party/asio/asio/include/asio/handler_invoke_hook.hpp +0 -111
  577. data/ext/third_party/asio/asio/include/asio/high_resolution_timer.hpp +0 -44
  578. data/ext/third_party/asio/asio/include/asio/impl/awaitable.hpp +0 -436
  579. data/ext/third_party/asio/asio/include/asio/impl/buffered_read_stream.hpp +0 -527
  580. data/ext/third_party/asio/asio/include/asio/impl/buffered_write_stream.hpp +0 -507
  581. data/ext/third_party/asio/asio/include/asio/impl/co_spawn.hpp +0 -298
  582. data/ext/third_party/asio/asio/include/asio/impl/compose.hpp +0 -635
  583. data/ext/third_party/asio/asio/include/asio/impl/connect.hpp +0 -916
  584. data/ext/third_party/asio/asio/include/asio/impl/defer.hpp +0 -248
  585. data/ext/third_party/asio/asio/include/asio/impl/detached.hpp +0 -130
  586. data/ext/third_party/asio/asio/include/asio/impl/dispatch.hpp +0 -243
  587. data/ext/third_party/asio/asio/include/asio/impl/error.ipp +0 -128
  588. data/ext/third_party/asio/asio/include/asio/impl/error_code.ipp +0 -206
  589. data/ext/third_party/asio/asio/include/asio/impl/execution_context.hpp +0 -109
  590. data/ext/third_party/asio/asio/include/asio/impl/execution_context.ipp +0 -82
  591. data/ext/third_party/asio/asio/include/asio/impl/executor.hpp +0 -301
  592. data/ext/third_party/asio/asio/include/asio/impl/executor.ipp +0 -43
  593. data/ext/third_party/asio/asio/include/asio/impl/handler_alloc_hook.ipp +0 -61
  594. data/ext/third_party/asio/asio/include/asio/impl/io_context.hpp +0 -440
  595. data/ext/third_party/asio/asio/include/asio/impl/io_context.ipp +0 -175
  596. data/ext/third_party/asio/asio/include/asio/impl/multiple_exceptions.ipp +0 -49
  597. data/ext/third_party/asio/asio/include/asio/impl/post.hpp +0 -248
  598. data/ext/third_party/asio/asio/include/asio/impl/read.hpp +0 -1202
  599. data/ext/third_party/asio/asio/include/asio/impl/read_at.hpp +0 -744
  600. data/ext/third_party/asio/asio/include/asio/impl/read_until.hpp +0 -3335
  601. data/ext/third_party/asio/asio/include/asio/impl/redirect_error.hpp +0 -390
  602. data/ext/third_party/asio/asio/include/asio/impl/serial_port_base.hpp +0 -59
  603. data/ext/third_party/asio/asio/include/asio/impl/serial_port_base.ipp +0 -554
  604. data/ext/third_party/asio/asio/include/asio/impl/spawn.hpp +0 -526
  605. data/ext/third_party/asio/asio/include/asio/impl/src.hpp +0 -85
  606. data/ext/third_party/asio/asio/include/asio/impl/system_context.hpp +0 -34
  607. data/ext/third_party/asio/asio/include/asio/impl/system_context.ipp +0 -92
  608. data/ext/third_party/asio/asio/include/asio/impl/system_executor.hpp +0 -186
  609. data/ext/third_party/asio/asio/include/asio/impl/thread_pool.hpp +0 -350
  610. data/ext/third_party/asio/asio/include/asio/impl/thread_pool.ipp +0 -141
  611. data/ext/third_party/asio/asio/include/asio/impl/use_awaitable.hpp +0 -279
  612. data/ext/third_party/asio/asio/include/asio/impl/use_future.hpp +0 -1028
  613. data/ext/third_party/asio/asio/include/asio/impl/write.hpp +0 -1104
  614. data/ext/third_party/asio/asio/include/asio/impl/write_at.hpp +0 -666
  615. data/ext/third_party/asio/asio/include/asio/io_context.hpp +0 -1530
  616. data/ext/third_party/asio/asio/include/asio/io_context_strand.hpp +0 -376
  617. data/ext/third_party/asio/asio/include/asio/io_service.hpp +0 -33
  618. data/ext/third_party/asio/asio/include/asio/io_service_strand.hpp +0 -20
  619. data/ext/third_party/asio/asio/include/asio/ip/address.hpp +0 -268
  620. data/ext/third_party/asio/asio/include/asio/ip/address_v4.hpp +0 -335
  621. data/ext/third_party/asio/asio/include/asio/ip/address_v4_iterator.hpp +0 -162
  622. data/ext/third_party/asio/asio/include/asio/ip/address_v4_range.hpp +0 -134
  623. data/ext/third_party/asio/asio/include/asio/ip/address_v6.hpp +0 -341
  624. data/ext/third_party/asio/asio/include/asio/ip/address_v6_iterator.hpp +0 -183
  625. data/ext/third_party/asio/asio/include/asio/ip/address_v6_range.hpp +0 -129
  626. data/ext/third_party/asio/asio/include/asio/ip/bad_address_cast.hpp +0 -53
  627. data/ext/third_party/asio/asio/include/asio/ip/basic_endpoint.hpp +0 -264
  628. data/ext/third_party/asio/asio/include/asio/ip/basic_resolver.hpp +0 -1030
  629. data/ext/third_party/asio/asio/include/asio/ip/basic_resolver_entry.hpp +0 -113
  630. data/ext/third_party/asio/asio/include/asio/ip/basic_resolver_iterator.hpp +0 -192
  631. data/ext/third_party/asio/asio/include/asio/ip/basic_resolver_query.hpp +0 -244
  632. data/ext/third_party/asio/asio/include/asio/ip/basic_resolver_results.hpp +0 -311
  633. data/ext/third_party/asio/asio/include/asio/ip/detail/endpoint.hpp +0 -141
  634. data/ext/third_party/asio/asio/include/asio/ip/detail/impl/endpoint.ipp +0 -199
  635. data/ext/third_party/asio/asio/include/asio/ip/detail/socket_option.hpp +0 -566
  636. data/ext/third_party/asio/asio/include/asio/ip/host_name.hpp +0 -42
  637. data/ext/third_party/asio/asio/include/asio/ip/icmp.hpp +0 -115
  638. data/ext/third_party/asio/asio/include/asio/ip/impl/address.hpp +0 -67
  639. data/ext/third_party/asio/asio/include/asio/ip/impl/address.ipp +0 -239
  640. data/ext/third_party/asio/asio/include/asio/ip/impl/address_v4.hpp +0 -67
  641. data/ext/third_party/asio/asio/include/asio/ip/impl/address_v4.ipp +0 -210
  642. data/ext/third_party/asio/asio/include/asio/ip/impl/address_v6.hpp +0 -67
  643. data/ext/third_party/asio/asio/include/asio/ip/impl/address_v6.ipp +0 -350
  644. data/ext/third_party/asio/asio/include/asio/ip/impl/basic_endpoint.hpp +0 -43
  645. data/ext/third_party/asio/asio/include/asio/ip/impl/host_name.ipp +0 -54
  646. data/ext/third_party/asio/asio/include/asio/ip/impl/network_v4.hpp +0 -54
  647. data/ext/third_party/asio/asio/include/asio/ip/impl/network_v4.ipp +0 -216
  648. data/ext/third_party/asio/asio/include/asio/ip/impl/network_v6.hpp +0 -53
  649. data/ext/third_party/asio/asio/include/asio/ip/impl/network_v6.ipp +0 -185
  650. data/ext/third_party/asio/asio/include/asio/ip/multicast.hpp +0 -191
  651. data/ext/third_party/asio/asio/include/asio/ip/network_v4.hpp +0 -261
  652. data/ext/third_party/asio/asio/include/asio/ip/network_v6.hpp +0 -235
  653. data/ext/third_party/asio/asio/include/asio/ip/resolver_base.hpp +0 -129
  654. data/ext/third_party/asio/asio/include/asio/ip/resolver_query_base.hpp +0 -43
  655. data/ext/third_party/asio/asio/include/asio/ip/tcp.hpp +0 -155
  656. data/ext/third_party/asio/asio/include/asio/ip/udp.hpp +0 -111
  657. data/ext/third_party/asio/asio/include/asio/ip/unicast.hpp +0 -70
  658. data/ext/third_party/asio/asio/include/asio/ip/v6_only.hpp +0 -69
  659. data/ext/third_party/asio/asio/include/asio/is_applicable_property.hpp +0 -61
  660. data/ext/third_party/asio/asio/include/asio/is_executor.hpp +0 -46
  661. data/ext/third_party/asio/asio/include/asio/is_read_buffered.hpp +0 -59
  662. data/ext/third_party/asio/asio/include/asio/is_write_buffered.hpp +0 -59
  663. data/ext/third_party/asio/asio/include/asio/local/basic_endpoint.hpp +0 -247
  664. data/ext/third_party/asio/asio/include/asio/local/connect_pair.hpp +0 -101
  665. data/ext/third_party/asio/asio/include/asio/local/datagram_protocol.hpp +0 -80
  666. data/ext/third_party/asio/asio/include/asio/local/detail/endpoint.hpp +0 -139
  667. data/ext/third_party/asio/asio/include/asio/local/detail/impl/endpoint.ipp +0 -136
  668. data/ext/third_party/asio/asio/include/asio/local/stream_protocol.hpp +0 -90
  669. data/ext/third_party/asio/asio/include/asio/multiple_exceptions.hpp +0 -58
  670. data/ext/third_party/asio/asio/include/asio/packaged_task.hpp +0 -126
  671. data/ext/third_party/asio/asio/include/asio/placeholders.hpp +0 -151
  672. data/ext/third_party/asio/asio/include/asio/posix/basic_descriptor.hpp +0 -697
  673. data/ext/third_party/asio/asio/include/asio/posix/basic_stream_descriptor.hpp +0 -470
  674. data/ext/third_party/asio/asio/include/asio/posix/descriptor.hpp +0 -37
  675. data/ext/third_party/asio/asio/include/asio/posix/descriptor_base.hpp +0 -90
  676. data/ext/third_party/asio/asio/include/asio/posix/stream_descriptor.hpp +0 -37
  677. data/ext/third_party/asio/asio/include/asio/post.hpp +0 -126
  678. data/ext/third_party/asio/asio/include/asio/prefer.hpp +0 -656
  679. data/ext/third_party/asio/asio/include/asio/query.hpp +0 -296
  680. data/ext/third_party/asio/asio/include/asio/read.hpp +0 -1288
  681. data/ext/third_party/asio/asio/include/asio/read_at.hpp +0 -694
  682. data/ext/third_party/asio/asio/include/asio/read_until.hpp +0 -2863
  683. data/ext/third_party/asio/asio/include/asio/redirect_error.hpp +0 -66
  684. data/ext/third_party/asio/asio/include/asio/require.hpp +0 -524
  685. data/ext/third_party/asio/asio/include/asio/require_concept.hpp +0 -310
  686. data/ext/third_party/asio/asio/include/asio/serial_port.hpp +0 -36
  687. data/ext/third_party/asio/asio/include/asio/serial_port_base.hpp +0 -167
  688. data/ext/third_party/asio/asio/include/asio/signal_set.hpp +0 -28
  689. data/ext/third_party/asio/asio/include/asio/socket_base.hpp +0 -559
  690. data/ext/third_party/asio/asio/include/asio/spawn.hpp +0 -344
  691. data/ext/third_party/asio/asio/include/asio/ssl.hpp +0 -28
  692. data/ext/third_party/asio/asio/include/asio/ssl/context.hpp +0 -761
  693. data/ext/third_party/asio/asio/include/asio/ssl/context_base.hpp +0 -209
  694. data/ext/third_party/asio/asio/include/asio/ssl/detail/buffered_handshake_op.hpp +0 -119
  695. data/ext/third_party/asio/asio/include/asio/ssl/detail/engine.hpp +0 -165
  696. data/ext/third_party/asio/asio/include/asio/ssl/detail/handshake_op.hpp +0 -67
  697. data/ext/third_party/asio/asio/include/asio/ssl/detail/impl/engine.ipp +0 -349
  698. data/ext/third_party/asio/asio/include/asio/ssl/detail/impl/openssl_init.ipp +0 -165
  699. data/ext/third_party/asio/asio/include/asio/ssl/detail/io.hpp +0 -415
  700. data/ext/third_party/asio/asio/include/asio/ssl/detail/openssl_init.hpp +0 -101
  701. data/ext/third_party/asio/asio/include/asio/ssl/detail/openssl_types.hpp +0 -34
  702. data/ext/third_party/asio/asio/include/asio/ssl/detail/password_callback.hpp +0 -66
  703. data/ext/third_party/asio/asio/include/asio/ssl/detail/read_op.hpp +0 -72
  704. data/ext/third_party/asio/asio/include/asio/ssl/detail/shutdown_op.hpp +0 -69
  705. data/ext/third_party/asio/asio/include/asio/ssl/detail/stream_core.hpp +0 -169
  706. data/ext/third_party/asio/asio/include/asio/ssl/detail/verify_callback.hpp +0 -62
  707. data/ext/third_party/asio/asio/include/asio/ssl/detail/write_op.hpp +0 -76
  708. data/ext/third_party/asio/asio/include/asio/ssl/error.hpp +0 -125
  709. data/ext/third_party/asio/asio/include/asio/ssl/host_name_verification.hpp +0 -90
  710. data/ext/third_party/asio/asio/include/asio/ssl/impl/context.hpp +0 -67
  711. data/ext/third_party/asio/asio/include/asio/ssl/impl/context.ipp +0 -1238
  712. data/ext/third_party/asio/asio/include/asio/ssl/impl/error.ipp +0 -102
  713. data/ext/third_party/asio/asio/include/asio/ssl/impl/host_name_verification.ipp +0 -73
  714. data/ext/third_party/asio/asio/include/asio/ssl/impl/rfc2818_verification.ipp +0 -164
  715. data/ext/third_party/asio/asio/include/asio/ssl/impl/src.hpp +0 -29
  716. data/ext/third_party/asio/asio/include/asio/ssl/rfc2818_verification.hpp +0 -98
  717. data/ext/third_party/asio/asio/include/asio/ssl/stream.hpp +0 -900
  718. data/ext/third_party/asio/asio/include/asio/ssl/stream_base.hpp +0 -52
  719. data/ext/third_party/asio/asio/include/asio/ssl/verify_context.hpp +0 -67
  720. data/ext/third_party/asio/asio/include/asio/ssl/verify_mode.hpp +0 -63
  721. data/ext/third_party/asio/asio/include/asio/static_thread_pool.hpp +0 -31
  722. data/ext/third_party/asio/asio/include/asio/steady_timer.hpp +0 -42
  723. data/ext/third_party/asio/asio/include/asio/strand.hpp +0 -537
  724. data/ext/third_party/asio/asio/include/asio/streambuf.hpp +0 -33
  725. data/ext/third_party/asio/asio/include/asio/system_context.hpp +0 -90
  726. data/ext/third_party/asio/asio/include/asio/system_error.hpp +0 -131
  727. data/ext/third_party/asio/asio/include/asio/system_executor.hpp +0 -662
  728. data/ext/third_party/asio/asio/include/asio/system_timer.hpp +0 -42
  729. data/ext/third_party/asio/asio/include/asio/this_coro.hpp +0 -45
  730. data/ext/third_party/asio/asio/include/asio/thread.hpp +0 -92
  731. data/ext/third_party/asio/asio/include/asio/thread_pool.hpp +0 -1111
  732. data/ext/third_party/asio/asio/include/asio/time_traits.hpp +0 -86
  733. data/ext/third_party/asio/asio/include/asio/traits/bulk_execute_free.hpp +0 -114
  734. data/ext/third_party/asio/asio/include/asio/traits/bulk_execute_member.hpp +0 -114
  735. data/ext/third_party/asio/asio/include/asio/traits/connect_free.hpp +0 -112
  736. data/ext/third_party/asio/asio/include/asio/traits/connect_member.hpp +0 -112
  737. data/ext/third_party/asio/asio/include/asio/traits/equality_comparable.hpp +0 -100
  738. data/ext/third_party/asio/asio/include/asio/traits/execute_free.hpp +0 -108
  739. data/ext/third_party/asio/asio/include/asio/traits/execute_member.hpp +0 -108
  740. data/ext/third_party/asio/asio/include/asio/traits/prefer_free.hpp +0 -108
  741. data/ext/third_party/asio/asio/include/asio/traits/prefer_member.hpp +0 -108
  742. data/ext/third_party/asio/asio/include/asio/traits/query_free.hpp +0 -108
  743. data/ext/third_party/asio/asio/include/asio/traits/query_member.hpp +0 -108
  744. data/ext/third_party/asio/asio/include/asio/traits/query_static_constexpr_member.hpp +0 -108
  745. data/ext/third_party/asio/asio/include/asio/traits/require_concept_free.hpp +0 -108
  746. data/ext/third_party/asio/asio/include/asio/traits/require_concept_member.hpp +0 -108
  747. data/ext/third_party/asio/asio/include/asio/traits/require_free.hpp +0 -108
  748. data/ext/third_party/asio/asio/include/asio/traits/require_member.hpp +0 -108
  749. data/ext/third_party/asio/asio/include/asio/traits/schedule_free.hpp +0 -108
  750. data/ext/third_party/asio/asio/include/asio/traits/schedule_member.hpp +0 -108
  751. data/ext/third_party/asio/asio/include/asio/traits/set_done_free.hpp +0 -108
  752. data/ext/third_party/asio/asio/include/asio/traits/set_done_member.hpp +0 -108
  753. data/ext/third_party/asio/asio/include/asio/traits/set_error_free.hpp +0 -112
  754. data/ext/third_party/asio/asio/include/asio/traits/set_error_member.hpp +0 -112
  755. data/ext/third_party/asio/asio/include/asio/traits/set_value_free.hpp +0 -234
  756. data/ext/third_party/asio/asio/include/asio/traits/set_value_member.hpp +0 -234
  757. data/ext/third_party/asio/asio/include/asio/traits/start_free.hpp +0 -108
  758. data/ext/third_party/asio/asio/include/asio/traits/start_member.hpp +0 -108
  759. data/ext/third_party/asio/asio/include/asio/traits/static_query.hpp +0 -108
  760. data/ext/third_party/asio/asio/include/asio/traits/static_require.hpp +0 -123
  761. data/ext/third_party/asio/asio/include/asio/traits/static_require_concept.hpp +0 -123
  762. data/ext/third_party/asio/asio/include/asio/traits/submit_free.hpp +0 -112
  763. data/ext/third_party/asio/asio/include/asio/traits/submit_member.hpp +0 -112
  764. data/ext/third_party/asio/asio/include/asio/ts/buffer.hpp +0 -24
  765. data/ext/third_party/asio/asio/include/asio/ts/executor.hpp +0 -35
  766. data/ext/third_party/asio/asio/include/asio/ts/internet.hpp +0 -40
  767. data/ext/third_party/asio/asio/include/asio/ts/io_context.hpp +0 -20
  768. data/ext/third_party/asio/asio/include/asio/ts/net.hpp +0 -26
  769. data/ext/third_party/asio/asio/include/asio/ts/netfwd.hpp +0 -262
  770. data/ext/third_party/asio/asio/include/asio/ts/socket.hpp +0 -27
  771. data/ext/third_party/asio/asio/include/asio/ts/timer.hpp +0 -26
  772. data/ext/third_party/asio/asio/include/asio/unyield.hpp +0 -21
  773. data/ext/third_party/asio/asio/include/asio/use_awaitable.hpp +0 -169
  774. data/ext/third_party/asio/asio/include/asio/use_future.hpp +0 -160
  775. data/ext/third_party/asio/asio/include/asio/uses_executor.hpp +0 -71
  776. data/ext/third_party/asio/asio/include/asio/version.hpp +0 -23
  777. data/ext/third_party/asio/asio/include/asio/wait_traits.hpp +0 -56
  778. data/ext/third_party/asio/asio/include/asio/windows/basic_object_handle.hpp +0 -435
  779. data/ext/third_party/asio/asio/include/asio/windows/basic_overlapped_handle.hpp +0 -361
  780. data/ext/third_party/asio/asio/include/asio/windows/basic_random_access_handle.hpp +0 -490
  781. data/ext/third_party/asio/asio/include/asio/windows/basic_stream_handle.hpp +0 -474
  782. data/ext/third_party/asio/asio/include/asio/windows/object_handle.hpp +0 -38
  783. data/ext/third_party/asio/asio/include/asio/windows/overlapped_handle.hpp +0 -39
  784. data/ext/third_party/asio/asio/include/asio/windows/overlapped_ptr.hpp +0 -145
  785. data/ext/third_party/asio/asio/include/asio/windows/random_access_handle.hpp +0 -37
  786. data/ext/third_party/asio/asio/include/asio/windows/stream_handle.hpp +0 -37
  787. data/ext/third_party/asio/asio/include/asio/write.hpp +0 -1246
  788. data/ext/third_party/asio/asio/include/asio/write_at.hpp +0 -702
  789. data/ext/third_party/asio/asio/include/asio/yield.hpp +0 -23
  790. data/ext/third_party/gsl/CMakeLists.txt +0 -127
  791. data/ext/third_party/gsl/LICENSE +0 -21
  792. data/ext/third_party/gsl/ThirdPartyNotices.txt +0 -41
  793. data/ext/third_party/gsl/include/gsl/gsl +0 -29
  794. data/ext/third_party/gsl/include/gsl/gsl_algorithm +0 -61
  795. data/ext/third_party/gsl/include/gsl/gsl_assert +0 -133
  796. data/ext/third_party/gsl/include/gsl/gsl_byte +0 -209
  797. data/ext/third_party/gsl/include/gsl/gsl_narrow +0 -52
  798. data/ext/third_party/gsl/include/gsl/gsl_util +0 -129
  799. data/ext/third_party/gsl/include/gsl/multi_span +0 -2263
  800. data/ext/third_party/gsl/include/gsl/pointers +0 -287
  801. data/ext/third_party/gsl/include/gsl/span +0 -816
  802. data/ext/third_party/gsl/include/gsl/span_ext +0 -198
  803. data/ext/third_party/gsl/include/gsl/string_span +0 -706
  804. data/ext/third_party/http_parser/LICENSE-MIT +0 -19
  805. data/ext/third_party/http_parser/http_parser.c +0 -2575
  806. data/ext/third_party/http_parser/http_parser.h +0 -449
  807. data/ext/third_party/json/CMakeLists.txt +0 -44
  808. data/ext/third_party/json/LICENSE +0 -21
  809. data/ext/third_party/json/LICENSE.double-conversion +0 -32
  810. data/ext/third_party/json/LICENSE.itoa +0 -19
  811. data/ext/third_party/json/LICENSE.ryu +0 -201
  812. data/ext/third_party/json/include/tao/json.hpp +0 -45
  813. data/ext/third_party/json/include/tao/json/basic_value.hpp +0 -942
  814. data/ext/third_party/json/include/tao/json/binary.hpp +0 -103
  815. data/ext/third_party/json/include/tao/json/binary_view.hpp +0 -31
  816. data/ext/third_party/json/include/tao/json/binding.hpp +0 -71
  817. data/ext/third_party/json/include/tao/json/binding/constant.hpp +0 -232
  818. data/ext/third_party/json/include/tao/json/binding/element.hpp +0 -182
  819. data/ext/third_party/json/include/tao/json/binding/factory.hpp +0 -251
  820. data/ext/third_party/json/include/tao/json/binding/for_nothing_value.hpp +0 -17
  821. data/ext/third_party/json/include/tao/json/binding/for_unknown_key.hpp +0 -17
  822. data/ext/third_party/json/include/tao/json/binding/inherit.hpp +0 -14
  823. data/ext/third_party/json/include/tao/json/binding/internal/array.hpp +0 -104
  824. data/ext/third_party/json/include/tao/json/binding/internal/inherit.hpp +0 -45
  825. data/ext/third_party/json/include/tao/json/binding/internal/object.hpp +0 -268
  826. data/ext/third_party/json/include/tao/json/binding/internal/type_key.hpp +0 -54
  827. data/ext/third_party/json/include/tao/json/binding/member.hpp +0 -32
  828. data/ext/third_party/json/include/tao/json/binding/member_kind.hpp +0 -17
  829. data/ext/third_party/json/include/tao/json/binding/versions.hpp +0 -129
  830. data/ext/third_party/json/include/tao/json/cbor.hpp +0 -19
  831. data/ext/third_party/json/include/tao/json/cbor/consume_file.hpp +0 -34
  832. data/ext/third_party/json/include/tao/json/cbor/consume_string.hpp +0 -32
  833. data/ext/third_party/json/include/tao/json/cbor/events/from_binary.hpp +0 -43
  834. data/ext/third_party/json/include/tao/json/cbor/events/from_file.hpp +0 -27
  835. data/ext/third_party/json/include/tao/json/cbor/events/from_input.hpp +0 -43
  836. data/ext/third_party/json/include/tao/json/cbor/events/from_string.hpp +0 -37
  837. data/ext/third_party/json/include/tao/json/cbor/events/to_stream.hpp +0 -161
  838. data/ext/third_party/json/include/tao/json/cbor/events/to_string.hpp +0 -31
  839. data/ext/third_party/json/include/tao/json/cbor/from_binary.hpp +0 -32
  840. data/ext/third_party/json/include/tao/json/cbor/from_file.hpp +0 -33
  841. data/ext/third_party/json/include/tao/json/cbor/from_input.hpp +0 -33
  842. data/ext/third_party/json/include/tao/json/cbor/from_string.hpp +0 -32
  843. data/ext/third_party/json/include/tao/json/cbor/internal/grammar.hpp +0 -418
  844. data/ext/third_party/json/include/tao/json/cbor/internal/major.hpp +0 -28
  845. data/ext/third_party/json/include/tao/json/cbor/parts_parser.hpp +0 -392
  846. data/ext/third_party/json/include/tao/json/cbor/to_stream.hpp +0 -27
  847. data/ext/third_party/json/include/tao/json/cbor/to_string.hpp +0 -28
  848. data/ext/third_party/json/include/tao/json/consume.hpp +0 -43
  849. data/ext/third_party/json/include/tao/json/consume_file.hpp +0 -33
  850. data/ext/third_party/json/include/tao/json/consume_string.hpp +0 -31
  851. data/ext/third_party/json/include/tao/json/contrib/array_traits.hpp +0 -43
  852. data/ext/third_party/json/include/tao/json/contrib/deque_traits.hpp +0 -41
  853. data/ext/third_party/json/include/tao/json/contrib/diff.hpp +0 -106
  854. data/ext/third_party/json/include/tao/json/contrib/get.hpp +0 -152
  855. data/ext/third_party/json/include/tao/json/contrib/internal/array_traits.hpp +0 -92
  856. data/ext/third_party/json/include/tao/json/contrib/internal/indirect_traits.hpp +0 -76
  857. data/ext/third_party/json/include/tao/json/contrib/internal/object_traits.hpp +0 -105
  858. data/ext/third_party/json/include/tao/json/contrib/internal/type_traits.hpp +0 -36
  859. data/ext/third_party/json/include/tao/json/contrib/list_traits.hpp +0 -41
  860. data/ext/third_party/json/include/tao/json/contrib/map_traits.hpp +0 -43
  861. data/ext/third_party/json/include/tao/json/contrib/multimap_traits.hpp +0 -43
  862. data/ext/third_party/json/include/tao/json/contrib/multiset_traits.hpp +0 -41
  863. data/ext/third_party/json/include/tao/json/contrib/pair_traits.hpp +0 -21
  864. data/ext/third_party/json/include/tao/json/contrib/patch.hpp +0 -105
  865. data/ext/third_party/json/include/tao/json/contrib/pointer_traits.hpp +0 -59
  866. data/ext/third_party/json/include/tao/json/contrib/position.hpp +0 -166
  867. data/ext/third_party/json/include/tao/json/contrib/reference.hpp +0 -113
  868. data/ext/third_party/json/include/tao/json/contrib/schema.hpp +0 -1874
  869. data/ext/third_party/json/include/tao/json/contrib/set_traits.hpp +0 -41
  870. data/ext/third_party/json/include/tao/json/contrib/shared_ptr_traits.hpp +0 -98
  871. data/ext/third_party/json/include/tao/json/contrib/traits.hpp +0 -121
  872. data/ext/third_party/json/include/tao/json/contrib/tuple_traits.hpp +0 -51
  873. data/ext/third_party/json/include/tao/json/contrib/unique_ptr_traits.hpp +0 -97
  874. data/ext/third_party/json/include/tao/json/contrib/unordered_map_traits.hpp +0 -43
  875. data/ext/third_party/json/include/tao/json/contrib/unordered_set_traits.hpp +0 -41
  876. data/ext/third_party/json/include/tao/json/contrib/vector_bool_traits.hpp +0 -45
  877. data/ext/third_party/json/include/tao/json/contrib/vector_traits.hpp +0 -51
  878. data/ext/third_party/json/include/tao/json/events.hpp +0 -47
  879. data/ext/third_party/json/include/tao/json/events/apply.hpp +0 -20
  880. data/ext/third_party/json/include/tao/json/events/binary_to_base64.hpp +0 -26
  881. data/ext/third_party/json/include/tao/json/events/binary_to_base64url.hpp +0 -28
  882. data/ext/third_party/json/include/tao/json/events/binary_to_exception.hpp +0 -27
  883. data/ext/third_party/json/include/tao/json/events/binary_to_hex.hpp +0 -26
  884. data/ext/third_party/json/include/tao/json/events/compare.hpp +0 -255
  885. data/ext/third_party/json/include/tao/json/events/debug.hpp +0 -145
  886. data/ext/third_party/json/include/tao/json/events/discard.hpp +0 -43
  887. data/ext/third_party/json/include/tao/json/events/from_file.hpp +0 -28
  888. data/ext/third_party/json/include/tao/json/events/from_input.hpp +0 -45
  889. data/ext/third_party/json/include/tao/json/events/from_stream.hpp +0 -33
  890. data/ext/third_party/json/include/tao/json/events/from_string.hpp +0 -38
  891. data/ext/third_party/json/include/tao/json/events/from_value.hpp +0 -202
  892. data/ext/third_party/json/include/tao/json/events/hash.hpp +0 -174
  893. data/ext/third_party/json/include/tao/json/events/invalid_string_to_binary.hpp +0 -50
  894. data/ext/third_party/json/include/tao/json/events/invalid_string_to_exception.hpp +0 -49
  895. data/ext/third_party/json/include/tao/json/events/invalid_string_to_hex.hpp +0 -48
  896. data/ext/third_party/json/include/tao/json/events/key_camel_case_to_snake_case.hpp +0 -62
  897. data/ext/third_party/json/include/tao/json/events/key_snake_case_to_camel_case.hpp +0 -57
  898. data/ext/third_party/json/include/tao/json/events/limit_nesting_depth.hpp +0 -82
  899. data/ext/third_party/json/include/tao/json/events/limit_value_count.hpp +0 -46
  900. data/ext/third_party/json/include/tao/json/events/non_finite_to_exception.hpp +0 -31
  901. data/ext/third_party/json/include/tao/json/events/non_finite_to_null.hpp +0 -32
  902. data/ext/third_party/json/include/tao/json/events/non_finite_to_string.hpp +0 -40
  903. data/ext/third_party/json/include/tao/json/events/prefer_signed.hpp +0 -32
  904. data/ext/third_party/json/include/tao/json/events/prefer_unsigned.hpp +0 -32
  905. data/ext/third_party/json/include/tao/json/events/produce.hpp +0 -22
  906. data/ext/third_party/json/include/tao/json/events/ref.hpp +0 -111
  907. data/ext/third_party/json/include/tao/json/events/statistics.hpp +0 -112
  908. data/ext/third_party/json/include/tao/json/events/tee.hpp +0 -386
  909. data/ext/third_party/json/include/tao/json/events/to_pretty_stream.hpp +0 -172
  910. data/ext/third_party/json/include/tao/json/events/to_stream.hpp +0 -142
  911. data/ext/third_party/json/include/tao/json/events/to_string.hpp +0 -33
  912. data/ext/third_party/json/include/tao/json/events/to_value.hpp +0 -137
  913. data/ext/third_party/json/include/tao/json/events/transformer.hpp +0 -70
  914. data/ext/third_party/json/include/tao/json/events/validate_event_order.hpp +0 -411
  915. data/ext/third_party/json/include/tao/json/events/validate_keys.hpp +0 -51
  916. data/ext/third_party/json/include/tao/json/events/virtual_base.hpp +0 -192
  917. data/ext/third_party/json/include/tao/json/events/virtual_ref.hpp +0 -176
  918. data/ext/third_party/json/include/tao/json/external/double.hpp +0 -1313
  919. data/ext/third_party/json/include/tao/json/external/itoa.hpp +0 -149
  920. data/ext/third_party/json/include/tao/json/external/pegtl.hpp +0 -44
  921. data/ext/third_party/json/include/tao/json/external/pegtl/apply_mode.hpp +0 -19
  922. data/ext/third_party/json/include/tao/json/external/pegtl/argv_input.hpp +0 -49
  923. data/ext/third_party/json/include/tao/json/external/pegtl/ascii.hpp +0 -54
  924. data/ext/third_party/json/include/tao/json/external/pegtl/buffer_input.hpp +0 -212
  925. data/ext/third_party/json/include/tao/json/external/pegtl/change_action.hpp +0 -38
  926. data/ext/third_party/json/include/tao/json/external/pegtl/change_action_and_state.hpp +0 -53
  927. data/ext/third_party/json/include/tao/json/external/pegtl/change_action_and_states.hpp +0 -62
  928. data/ext/third_party/json/include/tao/json/external/pegtl/change_control.hpp +0 -36
  929. data/ext/third_party/json/include/tao/json/external/pegtl/change_state.hpp +0 -50
  930. data/ext/third_party/json/include/tao/json/external/pegtl/change_states.hpp +0 -61
  931. data/ext/third_party/json/include/tao/json/external/pegtl/config.hpp +0 -11
  932. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/abnf.hpp +0 -35
  933. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/alphabet.hpp +0 -67
  934. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/analyze.hpp +0 -176
  935. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/analyze_traits.hpp +0 -275
  936. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/control_action.hpp +0 -77
  937. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/coverage.hpp +0 -151
  938. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/forward.hpp +0 -16
  939. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/http.hpp +0 -272
  940. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/icu/internal.hpp +0 -66
  941. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/icu/utf16.hpp +0 -196
  942. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/icu/utf32.hpp +0 -196
  943. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/icu/utf8.hpp +0 -103
  944. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/if_then.hpp +0 -56
  945. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/integer.hpp +0 -431
  946. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/internal/endian.hpp +0 -62
  947. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/internal/endian_gcc.hpp +0 -206
  948. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/internal/endian_win.hpp +0 -106
  949. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/internal/peek_mask_uint.hpp +0 -54
  950. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/internal/peek_mask_uint8.hpp +0 -33
  951. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/internal/peek_uint.hpp +0 -45
  952. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/internal/peek_uint8.hpp +0 -32
  953. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/internal/peek_utf16.hpp +0 -54
  954. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/internal/peek_utf32.hpp +0 -43
  955. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/internal/read_uint.hpp +0 -77
  956. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/internal/set_stack_guard.hpp +0 -52
  957. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/json.hpp +0 -88
  958. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/json_pointer.hpp +0 -33
  959. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/parse_tree.hpp +0 -440
  960. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/parse_tree_to_dot.hpp +0 -105
  961. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/print.hpp +0 -75
  962. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/print_coverage.hpp +0 -53
  963. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/raw_string.hpp +0 -234
  964. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/remove_first_state.hpp +0 -69
  965. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/remove_last_states.hpp +0 -117
  966. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/rep_one_min_max.hpp +0 -94
  967. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/rep_string.hpp +0 -43
  968. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/shuffle_states.hpp +0 -193
  969. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/state_control.hpp +0 -118
  970. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/to_string.hpp +0 -38
  971. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/trace.hpp +0 -227
  972. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/uint16.hpp +0 -62
  973. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/uint32.hpp +0 -62
  974. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/uint64.hpp +0 -63
  975. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/uint8.hpp +0 -36
  976. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/unescape.hpp +0 -199
  977. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/uri.hpp +0 -106
  978. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/utf16.hpp +0 -49
  979. data/ext/third_party/json/include/tao/json/external/pegtl/contrib/utf32.hpp +0 -49
  980. data/ext/third_party/json/include/tao/json/external/pegtl/cstream_input.hpp +0 -32
  981. data/ext/third_party/json/include/tao/json/external/pegtl/demangle.hpp +0 -138
  982. data/ext/third_party/json/include/tao/json/external/pegtl/disable_action.hpp +0 -35
  983. data/ext/third_party/json/include/tao/json/external/pegtl/discard_input.hpp +0 -37
  984. data/ext/third_party/json/include/tao/json/external/pegtl/discard_input_on_failure.hpp +0 -39
  985. data/ext/third_party/json/include/tao/json/external/pegtl/discard_input_on_success.hpp +0 -39
  986. data/ext/third_party/json/include/tao/json/external/pegtl/enable_action.hpp +0 -35
  987. data/ext/third_party/json/include/tao/json/external/pegtl/eol.hpp +0 -37
  988. data/ext/third_party/json/include/tao/json/external/pegtl/eol_pair.hpp +0 -18
  989. data/ext/third_party/json/include/tao/json/external/pegtl/file_input.hpp +0 -44
  990. data/ext/third_party/json/include/tao/json/external/pegtl/internal/action.hpp +0 -54
  991. data/ext/third_party/json/include/tao/json/external/pegtl/internal/action_input.hpp +0 -106
  992. data/ext/third_party/json/include/tao/json/external/pegtl/internal/any.hpp +0 -58
  993. data/ext/third_party/json/include/tao/json/external/pegtl/internal/apply.hpp +0 -53
  994. data/ext/third_party/json/include/tao/json/external/pegtl/internal/apply0.hpp +0 -51
  995. data/ext/third_party/json/include/tao/json/external/pegtl/internal/apply0_single.hpp +0 -34
  996. data/ext/third_party/json/include/tao/json/external/pegtl/internal/apply_single.hpp +0 -34
  997. data/ext/third_party/json/include/tao/json/external/pegtl/internal/at.hpp +0 -55
  998. data/ext/third_party/json/include/tao/json/external/pegtl/internal/bof.hpp +0 -32
  999. data/ext/third_party/json/include/tao/json/external/pegtl/internal/bol.hpp +0 -31
  1000. data/ext/third_party/json/include/tao/json/external/pegtl/internal/bump.hpp +0 -45
  1001. data/ext/third_party/json/include/tao/json/external/pegtl/internal/bump_help.hpp +0 -29
  1002. data/ext/third_party/json/include/tao/json/external/pegtl/internal/bytes.hpp +0 -43
  1003. data/ext/third_party/json/include/tao/json/external/pegtl/internal/control.hpp +0 -54
  1004. data/ext/third_party/json/include/tao/json/external/pegtl/internal/cr_crlf_eol.hpp +0 -32
  1005. data/ext/third_party/json/include/tao/json/external/pegtl/internal/cr_eol.hpp +0 -32
  1006. data/ext/third_party/json/include/tao/json/external/pegtl/internal/crlf_eol.hpp +0 -32
  1007. data/ext/third_party/json/include/tao/json/external/pegtl/internal/cstream_reader.hpp +0 -49
  1008. data/ext/third_party/json/include/tao/json/external/pegtl/internal/cstring_reader.hpp +0 -40
  1009. data/ext/third_party/json/include/tao/json/external/pegtl/internal/dependent_false.hpp +0 -16
  1010. data/ext/third_party/json/include/tao/json/external/pegtl/internal/disable.hpp +0 -54
  1011. data/ext/third_party/json/include/tao/json/external/pegtl/internal/discard.hpp +0 -34
  1012. data/ext/third_party/json/include/tao/json/external/pegtl/internal/enable.hpp +0 -54
  1013. data/ext/third_party/json/include/tao/json/external/pegtl/internal/enable_control.hpp +0 -25
  1014. data/ext/third_party/json/include/tao/json/external/pegtl/internal/eof.hpp +0 -32
  1015. data/ext/third_party/json/include/tao/json/external/pegtl/internal/eol.hpp +0 -32
  1016. data/ext/third_party/json/include/tao/json/external/pegtl/internal/eolf.hpp +0 -33
  1017. data/ext/third_party/json/include/tao/json/external/pegtl/internal/failure.hpp +0 -32
  1018. data/ext/third_party/json/include/tao/json/external/pegtl/internal/file_mapper_posix.hpp +0 -134
  1019. data/ext/third_party/json/include/tao/json/external/pegtl/internal/file_mapper_win32.hpp +0 -213
  1020. data/ext/third_party/json/include/tao/json/external/pegtl/internal/file_reader.hpp +0 -117
  1021. data/ext/third_party/json/include/tao/json/external/pegtl/internal/has_apply.hpp +0 -21
  1022. data/ext/third_party/json/include/tao/json/external/pegtl/internal/has_apply0.hpp +0 -21
  1023. data/ext/third_party/json/include/tao/json/external/pegtl/internal/has_match.hpp +0 -40
  1024. data/ext/third_party/json/include/tao/json/external/pegtl/internal/has_unwind.hpp +0 -21
  1025. data/ext/third_party/json/include/tao/json/external/pegtl/internal/identifier.hpp +0 -22
  1026. data/ext/third_party/json/include/tao/json/external/pegtl/internal/if_apply.hpp +0 -54
  1027. data/ext/third_party/json/include/tao/json/external/pegtl/internal/if_must.hpp +0 -47
  1028. data/ext/third_party/json/include/tao/json/external/pegtl/internal/if_must_else.hpp +0 -21
  1029. data/ext/third_party/json/include/tao/json/external/pegtl/internal/if_then_else.hpp +0 -51
  1030. data/ext/third_party/json/include/tao/json/external/pegtl/internal/input_pair.hpp +0 -29
  1031. data/ext/third_party/json/include/tao/json/external/pegtl/internal/istream_reader.hpp +0 -39
  1032. data/ext/third_party/json/include/tao/json/external/pegtl/internal/istring.hpp +0 -72
  1033. data/ext/third_party/json/include/tao/json/external/pegtl/internal/iterator.hpp +0 -49
  1034. data/ext/third_party/json/include/tao/json/external/pegtl/internal/lf_crlf_eol.hpp +0 -37
  1035. data/ext/third_party/json/include/tao/json/external/pegtl/internal/lf_eol.hpp +0 -32
  1036. data/ext/third_party/json/include/tao/json/external/pegtl/internal/list.hpp +0 -19
  1037. data/ext/third_party/json/include/tao/json/external/pegtl/internal/list_must.hpp +0 -20
  1038. data/ext/third_party/json/include/tao/json/external/pegtl/internal/list_tail.hpp +0 -22
  1039. data/ext/third_party/json/include/tao/json/external/pegtl/internal/list_tail_pad.hpp +0 -22
  1040. data/ext/third_party/json/include/tao/json/external/pegtl/internal/marker.hpp +0 -80
  1041. data/ext/third_party/json/include/tao/json/external/pegtl/internal/minus.hpp +0 -21
  1042. data/ext/third_party/json/include/tao/json/external/pegtl/internal/missing_apply.hpp +0 -28
  1043. data/ext/third_party/json/include/tao/json/external/pegtl/internal/missing_apply0.hpp +0 -26
  1044. data/ext/third_party/json/include/tao/json/external/pegtl/internal/must.hpp +0 -64
  1045. data/ext/third_party/json/include/tao/json/external/pegtl/internal/not_at.hpp +0 -55
  1046. data/ext/third_party/json/include/tao/json/external/pegtl/internal/one.hpp +0 -55
  1047. data/ext/third_party/json/include/tao/json/external/pegtl/internal/opt.hpp +0 -57
  1048. data/ext/third_party/json/include/tao/json/external/pegtl/internal/pad.hpp +0 -19
  1049. data/ext/third_party/json/include/tao/json/external/pegtl/internal/pad_opt.hpp +0 -20
  1050. data/ext/third_party/json/include/tao/json/external/pegtl/internal/path_to_string.hpp +0 -26
  1051. data/ext/third_party/json/include/tao/json/external/pegtl/internal/peek_char.hpp +0 -32
  1052. data/ext/third_party/json/include/tao/json/external/pegtl/internal/peek_utf8.hpp +0 -89
  1053. data/ext/third_party/json/include/tao/json/external/pegtl/internal/pegtl_string.hpp +0 -90
  1054. data/ext/third_party/json/include/tao/json/external/pegtl/internal/plus.hpp +0 -60
  1055. data/ext/third_party/json/include/tao/json/external/pegtl/internal/raise.hpp +0 -44
  1056. data/ext/third_party/json/include/tao/json/external/pegtl/internal/range.hpp +0 -56
  1057. data/ext/third_party/json/include/tao/json/external/pegtl/internal/ranges.hpp +0 -103
  1058. data/ext/third_party/json/include/tao/json/external/pegtl/internal/rematch.hpp +0 -72
  1059. data/ext/third_party/json/include/tao/json/external/pegtl/internal/rep.hpp +0 -67
  1060. data/ext/third_party/json/include/tao/json/external/pegtl/internal/rep_min.hpp +0 -20
  1061. data/ext/third_party/json/include/tao/json/external/pegtl/internal/rep_min_max.hpp +0 -81
  1062. data/ext/third_party/json/include/tao/json/external/pegtl/internal/rep_opt.hpp +0 -61
  1063. data/ext/third_party/json/include/tao/json/external/pegtl/internal/require.hpp +0 -42
  1064. data/ext/third_party/json/include/tao/json/external/pegtl/internal/result_on_found.hpp +0 -19
  1065. data/ext/third_party/json/include/tao/json/external/pegtl/internal/rules.hpp +0 -61
  1066. data/ext/third_party/json/include/tao/json/external/pegtl/internal/seq.hpp +0 -58
  1067. data/ext/third_party/json/include/tao/json/external/pegtl/internal/sor.hpp +0 -67
  1068. data/ext/third_party/json/include/tao/json/external/pegtl/internal/star.hpp +0 -52
  1069. data/ext/third_party/json/include/tao/json/external/pegtl/internal/star_must.hpp +0 -19
  1070. data/ext/third_party/json/include/tao/json/external/pegtl/internal/state.hpp +0 -59
  1071. data/ext/third_party/json/include/tao/json/external/pegtl/internal/string.hpp +0 -58
  1072. data/ext/third_party/json/include/tao/json/external/pegtl/internal/success.hpp +0 -32
  1073. data/ext/third_party/json/include/tao/json/external/pegtl/internal/try_catch_type.hpp +0 -64
  1074. data/ext/third_party/json/include/tao/json/external/pegtl/internal/until.hpp +0 -88
  1075. data/ext/third_party/json/include/tao/json/external/pegtl/istream_input.hpp +0 -32
  1076. data/ext/third_party/json/include/tao/json/external/pegtl/match.hpp +0 -169
  1077. data/ext/third_party/json/include/tao/json/external/pegtl/memory_input.hpp +0 -365
  1078. data/ext/third_party/json/include/tao/json/external/pegtl/mmap_input.hpp +0 -79
  1079. data/ext/third_party/json/include/tao/json/external/pegtl/must_if.hpp +0 -64
  1080. data/ext/third_party/json/include/tao/json/external/pegtl/normal.hpp +0 -87
  1081. data/ext/third_party/json/include/tao/json/external/pegtl/nothing.hpp +0 -19
  1082. data/ext/third_party/json/include/tao/json/external/pegtl/parse.hpp +0 -51
  1083. data/ext/third_party/json/include/tao/json/external/pegtl/parse_error.hpp +0 -114
  1084. data/ext/third_party/json/include/tao/json/external/pegtl/position.hpp +0 -83
  1085. data/ext/third_party/json/include/tao/json/external/pegtl/read_input.hpp +0 -54
  1086. data/ext/third_party/json/include/tao/json/external/pegtl/require_apply.hpp +0 -16
  1087. data/ext/third_party/json/include/tao/json/external/pegtl/require_apply0.hpp +0 -16
  1088. data/ext/third_party/json/include/tao/json/external/pegtl/rewind_mode.hpp +0 -20
  1089. data/ext/third_party/json/include/tao/json/external/pegtl/rules.hpp +0 -68
  1090. data/ext/third_party/json/include/tao/json/external/pegtl/string_input.hpp +0 -64
  1091. data/ext/third_party/json/include/tao/json/external/pegtl/tracking_mode.hpp +0 -19
  1092. data/ext/third_party/json/include/tao/json/external/pegtl/type_list.hpp +0 -46
  1093. data/ext/third_party/json/include/tao/json/external/pegtl/utf8.hpp +0 -28
  1094. data/ext/third_party/json/include/tao/json/external/pegtl/version.hpp +0 -13
  1095. data/ext/third_party/json/include/tao/json/external/pegtl/visit.hpp +0 -66
  1096. data/ext/third_party/json/include/tao/json/external/ryu.hpp +0 -1216
  1097. data/ext/third_party/json/include/tao/json/forward.hpp +0 -44
  1098. data/ext/third_party/json/include/tao/json/from_file.hpp +0 -32
  1099. data/ext/third_party/json/include/tao/json/from_input.hpp +0 -32
  1100. data/ext/third_party/json/include/tao/json/from_stream.hpp +0 -45
  1101. data/ext/third_party/json/include/tao/json/from_string.hpp +0 -41
  1102. data/ext/third_party/json/include/tao/json/internal/action.hpp +0 -268
  1103. data/ext/third_party/json/include/tao/json/internal/base64.hpp +0 -55
  1104. data/ext/third_party/json/include/tao/json/internal/base64url.hpp +0 -53
  1105. data/ext/third_party/json/include/tao/json/internal/dependent_false.hpp +0 -14
  1106. data/ext/third_party/json/include/tao/json/internal/endian.hpp +0 -60
  1107. data/ext/third_party/json/include/tao/json/internal/endian_gcc.hpp +0 -198
  1108. data/ext/third_party/json/include/tao/json/internal/endian_win.hpp +0 -103
  1109. data/ext/third_party/json/include/tao/json/internal/errors.hpp +0 -85
  1110. data/ext/third_party/json/include/tao/json/internal/escape.hpp +0 -77
  1111. data/ext/third_party/json/include/tao/json/internal/format.hpp +0 -57
  1112. data/ext/third_party/json/include/tao/json/internal/grammar.hpp +0 -229
  1113. data/ext/third_party/json/include/tao/json/internal/hexdump.hpp +0 -31
  1114. data/ext/third_party/json/include/tao/json/internal/identity.hpp +0 -22
  1115. data/ext/third_party/json/include/tao/json/internal/number_state.hpp +0 -80
  1116. data/ext/third_party/json/include/tao/json/internal/number_traits.hpp +0 -267
  1117. data/ext/third_party/json/include/tao/json/internal/pair.hpp +0 -42
  1118. data/ext/third_party/json/include/tao/json/internal/parse_util.hpp +0 -112
  1119. data/ext/third_party/json/include/tao/json/internal/sha256.hpp +0 -218
  1120. data/ext/third_party/json/include/tao/json/internal/single.hpp +0 -40
  1121. data/ext/third_party/json/include/tao/json/internal/string_t.hpp +0 -35
  1122. data/ext/third_party/json/include/tao/json/internal/type_traits.hpp +0 -96
  1123. data/ext/third_party/json/include/tao/json/internal/unescape_action.hpp +0 -24
  1124. data/ext/third_party/json/include/tao/json/internal/uri_fragment.hpp +0 -182
  1125. data/ext/third_party/json/include/tao/json/jaxn.hpp +0 -19
  1126. data/ext/third_party/json/include/tao/json/jaxn/consume_file.hpp +0 -34
  1127. data/ext/third_party/json/include/tao/json/jaxn/consume_string.hpp +0 -32
  1128. data/ext/third_party/json/include/tao/json/jaxn/events/from_file.hpp +0 -28
  1129. data/ext/third_party/json/include/tao/json/jaxn/events/from_input.hpp +0 -45
  1130. data/ext/third_party/json/include/tao/json/jaxn/events/from_stream.hpp +0 -33
  1131. data/ext/third_party/json/include/tao/json/jaxn/events/from_string.hpp +0 -39
  1132. data/ext/third_party/json/include/tao/json/jaxn/events/to_pretty_stream.hpp +0 -69
  1133. data/ext/third_party/json/include/tao/json/jaxn/events/to_stream.hpp +0 -67
  1134. data/ext/third_party/json/include/tao/json/jaxn/events/to_string.hpp +0 -33
  1135. data/ext/third_party/json/include/tao/json/jaxn/from_file.hpp +0 -33
  1136. data/ext/third_party/json/include/tao/json/jaxn/from_input.hpp +0 -33
  1137. data/ext/third_party/json/include/tao/json/jaxn/from_stream.hpp +0 -48
  1138. data/ext/third_party/json/include/tao/json/jaxn/from_string.hpp +0 -42
  1139. data/ext/third_party/json/include/tao/json/jaxn/internal/action.hpp +0 -355
  1140. data/ext/third_party/json/include/tao/json/jaxn/internal/bunescape_action.hpp +0 -114
  1141. data/ext/third_party/json/include/tao/json/jaxn/internal/errors.hpp +0 -108
  1142. data/ext/third_party/json/include/tao/json/jaxn/internal/grammar.hpp +0 -375
  1143. data/ext/third_party/json/include/tao/json/jaxn/internal/integer.hpp +0 -255
  1144. data/ext/third_party/json/include/tao/json/jaxn/internal/unescape_action.hpp +0 -28
  1145. data/ext/third_party/json/include/tao/json/jaxn/is_identifier.hpp +0 -27
  1146. data/ext/third_party/json/include/tao/json/jaxn/parts_parser.hpp +0 -261
  1147. data/ext/third_party/json/include/tao/json/jaxn/to_stream.hpp +0 -36
  1148. data/ext/third_party/json/include/tao/json/jaxn/to_string.hpp +0 -33
  1149. data/ext/third_party/json/include/tao/json/message_extension.hpp +0 -49
  1150. data/ext/third_party/json/include/tao/json/msgpack.hpp +0 -19
  1151. data/ext/third_party/json/include/tao/json/msgpack/consume_file.hpp +0 -34
  1152. data/ext/third_party/json/include/tao/json/msgpack/consume_string.hpp +0 -32
  1153. data/ext/third_party/json/include/tao/json/msgpack/events/from_binary.hpp +0 -43
  1154. data/ext/third_party/json/include/tao/json/msgpack/events/from_file.hpp +0 -27
  1155. data/ext/third_party/json/include/tao/json/msgpack/events/from_input.hpp +0 -43
  1156. data/ext/third_party/json/include/tao/json/msgpack/events/from_string.hpp +0 -37
  1157. data/ext/third_party/json/include/tao/json/msgpack/events/to_stream.hpp +0 -214
  1158. data/ext/third_party/json/include/tao/json/msgpack/events/to_string.hpp +0 -31
  1159. data/ext/third_party/json/include/tao/json/msgpack/from_binary.hpp +0 -32
  1160. data/ext/third_party/json/include/tao/json/msgpack/from_file.hpp +0 -33
  1161. data/ext/third_party/json/include/tao/json/msgpack/from_input.hpp +0 -33
  1162. data/ext/third_party/json/include/tao/json/msgpack/from_string.hpp +0 -32
  1163. data/ext/third_party/json/include/tao/json/msgpack/internal/format.hpp +0 -57
  1164. data/ext/third_party/json/include/tao/json/msgpack/internal/grammar.hpp +0 -250
  1165. data/ext/third_party/json/include/tao/json/msgpack/parts_parser.hpp +0 -311
  1166. data/ext/third_party/json/include/tao/json/msgpack/to_stream.hpp +0 -27
  1167. data/ext/third_party/json/include/tao/json/msgpack/to_string.hpp +0 -28
  1168. data/ext/third_party/json/include/tao/json/operators.hpp +0 -490
  1169. data/ext/third_party/json/include/tao/json/parts_parser.hpp +0 -302
  1170. data/ext/third_party/json/include/tao/json/pointer.hpp +0 -432
  1171. data/ext/third_party/json/include/tao/json/produce.hpp +0 -61
  1172. data/ext/third_party/json/include/tao/json/self_contained.hpp +0 -131
  1173. data/ext/third_party/json/include/tao/json/span.hpp +0 -496
  1174. data/ext/third_party/json/include/tao/json/stream.hpp +0 -38
  1175. data/ext/third_party/json/include/tao/json/to_stream.hpp +0 -42
  1176. data/ext/third_party/json/include/tao/json/to_string.hpp +0 -23
  1177. data/ext/third_party/json/include/tao/json/traits.hpp +0 -971
  1178. data/ext/third_party/json/include/tao/json/type.hpp +0 -112
  1179. data/ext/third_party/json/include/tao/json/ubjson.hpp +0 -19
  1180. data/ext/third_party/json/include/tao/json/ubjson/consume_file.hpp +0 -34
  1181. data/ext/third_party/json/include/tao/json/ubjson/consume_string.hpp +0 -32
  1182. data/ext/third_party/json/include/tao/json/ubjson/events/from_binary.hpp +0 -43
  1183. data/ext/third_party/json/include/tao/json/ubjson/events/from_file.hpp +0 -27
  1184. data/ext/third_party/json/include/tao/json/ubjson/events/from_input.hpp +0 -43
  1185. data/ext/third_party/json/include/tao/json/ubjson/events/from_string.hpp +0 -37
  1186. data/ext/third_party/json/include/tao/json/ubjson/events/to_stream.hpp +0 -174
  1187. data/ext/third_party/json/include/tao/json/ubjson/events/to_string.hpp +0 -31
  1188. data/ext/third_party/json/include/tao/json/ubjson/from_binary.hpp +0 -32
  1189. data/ext/third_party/json/include/tao/json/ubjson/from_file.hpp +0 -33
  1190. data/ext/third_party/json/include/tao/json/ubjson/from_input.hpp +0 -33
  1191. data/ext/third_party/json/include/tao/json/ubjson/from_string.hpp +0 -32
  1192. data/ext/third_party/json/include/tao/json/ubjson/internal/grammar.hpp +0 -415
  1193. data/ext/third_party/json/include/tao/json/ubjson/internal/marker.hpp +0 -46
  1194. data/ext/third_party/json/include/tao/json/ubjson/parts_parser.hpp +0 -393
  1195. data/ext/third_party/json/include/tao/json/ubjson/to_stream.hpp +0 -28
  1196. data/ext/third_party/json/include/tao/json/ubjson/to_string.hpp +0 -29
  1197. data/ext/third_party/json/include/tao/json/utf8.hpp +0 -57
  1198. data/ext/third_party/json/include/tao/json/value.hpp +0 -12
  1199. data/ext/third_party/snappy/CMakeLists.txt +0 -345
  1200. data/ext/third_party/snappy/COPYING +0 -54
  1201. data/ext/third_party/snappy/cmake/SnappyConfig.cmake.in +0 -33
  1202. data/ext/third_party/snappy/cmake/config.h.in +0 -59
  1203. data/ext/third_party/snappy/snappy-c.cc +0 -90
  1204. data/ext/third_party/snappy/snappy-c.h +0 -138
  1205. data/ext/third_party/snappy/snappy-internal.h +0 -315
  1206. data/ext/third_party/snappy/snappy-sinksource.cc +0 -121
  1207. data/ext/third_party/snappy/snappy-sinksource.h +0 -182
  1208. data/ext/third_party/snappy/snappy-stubs-internal.cc +0 -42
  1209. data/ext/third_party/snappy/snappy-stubs-internal.h +0 -493
  1210. data/ext/third_party/snappy/snappy-stubs-public.h.in +0 -63
  1211. data/ext/third_party/snappy/snappy.cc +0 -1774
  1212. data/ext/third_party/snappy/snappy.h +0 -209
  1213. data/ext/third_party/spdlog/CMakeLists.txt +0 -291
  1214. data/ext/third_party/spdlog/LICENSE +0 -26
  1215. data/ext/third_party/spdlog/cmake/ide.cmake +0 -18
  1216. data/ext/third_party/spdlog/cmake/pch.h.in +0 -258
  1217. data/ext/third_party/spdlog/cmake/spdlog.pc.in +0 -13
  1218. data/ext/third_party/spdlog/cmake/spdlogCPack.cmake +0 -46
  1219. data/ext/third_party/spdlog/cmake/spdlogConfig.cmake.in +0 -15
  1220. data/ext/third_party/spdlog/cmake/utils.cmake +0 -61
  1221. data/ext/third_party/spdlog/cmake/version.rc.in +0 -42
  1222. data/ext/third_party/spdlog/include/spdlog/async.h +0 -93
  1223. data/ext/third_party/spdlog/include/spdlog/async_logger-inl.h +0 -92
  1224. data/ext/third_party/spdlog/include/spdlog/async_logger.h +0 -68
  1225. data/ext/third_party/spdlog/include/spdlog/cfg/argv.h +0 -44
  1226. data/ext/third_party/spdlog/include/spdlog/cfg/env.h +0 -38
  1227. data/ext/third_party/spdlog/include/spdlog/cfg/helpers-inl.h +0 -119
  1228. data/ext/third_party/spdlog/include/spdlog/cfg/helpers.h +0 -29
  1229. data/ext/third_party/spdlog/include/spdlog/common-inl.h +0 -76
  1230. data/ext/third_party/spdlog/include/spdlog/common.h +0 -245
  1231. data/ext/third_party/spdlog/include/spdlog/details/backtracer-inl.h +0 -69
  1232. data/ext/third_party/spdlog/include/spdlog/details/backtracer.h +0 -45
  1233. data/ext/third_party/spdlog/include/spdlog/details/circular_q.h +0 -141
  1234. data/ext/third_party/spdlog/include/spdlog/details/console_globals.h +0 -32
  1235. data/ext/third_party/spdlog/include/spdlog/details/file_helper-inl.h +0 -132
  1236. data/ext/third_party/spdlog/include/spdlog/details/file_helper.h +0 -59
  1237. data/ext/third_party/spdlog/include/spdlog/details/fmt_helper.h +0 -116
  1238. data/ext/third_party/spdlog/include/spdlog/details/log_msg-inl.h +0 -37
  1239. data/ext/third_party/spdlog/include/spdlog/details/log_msg.h +0 -36
  1240. data/ext/third_party/spdlog/include/spdlog/details/log_msg_buffer-inl.h +0 -58
  1241. data/ext/third_party/spdlog/include/spdlog/details/log_msg_buffer.h +0 -33
  1242. data/ext/third_party/spdlog/include/spdlog/details/mpmc_blocking_q.h +0 -120
  1243. data/ext/third_party/spdlog/include/spdlog/details/null_mutex.h +0 -49
  1244. data/ext/third_party/spdlog/include/spdlog/details/os-inl.h +0 -554
  1245. data/ext/third_party/spdlog/include/spdlog/details/os.h +0 -111
  1246. data/ext/third_party/spdlog/include/spdlog/details/periodic_worker-inl.h +0 -49
  1247. data/ext/third_party/spdlog/include/spdlog/details/periodic_worker.h +0 -40
  1248. data/ext/third_party/spdlog/include/spdlog/details/registry-inl.h +0 -313
  1249. data/ext/third_party/spdlog/include/spdlog/details/registry.h +0 -115
  1250. data/ext/third_party/spdlog/include/spdlog/details/synchronous_factory.h +0 -24
  1251. data/ext/third_party/spdlog/include/spdlog/details/tcp_client-windows.h +0 -175
  1252. data/ext/third_party/spdlog/include/spdlog/details/tcp_client.h +0 -146
  1253. data/ext/third_party/spdlog/include/spdlog/details/thread_pool-inl.h +0 -124
  1254. data/ext/third_party/spdlog/include/spdlog/details/thread_pool.h +0 -120
  1255. data/ext/third_party/spdlog/include/spdlog/details/windows_include.h +0 -11
  1256. data/ext/third_party/spdlog/include/spdlog/fmt/bin_to_hex.h +0 -216
  1257. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/LICENSE.rst +0 -27
  1258. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/chrono.h +0 -1123
  1259. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/color.h +0 -566
  1260. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/compile.h +0 -665
  1261. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/core.h +0 -1882
  1262. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/format-inl.h +0 -1453
  1263. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/format.h +0 -3729
  1264. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/locale.h +0 -78
  1265. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/os.h +0 -450
  1266. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/ostream.h +0 -167
  1267. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/posix.h +0 -2
  1268. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/printf.h +0 -751
  1269. data/ext/third_party/spdlog/include/spdlog/fmt/bundled/ranges.h +0 -386
  1270. data/ext/third_party/spdlog/include/spdlog/fmt/chrono.h +0 -20
  1271. data/ext/third_party/spdlog/include/spdlog/fmt/fmt.h +0 -27
  1272. data/ext/third_party/spdlog/include/spdlog/fmt/ostr.h +0 -20
  1273. data/ext/third_party/spdlog/include/spdlog/formatter.h +0 -18
  1274. data/ext/third_party/spdlog/include/spdlog/fwd.h +0 -14
  1275. data/ext/third_party/spdlog/include/spdlog/logger-inl.h +0 -257
  1276. data/ext/third_party/spdlog/include/spdlog/logger.h +0 -366
  1277. data/ext/third_party/spdlog/include/spdlog/pattern_formatter-inl.h +0 -1373
  1278. data/ext/third_party/spdlog/include/spdlog/pattern_formatter.h +0 -126
  1279. data/ext/third_party/spdlog/include/spdlog/sinks/android_sink.h +0 -119
  1280. data/ext/third_party/spdlog/include/spdlog/sinks/ansicolor_sink-inl.h +0 -143
  1281. data/ext/third_party/spdlog/include/spdlog/sinks/ansicolor_sink.h +0 -118
  1282. data/ext/third_party/spdlog/include/spdlog/sinks/base_sink-inl.h +0 -63
  1283. data/ext/third_party/spdlog/include/spdlog/sinks/base_sink.h +0 -52
  1284. data/ext/third_party/spdlog/include/spdlog/sinks/basic_file_sink-inl.h +0 -43
  1285. data/ext/third_party/spdlog/include/spdlog/sinks/basic_file_sink.h +0 -58
  1286. data/ext/third_party/spdlog/include/spdlog/sinks/daily_file_sink.h +0 -204
  1287. data/ext/third_party/spdlog/include/spdlog/sinks/dist_sink.h +0 -97
  1288. data/ext/third_party/spdlog/include/spdlog/sinks/dup_filter_sink.h +0 -90
  1289. data/ext/third_party/spdlog/include/spdlog/sinks/msvc_sink.h +0 -49
  1290. data/ext/third_party/spdlog/include/spdlog/sinks/null_sink.h +0 -44
  1291. data/ext/third_party/spdlog/include/spdlog/sinks/ostream_sink.h +0 -50
  1292. data/ext/third_party/spdlog/include/spdlog/sinks/ringbuffer_sink.h +0 -74
  1293. data/ext/third_party/spdlog/include/spdlog/sinks/rotating_file_sink-inl.h +0 -131
  1294. data/ext/third_party/spdlog/include/spdlog/sinks/rotating_file_sink.h +0 -78
  1295. data/ext/third_party/spdlog/include/spdlog/sinks/sink-inl.h +0 -25
  1296. data/ext/third_party/spdlog/include/spdlog/sinks/sink.h +0 -35
  1297. data/ext/third_party/spdlog/include/spdlog/sinks/stdout_color_sinks-inl.h +0 -38
  1298. data/ext/third_party/spdlog/include/spdlog/sinks/stdout_color_sinks.h +0 -45
  1299. data/ext/third_party/spdlog/include/spdlog/sinks/stdout_sinks-inl.h +0 -123
  1300. data/ext/third_party/spdlog/include/spdlog/sinks/stdout_sinks.h +0 -87
  1301. data/ext/third_party/spdlog/include/spdlog/sinks/syslog_sink.h +0 -109
  1302. data/ext/third_party/spdlog/include/spdlog/sinks/systemd_sink.h +0 -103
  1303. data/ext/third_party/spdlog/include/spdlog/sinks/tcp_sink.h +0 -81
  1304. data/ext/third_party/spdlog/include/spdlog/sinks/win_eventlog_sink.h +0 -266
  1305. data/ext/third_party/spdlog/include/spdlog/sinks/wincolor_sink-inl.h +0 -170
  1306. data/ext/third_party/spdlog/include/spdlog/sinks/wincolor_sink.h +0 -94
  1307. data/ext/third_party/spdlog/include/spdlog/spdlog-inl.h +0 -125
  1308. data/ext/third_party/spdlog/include/spdlog/spdlog.h +0 -295
  1309. data/ext/third_party/spdlog/include/spdlog/stopwatch.h +0 -61
  1310. data/ext/third_party/spdlog/include/spdlog/tweakme.h +0 -116
  1311. data/ext/third_party/spdlog/include/spdlog/version.h +0 -10
  1312. data/ext/third_party/spdlog/src/async.cpp +0 -13
  1313. data/ext/third_party/spdlog/src/cfg.cpp +0 -8
  1314. data/ext/third_party/spdlog/src/color_sinks.cpp +0 -51
  1315. data/ext/third_party/spdlog/src/file_sinks.cpp +0 -20
  1316. data/ext/third_party/spdlog/src/fmt.cpp +0 -63
  1317. data/ext/third_party/spdlog/src/spdlog.cpp +0 -26
  1318. data/ext/third_party/spdlog/src/stdout_sinks.cpp +0 -29
@@ -1,76 +0,0 @@
1
- //
2
- // ssl/detail/write_op.hpp
3
- // ~~~~~~~~~~~~~~~~~~~~~~~
4
- //
5
- // Copyright (c) 2003-2020 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
- //
7
- // Distributed under the Boost Software License, Version 1.0. (See accompanying
8
- // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9
- //
10
-
11
- #ifndef ASIO_SSL_DETAIL_WRITE_OP_HPP
12
- #define ASIO_SSL_DETAIL_WRITE_OP_HPP
13
-
14
- #if defined(_MSC_VER) && (_MSC_VER >= 1200)
15
- # pragma once
16
- #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17
-
18
- #include "asio/detail/config.hpp"
19
-
20
- #include "asio/detail/buffer_sequence_adapter.hpp"
21
- #include "asio/ssl/detail/engine.hpp"
22
-
23
- #include "asio/detail/push_options.hpp"
24
-
25
- namespace asio {
26
- namespace ssl {
27
- namespace detail {
28
-
29
- template <typename ConstBufferSequence>
30
- class write_op
31
- {
32
- public:
33
- static ASIO_CONSTEXPR const char* tracking_name()
34
- {
35
- return "ssl::stream<>::async_write_some";
36
- }
37
-
38
- write_op(const ConstBufferSequence& buffers)
39
- : buffers_(buffers)
40
- {
41
- }
42
-
43
- engine::want operator()(engine& eng,
44
- asio::error_code& ec,
45
- std::size_t& bytes_transferred) const
46
- {
47
- unsigned char storage[
48
- asio::detail::buffer_sequence_adapter<asio::const_buffer,
49
- ConstBufferSequence>::linearisation_storage_size];
50
-
51
- asio::const_buffer buffer =
52
- asio::detail::buffer_sequence_adapter<asio::const_buffer,
53
- ConstBufferSequence>::linearise(buffers_, asio::buffer(storage));
54
-
55
- return eng.write(buffer, ec, bytes_transferred);
56
- }
57
-
58
- template <typename Handler>
59
- void call_handler(Handler& handler,
60
- const asio::error_code& ec,
61
- const std::size_t& bytes_transferred) const
62
- {
63
- handler(ec, bytes_transferred);
64
- }
65
-
66
- private:
67
- ConstBufferSequence buffers_;
68
- };
69
-
70
- } // namespace detail
71
- } // namespace ssl
72
- } // namespace asio
73
-
74
- #include "asio/detail/pop_options.hpp"
75
-
76
- #endif // ASIO_SSL_DETAIL_WRITE_OP_HPP
@@ -1,125 +0,0 @@
1
- //
2
- // ssl/error.hpp
3
- // ~~~~~~~~~~~~~
4
- //
5
- // Copyright (c) 2003-2020 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
- //
7
- // Distributed under the Boost Software License, Version 1.0. (See accompanying
8
- // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9
- //
10
-
11
- #ifndef ASIO_SSL_ERROR_HPP
12
- #define ASIO_SSL_ERROR_HPP
13
-
14
- #if defined(_MSC_VER) && (_MSC_VER >= 1200)
15
- # pragma once
16
- #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17
-
18
- #include "asio/detail/config.hpp"
19
- #include "asio/error_code.hpp"
20
- #include "asio/ssl/detail/openssl_types.hpp"
21
-
22
- #include "asio/detail/push_options.hpp"
23
-
24
- namespace asio {
25
- namespace error {
26
-
27
- enum ssl_errors
28
- {
29
- // Error numbers are those produced by openssl.
30
- };
31
-
32
- extern ASIO_DECL
33
- const asio::error_category& get_ssl_category();
34
-
35
- static const asio::error_category&
36
- ssl_category ASIO_UNUSED_VARIABLE
37
- = asio::error::get_ssl_category();
38
-
39
- } // namespace error
40
- namespace ssl {
41
- namespace error {
42
-
43
- enum stream_errors
44
- {
45
- #if defined(GENERATING_DOCUMENTATION)
46
- /// The underlying stream closed before the ssl stream gracefully shut down.
47
- stream_truncated,
48
-
49
- /// The underlying SSL library returned a system error without providing
50
- /// further information.
51
- unspecified_system_error,
52
-
53
- /// The underlying SSL library generated an unexpected result from a function
54
- /// call.
55
- unexpected_result
56
- #else // defined(GENERATING_DOCUMENTATION)
57
- # if (OPENSSL_VERSION_NUMBER < 0x10100000L) \
58
- && !defined(OPENSSL_IS_BORINGSSL) \
59
- && !defined(ASIO_USE_WOLFSSL)
60
- stream_truncated = ERR_PACK(ERR_LIB_SSL, 0, SSL_R_SHORT_READ),
61
- # else
62
- stream_truncated = 1,
63
- # endif
64
- unspecified_system_error = 2,
65
- unexpected_result = 3
66
- #endif // defined(GENERATING_DOCUMENTATION)
67
- };
68
-
69
- extern ASIO_DECL
70
- const asio::error_category& get_stream_category();
71
-
72
- static const asio::error_category&
73
- stream_category ASIO_UNUSED_VARIABLE
74
- = asio::ssl::error::get_stream_category();
75
-
76
- } // namespace error
77
- } // namespace ssl
78
- } // namespace asio
79
-
80
- #if defined(ASIO_HAS_STD_SYSTEM_ERROR)
81
- namespace std {
82
-
83
- template<> struct is_error_code_enum<asio::error::ssl_errors>
84
- {
85
- static const bool value = true;
86
- };
87
-
88
- template<> struct is_error_code_enum<asio::ssl::error::stream_errors>
89
- {
90
- static const bool value = true;
91
- };
92
-
93
- } // namespace std
94
- #endif // defined(ASIO_HAS_STD_SYSTEM_ERROR)
95
-
96
- namespace asio {
97
- namespace error {
98
-
99
- inline asio::error_code make_error_code(ssl_errors e)
100
- {
101
- return asio::error_code(
102
- static_cast<int>(e), get_ssl_category());
103
- }
104
-
105
- } // namespace error
106
- namespace ssl {
107
- namespace error {
108
-
109
- inline asio::error_code make_error_code(stream_errors e)
110
- {
111
- return asio::error_code(
112
- static_cast<int>(e), get_stream_category());
113
- }
114
-
115
- } // namespace error
116
- } // namespace ssl
117
- } // namespace asio
118
-
119
- #include "asio/detail/pop_options.hpp"
120
-
121
- #if defined(ASIO_HEADER_ONLY)
122
- # include "asio/ssl/impl/error.ipp"
123
- #endif // defined(ASIO_HEADER_ONLY)
124
-
125
- #endif // ASIO_SSL_ERROR_HPP
@@ -1,90 +0,0 @@
1
- //
2
- // ssl/host_name_verification.hpp
3
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4
- //
5
- // Copyright (c) 2003-2020 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
- //
7
- // Distributed under the Boost Software License, Version 1.0. (See accompanying
8
- // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9
- //
10
-
11
- #ifndef ASIO_SSL_HOST_NAME_VERIFICATION_HPP
12
- #define ASIO_SSL_HOST_NAME_VERIFICATION_HPP
13
-
14
- #if defined(_MSC_VER) && (_MSC_VER >= 1200)
15
- # pragma once
16
- #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17
-
18
- #include "asio/detail/config.hpp"
19
-
20
- #include <string>
21
- #include "asio/ssl/detail/openssl_types.hpp"
22
- #include "asio/ssl/verify_context.hpp"
23
-
24
- #include "asio/detail/push_options.hpp"
25
-
26
- namespace asio {
27
- namespace ssl {
28
-
29
- /// Verifies a certificate against a host_name according to the rules described
30
- /// in RFC 6125.
31
- /**
32
- * @par Example
33
- * The following example shows how to synchronously open a secure connection to
34
- * a given host name:
35
- * @code
36
- * using asio::ip::tcp;
37
- * namespace ssl = asio::ssl;
38
- * typedef ssl::stream<tcp::socket> ssl_socket;
39
- *
40
- * // Create a context that uses the default paths for finding CA certificates.
41
- * ssl::context ctx(ssl::context::sslv23);
42
- * ctx.set_default_verify_paths();
43
- *
44
- * // Open a socket and connect it to the remote host.
45
- * asio::io_context io_context;
46
- * ssl_socket sock(io_context, ctx);
47
- * tcp::resolver resolver(io_context);
48
- * tcp::resolver::query query("host.name", "https");
49
- * asio::connect(sock.lowest_layer(), resolver.resolve(query));
50
- * sock.lowest_layer().set_option(tcp::no_delay(true));
51
- *
52
- * // Perform SSL handshake and verify the remote host's certificate.
53
- * sock.set_verify_mode(ssl::verify_peer);
54
- * sock.set_verify_callback(ssl::host_name_verification("host.name"));
55
- * sock.handshake(ssl_socket::client);
56
- *
57
- * // ... read and write as normal ...
58
- * @endcode
59
- */
60
- class host_name_verification
61
- {
62
- public:
63
- /// The type of the function object's result.
64
- typedef bool result_type;
65
-
66
- /// Constructor.
67
- explicit host_name_verification(const std::string& host)
68
- : host_(host)
69
- {
70
- }
71
-
72
- /// Perform certificate verification.
73
- ASIO_DECL bool operator()(bool preverified, verify_context& ctx) const;
74
-
75
- private:
76
- // Helper function to check a host name against an IPv4 address
77
- // The host name to be checked.
78
- std::string host_;
79
- };
80
-
81
- } // namespace ssl
82
- } // namespace asio
83
-
84
- #include "asio/detail/pop_options.hpp"
85
-
86
- #if defined(ASIO_HEADER_ONLY)
87
- # include "asio/ssl/impl/host_name_verification.ipp"
88
- #endif // defined(ASIO_HEADER_ONLY)
89
-
90
- #endif // ASIO_SSL_HOST_NAME_VERIFICATION_HPP
@@ -1,67 +0,0 @@
1
- //
2
- // ssl/impl/context.hpp
3
- // ~~~~~~~~~~~~~~~~~~~~
4
- //
5
- // Copyright (c) 2005 Voipster / Indrek dot Juhani at voipster dot com
6
- // Copyright (c) 2005-2020 Christopher M. Kohlhoff (chris at kohlhoff dot com)
7
- //
8
- // Distributed under the Boost Software License, Version 1.0. (See accompanying
9
- // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
10
- //
11
-
12
- #ifndef ASIO_SSL_IMPL_CONTEXT_HPP
13
- #define ASIO_SSL_IMPL_CONTEXT_HPP
14
-
15
- #if defined(_MSC_VER) && (_MSC_VER >= 1200)
16
- # pragma once
17
- #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
18
-
19
- #include "asio/detail/config.hpp"
20
-
21
- #include "asio/detail/throw_error.hpp"
22
-
23
- #include "asio/detail/push_options.hpp"
24
-
25
- namespace asio {
26
- namespace ssl {
27
-
28
- template <typename VerifyCallback>
29
- void context::set_verify_callback(VerifyCallback callback)
30
- {
31
- asio::error_code ec;
32
- this->set_verify_callback(callback, ec);
33
- asio::detail::throw_error(ec, "set_verify_callback");
34
- }
35
-
36
- template <typename VerifyCallback>
37
- ASIO_SYNC_OP_VOID context::set_verify_callback(
38
- VerifyCallback callback, asio::error_code& ec)
39
- {
40
- do_set_verify_callback(
41
- new detail::verify_callback<VerifyCallback>(callback), ec);
42
- ASIO_SYNC_OP_VOID_RETURN(ec);
43
- }
44
-
45
- template <typename PasswordCallback>
46
- void context::set_password_callback(PasswordCallback callback)
47
- {
48
- asio::error_code ec;
49
- this->set_password_callback(callback, ec);
50
- asio::detail::throw_error(ec, "set_password_callback");
51
- }
52
-
53
- template <typename PasswordCallback>
54
- ASIO_SYNC_OP_VOID context::set_password_callback(
55
- PasswordCallback callback, asio::error_code& ec)
56
- {
57
- do_set_password_callback(
58
- new detail::password_callback<PasswordCallback>(callback), ec);
59
- ASIO_SYNC_OP_VOID_RETURN(ec);
60
- }
61
-
62
- } // namespace ssl
63
- } // namespace asio
64
-
65
- #include "asio/detail/pop_options.hpp"
66
-
67
- #endif // ASIO_SSL_IMPL_CONTEXT_HPP
@@ -1,1238 +0,0 @@
1
- //
2
- // ssl/impl/context.ipp
3
- // ~~~~~~~~~~~~~~~~~~~~
4
- //
5
- // Copyright (c) 2005 Voipster / Indrek dot Juhani at voipster dot com
6
- // Copyright (c) 2005-2020 Christopher M. Kohlhoff (chris at kohlhoff dot com)
7
- //
8
- // Distributed under the Boost Software License, Version 1.0. (See accompanying
9
- // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
10
- //
11
-
12
- #ifndef ASIO_SSL_IMPL_CONTEXT_IPP
13
- #define ASIO_SSL_IMPL_CONTEXT_IPP
14
-
15
- #if defined(_MSC_VER) && (_MSC_VER >= 1200)
16
- # pragma once
17
- #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
18
-
19
- #include "asio/detail/config.hpp"
20
-
21
- #include <cstring>
22
- #include "asio/detail/throw_error.hpp"
23
- #include "asio/error.hpp"
24
- #include "asio/ssl/context.hpp"
25
- #include "asio/ssl/error.hpp"
26
-
27
- #include "asio/detail/push_options.hpp"
28
-
29
- namespace asio {
30
- namespace ssl {
31
-
32
- struct context::bio_cleanup
33
- {
34
- BIO* p;
35
- ~bio_cleanup() { if (p) ::BIO_free(p); }
36
- };
37
-
38
- struct context::x509_cleanup
39
- {
40
- X509* p;
41
- ~x509_cleanup() { if (p) ::X509_free(p); }
42
- };
43
-
44
- struct context::evp_pkey_cleanup
45
- {
46
- EVP_PKEY* p;
47
- ~evp_pkey_cleanup() { if (p) ::EVP_PKEY_free(p); }
48
- };
49
-
50
- struct context::rsa_cleanup
51
- {
52
- RSA* p;
53
- ~rsa_cleanup() { if (p) ::RSA_free(p); }
54
- };
55
-
56
- struct context::dh_cleanup
57
- {
58
- DH* p;
59
- ~dh_cleanup() { if (p) ::DH_free(p); }
60
- };
61
-
62
- context::context(context::method m)
63
- : handle_(0)
64
- {
65
- ::ERR_clear_error();
66
-
67
- switch (m)
68
- {
69
- // SSL v2.
70
- #if (OPENSSL_VERSION_NUMBER >= 0x10100000L) || defined(OPENSSL_NO_SSL2)
71
- case context::sslv2:
72
- case context::sslv2_client:
73
- case context::sslv2_server:
74
- asio::detail::throw_error(
75
- asio::error::invalid_argument, "context");
76
- break;
77
- #else // (OPENSSL_VERSION_NUMBER >= 0x10100000L) || defined(OPENSSL_NO_SSL2)
78
- case context::sslv2:
79
- handle_ = ::SSL_CTX_new(::SSLv2_method());
80
- break;
81
- case context::sslv2_client:
82
- handle_ = ::SSL_CTX_new(::SSLv2_client_method());
83
- break;
84
- case context::sslv2_server:
85
- handle_ = ::SSL_CTX_new(::SSLv2_server_method());
86
- break;
87
- #endif // (OPENSSL_VERSION_NUMBER >= 0x10100000L) || defined(OPENSSL_NO_SSL2)
88
-
89
- // SSL v3.
90
- #if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
91
- case context::sslv3:
92
- handle_ = ::SSL_CTX_new(::TLS_method());
93
- if (handle_)
94
- {
95
- SSL_CTX_set_min_proto_version(handle_, SSL3_VERSION);
96
- SSL_CTX_set_max_proto_version(handle_, SSL3_VERSION);
97
- }
98
- break;
99
- case context::sslv3_client:
100
- handle_ = ::SSL_CTX_new(::TLS_client_method());
101
- if (handle_)
102
- {
103
- SSL_CTX_set_min_proto_version(handle_, SSL3_VERSION);
104
- SSL_CTX_set_max_proto_version(handle_, SSL3_VERSION);
105
- }
106
- break;
107
- case context::sslv3_server:
108
- handle_ = ::SSL_CTX_new(::TLS_server_method());
109
- if (handle_)
110
- {
111
- SSL_CTX_set_min_proto_version(handle_, SSL3_VERSION);
112
- SSL_CTX_set_max_proto_version(handle_, SSL3_VERSION);
113
- }
114
- break;
115
- #elif defined(OPENSSL_NO_SSL3)
116
- case context::sslv3:
117
- case context::sslv3_client:
118
- case context::sslv3_server:
119
- asio::detail::throw_error(
120
- asio::error::invalid_argument, "context");
121
- break;
122
- #else // defined(OPENSSL_NO_SSL3)
123
- case context::sslv3:
124
- handle_ = ::SSL_CTX_new(::SSLv3_method());
125
- break;
126
- case context::sslv3_client:
127
- handle_ = ::SSL_CTX_new(::SSLv3_client_method());
128
- break;
129
- case context::sslv3_server:
130
- handle_ = ::SSL_CTX_new(::SSLv3_server_method());
131
- break;
132
- #endif // defined(OPENSSL_NO_SSL3)
133
-
134
- // TLS v1.0.
135
- #if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
136
- case context::tlsv1:
137
- handle_ = ::SSL_CTX_new(::TLS_method());
138
- if (handle_)
139
- {
140
- SSL_CTX_set_min_proto_version(handle_, TLS1_VERSION);
141
- SSL_CTX_set_max_proto_version(handle_, TLS1_VERSION);
142
- }
143
- break;
144
- case context::tlsv1_client:
145
- handle_ = ::SSL_CTX_new(::TLS_client_method());
146
- if (handle_)
147
- {
148
- SSL_CTX_set_min_proto_version(handle_, TLS1_VERSION);
149
- SSL_CTX_set_max_proto_version(handle_, TLS1_VERSION);
150
- }
151
- break;
152
- case context::tlsv1_server:
153
- handle_ = ::SSL_CTX_new(::TLS_server_method());
154
- if (handle_)
155
- {
156
- SSL_CTX_set_min_proto_version(handle_, TLS1_VERSION);
157
- SSL_CTX_set_max_proto_version(handle_, TLS1_VERSION);
158
- }
159
- break;
160
- #elif defined(SSL_TXT_TLSV1)
161
- case context::tlsv1:
162
- handle_ = ::SSL_CTX_new(::TLSv1_method());
163
- break;
164
- case context::tlsv1_client:
165
- handle_ = ::SSL_CTX_new(::TLSv1_client_method());
166
- break;
167
- case context::tlsv1_server:
168
- handle_ = ::SSL_CTX_new(::TLSv1_server_method());
169
- break;
170
- #else // defined(SSL_TXT_TLSV1)
171
- case context::tlsv1:
172
- case context::tlsv1_client:
173
- case context::tlsv1_server:
174
- asio::detail::throw_error(
175
- asio::error::invalid_argument, "context");
176
- break;
177
- #endif // defined(SSL_TXT_TLSV1)
178
-
179
- // TLS v1.1.
180
- #if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
181
- case context::tlsv11:
182
- handle_ = ::SSL_CTX_new(::TLS_method());
183
- if (handle_)
184
- {
185
- SSL_CTX_set_min_proto_version(handle_, TLS1_1_VERSION);
186
- SSL_CTX_set_max_proto_version(handle_, TLS1_1_VERSION);
187
- }
188
- break;
189
- case context::tlsv11_client:
190
- handle_ = ::SSL_CTX_new(::TLS_client_method());
191
- if (handle_)
192
- {
193
- SSL_CTX_set_min_proto_version(handle_, TLS1_1_VERSION);
194
- SSL_CTX_set_max_proto_version(handle_, TLS1_1_VERSION);
195
- }
196
- break;
197
- case context::tlsv11_server:
198
- handle_ = ::SSL_CTX_new(::TLS_server_method());
199
- if (handle_)
200
- {
201
- SSL_CTX_set_min_proto_version(handle_, TLS1_1_VERSION);
202
- SSL_CTX_set_max_proto_version(handle_, TLS1_1_VERSION);
203
- }
204
- break;
205
- #elif defined(SSL_TXT_TLSV1_1)
206
- case context::tlsv11:
207
- handle_ = ::SSL_CTX_new(::TLSv1_1_method());
208
- break;
209
- case context::tlsv11_client:
210
- handle_ = ::SSL_CTX_new(::TLSv1_1_client_method());
211
- break;
212
- case context::tlsv11_server:
213
- handle_ = ::SSL_CTX_new(::TLSv1_1_server_method());
214
- break;
215
- #else // defined(SSL_TXT_TLSV1_1)
216
- case context::tlsv11:
217
- case context::tlsv11_client:
218
- case context::tlsv11_server:
219
- asio::detail::throw_error(
220
- asio::error::invalid_argument, "context");
221
- break;
222
- #endif // defined(SSL_TXT_TLSV1_1)
223
-
224
- // TLS v1.2.
225
- #if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
226
- case context::tlsv12:
227
- handle_ = ::SSL_CTX_new(::TLS_method());
228
- if (handle_)
229
- {
230
- SSL_CTX_set_min_proto_version(handle_, TLS1_2_VERSION);
231
- SSL_CTX_set_max_proto_version(handle_, TLS1_2_VERSION);
232
- }
233
- break;
234
- case context::tlsv12_client:
235
- handle_ = ::SSL_CTX_new(::TLS_client_method());
236
- if (handle_)
237
- {
238
- SSL_CTX_set_min_proto_version(handle_, TLS1_2_VERSION);
239
- SSL_CTX_set_max_proto_version(handle_, TLS1_2_VERSION);
240
- }
241
- break;
242
- case context::tlsv12_server:
243
- handle_ = ::SSL_CTX_new(::TLS_server_method());
244
- if (handle_)
245
- {
246
- SSL_CTX_set_min_proto_version(handle_, TLS1_2_VERSION);
247
- SSL_CTX_set_max_proto_version(handle_, TLS1_2_VERSION);
248
- }
249
- break;
250
- #elif defined(SSL_TXT_TLSV1_2)
251
- case context::tlsv12:
252
- handle_ = ::SSL_CTX_new(::TLSv1_2_method());
253
- break;
254
- case context::tlsv12_client:
255
- handle_ = ::SSL_CTX_new(::TLSv1_2_client_method());
256
- break;
257
- case context::tlsv12_server:
258
- handle_ = ::SSL_CTX_new(::TLSv1_2_server_method());
259
- break;
260
- #else // defined(SSL_TXT_TLSV1_2)
261
- case context::tlsv12:
262
- case context::tlsv12_client:
263
- case context::tlsv12_server:
264
- asio::detail::throw_error(
265
- asio::error::invalid_argument, "context");
266
- break;
267
- #endif // defined(SSL_TXT_TLSV1_2)
268
-
269
- // TLS v1.3.
270
- #if (OPENSSL_VERSION_NUMBER >= 0x10101000L) \
271
- && !defined(LIBRESSL_VERSION_NUMBER)
272
- case context::tlsv13:
273
- handle_ = ::SSL_CTX_new(::TLS_method());
274
- if (handle_)
275
- {
276
- SSL_CTX_set_min_proto_version(handle_, TLS1_3_VERSION);
277
- SSL_CTX_set_max_proto_version(handle_, TLS1_3_VERSION);
278
- }
279
- break;
280
- case context::tlsv13_client:
281
- handle_ = ::SSL_CTX_new(::TLS_client_method());
282
- if (handle_)
283
- {
284
- SSL_CTX_set_min_proto_version(handle_, TLS1_3_VERSION);
285
- SSL_CTX_set_max_proto_version(handle_, TLS1_3_VERSION);
286
- }
287
- break;
288
- case context::tlsv13_server:
289
- handle_ = ::SSL_CTX_new(::TLS_server_method());
290
- if (handle_)
291
- {
292
- SSL_CTX_set_min_proto_version(handle_, TLS1_3_VERSION);
293
- SSL_CTX_set_max_proto_version(handle_, TLS1_3_VERSION);
294
- }
295
- break;
296
- #else // (OPENSSL_VERSION_NUMBER >= 0x10101000L)
297
- // && !defined(LIBRESSL_VERSION_NUMBER)
298
- case context::tlsv13:
299
- case context::tlsv13_client:
300
- case context::tlsv13_server:
301
- asio::detail::throw_error(
302
- asio::error::invalid_argument, "context");
303
- break;
304
- #endif // (OPENSSL_VERSION_NUMBER >= 0x10101000L)
305
- // && !defined(LIBRESSL_VERSION_NUMBER)
306
-
307
- // Any supported SSL/TLS version.
308
- case context::sslv23:
309
- handle_ = ::SSL_CTX_new(::SSLv23_method());
310
- break;
311
- case context::sslv23_client:
312
- handle_ = ::SSL_CTX_new(::SSLv23_client_method());
313
- break;
314
- case context::sslv23_server:
315
- handle_ = ::SSL_CTX_new(::SSLv23_server_method());
316
- break;
317
-
318
- // Any supported TLS version.
319
- #if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
320
- case context::tls:
321
- handle_ = ::SSL_CTX_new(::TLS_method());
322
- if (handle_)
323
- SSL_CTX_set_min_proto_version(handle_, TLS1_VERSION);
324
- break;
325
- case context::tls_client:
326
- handle_ = ::SSL_CTX_new(::TLS_client_method());
327
- if (handle_)
328
- SSL_CTX_set_min_proto_version(handle_, TLS1_VERSION);
329
- break;
330
- case context::tls_server:
331
- handle_ = ::SSL_CTX_new(::TLS_server_method());
332
- if (handle_)
333
- SSL_CTX_set_min_proto_version(handle_, TLS1_VERSION);
334
- break;
335
- #else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
336
- case context::tls:
337
- handle_ = ::SSL_CTX_new(::SSLv23_method());
338
- if (handle_)
339
- SSL_CTX_set_options(handle_, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3);
340
- break;
341
- case context::tls_client:
342
- handle_ = ::SSL_CTX_new(::SSLv23_client_method());
343
- if (handle_)
344
- SSL_CTX_set_options(handle_, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3);
345
- break;
346
- case context::tls_server:
347
- handle_ = ::SSL_CTX_new(::SSLv23_server_method());
348
- if (handle_)
349
- SSL_CTX_set_options(handle_, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3);
350
- break;
351
- #endif // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
352
-
353
- default:
354
- handle_ = ::SSL_CTX_new(0);
355
- break;
356
- }
357
-
358
- if (handle_ == 0)
359
- {
360
- asio::error_code ec(
361
- static_cast<int>(::ERR_get_error()),
362
- asio::error::get_ssl_category());
363
- asio::detail::throw_error(ec, "context");
364
- }
365
-
366
- set_options(no_compression);
367
- }
368
-
369
- context::context(context::native_handle_type native_handle)
370
- : handle_(native_handle)
371
- {
372
- if (!handle_)
373
- {
374
- asio::detail::throw_error(
375
- asio::error::invalid_argument, "context");
376
- }
377
- }
378
-
379
- #if defined(ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION)
380
- context::context(context&& other)
381
- {
382
- handle_ = other.handle_;
383
- other.handle_ = 0;
384
- }
385
-
386
- context& context::operator=(context&& other)
387
- {
388
- context tmp(ASIO_MOVE_CAST(context)(*this));
389
- handle_ = other.handle_;
390
- other.handle_ = 0;
391
- return *this;
392
- }
393
- #endif // defined(ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION)
394
-
395
- context::~context()
396
- {
397
- if (handle_)
398
- {
399
- #if ((OPENSSL_VERSION_NUMBER >= 0x10100000L) \
400
- && !defined(LIBRESSL_VERSION_NUMBER)) \
401
- || defined(ASIO_USE_WOLFSSL)
402
- void* cb_userdata = ::SSL_CTX_get_default_passwd_cb_userdata(handle_);
403
- #else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
404
- void* cb_userdata = handle_->default_passwd_callback_userdata;
405
- #endif // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
406
- if (cb_userdata)
407
- {
408
- detail::password_callback_base* callback =
409
- static_cast<detail::password_callback_base*>(
410
- cb_userdata);
411
- delete callback;
412
- #if ((OPENSSL_VERSION_NUMBER >= 0x10100000L) \
413
- && !defined(LIBRESSL_VERSION_NUMBER)) \
414
- || defined(ASIO_USE_WOLFSSL)
415
- ::SSL_CTX_set_default_passwd_cb_userdata(handle_, 0);
416
- #else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
417
- handle_->default_passwd_callback_userdata = 0;
418
- #endif // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
419
- }
420
-
421
- if (SSL_CTX_get_app_data(handle_))
422
- {
423
- detail::verify_callback_base* callback =
424
- static_cast<detail::verify_callback_base*>(
425
- SSL_CTX_get_app_data(handle_));
426
- delete callback;
427
- SSL_CTX_set_app_data(handle_, 0);
428
- }
429
-
430
- ::SSL_CTX_free(handle_);
431
- }
432
- }
433
-
434
- context::native_handle_type context::native_handle()
435
- {
436
- return handle_;
437
- }
438
-
439
- void context::clear_options(context::options o)
440
- {
441
- asio::error_code ec;
442
- clear_options(o, ec);
443
- asio::detail::throw_error(ec, "clear_options");
444
- }
445
-
446
- ASIO_SYNC_OP_VOID context::clear_options(
447
- context::options o, asio::error_code& ec)
448
- {
449
- #if (OPENSSL_VERSION_NUMBER >= 0x009080DFL) \
450
- && (OPENSSL_VERSION_NUMBER != 0x00909000L)
451
- # if !defined(SSL_OP_NO_COMPRESSION)
452
- if ((o & context::no_compression) != 0)
453
- {
454
- # if (OPENSSL_VERSION_NUMBER >= 0x00908000L)
455
- handle_->comp_methods = SSL_COMP_get_compression_methods();
456
- # endif // (OPENSSL_VERSION_NUMBER >= 0x00908000L)
457
- o ^= context::no_compression;
458
- }
459
- # endif // !defined(SSL_OP_NO_COMPRESSION)
460
-
461
- ::SSL_CTX_clear_options(handle_, o);
462
-
463
- ec = asio::error_code();
464
- #else // (OPENSSL_VERSION_NUMBER >= 0x009080DFL)
465
- // && (OPENSSL_VERSION_NUMBER != 0x00909000L)
466
- (void)o;
467
- ec = asio::error::operation_not_supported;
468
- #endif // (OPENSSL_VERSION_NUMBER >= 0x009080DFL)
469
- // && (OPENSSL_VERSION_NUMBER != 0x00909000L)
470
- ASIO_SYNC_OP_VOID_RETURN(ec);
471
- }
472
-
473
- void context::set_options(context::options o)
474
- {
475
- asio::error_code ec;
476
- set_options(o, ec);
477
- asio::detail::throw_error(ec, "set_options");
478
- }
479
-
480
- ASIO_SYNC_OP_VOID context::set_options(
481
- context::options o, asio::error_code& ec)
482
- {
483
- #if !defined(SSL_OP_NO_COMPRESSION)
484
- if ((o & context::no_compression) != 0)
485
- {
486
- #if (OPENSSL_VERSION_NUMBER >= 0x00908000L)
487
- handle_->comp_methods =
488
- asio::ssl::detail::openssl_init<>::get_null_compression_methods();
489
- #endif // (OPENSSL_VERSION_NUMBER >= 0x00908000L)
490
- o ^= context::no_compression;
491
- }
492
- #endif // !defined(SSL_OP_NO_COMPRESSION)
493
-
494
- ::SSL_CTX_set_options(handle_, o);
495
-
496
- ec = asio::error_code();
497
- ASIO_SYNC_OP_VOID_RETURN(ec);
498
- }
499
-
500
- void context::set_verify_mode(verify_mode v)
501
- {
502
- asio::error_code ec;
503
- set_verify_mode(v, ec);
504
- asio::detail::throw_error(ec, "set_verify_mode");
505
- }
506
-
507
- ASIO_SYNC_OP_VOID context::set_verify_mode(
508
- verify_mode v, asio::error_code& ec)
509
- {
510
- ::SSL_CTX_set_verify(handle_, v, ::SSL_CTX_get_verify_callback(handle_));
511
-
512
- ec = asio::error_code();
513
- ASIO_SYNC_OP_VOID_RETURN(ec);
514
- }
515
-
516
- void context::set_verify_depth(int depth)
517
- {
518
- asio::error_code ec;
519
- set_verify_depth(depth, ec);
520
- asio::detail::throw_error(ec, "set_verify_depth");
521
- }
522
-
523
- ASIO_SYNC_OP_VOID context::set_verify_depth(
524
- int depth, asio::error_code& ec)
525
- {
526
- ::SSL_CTX_set_verify_depth(handle_, depth);
527
-
528
- ec = asio::error_code();
529
- ASIO_SYNC_OP_VOID_RETURN(ec);
530
- }
531
-
532
- void context::load_verify_file(const std::string& filename)
533
- {
534
- asio::error_code ec;
535
- load_verify_file(filename, ec);
536
- asio::detail::throw_error(ec, "load_verify_file");
537
- }
538
-
539
- ASIO_SYNC_OP_VOID context::load_verify_file(
540
- const std::string& filename, asio::error_code& ec)
541
- {
542
- ::ERR_clear_error();
543
-
544
- if (::SSL_CTX_load_verify_locations(handle_, filename.c_str(), 0) != 1)
545
- {
546
- ec = asio::error_code(
547
- static_cast<int>(::ERR_get_error()),
548
- asio::error::get_ssl_category());
549
- ASIO_SYNC_OP_VOID_RETURN(ec);
550
- }
551
-
552
- ec = asio::error_code();
553
- ASIO_SYNC_OP_VOID_RETURN(ec);
554
- }
555
-
556
- void context::add_certificate_authority(const const_buffer& ca)
557
- {
558
- asio::error_code ec;
559
- add_certificate_authority(ca, ec);
560
- asio::detail::throw_error(ec, "add_certificate_authority");
561
- }
562
-
563
- ASIO_SYNC_OP_VOID context::add_certificate_authority(
564
- const const_buffer& ca, asio::error_code& ec)
565
- {
566
- ::ERR_clear_error();
567
-
568
- bio_cleanup bio = { make_buffer_bio(ca) };
569
- if (bio.p)
570
- {
571
- if (X509_STORE* store = ::SSL_CTX_get_cert_store(handle_))
572
- {
573
- for (bool added = false;; added = true)
574
- {
575
- x509_cleanup cert = { ::PEM_read_bio_X509(bio.p, 0, 0, 0) };
576
- if (!cert.p)
577
- {
578
- unsigned long err = ::ERR_get_error();
579
- if (added && ERR_GET_LIB(err) == ERR_LIB_PEM
580
- && ERR_GET_REASON(err) == PEM_R_NO_START_LINE)
581
- break;
582
-
583
- ec = asio::error_code(
584
- static_cast<int>(err),
585
- asio::error::get_ssl_category());
586
- ASIO_SYNC_OP_VOID_RETURN(ec);
587
- }
588
-
589
- if (::X509_STORE_add_cert(store, cert.p) != 1)
590
- {
591
- ec = asio::error_code(
592
- static_cast<int>(::ERR_get_error()),
593
- asio::error::get_ssl_category());
594
- ASIO_SYNC_OP_VOID_RETURN(ec);
595
- }
596
- }
597
- }
598
- }
599
-
600
- ec = asio::error_code();
601
- ASIO_SYNC_OP_VOID_RETURN(ec);
602
- }
603
-
604
- void context::set_default_verify_paths()
605
- {
606
- asio::error_code ec;
607
- set_default_verify_paths(ec);
608
- asio::detail::throw_error(ec, "set_default_verify_paths");
609
- }
610
-
611
- ASIO_SYNC_OP_VOID context::set_default_verify_paths(
612
- asio::error_code& ec)
613
- {
614
- ::ERR_clear_error();
615
-
616
- if (::SSL_CTX_set_default_verify_paths(handle_) != 1)
617
- {
618
- ec = asio::error_code(
619
- static_cast<int>(::ERR_get_error()),
620
- asio::error::get_ssl_category());
621
- ASIO_SYNC_OP_VOID_RETURN(ec);
622
- }
623
-
624
- ec = asio::error_code();
625
- ASIO_SYNC_OP_VOID_RETURN(ec);
626
- }
627
-
628
- void context::add_verify_path(const std::string& path)
629
- {
630
- asio::error_code ec;
631
- add_verify_path(path, ec);
632
- asio::detail::throw_error(ec, "add_verify_path");
633
- }
634
-
635
- ASIO_SYNC_OP_VOID context::add_verify_path(
636
- const std::string& path, asio::error_code& ec)
637
- {
638
- ::ERR_clear_error();
639
-
640
- if (::SSL_CTX_load_verify_locations(handle_, 0, path.c_str()) != 1)
641
- {
642
- ec = asio::error_code(
643
- static_cast<int>(::ERR_get_error()),
644
- asio::error::get_ssl_category());
645
- ASIO_SYNC_OP_VOID_RETURN(ec);
646
- }
647
-
648
- ec = asio::error_code();
649
- ASIO_SYNC_OP_VOID_RETURN(ec);
650
- }
651
-
652
- void context::use_certificate(
653
- const const_buffer& certificate, file_format format)
654
- {
655
- asio::error_code ec;
656
- use_certificate(certificate, format, ec);
657
- asio::detail::throw_error(ec, "use_certificate");
658
- }
659
-
660
- ASIO_SYNC_OP_VOID context::use_certificate(
661
- const const_buffer& certificate, file_format format,
662
- asio::error_code& ec)
663
- {
664
- ::ERR_clear_error();
665
-
666
- if (format == context_base::asn1)
667
- {
668
- if (::SSL_CTX_use_certificate_ASN1(handle_,
669
- static_cast<int>(certificate.size()),
670
- static_cast<const unsigned char*>(certificate.data())) == 1)
671
- {
672
- ec = asio::error_code();
673
- ASIO_SYNC_OP_VOID_RETURN(ec);
674
- }
675
- }
676
- else if (format == context_base::pem)
677
- {
678
- bio_cleanup bio = { make_buffer_bio(certificate) };
679
- if (bio.p)
680
- {
681
- x509_cleanup cert = { ::PEM_read_bio_X509(bio.p, 0, 0, 0) };
682
- if (cert.p)
683
- {
684
- if (::SSL_CTX_use_certificate(handle_, cert.p) == 1)
685
- {
686
- ec = asio::error_code();
687
- ASIO_SYNC_OP_VOID_RETURN(ec);
688
- }
689
- }
690
- }
691
- }
692
- else
693
- {
694
- ec = asio::error::invalid_argument;
695
- ASIO_SYNC_OP_VOID_RETURN(ec);
696
- }
697
-
698
- ec = asio::error_code(
699
- static_cast<int>(::ERR_get_error()),
700
- asio::error::get_ssl_category());
701
- ASIO_SYNC_OP_VOID_RETURN(ec);
702
- }
703
-
704
- void context::use_certificate_file(
705
- const std::string& filename, file_format format)
706
- {
707
- asio::error_code ec;
708
- use_certificate_file(filename, format, ec);
709
- asio::detail::throw_error(ec, "use_certificate_file");
710
- }
711
-
712
- ASIO_SYNC_OP_VOID context::use_certificate_file(
713
- const std::string& filename, file_format format,
714
- asio::error_code& ec)
715
- {
716
- int file_type;
717
- switch (format)
718
- {
719
- case context_base::asn1:
720
- file_type = SSL_FILETYPE_ASN1;
721
- break;
722
- case context_base::pem:
723
- file_type = SSL_FILETYPE_PEM;
724
- break;
725
- default:
726
- {
727
- ec = asio::error::invalid_argument;
728
- ASIO_SYNC_OP_VOID_RETURN(ec);
729
- }
730
- }
731
-
732
- ::ERR_clear_error();
733
-
734
- if (::SSL_CTX_use_certificate_file(handle_, filename.c_str(), file_type) != 1)
735
- {
736
- ec = asio::error_code(
737
- static_cast<int>(::ERR_get_error()),
738
- asio::error::get_ssl_category());
739
- ASIO_SYNC_OP_VOID_RETURN(ec);
740
- }
741
-
742
- ec = asio::error_code();
743
- ASIO_SYNC_OP_VOID_RETURN(ec);
744
- }
745
-
746
- void context::use_certificate_chain(const const_buffer& chain)
747
- {
748
- asio::error_code ec;
749
- use_certificate_chain(chain, ec);
750
- asio::detail::throw_error(ec, "use_certificate_chain");
751
- }
752
-
753
- ASIO_SYNC_OP_VOID context::use_certificate_chain(
754
- const const_buffer& chain, asio::error_code& ec)
755
- {
756
- ::ERR_clear_error();
757
-
758
- bio_cleanup bio = { make_buffer_bio(chain) };
759
- if (bio.p)
760
- {
761
- #if ((OPENSSL_VERSION_NUMBER >= 0x10100000L) \
762
- && !defined(LIBRESSL_VERSION_NUMBER)) \
763
- || defined(ASIO_USE_WOLFSSL)
764
- pem_password_cb* callback = ::SSL_CTX_get_default_passwd_cb(handle_);
765
- void* cb_userdata = ::SSL_CTX_get_default_passwd_cb_userdata(handle_);
766
- #else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
767
- pem_password_cb* callback = handle_->default_passwd_callback;
768
- void* cb_userdata = handle_->default_passwd_callback_userdata;
769
- #endif // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
770
- x509_cleanup cert = {
771
- ::PEM_read_bio_X509_AUX(bio.p, 0,
772
- callback,
773
- cb_userdata) };
774
- if (!cert.p)
775
- {
776
- ec = asio::error_code(ERR_R_PEM_LIB,
777
- asio::error::get_ssl_category());
778
- ASIO_SYNC_OP_VOID_RETURN(ec);
779
- }
780
-
781
- int result = ::SSL_CTX_use_certificate(handle_, cert.p);
782
- if (result == 0 || ::ERR_peek_error() != 0)
783
- {
784
- ec = asio::error_code(
785
- static_cast<int>(::ERR_get_error()),
786
- asio::error::get_ssl_category());
787
- ASIO_SYNC_OP_VOID_RETURN(ec);
788
- }
789
-
790
- #if ((OPENSSL_VERSION_NUMBER >= 0x10002000L) \
791
- && !defined(LIBRESSL_VERSION_NUMBER)) \
792
- || defined(ASIO_USE_WOLFSSL)
793
- ::SSL_CTX_clear_chain_certs(handle_);
794
- #else
795
- if (handle_->extra_certs)
796
- {
797
- ::sk_X509_pop_free(handle_->extra_certs, X509_free);
798
- handle_->extra_certs = 0;
799
- }
800
- #endif // (OPENSSL_VERSION_NUMBER >= 0x10002000L)
801
-
802
- while (X509* cacert = ::PEM_read_bio_X509(bio.p, 0,
803
- callback,
804
- cb_userdata))
805
- {
806
- if (!::SSL_CTX_add_extra_chain_cert(handle_, cacert))
807
- {
808
- ec = asio::error_code(
809
- static_cast<int>(::ERR_get_error()),
810
- asio::error::get_ssl_category());
811
- ASIO_SYNC_OP_VOID_RETURN(ec);
812
- }
813
- }
814
-
815
- result = ::ERR_peek_last_error();
816
- if ((ERR_GET_LIB(result) == ERR_LIB_PEM)
817
- && (ERR_GET_REASON(result) == PEM_R_NO_START_LINE))
818
- {
819
- ::ERR_clear_error();
820
- ec = asio::error_code();
821
- ASIO_SYNC_OP_VOID_RETURN(ec);
822
- }
823
- }
824
-
825
- ec = asio::error_code(
826
- static_cast<int>(::ERR_get_error()),
827
- asio::error::get_ssl_category());
828
- ASIO_SYNC_OP_VOID_RETURN(ec);
829
- }
830
-
831
- void context::use_certificate_chain_file(const std::string& filename)
832
- {
833
- asio::error_code ec;
834
- use_certificate_chain_file(filename, ec);
835
- asio::detail::throw_error(ec, "use_certificate_chain_file");
836
- }
837
-
838
- ASIO_SYNC_OP_VOID context::use_certificate_chain_file(
839
- const std::string& filename, asio::error_code& ec)
840
- {
841
- ::ERR_clear_error();
842
-
843
- if (::SSL_CTX_use_certificate_chain_file(handle_, filename.c_str()) != 1)
844
- {
845
- ec = asio::error_code(
846
- static_cast<int>(::ERR_get_error()),
847
- asio::error::get_ssl_category());
848
- ASIO_SYNC_OP_VOID_RETURN(ec);
849
- }
850
-
851
- ec = asio::error_code();
852
- ASIO_SYNC_OP_VOID_RETURN(ec);
853
- }
854
-
855
- void context::use_private_key(
856
- const const_buffer& private_key, context::file_format format)
857
- {
858
- asio::error_code ec;
859
- use_private_key(private_key, format, ec);
860
- asio::detail::throw_error(ec, "use_private_key");
861
- }
862
-
863
- ASIO_SYNC_OP_VOID context::use_private_key(
864
- const const_buffer& private_key, context::file_format format,
865
- asio::error_code& ec)
866
- {
867
- ::ERR_clear_error();
868
-
869
- #if ((OPENSSL_VERSION_NUMBER >= 0x10100000L) \
870
- && !defined(LIBRESSL_VERSION_NUMBER)) \
871
- || defined(ASIO_USE_WOLFSSL)
872
- pem_password_cb* callback = ::SSL_CTX_get_default_passwd_cb(handle_);
873
- void* cb_userdata = ::SSL_CTX_get_default_passwd_cb_userdata(handle_);
874
- #else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
875
- pem_password_cb* callback = handle_->default_passwd_callback;
876
- void* cb_userdata = handle_->default_passwd_callback_userdata;
877
- #endif // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
878
-
879
- bio_cleanup bio = { make_buffer_bio(private_key) };
880
- if (bio.p)
881
- {
882
- evp_pkey_cleanup evp_private_key = { 0 };
883
- switch (format)
884
- {
885
- case context_base::asn1:
886
- evp_private_key.p = ::d2i_PrivateKey_bio(bio.p, 0);
887
- break;
888
- case context_base::pem:
889
- evp_private_key.p = ::PEM_read_bio_PrivateKey(
890
- bio.p, 0, callback,
891
- cb_userdata);
892
- break;
893
- default:
894
- {
895
- ec = asio::error::invalid_argument;
896
- ASIO_SYNC_OP_VOID_RETURN(ec);
897
- }
898
- }
899
-
900
- if (evp_private_key.p)
901
- {
902
- if (::SSL_CTX_use_PrivateKey(handle_, evp_private_key.p) == 1)
903
- {
904
- ec = asio::error_code();
905
- ASIO_SYNC_OP_VOID_RETURN(ec);
906
- }
907
- }
908
- }
909
-
910
- ec = asio::error_code(
911
- static_cast<int>(::ERR_get_error()),
912
- asio::error::get_ssl_category());
913
- ASIO_SYNC_OP_VOID_RETURN(ec);
914
- }
915
-
916
- void context::use_private_key_file(
917
- const std::string& filename, context::file_format format)
918
- {
919
- asio::error_code ec;
920
- use_private_key_file(filename, format, ec);
921
- asio::detail::throw_error(ec, "use_private_key_file");
922
- }
923
-
924
- void context::use_rsa_private_key(
925
- const const_buffer& private_key, context::file_format format)
926
- {
927
- asio::error_code ec;
928
- use_rsa_private_key(private_key, format, ec);
929
- asio::detail::throw_error(ec, "use_rsa_private_key");
930
- }
931
-
932
- ASIO_SYNC_OP_VOID context::use_rsa_private_key(
933
- const const_buffer& private_key, context::file_format format,
934
- asio::error_code& ec)
935
- {
936
- ::ERR_clear_error();
937
-
938
- #if ((OPENSSL_VERSION_NUMBER >= 0x10100000L) \
939
- && !defined(LIBRESSL_VERSION_NUMBER)) \
940
- || defined(ASIO_USE_WOLFSSL)
941
- pem_password_cb* callback = ::SSL_CTX_get_default_passwd_cb(handle_);
942
- void* cb_userdata = ::SSL_CTX_get_default_passwd_cb_userdata(handle_);
943
- #else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
944
- pem_password_cb* callback = handle_->default_passwd_callback;
945
- void* cb_userdata = handle_->default_passwd_callback_userdata;
946
- #endif // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
947
-
948
- bio_cleanup bio = { make_buffer_bio(private_key) };
949
- if (bio.p)
950
- {
951
- rsa_cleanup rsa_private_key = { 0 };
952
- switch (format)
953
- {
954
- case context_base::asn1:
955
- rsa_private_key.p = ::d2i_RSAPrivateKey_bio(bio.p, 0);
956
- break;
957
- case context_base::pem:
958
- rsa_private_key.p = ::PEM_read_bio_RSAPrivateKey(
959
- bio.p, 0, callback,
960
- cb_userdata);
961
- break;
962
- default:
963
- {
964
- ec = asio::error::invalid_argument;
965
- ASIO_SYNC_OP_VOID_RETURN(ec);
966
- }
967
- }
968
-
969
- if (rsa_private_key.p)
970
- {
971
- if (::SSL_CTX_use_RSAPrivateKey(handle_, rsa_private_key.p) == 1)
972
- {
973
- ec = asio::error_code();
974
- ASIO_SYNC_OP_VOID_RETURN(ec);
975
- }
976
- }
977
- }
978
-
979
- ec = asio::error_code(
980
- static_cast<int>(::ERR_get_error()),
981
- asio::error::get_ssl_category());
982
- ASIO_SYNC_OP_VOID_RETURN(ec);
983
- }
984
-
985
- ASIO_SYNC_OP_VOID context::use_private_key_file(
986
- const std::string& filename, context::file_format format,
987
- asio::error_code& ec)
988
- {
989
- int file_type;
990
- switch (format)
991
- {
992
- case context_base::asn1:
993
- file_type = SSL_FILETYPE_ASN1;
994
- break;
995
- case context_base::pem:
996
- file_type = SSL_FILETYPE_PEM;
997
- break;
998
- default:
999
- {
1000
- ec = asio::error::invalid_argument;
1001
- ASIO_SYNC_OP_VOID_RETURN(ec);
1002
- }
1003
- }
1004
-
1005
- ::ERR_clear_error();
1006
-
1007
- if (::SSL_CTX_use_PrivateKey_file(handle_, filename.c_str(), file_type) != 1)
1008
- {
1009
- ec = asio::error_code(
1010
- static_cast<int>(::ERR_get_error()),
1011
- asio::error::get_ssl_category());
1012
- ASIO_SYNC_OP_VOID_RETURN(ec);
1013
- }
1014
-
1015
- ec = asio::error_code();
1016
- ASIO_SYNC_OP_VOID_RETURN(ec);
1017
- }
1018
-
1019
- void context::use_rsa_private_key_file(
1020
- const std::string& filename, context::file_format format)
1021
- {
1022
- asio::error_code ec;
1023
- use_rsa_private_key_file(filename, format, ec);
1024
- asio::detail::throw_error(ec, "use_rsa_private_key_file");
1025
- }
1026
-
1027
- ASIO_SYNC_OP_VOID context::use_rsa_private_key_file(
1028
- const std::string& filename, context::file_format format,
1029
- asio::error_code& ec)
1030
- {
1031
- int file_type;
1032
- switch (format)
1033
- {
1034
- case context_base::asn1:
1035
- file_type = SSL_FILETYPE_ASN1;
1036
- break;
1037
- case context_base::pem:
1038
- file_type = SSL_FILETYPE_PEM;
1039
- break;
1040
- default:
1041
- {
1042
- ec = asio::error::invalid_argument;
1043
- ASIO_SYNC_OP_VOID_RETURN(ec);
1044
- }
1045
- }
1046
-
1047
- ::ERR_clear_error();
1048
-
1049
- if (::SSL_CTX_use_RSAPrivateKey_file(
1050
- handle_, filename.c_str(), file_type) != 1)
1051
- {
1052
- ec = asio::error_code(
1053
- static_cast<int>(::ERR_get_error()),
1054
- asio::error::get_ssl_category());
1055
- ASIO_SYNC_OP_VOID_RETURN(ec);
1056
- }
1057
-
1058
- ec = asio::error_code();
1059
- ASIO_SYNC_OP_VOID_RETURN(ec);
1060
- }
1061
-
1062
- void context::use_tmp_dh(const const_buffer& dh)
1063
- {
1064
- asio::error_code ec;
1065
- use_tmp_dh(dh, ec);
1066
- asio::detail::throw_error(ec, "use_tmp_dh");
1067
- }
1068
-
1069
- ASIO_SYNC_OP_VOID context::use_tmp_dh(
1070
- const const_buffer& dh, asio::error_code& ec)
1071
- {
1072
- ::ERR_clear_error();
1073
-
1074
- bio_cleanup bio = { make_buffer_bio(dh) };
1075
- if (bio.p)
1076
- {
1077
- return do_use_tmp_dh(bio.p, ec);
1078
- }
1079
-
1080
- ec = asio::error_code(
1081
- static_cast<int>(::ERR_get_error()),
1082
- asio::error::get_ssl_category());
1083
- ASIO_SYNC_OP_VOID_RETURN(ec);
1084
- }
1085
-
1086
- void context::use_tmp_dh_file(const std::string& filename)
1087
- {
1088
- asio::error_code ec;
1089
- use_tmp_dh_file(filename, ec);
1090
- asio::detail::throw_error(ec, "use_tmp_dh_file");
1091
- }
1092
-
1093
- ASIO_SYNC_OP_VOID context::use_tmp_dh_file(
1094
- const std::string& filename, asio::error_code& ec)
1095
- {
1096
- ::ERR_clear_error();
1097
-
1098
- bio_cleanup bio = { ::BIO_new_file(filename.c_str(), "r") };
1099
- if (bio.p)
1100
- {
1101
- return do_use_tmp_dh(bio.p, ec);
1102
- }
1103
-
1104
- ec = asio::error_code(
1105
- static_cast<int>(::ERR_get_error()),
1106
- asio::error::get_ssl_category());
1107
- ASIO_SYNC_OP_VOID_RETURN(ec);
1108
- }
1109
-
1110
- ASIO_SYNC_OP_VOID context::do_use_tmp_dh(
1111
- BIO* bio, asio::error_code& ec)
1112
- {
1113
- ::ERR_clear_error();
1114
-
1115
- dh_cleanup dh = { ::PEM_read_bio_DHparams(bio, 0, 0, 0) };
1116
- if (dh.p)
1117
- {
1118
- if (::SSL_CTX_set_tmp_dh(handle_, dh.p) == 1)
1119
- {
1120
- ec = asio::error_code();
1121
- ASIO_SYNC_OP_VOID_RETURN(ec);
1122
- }
1123
- }
1124
-
1125
- ec = asio::error_code(
1126
- static_cast<int>(::ERR_get_error()),
1127
- asio::error::get_ssl_category());
1128
- ASIO_SYNC_OP_VOID_RETURN(ec);
1129
- }
1130
-
1131
- ASIO_SYNC_OP_VOID context::do_set_verify_callback(
1132
- detail::verify_callback_base* callback, asio::error_code& ec)
1133
- {
1134
- if (SSL_CTX_get_app_data(handle_))
1135
- {
1136
- delete static_cast<detail::verify_callback_base*>(
1137
- SSL_CTX_get_app_data(handle_));
1138
- }
1139
-
1140
- SSL_CTX_set_app_data(handle_, callback);
1141
-
1142
- ::SSL_CTX_set_verify(handle_,
1143
- ::SSL_CTX_get_verify_mode(handle_),
1144
- &context::verify_callback_function);
1145
-
1146
- ec = asio::error_code();
1147
- ASIO_SYNC_OP_VOID_RETURN(ec);
1148
- }
1149
-
1150
- int context::verify_callback_function(int preverified, X509_STORE_CTX* ctx)
1151
- {
1152
- if (ctx)
1153
- {
1154
- if (SSL* ssl = static_cast<SSL*>(
1155
- ::X509_STORE_CTX_get_ex_data(
1156
- ctx, ::SSL_get_ex_data_X509_STORE_CTX_idx())))
1157
- {
1158
- if (SSL_CTX* handle = ::SSL_get_SSL_CTX(ssl))
1159
- {
1160
- if (SSL_CTX_get_app_data(handle))
1161
- {
1162
- detail::verify_callback_base* callback =
1163
- static_cast<detail::verify_callback_base*>(
1164
- SSL_CTX_get_app_data(handle));
1165
-
1166
- verify_context verify_ctx(ctx);
1167
- return callback->call(preverified != 0, verify_ctx) ? 1 : 0;
1168
- }
1169
- }
1170
- }
1171
- }
1172
-
1173
- return 0;
1174
- }
1175
-
1176
- ASIO_SYNC_OP_VOID context::do_set_password_callback(
1177
- detail::password_callback_base* callback, asio::error_code& ec)
1178
- {
1179
- #if ((OPENSSL_VERSION_NUMBER >= 0x10100000L) \
1180
- && !defined(LIBRESSL_VERSION_NUMBER)) \
1181
- || defined(ASIO_USE_WOLFSSL)
1182
- void* old_callback = ::SSL_CTX_get_default_passwd_cb_userdata(handle_);
1183
- ::SSL_CTX_set_default_passwd_cb_userdata(handle_, callback);
1184
- #else // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
1185
- void* old_callback = handle_->default_passwd_callback_userdata;
1186
- handle_->default_passwd_callback_userdata = callback;
1187
- #endif // (OPENSSL_VERSION_NUMBER >= 0x10100000L)
1188
-
1189
- if (old_callback)
1190
- delete static_cast<detail::password_callback_base*>(
1191
- old_callback);
1192
-
1193
- SSL_CTX_set_default_passwd_cb(handle_, &context::password_callback_function);
1194
-
1195
- ec = asio::error_code();
1196
- ASIO_SYNC_OP_VOID_RETURN(ec);
1197
- }
1198
-
1199
- int context::password_callback_function(
1200
- char* buf, int size, int purpose, void* data)
1201
- {
1202
- using namespace std; // For strncat and strlen.
1203
-
1204
- if (data)
1205
- {
1206
- detail::password_callback_base* callback =
1207
- static_cast<detail::password_callback_base*>(data);
1208
-
1209
- std::string passwd = callback->call(static_cast<std::size_t>(size),
1210
- purpose ? context_base::for_writing : context_base::for_reading);
1211
-
1212
- #if defined(ASIO_HAS_SECURE_RTL)
1213
- strcpy_s(buf, size, passwd.c_str());
1214
- #else // defined(ASIO_HAS_SECURE_RTL)
1215
- *buf = '\0';
1216
- if (size > 0)
1217
- strncat(buf, passwd.c_str(), size - 1);
1218
- #endif // defined(ASIO_HAS_SECURE_RTL)
1219
-
1220
- return static_cast<int>(strlen(buf));
1221
- }
1222
-
1223
- return 0;
1224
- }
1225
-
1226
- BIO* context::make_buffer_bio(const const_buffer& b)
1227
- {
1228
- return ::BIO_new_mem_buf(
1229
- const_cast<void*>(b.data()),
1230
- static_cast<int>(b.size()));
1231
- }
1232
-
1233
- } // namespace ssl
1234
- } // namespace asio
1235
-
1236
- #include "asio/detail/pop_options.hpp"
1237
-
1238
- #endif // ASIO_SSL_IMPL_CONTEXT_IPP