passenger 6.0.2 → 6.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (419) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +60 -19
  3. data/CONTRIBUTORS +2 -0
  4. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +56 -3
  5. data/dev/copy_boost_headers +1 -0
  6. data/package.json +1 -1
  7. data/resources/templates/standalone/http.erb +1 -0
  8. data/src/agent/Core/Config.h +13 -1
  9. data/src/agent/Core/Controller/Config.h +1 -1
  10. data/src/agent/Core/CoreMain.cpp +1 -0
  11. data/src/agent/Core/SpawningKit/Context.h +1 -0
  12. data/src/agent/Core/SpawningKit/Handshake/Prepare.h +1 -1
  13. data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +5 -2
  14. data/src/agent/Watchdog/Config.h +14 -1
  15. data/src/agent/Watchdog/WatchdogMain.cpp +7 -0
  16. data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +5 -0
  17. data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +5 -0
  18. data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +15 -0
  19. data/src/apache2_module/Hooks.cpp +1 -0
  20. data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +11 -0
  21. data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +13 -0
  22. data/src/cxx_supportlib/Constants.h +1 -1
  23. data/src/cxx_supportlib/LoggingKit/Config.h +1 -0
  24. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +1 -1
  25. data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +2 -2
  26. data/src/cxx_supportlib/WebSocketCommandReverseServer.h +11 -7
  27. data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/finder.hpp +0 -4
  28. data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +46 -37
  29. data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +16 -15
  30. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +45 -26
  31. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/future.hpp +33 -0
  32. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +1 -1
  33. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_buffer_sequence.hpp +38 -14
  34. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue.hpp +2 -0
  35. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.hpp +1 -1
  36. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +3 -1
  37. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +0 -1
  38. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/bad_address_cast.hpp +6 -1
  39. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +6 -4
  40. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_results.hpp +4 -4
  41. data/src/cxx_supportlib/vendor-modified/boost/asio/packaged_task.hpp +3 -3
  42. data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +4 -4
  43. data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +4 -4
  44. data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +8 -6
  45. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context_base.hpp +17 -0
  46. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +50 -5
  47. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +2 -1
  48. data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +1 -1
  49. data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +3 -2
  50. data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +1 -1
  51. data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +4 -3
  52. data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +5 -3
  53. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_x86_dcas.hpp +13 -12
  54. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/chrono.hpp +10 -10
  55. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/process_cpu_clocks.hpp +34 -34
  56. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/thread_clock.hpp +4 -4
  57. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/chrono.hpp +8 -8
  58. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/process_cpu_clocks.hpp +27 -27
  59. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/thread_clock.hpp +4 -4
  60. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/system.hpp +5 -4
  61. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/time_point_io.hpp +1 -1
  62. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer.hpp +3 -3
  63. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/allocators.hpp +89 -0
  64. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/base.hpp +83 -74
  65. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/details.hpp +21 -33
  66. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/space_optimized.hpp +5 -5
  67. data/src/cxx_supportlib/vendor-modified/boost/concept/assert.hpp +1 -1
  68. data/src/cxx_supportlib/vendor-modified/boost/concept/detail/general.hpp +3 -3
  69. data/src/cxx_supportlib/vendor-modified/boost/concept/detail/has_constraints.hpp +3 -3
  70. data/src/cxx_supportlib/vendor-modified/boost/concept/usage.hpp +1 -1
  71. data/src/cxx_supportlib/vendor-modified/boost/concept_check.hpp +19 -19
  72. data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +8 -0
  73. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/borland.hpp +5 -2
  74. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +5 -1
  75. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/codegear.hpp +6 -2
  76. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/comeau.hpp +1 -1
  77. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +4 -0
  78. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/cray.hpp +368 -52
  79. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +4 -1
  80. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +6 -3
  81. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +3 -0
  82. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/greenhills.hpp +1 -1
  83. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/hp_acc.hpp +1 -1
  84. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/intel.hpp +6 -1
  85. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/kai.hpp +1 -1
  86. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +4 -1
  87. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +4 -1
  88. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/nvcc.hpp +3 -3
  89. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pathscale.hpp +3 -0
  90. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +3 -0
  91. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +4 -1
  92. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +9 -4
  93. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +4 -0
  94. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp_zos.hpp +1 -0
  95. data/src/cxx_supportlib/vendor-modified/boost/config/detail/select_compiler_config.hpp +1 -2
  96. data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +13 -0
  97. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +2 -2
  98. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +14 -4
  99. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +4 -4
  100. data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +262 -2
  101. data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +4 -3
  102. data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +1 -1
  103. data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +7 -0
  104. data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +22 -19
  105. data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +833 -459
  106. data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +24 -6
  107. data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocator_version_traits.hpp +2 -1
  108. data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +61 -5
  109. data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +33 -8
  110. data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +132 -41
  111. data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterator.hpp +16 -0
  112. data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +54 -0
  113. data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +58 -0
  114. data/src/cxx_supportlib/vendor-modified/boost/container/detail/multiallocation_chain.hpp +28 -23
  115. data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +167 -115
  116. data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +55 -0
  117. data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +3 -0
  118. data/src/cxx_supportlib/vendor-modified/boost/container/detail/thread_mutex.hpp +181 -0
  119. data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +167 -29
  120. data/src/cxx_supportlib/vendor-modified/boost/container/detail/type_traits.hpp +2 -0
  121. data/src/cxx_supportlib/vendor-modified/boost/container/detail/variadic_templates_tools.hpp +1 -1
  122. data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +18 -0
  123. data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +389 -3
  124. data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +262 -0
  125. data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +52 -8
  126. data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +364 -0
  127. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +4 -2
  128. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +1 -1
  129. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/synchronized_pool_resource.hpp +3 -2
  130. data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +286 -6
  131. data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +56 -8
  132. data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +43 -6
  133. data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +100 -31
  134. data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +2 -1
  135. data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +126 -69
  136. data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +75 -51
  137. data/src/cxx_supportlib/vendor-modified/boost/core/empty_value.hpp +136 -0
  138. data/src/cxx_supportlib/vendor-modified/boost/core/exchange.hpp +49 -0
  139. data/src/cxx_supportlib/vendor-modified/boost/core/explicit_operator_bool.hpp +9 -0
  140. data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +101 -130
  141. data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test_trait.hpp +2 -2
  142. data/src/cxx_supportlib/vendor-modified/boost/core/noncopyable.hpp +16 -1
  143. data/src/cxx_supportlib/vendor-modified/boost/core/quick_exit.hpp +59 -0
  144. data/src/cxx_supportlib/vendor-modified/boost/core/ref.hpp +2 -1
  145. data/src/cxx_supportlib/vendor-modified/boost/core/swap.hpp +9 -2
  146. data/src/cxx_supportlib/vendor-modified/boost/core/typeinfo.hpp +26 -10
  147. data/src/cxx_supportlib/vendor-modified/boost/date_time/compiler_config.hpp +5 -0
  148. data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_duration.hpp +3 -3
  149. data/src/cxx_supportlib/vendor-modified/boost/date_time/time_duration.hpp +1 -1
  150. data/src/cxx_supportlib/vendor-modified/boost/detail/basic_pointerbuf.hpp +1 -1
  151. data/src/cxx_supportlib/vendor-modified/boost/detail/indirect_traits.hpp +38 -47
  152. data/src/cxx_supportlib/vendor-modified/boost/detail/lcast_precision.hpp +5 -5
  153. data/src/cxx_supportlib/vendor-modified/boost/detail/reference_content.hpp +7 -7
  154. data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +62 -58
  155. data/src/cxx_supportlib/vendor-modified/boost/function.hpp +1 -1
  156. data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +29 -29
  157. data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +38 -40
  158. data/src/cxx_supportlib/vendor-modified/boost/integer/common_factor_rt.hpp +4 -4
  159. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +44 -44
  160. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +39 -39
  161. data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +15 -15
  162. data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +7 -7
  163. data/src/cxx_supportlib/vendor-modified/boost/intrusive/derivation_value_traits.hpp +1 -1
  164. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +14 -14
  165. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/avltree_node.hpp +9 -9
  166. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +7 -7
  167. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_iterator.hpp +1 -1
  168. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_node.hpp +2 -2
  169. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_cloner_disposer.hpp +2 -2
  170. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/rbtree_node.hpp +6 -6
  171. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/simple_disposers.hpp +1 -1
  172. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_iterator.hpp +1 -1
  173. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_node.hpp +1 -1
  174. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_iterator.hpp +1 -1
  175. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_node.hpp +3 -3
  176. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_value_compare.hpp +33 -14
  177. data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +12 -12
  178. data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +4 -4
  179. data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_plus_bits.hpp +3 -0
  180. data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +39 -39
  181. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +61 -61
  182. data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +4 -4
  183. data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree_algorithms.hpp +66 -66
  184. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +54 -54
  185. data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +6 -2
  186. data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +3 -3
  187. data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +1 -1
  188. data/src/cxx_supportlib/vendor-modified/boost/iterator/distance.hpp +65 -0
  189. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +1 -1
  190. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +1 -1
  191. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +23 -23
  192. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +4 -4
  193. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +13 -13
  194. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +1 -1
  195. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +5 -4
  196. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +1 -1
  197. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +5 -5
  198. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +5 -2
  199. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +18 -13
  200. data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/cregex.cpp +4 -4
  201. data/src/cxx_supportlib/vendor-modified/boost/libs/system/src/error_code.cpp +16 -5
  202. data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/future.cpp +1 -1
  203. data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +14 -8
  204. data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/tss_null.cpp +2 -2
  205. data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/detail/fp_traits.hpp +13 -13
  206. data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/math_fwd.hpp +27 -0
  207. data/src/cxx_supportlib/vendor-modified/boost/math/tools/config.hpp +1 -1
  208. data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_merge.hpp +29 -6
  209. data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_sort.hpp +12 -3
  210. data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +1 -1
  211. data/src/cxx_supportlib/vendor-modified/boost/move/algo/move.hpp +1 -1
  212. data/src/cxx_supportlib/vendor-modified/boost/move/algorithm.hpp +1 -1
  213. data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +8 -8
  214. data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +2 -0
  215. data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +3 -3
  216. data/src/cxx_supportlib/vendor-modified/boost/mpl/assert.hpp +23 -3
  217. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/experimental_traits.hpp +9 -3
  218. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/old_optional_implementation.hpp +10 -11
  219. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +20 -1
  220. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +3 -3
  221. data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +211 -101
  222. data/src/cxx_supportlib/vendor-modified/boost/parameter/python.hpp +5 -6
  223. data/src/cxx_supportlib/vendor-modified/boost/pool/detail/mutex.hpp +119 -25
  224. data/src/cxx_supportlib/vendor-modified/boost/predef/architecture.h +1 -0
  225. data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/arm.h +5 -0
  226. data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/ptx.h +44 -0
  227. data/src/cxx_supportlib/vendor-modified/boost/predef/compiler.h +1 -0
  228. data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/compaq.h +1 -1
  229. data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/nvcc.h +73 -0
  230. data/src/cxx_supportlib/vendor-modified/boost/predef/detail/endian_compat.h +3 -1
  231. data/src/cxx_supportlib/vendor-modified/boost/predef/language.h +1 -0
  232. data/src/cxx_supportlib/vendor-modified/boost/predef/language/cuda.h +52 -0
  233. data/src/cxx_supportlib/vendor-modified/boost/predef/make.h +4 -0
  234. data/src/cxx_supportlib/vendor-modified/boost/predef/os/cygwin.h +6 -1
  235. data/src/cxx_supportlib/vendor-modified/boost/predef/other/endian.h +1 -2
  236. data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
  237. data/src/cxx_supportlib/vendor-modified/boost/preprocessor/config/config.hpp +17 -8
  238. data/src/cxx_supportlib/vendor-modified/boost/preprocessor/stringize.hpp +4 -0
  239. data/src/cxx_supportlib/vendor-modified/boost/preprocessor/wstringize.hpp +4 -0
  240. data/src/cxx_supportlib/vendor-modified/boost/random/detail/gray_coded_qrng.hpp +166 -0
  241. data/src/cxx_supportlib/vendor-modified/boost/random/detail/niederreiter_base2_table.hpp +513 -0
  242. data/src/cxx_supportlib/vendor-modified/boost/random/detail/qrng_base.hpp +291 -0
  243. data/src/cxx_supportlib/vendor-modified/boost/random/detail/sobol_table.hpp +4106 -0
  244. data/src/cxx_supportlib/vendor-modified/boost/random/faure.hpp +367 -0
  245. data/src/cxx_supportlib/vendor-modified/boost/random/niederreiter_base2.hpp +360 -0
  246. data/src/cxx_supportlib/vendor-modified/boost/random/sobol.hpp +237 -0
  247. data/src/cxx_supportlib/vendor-modified/boost/range/as_literal.hpp +43 -0
  248. data/src/cxx_supportlib/vendor-modified/boost/range/begin.hpp +13 -5
  249. data/src/cxx_supportlib/vendor-modified/boost/range/concepts.hpp +1 -1
  250. data/src/cxx_supportlib/vendor-modified/boost/range/detail/common.hpp +1 -3
  251. data/src/cxx_supportlib/vendor-modified/boost/range/detail/implementation_help.hpp +2 -2
  252. data/src/cxx_supportlib/vendor-modified/boost/range/distance.hpp +11 -5
  253. data/src/cxx_supportlib/vendor-modified/boost/range/end.hpp +14 -6
  254. data/src/cxx_supportlib/vendor-modified/boost/range/has_range_iterator.hpp +3 -3
  255. data/src/cxx_supportlib/vendor-modified/boost/ratio/config.hpp +6 -2
  256. data/src/cxx_supportlib/vendor-modified/boost/rational.hpp +55 -37
  257. data/src/cxx_supportlib/vendor-modified/boost/regex/concepts.hpp +3 -2
  258. data/src/cxx_supportlib/vendor-modified/boost/regex/config.hpp +11 -1
  259. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex.hpp +7 -1
  260. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_creator.hpp +3 -1
  261. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +5 -2
  262. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/fileiter.hpp +0 -3
  263. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/instances.hpp +15 -4
  264. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_flags.hpp +1 -2
  265. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_results.hpp +12 -3
  266. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher.hpp +7 -2
  267. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_common.hpp +7 -3
  268. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_non_recursive.hpp +6 -2
  269. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_format.hpp +0 -5
  270. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_iterator.hpp +0 -8
  271. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_raw_buffer.hpp +3 -3
  272. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_split.hpp +3 -1
  273. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_token_iterator.hpp +0 -8
  274. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits_defaults.hpp +12 -11
  275. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +7 -4
  276. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_iterator.hpp +1 -9
  277. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_token_iterator.hpp +2 -10
  278. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/w32_regex_traits.hpp +2 -0
  279. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/allocate_shared_array.hpp +60 -115
  280. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/local_counted_base.hpp +3 -3
  281. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_acc_ia64.hpp +2 -1
  282. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_aix.hpp +2 -1
  283. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_clang.hpp +2 -1
  284. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_ppc.hpp +2 -1
  285. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_x86.hpp +2 -1
  286. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ia64.hpp +2 -1
  287. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_mips.hpp +2 -1
  288. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ppc.hpp +2 -1
  289. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_sparc.hpp +2 -1
  290. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp +2 -1
  291. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_nt.hpp +2 -1
  292. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_pt.hpp +2 -1
  293. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_snc_ps3.hpp +2 -1
  294. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_solaris.hpp +2 -1
  295. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_spin.hpp +2 -1
  296. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_std_atomic.hpp +2 -1
  297. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_sync.hpp +2 -1
  298. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_vacpp_ppc.hpp +2 -1
  299. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +3 -3
  300. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/yield_k.hpp +14 -8
  301. data/src/cxx_supportlib/vendor-modified/boost/system/config.hpp +4 -24
  302. data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +57 -0
  303. data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category.hpp +101 -0
  304. data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_interoperability.hpp +141 -0
  305. data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_posix.hpp +132 -0
  306. data/src/cxx_supportlib/vendor-modified/boost/system/error_code.hpp +775 -588
  307. data/src/cxx_supportlib/vendor-modified/boost/system/system_error.hpp +4 -4
  308. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/config.hpp +6 -0
  309. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/move.hpp +13 -6
  310. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/nullary_function.hpp +8 -3
  311. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread.hpp +3 -1
  312. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread_safety.hpp +160 -0
  313. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/tss_hooks.hpp +2 -2
  314. data/src/cxx_supportlib/vendor-modified/boost/thread/exceptions.hpp +3 -3
  315. data/src/cxx_supportlib/vendor-modified/boost/thread/executors/basic_thread_pool.hpp +24 -1
  316. data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +10 -1
  317. data/src/cxx_supportlib/vendor-modified/boost/thread/lock_guard.hpp +4 -4
  318. data/src/cxx_supportlib/vendor-modified/boost/thread/lockable_traits.hpp +31 -0
  319. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable.hpp +2 -2
  320. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable_fwd.hpp +2 -2
  321. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/mutex.hpp +8 -53
  322. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/pthread_mutex_scoped_lock.hpp +73 -4
  323. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/recursive_mutex.hpp +6 -6
  324. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/thread_data.hpp +14 -9
  325. data/src/cxx_supportlib/vendor-modified/boost/thread/xtime.hpp +6 -6
  326. data/src/cxx_supportlib/vendor-modified/boost/throw_exception.hpp +9 -8
  327. data/src/cxx_supportlib/vendor-modified/boost/token_functions.hpp +1 -0
  328. data/src/cxx_supportlib/vendor-modified/boost/type_index/stl_type_index.hpp +21 -19
  329. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/common_arithmetic_type.hpp +3 -1
  330. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/config.hpp +9 -0
  331. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/detector.hpp +1 -1
  332. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_postfix_operator.hpp +55 -0
  333. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_prefix_operator.hpp +72 -0
  334. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_cxx_03.hpp +108 -0
  335. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_cxx_11.hpp +501 -0
  336. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_msvc10_fix.hpp +30 -0
  337. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_likely_lambda.hpp +2 -2
  338. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_member_function_pointer_cxx_03.hpp +117 -0
  339. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_member_function_pointer_cxx_11.hpp +557 -0
  340. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_rvalue_reference_msvc10_fix.hpp +43 -0
  341. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detected.hpp +1 -1
  342. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detected_or.hpp +1 -1
  343. data/src/cxx_supportlib/vendor-modified/boost/type_traits/enable_if.hpp +37 -0
  344. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_dereference.hpp +344 -0
  345. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus.hpp +5 -0
  346. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus_assign.hpp +5 -0
  347. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_plus_assign.hpp +5 -0
  348. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_post_decrement.hpp +21 -0
  349. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_post_increment.hpp +21 -0
  350. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_pre_decrement.hpp +21 -0
  351. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_pre_increment.hpp +22 -0
  352. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_assign.hpp +1 -1
  353. data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_constructor.hpp +2 -1
  354. data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_constant.hpp +5 -15
  355. data/src/cxx_supportlib/vendor-modified/boost/type_traits/intrinsics.hpp +16 -6
  356. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_complete.hpp +3 -1
  357. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_copy_assignable.hpp +3 -4
  358. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_copy_constructible.hpp +4 -6
  359. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected.hpp +1 -1
  360. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected_convertible.hpp +1 -1
  361. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected_exact.hpp +1 -1
  362. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_final.hpp +1 -1
  363. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_function.hpp +4 -79
  364. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_member_function_pointer.hpp +3 -97
  365. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_noncopyable.hpp +39 -0
  366. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_assignable.hpp +2 -2
  367. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_constructible.hpp +2 -2
  368. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_rvalue_reference.hpp +4 -0
  369. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_virtual_base_of.hpp +104 -63
  370. data/src/cxx_supportlib/vendor-modified/boost/type_traits/make_void.hpp +1 -1
  371. data/src/cxx_supportlib/vendor-modified/boost/type_traits/nonesuch.hpp +1 -1
  372. data/src/cxx_supportlib/vendor-modified/boost/typeof/constant.hpp +26 -0
  373. data/src/cxx_supportlib/vendor-modified/boost/typeof/dmc/typeof_impl.hpp +4 -4
  374. data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode.hpp +0 -3
  375. data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode_params.hpp +1 -1
  376. data/src/cxx_supportlib/vendor-modified/boost/typeof/int_encoding.hpp +4 -5
  377. data/src/cxx_supportlib/vendor-modified/boost/typeof/modifiers.hpp +5 -5
  378. data/src/cxx_supportlib/vendor-modified/boost/typeof/msvc/typeof_impl.hpp +9 -9
  379. data/src/cxx_supportlib/vendor-modified/boost/typeof/native.hpp +3 -3
  380. data/src/cxx_supportlib/vendor-modified/boost/typeof/pointers_data_members.hpp +2 -2
  381. data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions_iterate.hpp +6 -6
  382. data/src/cxx_supportlib/vendor-modified/boost/typeof/register_mem_functions.hpp +1 -1
  383. data/src/cxx_supportlib/vendor-modified/boost/typeof/template_encoding.hpp +4 -4
  384. data/src/cxx_supportlib/vendor-modified/boost/typeof/template_template_param.hpp +2 -2
  385. data/src/cxx_supportlib/vendor-modified/boost/typeof/type_encoding.hpp +2 -2
  386. data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof_impl.hpp +16 -16
  387. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector.hpp +5 -5
  388. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector100.hpp +201 -201
  389. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector150.hpp +301 -301
  390. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector200.hpp +401 -401
  391. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector50.hpp +101 -101
  392. data/src/cxx_supportlib/vendor-modified/boost/utility/detail/minstd_rand.hpp +3 -0
  393. data/src/cxx_supportlib/vendor-modified/boost/utility/string_ref.hpp +2 -0
  394. data/src/cxx_supportlib/vendor-modified/boost/utility/string_view.hpp +26 -6
  395. data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
  396. data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +16 -0
  397. data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +13 -0
  398. data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +24 -0
  399. data/src/nginx_module/Configuration.c +9 -0
  400. data/src/nginx_module/ContentHandler.c +7 -1
  401. data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +5 -0
  402. data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +13 -0
  403. data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +3 -0
  404. data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +4 -0
  405. data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +6 -0
  406. data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +12 -0
  407. data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +4 -0
  408. data/src/nginx_module/ngx_http_passenger_module.c +1 -0
  409. data/src/ruby_supportlib/phusion_passenger.rb +7 -7
  410. data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +7 -0
  411. data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +15 -0
  412. data/src/ruby_supportlib/phusion_passenger/request_handler.rb +2 -2
  413. data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +5 -0
  414. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +1 -0
  415. metadata +33 -6
  416. data/src/cxx_supportlib/vendor-modified/boost/call_traits.hpp +0 -20
  417. data/src/cxx_supportlib/vendor-modified/boost/detail/call_traits.hpp +0 -172
  418. data/src/cxx_supportlib/vendor-modified/boost/detail/no_exceptions_support.hpp +0 -17
  419. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.ipp +0 -496
@@ -70,9 +70,6 @@
70
70
  # define BOOST_ASIO_MSVC _MSC_VER
71
71
  # endif // defined(BOOST_ASIO_HAS_BOOST_CONFIG) && defined(BOOST_MSVC)
72
72
  #endif // !defined(BOOST_ASIO_MSVC)
73
- #if defined(BOOST_ASIO_MSVC)
74
- # include <ciso646> // Needed for _HAS_CXX17.
75
- #endif // defined(BOOST_ASIO_MSVC)
76
73
 
77
74
  // Clang / libc++ detection.
78
75
  #if defined(__clang__)
@@ -111,6 +108,14 @@
111
108
  # define BOOST_ASIO_HAS_MOVE 1
112
109
  # endif // (_MSC_VER >= 1700)
113
110
  # endif // defined(BOOST_ASIO_MSVC)
111
+ # if defined(__INTEL_CXX11_MODE__)
112
+ # if defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 1500)
113
+ # define BOOST_ASIO_HAS_MOVE 1
114
+ # endif // defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 1500)
115
+ # if defined(__ICL) && (__ICL >= 1500)
116
+ # define BOOST_ASIO_HAS_MOVE 1
117
+ # endif // defined(__ICL) && (__ICL >= 1500)
118
+ # endif // defined(__INTEL_CXX11_MODE__)
114
119
  # endif // !defined(BOOST_ASIO_DISABLE_MOVE)
115
120
  #endif // !defined(BOOST_ASIO_HAS_MOVE)
116
121
 
@@ -229,7 +234,7 @@
229
234
  // Support noexcept on compilers known to allow it.
230
235
  #if !defined(BOOST_ASIO_NOEXCEPT)
231
236
  # if !defined(BOOST_ASIO_DISABLE_NOEXCEPT)
232
- # if (BOOST_VERSION >= 105300)
237
+ # if defined(BOOST_ASIO_HAS_BOOST_CONFIG) && (BOOST_VERSION >= 105300)
233
238
  # define BOOST_ASIO_NOEXCEPT BOOST_NOEXCEPT
234
239
  # define BOOST_ASIO_NOEXCEPT_OR_NOTHROW BOOST_NOEXCEPT_OR_NOTHROW
235
240
  # elif defined(__clang__)
@@ -759,9 +764,7 @@
759
764
  # if defined(__GNUC__)
760
765
  # if ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7)) || (__GNUC__ > 4)
761
766
  # if defined(__GXX_EXPERIMENTAL_CXX0X__)
762
- # if defined(_GLIBCXX_HAS_GTHREADS)
763
- # define BOOST_ASIO_HAS_STD_FUTURE 1
764
- # endif // defined(_GLIBCXX_HAS_GTHREADS)
767
+ # define BOOST_ASIO_HAS_STD_FUTURE 1
765
768
  # endif // defined(__GXX_EXPERIMENTAL_CXX0X__)
766
769
  # endif // ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7)) || (__GNUC__ > 4)
767
770
  # endif // defined(__GNUC__)
@@ -777,23 +780,29 @@
777
780
  #if !defined(BOOST_ASIO_HAS_STD_STRING_VIEW)
778
781
  # if !defined(BOOST_ASIO_DISABLE_STD_STRING_VIEW)
779
782
  # if defined(__clang__)
780
- # if (__cplusplus >= 201703)
781
- # if __has_include(<string_view>)
782
- # define BOOST_ASIO_HAS_STD_STRING_VIEW 1
783
- # endif // __has_include(<string_view>)
784
- # endif // (__cplusplus >= 201703)
785
- # endif // defined(__clang__)
786
- # if defined(__GNUC__)
783
+ # if defined(BOOST_ASIO_HAS_CLANG_LIBCXX)
784
+ # if (__cplusplus >= 201402)
785
+ # if __has_include(<string_view>)
786
+ # define BOOST_ASIO_HAS_STD_STRING_VIEW 1
787
+ # endif // __has_include(<string_view>)
788
+ # endif // (__cplusplus >= 201402)
789
+ # else // defined(BOOST_ASIO_HAS_CLANG_LIBCXX)
790
+ # if (__cplusplus >= 201703)
791
+ # if __has_include(<string_view>)
792
+ # define BOOST_ASIO_HAS_STD_STRING_VIEW 1
793
+ # endif // __has_include(<string_view>)
794
+ # endif // (__cplusplus >= 201703)
795
+ # endif // defined(BOOST_ASIO_HAS_CLANG_LIBCXX)
796
+ # elif defined(__GNUC__)
787
797
  # if (__GNUC__ >= 7)
788
798
  # if (__cplusplus >= 201703)
789
799
  # define BOOST_ASIO_HAS_STD_STRING_VIEW 1
790
800
  # endif // (__cplusplus >= 201703)
791
801
  # endif // (__GNUC__ >= 7)
792
- # endif // defined(__GNUC__)
793
- # if defined(BOOST_ASIO_MSVC)
794
- # if (_MSC_VER >= 1910 && _HAS_CXX17)
795
- # define BOOST_ASIO_HAS_STD_STRING_VIEW
796
- # endif // (_MSC_VER >= 1910 && _HAS_CXX17)
802
+ # elif defined(BOOST_ASIO_MSVC)
803
+ # if (_MSC_VER >= 1910 && _MSVC_LANG >= 201703)
804
+ # define BOOST_ASIO_HAS_STD_STRING_VIEW 1
805
+ # endif // (_MSC_VER >= 1910 && _MSVC_LANG >= 201703)
797
806
  # endif // defined(BOOST_ASIO_MSVC)
798
807
  # endif // !defined(BOOST_ASIO_DISABLE_STD_STRING_VIEW)
799
808
  #endif // !defined(BOOST_ASIO_HAS_STD_STRING_VIEW)
@@ -802,11 +811,21 @@
802
811
  #if !defined(BOOST_ASIO_HAS_STD_EXPERIMENTAL_STRING_VIEW)
803
812
  # if !defined(BOOST_ASIO_DISABLE_STD_EXPERIMENTAL_STRING_VIEW)
804
813
  # if defined(__clang__)
805
- # if (__cplusplus >= 201402)
806
- # if __has_include(<experimental/string_view>)
807
- # define BOOST_ASIO_HAS_STD_EXPERIMENTAL_STRING_VIEW 1
808
- # endif // __has_include(<experimental/string_view>)
809
- # endif // (__cplusplus >= 201402)
814
+ # if defined(BOOST_ASIO_HAS_CLANG_LIBCXX)
815
+ # if (_LIBCPP_VERSION < 7000)
816
+ # if (__cplusplus >= 201402)
817
+ # if __has_include(<experimental/string_view>)
818
+ # define BOOST_ASIO_HAS_STD_EXPERIMENTAL_STRING_VIEW 1
819
+ # endif // __has_include(<experimental/string_view>)
820
+ # endif // (__cplusplus >= 201402)
821
+ # endif // (_LIBCPP_VERSION < 7000)
822
+ # else // defined(BOOST_ASIO_HAS_CLANG_LIBCXX)
823
+ # if (__cplusplus >= 201402)
824
+ # if __has_include(<experimental/string_view>)
825
+ # define BOOST_ASIO_HAS_STD_EXPERIMENTAL_STRING_VIEW 1
826
+ # endif // __has_include(<experimental/string_view>)
827
+ # endif // (__cplusplus >= 201402)
828
+ # endif // // defined(BOOST_ASIO_HAS_CLANG_LIBCXX)
810
829
  # endif // defined(__clang__)
811
830
  # if defined(__GNUC__)
812
831
  # if ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 9)) || (__GNUC__ > 4)
@@ -851,9 +870,9 @@
851
870
  #if !defined(BOOST_ASIO_HAS_STD_INVOKE_RESULT)
852
871
  # if !defined(BOOST_ASIO_DISABLE_STD_INVOKE_RESULT)
853
872
  # if defined(BOOST_ASIO_MSVC)
854
- # if (_MSC_VER >= 1910 && _HAS_CXX17)
873
+ # if (_MSC_VER >= 1911 && _MSVC_LANG >= 201703)
855
874
  # define BOOST_ASIO_HAS_STD_INVOKE_RESULT 1
856
- # endif // (_MSC_VER >= 1910 && _HAS_CXX17)
875
+ # endif // (_MSC_VER >= 1911 && _MSVC_LANG >= 201703)
857
876
  # endif // defined(BOOST_ASIO_MSVC)
858
877
  # endif // !defined(BOOST_ASIO_DISABLE_STD_INVOKE_RESULT)
859
878
  #endif // !defined(BOOST_ASIO_HAS_STD_INVOKE_RESULT)
@@ -0,0 +1,33 @@
1
+ //
2
+ // detail/future.hpp
3
+ // ~~~~~~~~~~~~~~~~~
4
+ //
5
+ // Copyright (c) 2003-2018 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 BOOST_ASIO_DETAIL_FUTURE_HPP
12
+ #define BOOST_ASIO_DETAIL_FUTURE_HPP
13
+
14
+ #if defined(_MSC_VER) && (_MSC_VER >= 1200)
15
+ # pragma once
16
+ #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17
+
18
+ #include <boost/asio/detail/config.hpp>
19
+ #if defined(BOOST_ASIO_HAS_STD_FUTURE)
20
+ # include <future>
21
+ // Even though the future header is available, libstdc++ may not implement the
22
+ // std::future class itself. However, we need to have already included the
23
+ // future header to reliably test for _GLIBCXX_HAS_GTHREADS.
24
+ # if defined(__GNUC__) && !defined(BOOST_ASIO_HAS_CLANG_LIBCXX)
25
+ # if defined(_GLIBCXX_HAS_GTHREADS)
26
+ # define BOOST_ASIO_HAS_STD_FUTURE_CLASS 1
27
+ # endif // defined(_GLIBCXX_HAS_GTHREADS)
28
+ # else // defined(__GNUC__) && !defined(BOOST_ASIO_HAS_CLANG_LIBCXX)
29
+ # define BOOST_ASIO_HAS_STD_FUTURE_CLASS 1
30
+ # endif // defined(__GNUC__) && !defined(BOOST_ASIO_HAS_CLANG_LIBCXX)
31
+ #endif // defined(BOOST_ASIO_HAS_STD_FUTURE)
32
+
33
+ #endif // BOOST_ASIO_DETAIL_FUTURE_HPP
@@ -2115,7 +2115,7 @@ const char* inet_ntop(int af, const void* src, char* dest, size_t length,
2115
2115
  if (result != 0 && af == BOOST_ASIO_OS_DEF(AF_INET6) && scope_id != 0)
2116
2116
  {
2117
2117
  using namespace std; // For strcat and sprintf.
2118
- char if_name[IF_NAMESIZE + 1] = "%";
2118
+ char if_name[(IF_NAMESIZE > 21 ? IF_NAMESIZE : 21) + 1] = "%";
2119
2119
  const in6_addr_type* ipv6_address = static_cast<const in6_addr_type*>(src);
2120
2120
  bool is_link_local = ((ipv6_address->s6_addr[0] == 0xfe)
2121
2121
  && ((ipv6_address->s6_addr[1] & 0xc0) == 0x80));
@@ -53,23 +53,47 @@ struct buffer_sequence_memfns_check
53
53
  };
54
54
 
55
55
  template <typename>
56
- char (&begin_memfn_helper(...))[2];
56
+ char (&buffer_sequence_begin_helper(...))[2];
57
+
58
+ #if defined(BOOST_ASIO_HAS_DECLTYPE)
57
59
 
58
60
  template <typename T>
59
- char begin_memfn_helper(
61
+ char buffer_sequence_begin_helper(T* t,
62
+ typename enable_if<!is_same<
63
+ decltype(boost::asio::buffer_sequence_begin(*t)),
64
+ void>::value>::type*);
65
+
66
+ #else // defined(BOOST_ASIO_HAS_DECLTYPE)
67
+
68
+ template <typename T>
69
+ char buffer_sequence_begin_helper(T* t,
60
70
  buffer_sequence_memfns_check<
61
71
  void (buffer_sequence_memfns_base::*)(),
62
72
  &buffer_sequence_memfns_derived<T>::begin>*);
63
73
 
74
+ #endif // defined(BOOST_ASIO_HAS_DECLTYPE)
75
+
64
76
  template <typename>
65
- char (&end_memfn_helper(...))[2];
77
+ char (&buffer_sequence_end_helper(...))[2];
78
+
79
+ #if defined(BOOST_ASIO_HAS_DECLTYPE)
66
80
 
67
81
  template <typename T>
68
- char end_memfn_helper(
82
+ char buffer_sequence_end_helper(T* t,
83
+ typename enable_if<!is_same<
84
+ decltype(boost::asio::buffer_sequence_end(*t)),
85
+ void>::value>::type*);
86
+
87
+ #else // defined(BOOST_ASIO_HAS_DECLTYPE)
88
+
89
+ template <typename T>
90
+ char buffer_sequence_end_helper(T* t,
69
91
  buffer_sequence_memfns_check<
70
92
  void (buffer_sequence_memfns_base::*)(),
71
93
  &buffer_sequence_memfns_derived<T>::end>*);
72
94
 
95
+ #endif // defined(BOOST_ASIO_HAS_DECLTYPE)
96
+
73
97
  template <typename>
74
98
  char (&size_memfn_helper(...))[2];
75
99
 
@@ -134,25 +158,25 @@ char consume_memfn_helper(
134
158
  &buffer_sequence_memfns_derived<T>::consume>*);
135
159
 
136
160
  template <typename, typename>
137
- char (&buffer_element_type_helper(...))[2];
161
+ char (&buffer_sequence_element_type_helper(...))[2];
138
162
 
139
- #if defined(BOOST_ASIO_HAS_DECL_TYPE)
163
+ #if defined(BOOST_ASIO_HAS_DECLTYPE)
140
164
 
141
165
  template <typename T, typename Buffer>
142
- char buffer_element_type_helper(T* t,
166
+ char buffer_sequence_element_type_helper(T* t,
143
167
  typename enable_if<is_convertible<
144
- decltype(*buffer_sequence_begin(*t)),
168
+ decltype(*boost::asio::buffer_sequence_begin(*t)),
145
169
  Buffer>::value>::type*);
146
170
 
147
- #else // defined(BOOST_ASIO_HAS_DECL_TYPE)
171
+ #else // defined(BOOST_ASIO_HAS_DECLTYPE)
148
172
 
149
173
  template <typename T, typename Buffer>
150
- char buffer_element_type_helper(
174
+ char buffer_sequence_element_type_helper(
151
175
  typename T::const_iterator*,
152
176
  typename enable_if<is_convertible<
153
177
  typename T::value_type, Buffer>::value>::type*);
154
178
 
155
- #endif // defined(BOOST_ASIO_HAS_DECL_TYPE)
179
+ #endif // defined(BOOST_ASIO_HAS_DECLTYPE)
156
180
 
157
181
  template <typename>
158
182
  char (&const_buffers_type_typedef_helper(...))[2];
@@ -171,9 +195,9 @@ char mutable_buffers_type_typedef_helper(
171
195
  template <typename T, typename Buffer>
172
196
  struct is_buffer_sequence_class
173
197
  : integral_constant<bool,
174
- sizeof(begin_memfn_helper<T>(0)) != 1 &&
175
- sizeof(end_memfn_helper<T>(0)) != 1 &&
176
- sizeof(buffer_element_type_helper<T, Buffer>(0, 0)) == 1>
198
+ sizeof(buffer_sequence_begin_helper<T>(0)) != 1 &&
199
+ sizeof(buffer_sequence_end_helper<T>(0)) != 1 &&
200
+ sizeof(buffer_sequence_element_type_helper<T, Buffer>(0, 0)) == 1>
177
201
  {
178
202
  };
179
203
 
@@ -267,11 +267,13 @@ private:
267
267
  {
268
268
  if (index == heap_.size() - 1)
269
269
  {
270
+ timer.heap_index_ = (std::numeric_limits<std::size_t>::max)();
270
271
  heap_.pop_back();
271
272
  }
272
273
  else
273
274
  {
274
275
  swap_heap(index, heap_.size() - 1);
276
+ timer.heap_index_ = (std::numeric_limits<std::size_t>::max)();
275
277
  heap_.pop_back();
276
278
  if (index > 0 && Time_Traits::less_than(
277
279
  heap_[index].time_, heap_[(index - 1) / 2].time_))
@@ -250,7 +250,7 @@ void io_context::executor_type::dispatch(
250
250
  p.p = new (p.v) op(BOOST_ASIO_MOVE_CAST(Function)(f), a);
251
251
 
252
252
  BOOST_ASIO_HANDLER_CREATION((this->context(), *p.p,
253
- "io_context", &this->context(), 0, "post"));
253
+ "io_context", &this->context(), 0, "dispatch"));
254
254
 
255
255
  io_context_.impl_.post_immediate_completion(p.p, false);
256
256
  p.v = p.p = 0;
@@ -270,7 +270,9 @@ std::size_t read_until(SyncReadStream& s,
270
270
  }
271
271
 
272
272
  // Need more data.
273
- std::size_t bytes_to_read = read_size_helper(b, 65536);
273
+ std::size_t bytes_to_read = std::min<std::size_t>(
274
+ std::max<std::size_t>(512, b.capacity() - b.size()),
275
+ std::min<std::size_t>(65536, b.max_size() - b.size()));
274
276
  b.commit(s.read_some(b.prepare(bytes_to_read), ec));
275
277
  if (ec)
276
278
  return 0;
@@ -16,7 +16,6 @@
16
16
  #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17
17
 
18
18
  #include <boost/asio/detail/config.hpp>
19
- #include <future>
20
19
  #include <tuple>
21
20
  #include <boost/asio/async_result.hpp>
22
21
  #include <boost/asio/detail/memory.hpp>
@@ -25,7 +25,12 @@ namespace asio {
25
25
  namespace ip {
26
26
 
27
27
  /// Thrown to indicate a failed address conversion.
28
- class bad_address_cast : public std::bad_cast
28
+ class bad_address_cast :
29
+ #if defined(BOOST_ASIO_MSVC) && defined(_HAS_EXCEPTIONS) && !_HAS_EXCEPTIONS
30
+ public std::exception
31
+ #else
32
+ public std::bad_cast
33
+ #endif
29
34
  {
30
35
  public:
31
36
  /// Default constructor.
@@ -199,7 +199,8 @@ public:
199
199
  }
200
200
 
201
201
  #if !defined(BOOST_ASIO_NO_DEPRECATED)
202
- /// (Deprecated.) Perform forward resolution of a query to a list of entries.
202
+ /// (Deprecated: Use overload with separate host and service parameters.)
203
+ /// Perform forward resolution of a query to a list of entries.
203
204
  /**
204
205
  * This function is used to resolve a query into a list of endpoint entries.
205
206
  *
@@ -220,7 +221,8 @@ public:
220
221
  return r;
221
222
  }
222
223
 
223
- /// (Deprecated.) Perform forward resolution of a query to a list of entries.
224
+ /// (Deprecated: Use overload with separate host and service parameters.)
225
+ /// Perform forward resolution of a query to a list of entries.
224
226
  /**
225
227
  * This function is used to resolve a query into a list of endpoint entries.
226
228
  *
@@ -601,8 +603,8 @@ public:
601
603
  }
602
604
 
603
605
  #if !defined(BOOST_ASIO_NO_DEPRECATED)
604
- /// (Deprecated.) Asynchronously perform forward resolution of a query to a
605
- /// list of entries.
606
+ /// (Deprecated: Use overload with separate host and service parameters.)
607
+ /// Asynchronously perform forward resolution of a query to a list of entries.
606
608
  /**
607
609
  * This function is used to asynchronously resolve a query into a list of
608
610
  * endpoint entries.
@@ -233,19 +233,19 @@ public:
233
233
  /// Get the number of entries in the results range.
234
234
  size_type size() const BOOST_ASIO_NOEXCEPT
235
235
  {
236
- return this->values_->size();
236
+ return this->values_ ? this->values_->size() : 0;
237
237
  }
238
238
 
239
239
  /// Get the maximum number of entries permitted in a results range.
240
240
  size_type max_size() const BOOST_ASIO_NOEXCEPT
241
241
  {
242
- return this->values_->max_size();
242
+ return this->values_ ? this->values_->max_size() : values_type().max_size();
243
243
  }
244
244
 
245
245
  /// Determine whether the results range is empty.
246
246
  bool empty() const BOOST_ASIO_NOEXCEPT
247
247
  {
248
- return this->values_->empty();
248
+ return this->values_ ? this->values_->empty() : true;
249
249
  }
250
250
 
251
251
  /// Obtain a begin iterator for the results range.
@@ -253,7 +253,7 @@ public:
253
253
  {
254
254
  basic_resolver_results tmp(*this);
255
255
  tmp.index_ = 0;
256
- return tmp;
256
+ return BOOST_ASIO_MOVE_CAST(basic_resolver_results)(tmp);
257
257
  }
258
258
 
259
259
  /// Obtain an end iterator for the results range.
@@ -16,11 +16,11 @@
16
16
  #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17
17
 
18
18
  #include <boost/asio/detail/config.hpp>
19
+ #include <boost/asio/detail/future.hpp>
19
20
 
20
- #if defined(BOOST_ASIO_HAS_STD_FUTURE) \
21
+ #if defined(BOOST_ASIO_HAS_STD_FUTURE_CLASS) \
21
22
  || defined(GENERATING_DOCUMENTATION)
22
23
 
23
- #include <future>
24
24
  #include <boost/asio/async_result.hpp>
25
25
  #include <boost/asio/detail/type_traits.hpp>
26
26
  #include <boost/asio/detail/variadic_templates.hpp>
@@ -122,7 +122,7 @@ private:
122
122
 
123
123
  #include <boost/asio/detail/pop_options.hpp>
124
124
 
125
- #endif // defined(BOOST_ASIO_HAS_STD_FUTURE)
125
+ #endif // defined(BOOST_ASIO_HAS_STD_FUTURE_CLASS)
126
126
  // || defined(GENERATING_DOCUMENTATION)
127
127
 
128
128
  #endif // BOOST_ASIO_PACKAGED_TASK_HPP
@@ -33,8 +33,8 @@ namespace asio {
33
33
  /**
34
34
  * @defgroup read boost::asio::read
35
35
  *
36
- * @brief Attempt to read a certain amount of data from a stream before
37
- * returning.
36
+ * @brief The @c read function is a composed operation that reads a certain
37
+ * amount of data from a stream before returning.
38
38
  */
39
39
  /*@{*/
40
40
 
@@ -533,8 +533,8 @@ std::size_t read(SyncReadStream& s, basic_streambuf<Allocator>& b,
533
533
  /**
534
534
  * @defgroup async_read boost::asio::async_read
535
535
  *
536
- * @brief Start an asynchronous operation to read a certain amount of data from
537
- * a stream.
536
+ * @brief The @c async_read function is a composed asynchronous operation that
537
+ * reads a certain amount of data from a stream before completion.
538
538
  */
539
539
  /*@{*/
540
540
 
@@ -33,8 +33,8 @@ namespace asio {
33
33
  /**
34
34
  * @defgroup read_at boost::asio::read_at
35
35
  *
36
- * @brief Attempt to read a certain amount of data at the specified offset
37
- * before returning.
36
+ * @brief The @c read_at function is a composed operation that reads a certain
37
+ * amount of data at the specified offset before returning.
38
38
  */
39
39
  /*@{*/
40
40
 
@@ -395,8 +395,8 @@ std::size_t read_at(SyncRandomAccessReadDevice& d,
395
395
  /**
396
396
  * @defgroup async_read_at boost::asio::async_read_at
397
397
  *
398
- * @brief Start an asynchronous operation to read a certain amount of data at
399
- * the specified offset.
398
+ * @brief The @c async_read_at function is a composed asynchronous operation
399
+ * that reads a certain amount of data at the specified offset.
400
400
  */
401
401
  /*@{*/
402
402