passenger 6.2.1 → 6.2.2

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 (270) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +37 -15
  3. data/build/cxx_tests.rb +2 -0
  4. data/build/support/cxx_dependency_map.rb +3 -63
  5. data/src/agent/Core/Config.h +1 -1
  6. data/src/agent/Core/Controller/Config.h +1 -1
  7. data/src/agent/Shared/ApiServerUtils.h +1 -1
  8. data/src/agent/Watchdog/Config.h +1 -1
  9. data/src/apache2_module/Hooks.cpp +13 -0
  10. data/src/apache2_module/Utils.h +14 -0
  11. data/src/cxx_supportlib/Constants.h +1 -1
  12. data/src/cxx_supportlib/FileTools/FileManip.cpp +27 -3
  13. data/src/cxx_supportlib/InstanceDirectory.h +30 -3
  14. data/src/cxx_supportlib/ServerKit/Errors.h +1 -1
  15. data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +1 -1
  16. data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +1 -1
  17. data/src/cxx_supportlib/ServerKit/HttpRequest.h +1 -1
  18. data/src/cxx_supportlib/ServerKit/llerrors.h +3 -3
  19. data/src/cxx_supportlib/ServerKit/llversion.h +1 -1
  20. data/src/cxx_supportlib/{ServerKit/llhttp_api.c → vendor-copy/llhttp/api.c} +30 -23
  21. data/src/cxx_supportlib/{ServerKit → vendor-copy/llhttp}/llhttp.c +1756 -1645
  22. data/src/cxx_supportlib/{ServerKit → vendor-copy/llhttp}/llhttp.h +35 -13
  23. data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/classification.hpp +19 -0
  24. data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/formatter.hpp +1 -1
  25. data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/trim_all.hpp +0 -2
  26. data/src/cxx_supportlib/vendor-modified/boost/assert.hpp +20 -13
  27. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_x86.hpp +2 -2
  28. data/src/cxx_supportlib/vendor-modified/boost/atomic/thread_pause.hpp +4 -0
  29. data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn.hpp +1 -1
  30. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/debug.hpp +4 -0
  31. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx03.hpp +1 -1
  32. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx11.hpp +1 -1
  33. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx14.hpp +1 -1
  34. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx17.hpp +1 -1
  35. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx20.hpp +1 -1
  36. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx23.hpp +1 -1
  37. data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +6 -1
  38. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang_version.hpp +10 -1
  39. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +5 -3
  40. data/src/cxx_supportlib/vendor-modified/boost/config/detail/cxx_composite.hpp +1 -1
  41. data/src/cxx_supportlib/vendor-modified/boost/config/workaround.hpp +5 -0
  42. data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +57 -53
  43. data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +10 -10
  44. data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +34 -2
  45. data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +14 -2
  46. data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +176 -2287
  47. data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +13 -9
  48. data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +186 -70
  49. data/src/cxx_supportlib/vendor-modified/boost/container/detail/algorithm.hpp +2 -2
  50. data/src/cxx_supportlib/vendor-modified/boost/container/detail/aligned_allocation.hpp +149 -0
  51. data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +35 -0
  52. data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_lib.h +1 -0
  53. data/src/cxx_supportlib/vendor-modified/boost/container/detail/bit_utilities.hpp +133 -0
  54. data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +18 -3
  55. data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +5 -0
  56. data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_end.hpp +4 -0
  57. data/src/cxx_supportlib/vendor-modified/boost/container/detail/container_rebind.hpp +1 -1
  58. data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +20 -10
  59. data/src/cxx_supportlib/vendor-modified/boost/container/detail/deque_impl.hpp +2744 -0
  60. data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +202 -104
  61. data/src/cxx_supportlib/vendor-modified/boost/container/detail/dlmalloc.hpp +5 -4
  62. data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +161 -85
  63. data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_constructible.hpp +180 -0
  64. data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +3 -2
  65. data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +12 -0
  66. data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +16 -0
  67. data/src/cxx_supportlib/vendor-modified/boost/container/detail/mutex.hpp +1 -1
  68. data/src/cxx_supportlib/vendor-modified/boost/container/detail/next_capacity.hpp +9 -1
  69. data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +18 -14
  70. data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +256 -41
  71. data/src/cxx_supportlib/vendor-modified/boost/container/detail/operator_new_helpers.hpp +75 -24
  72. data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +1 -56
  73. data/src/cxx_supportlib/vendor-modified/boost/container/detail/placement_new.hpp +16 -3
  74. data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common_alloc.hpp +1 -7
  75. data/src/cxx_supportlib/vendor-modified/boost/container/detail/range_utils.hpp +196 -0
  76. data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +33 -1
  77. data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +124 -69
  78. data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +109 -7
  79. data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +168 -162
  80. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/nest.hpp +2978 -0
  81. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/pmr/nest.hpp +45 -0
  82. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_all_of.hpp +43 -0
  83. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_any_of.hpp +42 -0
  84. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy.hpp +229 -0
  85. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy_if.hpp +270 -0
  86. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy_n.hpp +308 -0
  87. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_count.hpp +101 -0
  88. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_count_if.hpp +100 -0
  89. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_equal.hpp +268 -0
  90. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_fill.hpp +101 -0
  91. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_fill_n.hpp +171 -0
  92. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find.hpp +110 -0
  93. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_if.hpp +110 -0
  94. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_if_not.hpp +43 -0
  95. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last.hpp +179 -0
  96. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last_if.hpp +179 -0
  97. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last_if_not.hpp +43 -0
  98. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_for_each.hpp +92 -0
  99. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_generate.hpp +90 -0
  100. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_generate_n.hpp +162 -0
  101. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_partitioned.hpp +46 -0
  102. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_sorted.hpp +49 -0
  103. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_sorted_until.hpp +169 -0
  104. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_iterator_traits.hpp +382 -0
  105. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_merge.hpp +428 -0
  106. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_mismatch.hpp +350 -0
  107. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_none_of.hpp +98 -0
  108. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition.hpp +296 -0
  109. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition_copy.hpp +105 -0
  110. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition_point.hpp +116 -0
  111. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove.hpp +57 -0
  112. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_copy.hpp +207 -0
  113. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_copy_if.hpp +223 -0
  114. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_if.hpp +57 -0
  115. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_replace.hpp +90 -0
  116. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_replace_if.hpp +90 -0
  117. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_reverse.hpp +245 -0
  118. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_reverse_copy.hpp +229 -0
  119. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_search.hpp +211 -0
  120. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_search_n.hpp +476 -0
  121. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_difference.hpp +300 -0
  122. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_intersection.hpp +287 -0
  123. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_symmetric_difference.hpp +306 -0
  124. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_union.hpp +294 -0
  125. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_stable_partition.hpp +153 -0
  126. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_swap_ranges.hpp +92 -0
  127. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_transform.hpp +93 -0
  128. data/src/cxx_supportlib/vendor-modified/boost/container/experimental/wrapped_iterator.hpp +142 -0
  129. data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +642 -417
  130. data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +141 -30
  131. data/src/cxx_supportlib/vendor-modified/boost/container/hub.hpp +2426 -0
  132. data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +65 -57
  133. data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +247 -68
  134. data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +7 -0
  135. data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +39 -33
  136. data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +156 -23
  137. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/global_resource.hpp +3 -3
  138. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/hub.hpp +43 -0
  139. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +5 -3
  140. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +1 -0
  141. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +1 -1
  142. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +4 -0
  143. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/segtor.hpp +45 -0
  144. data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +5 -4
  145. data/src/cxx_supportlib/vendor-modified/boost/container/segtor.hpp +905 -0
  146. data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +148 -35
  147. data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +59 -52
  148. data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +632 -5
  149. data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +66 -60
  150. data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +46 -1
  151. data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +612 -317
  152. data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator.hpp +54 -111
  153. data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_construction.hpp +100 -0
  154. data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_fwd.hpp +1 -3
  155. data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +233 -116
  156. data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +5 -1
  157. data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +17 -10
  158. data/src/cxx_supportlib/vendor-modified/boost/date_time/period.hpp +1 -3
  159. data/src/cxx_supportlib/vendor-modified/boost/describe/detail/config.hpp +16 -0
  160. data/src/cxx_supportlib/vendor-modified/boost/exception/detail/encoder.hpp +114 -0
  161. data/src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp +4 -0
  162. data/src/cxx_supportlib/vendor-modified/boost/exception/detail/requires_cxx11.hpp +1 -1
  163. data/src/cxx_supportlib/vendor-modified/boost/exception/detail/type_info.hpp +211 -1
  164. data/src/cxx_supportlib/vendor-modified/boost/exception/diagnostic_information.hpp +59 -0
  165. data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +6 -0
  166. data/src/cxx_supportlib/vendor-modified/boost/exception/info.hpp +34 -0
  167. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +0 -1
  168. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +12 -3
  169. data/src/cxx_supportlib/vendor-modified/boost/intrusive/derivation_value_traits.hpp +1 -1
  170. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +29 -174
  171. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +18 -2
  172. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/key_nodeptr_comp.hpp +0 -1
  173. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +4 -5
  174. data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +20 -11
  175. data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +42 -14
  176. data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +58 -22
  177. data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +3 -1
  178. data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +5 -1
  179. data/src/cxx_supportlib/vendor-modified/boost/iterator/distance.hpp +8 -2
  180. data/src/cxx_supportlib/vendor-modified/boost/iterator/is_iterator.hpp +9 -0
  181. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +11 -1
  182. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +9 -1
  183. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/config.hpp +22 -0
  184. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +15 -7
  185. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +23 -11
  186. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +11 -1
  187. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +9 -1
  188. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +11 -2
  189. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +10 -1
  190. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +8 -1
  191. data/src/cxx_supportlib/vendor-modified/boost/{detail → lexical_cast/detail}/lcast_precision.hpp +13 -1
  192. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +11 -1
  193. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +10 -2
  194. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +15 -2
  195. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +11 -1
  196. data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/once_atomic.cpp +1 -1
  197. data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +48 -46
  198. data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +23 -0
  199. data/src/cxx_supportlib/vendor-modified/boost/move/detail/move_helpers.hpp +24 -24
  200. data/src/cxx_supportlib/vendor-modified/boost/move/detail/nsec_clock.hpp +12 -4
  201. data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +76 -0
  202. data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +1 -1
  203. data/src/cxx_supportlib/vendor-modified/boost/move/traits.hpp +11 -0
  204. data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +58 -37
  205. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_copy_if.hpp +1 -2
  206. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_map_find.hpp +17 -9
  207. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_remove_if.hpp +1 -2
  208. data/src/cxx_supportlib/vendor-modified/boost/mp11/integer_sequence.hpp +6 -0
  209. data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
  210. data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +6 -1
  211. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_common_defs.hpp +188 -0
  212. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp +0 -6
  213. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_hash.hpp +1 -1
  214. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_nonmember_interface.hpp +117 -0
  215. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +108 -83
  216. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp +39 -39
  217. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_select_implementation.hpp +37 -0
  218. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +1 -1
  219. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +8 -8
  220. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/union_optional.hpp +724 -0
  221. data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +93 -220
  222. data/src/cxx_supportlib/vendor-modified/boost/optional/optional_fwd.hpp +14 -4
  223. data/src/cxx_supportlib/vendor-modified/boost/optional/optional_io.hpp +1 -1
  224. data/src/cxx_supportlib/vendor-modified/boost/random/binomial_distribution.hpp +1 -1
  225. data/src/cxx_supportlib/vendor-modified/boost/random/uniform_int_distribution.hpp +1 -1
  226. data/src/cxx_supportlib/vendor-modified/boost/rational.hpp +1 -1
  227. data/src/cxx_supportlib/vendor-modified/boost/static_assert.hpp +4 -6
  228. data/src/cxx_supportlib/vendor-modified/boost/system/api_config.hpp +1 -1
  229. data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +16 -0
  230. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +13 -13
  231. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +5 -5
  232. data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_deque_base.hpp +3 -2
  233. data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_queue_base.hpp +3 -2
  234. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread.hpp +2 -1
  235. data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/parallel/v2/task_region.hpp +1 -1
  236. data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +30 -28
  237. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once.hpp +6 -3
  238. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once_atomic.hpp +5 -1
  239. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/pthread_helpers.hpp +1 -0
  240. data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/shared_mutex.hpp +16 -16
  241. data/src/cxx_supportlib/vendor-modified/boost/thread/v2/shared_mutex.hpp +26 -26
  242. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +196 -6
  243. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +191 -6
  244. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_map.hpp +196 -5
  245. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_set.hpp +192 -5
  246. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +3 -3
  247. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +2 -2
  248. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +3 -3
  249. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +52 -16
  250. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/ranges_support.hpp +104 -0
  251. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +1 -14
  252. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/unordered_printers.hpp +10 -4
  253. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +121 -3
  254. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +118 -3
  255. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +338 -1
  256. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +121 -3
  257. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +118 -3
  258. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +333 -1
  259. data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
  260. data/src/cxx_supportlib/vendor-modified/jsoncpp/json-forwards.h +276 -143
  261. data/src/cxx_supportlib/vendor-modified/jsoncpp/json.h +1262 -771
  262. data/src/cxx_supportlib/vendor-modified/jsoncpp/jsoncpp.cpp +1704 -1586
  263. data/src/nginx_module/ContentHandler.c +35 -0
  264. data/src/ruby_supportlib/phusion_passenger/common_library.rb +6 -6
  265. data/src/ruby_supportlib/phusion_passenger/utils/json.rb +25 -2
  266. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +12 -1
  267. data/src/ruby_supportlib/phusion_passenger.rb +1 -1
  268. metadata +73 -8
  269. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_utility.hpp +0 -41
  270. /data/src/cxx_supportlib/{ServerKit/llhttp_http.c → vendor-copy/llhttp/http.c} +0 -0
@@ -174,6 +174,20 @@ cleanup_detector_result(void *data) {
174
174
  psg_app_type_detector_result_deinit((PsgAppTypeDetectorResult *) data);
175
175
  }
176
176
 
177
+ /* The request that we send to the Core is a CRLF-delimited HTTP header block.
178
+ * The Core trusts every secure header ("!~" prefix) that comes after the
179
+ * Core password header. So if a request-derived value that we serialize as
180
+ * a secure header contains CR or LF, then the client can inject arbitrary
181
+ * secure headers, such as an app start command. Such values must be rejected.
182
+ */
183
+ static int
184
+ contains_header_delimiter(const ngx_str_t *str)
185
+ {
186
+ return str->len > 0
187
+ && (memchr(str->data, '\r', str->len) != NULL
188
+ || memchr(str->data, '\n', str->len) != NULL);
189
+ }
190
+
177
191
  static int
178
192
  find_base_uri(ngx_http_request_t *r, const passenger_loc_conf_t *loc,
179
193
  ngx_str_t *found_base_uri)
@@ -1038,6 +1052,18 @@ create_request(ngx_http_request_t *r)
1038
1052
  }
1039
1053
  request_size = construct_request_buffer(r, slcf, context, &state, NULL);
1040
1054
 
1055
+ /* We check this here instead of in passenger_content_handler() because
1056
+ * r->headers_in.user may only have been populated just now: it is filled
1057
+ * lazily when something evaluates $remote_user, such as a
1058
+ * passenger_set_header value.
1059
+ */
1060
+ if (contains_header_delimiter(&r->headers_in.user)) {
1061
+ ngx_log_error(NGX_LOG_WARN, r->connection->log, 0,
1062
+ "rejecting request because the authenticated user name "
1063
+ "contains a CR or LF character");
1064
+ return NGX_ERROR;
1065
+ }
1066
+
1041
1067
  b = ngx_create_temp_buf(r->pool, request_size);
1042
1068
  if (b == NULL) {
1043
1069
  return NGX_ERROR;
@@ -1731,6 +1757,15 @@ passenger_content_handler(ngx_http_request_t *r)
1731
1757
  context->public_dir.data = (u_char *) "/";
1732
1758
  context->public_dir.len = 1;
1733
1759
  }
1760
+ /* The document root can contain request-derived data, e.g. when `root`
1761
+ * contains a variable set from a regex capture of the (URL-decoded) URI.
1762
+ */
1763
+ if (contains_header_delimiter(&context->public_dir)) {
1764
+ ngx_log_error(NGX_LOG_WARN, r->connection->log, 0,
1765
+ "rejecting request because the document root contains "
1766
+ "a CR or LF character");
1767
+ return NGX_HTTP_BAD_REQUEST;
1768
+ }
1734
1769
 
1735
1770
  /* If there's a corresponding page cache file for this URL, then serve that
1736
1771
  * file instead.
@@ -345,16 +345,16 @@ COMMON_LIBRARY = CommonLibraryBuilder.new do
345
345
  source: 'ServerKit/url_parser.c',
346
346
  category: :other,
347
347
  optimize: :very_heavy
348
- define_component 'ServerKit/llhttp.o',
349
- source: 'ServerKit/llhttp.c',
348
+ define_component 'llhttp/llhttp.o',
349
+ source: 'vendor-copy/llhttp/llhttp.c',
350
350
  category: :other,
351
351
  optimize: :very_heavy
352
- define_component 'ServerKit/llhttp_http.o',
353
- source: 'ServerKit/llhttp_http.c',
352
+ define_component 'llhttp/llhttp_http.o',
353
+ source: 'vendor-copy/llhttp/http.c',
354
354
  category: :other,
355
355
  optimize: :very_heavy
356
- define_component 'ServerKit/llhttp_api.o',
357
- source: 'ServerKit/llhttp_api.c',
356
+ define_component 'llhttp/llhttp_api.o',
357
+ source: 'vendor-copy/llhttp/api.c',
358
358
  category: :other,
359
359
  optimize: :very_heavy
360
360
  define_component 'ServerKit/Implementation.o',
@@ -108,7 +108,7 @@ class JSON
108
108
  end
109
109
 
110
110
  SPEC = { 'b' => "\b", 'f' => "\f", 'n' => "\n", 'r' => "\r", 't' => "\t" }
111
- UNI = 'u'; CODE = /[a-fA-F0-9]{4}/
111
+ UNI = 'u'; CODE = /[a-fA-F0-9]{4}/; UNI_ESC = /\\u/
112
112
  STR = /"/; STE = '"'
113
113
  ESC = '\\'
114
114
 
@@ -117,7 +117,9 @@ class JSON
117
117
  str, esc = String.new, false
118
118
  while c = s.getch
119
119
  if esc
120
- str << (c == UNI ? (s.scan(CODE) || error).to_i(16).chr : SPEC[c] || c)
120
+ # Give decoded characters the input's encoding, so that an escaped
121
+ # character yields the same string as the raw character would.
122
+ str << (c == UNI ? unicode_escape.force_encoding(c.encoding) : SPEC[c] || c)
121
123
  esc = false
122
124
  else
123
125
  case c
@@ -131,6 +133,27 @@ class JSON
131
133
  end
132
134
  end
133
135
 
136
+ # Decodes a \uXXXX escape (whose "\u" has already been consumed) into a
137
+ # UTF-8 string. Characters outside the Basic Multilingual Plane, such as
138
+ # emoji, are escaped as a UTF-16 surrogate pair (e.g. \uD83D\uDE00), which
139
+ # is combined into a single character here.
140
+ def unicode_escape
141
+ code = hex_code
142
+ if code.between?(0xD800, 0xDBFF)
143
+ scan(UNI_ESC) || error
144
+ low = hex_code
145
+ error unless low.between?(0xDC00, 0xDFFF)
146
+ code = 0x10000 + ((code - 0xD800) << 10) + (low - 0xDC00)
147
+ elsif code.between?(0xDC00, 0xDFFF)
148
+ error
149
+ end
150
+ [code].pack('U')
151
+ end
152
+
153
+ def hex_code
154
+ (scan(CODE) || error).to_i(16)
155
+ end
156
+
134
157
  def error
135
158
  raise "parse error at: #{scan(/.{1,20}/m).inspect}"
136
159
  end
@@ -707,13 +707,24 @@ class DaemonController
707
707
  raise Errno::ECONNREFUSED
708
708
  end
709
709
  end
710
- true
710
+ socket_connected?(socket)
711
711
  rescue Errno::ECONNREFUSED, Errno::ENOENT
712
712
  false
713
713
  ensure
714
714
  socket.close if socket
715
715
  end
716
716
 
717
+ # Some macOS systems (seen on CI runners in 2026) report a nonblocking
718
+ # connect to a closed TCP port as successful, so ping_socket confirms the
719
+ # connection by asking for the peer address. macOS fails that call with
720
+ # EINVAL instead of ENOTCONN when the connection attempt has failed.
721
+ def socket_connected?(socket)
722
+ socket.getpeername
723
+ true
724
+ rescue Errno::ENOTCONN, Errno::EINVAL
725
+ false
726
+ end
727
+
717
728
  def ping_tcp_socket(sockaddr)
718
729
  ping_socket(Socket::Constants::AF_INET, sockaddr)
719
730
  rescue Errno::EAFNOSUPPORT
@@ -33,7 +33,7 @@ module PhusionPassenger
33
33
 
34
34
  PACKAGE_NAME = 'passenger'
35
35
  # Run 'rake src/cxx_supportlib/Constants.h configkit_schemas_inline_comments' after changing this number.
36
- VERSION_STRING = '6.2.1'
36
+ VERSION_STRING = '6.2.2'
37
37
 
38
38
  # Tip: find the SHA-256 with ./dev/nginx_version_sha256 <VERSION>
39
39
  PREFERRED_NGINX_VERSION = '1.30.6'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: passenger
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.2.1
4
+ version: 6.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Phusion - http://www.phusion.nl/
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-10-18 00:00:00.000000000 Z
11
+ date: 2026-11-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -501,10 +501,6 @@ files:
501
501
  - src/cxx_supportlib/ServerKit/Implementation.cpp
502
502
  - src/cxx_supportlib/ServerKit/Server.h
503
503
  - src/cxx_supportlib/ServerKit/llerrors.h
504
- - src/cxx_supportlib/ServerKit/llhttp.c
505
- - src/cxx_supportlib/ServerKit/llhttp.h
506
- - src/cxx_supportlib/ServerKit/llhttp_api.c
507
- - src/cxx_supportlib/ServerKit/llhttp_http.c
508
504
  - src/cxx_supportlib/ServerKit/llversion.h
509
505
  - src/cxx_supportlib/ServerKit/url_parser.c
510
506
  - src/cxx_supportlib/ServerKit/url_parser.h
@@ -688,6 +684,10 @@ files:
688
684
  - src/cxx_supportlib/vendor-copy/libuv/src/uv-data-getter-setters.c
689
685
  - src/cxx_supportlib/vendor-copy/libuv/src/version.c
690
686
  - src/cxx_supportlib/vendor-copy/libuv/tsansupp.txt
687
+ - src/cxx_supportlib/vendor-copy/llhttp/api.c
688
+ - src/cxx_supportlib/vendor-copy/llhttp/http.c
689
+ - src/cxx_supportlib/vendor-copy/llhttp/llhttp.c
690
+ - src/cxx_supportlib/vendor-copy/llhttp/llhttp.h
691
691
  - src/cxx_supportlib/vendor-copy/utf8.h
692
692
  - src/cxx_supportlib/vendor-copy/utf8/checked.h
693
693
  - src/cxx_supportlib/vendor-copy/utf8/core.h
@@ -1049,11 +1049,13 @@ files:
1049
1049
  - src/cxx_supportlib/vendor-modified/boost/container/detail/addressof.hpp
1050
1050
  - src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp
1051
1051
  - src/cxx_supportlib/vendor-modified/boost/container/detail/algorithm.hpp
1052
+ - src/cxx_supportlib/vendor-modified/boost/container/detail/aligned_allocation.hpp
1052
1053
  - src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp
1053
1054
  - src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_lib.h
1054
1055
  - src/cxx_supportlib/vendor-modified/boost/container/detail/allocation_type.hpp
1055
1056
  - src/cxx_supportlib/vendor-modified/boost/container/detail/allocator_version_traits.hpp
1056
1057
  - src/cxx_supportlib/vendor-modified/boost/container/detail/auto_link.hpp
1058
+ - src/cxx_supportlib/vendor-modified/boost/container/detail/bit_utilities.hpp
1057
1059
  - src/cxx_supportlib/vendor-modified/boost/container/detail/block_list.hpp
1058
1060
  - src/cxx_supportlib/vendor-modified/boost/container/detail/block_slist.hpp
1059
1061
  - src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp
@@ -1063,12 +1065,14 @@ files:
1063
1065
  - src/cxx_supportlib/vendor-modified/boost/container/detail/container_or_allocator_rebind.hpp
1064
1066
  - src/cxx_supportlib/vendor-modified/boost/container/detail/container_rebind.hpp
1065
1067
  - src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp
1068
+ - src/cxx_supportlib/vendor-modified/boost/container/detail/deque_impl.hpp
1066
1069
  - src/cxx_supportlib/vendor-modified/boost/container/detail/destroyers.hpp
1067
1070
  - src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp
1068
1071
  - src/cxx_supportlib/vendor-modified/boost/container/detail/dlmalloc.hpp
1069
1072
  - src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp
1070
1073
  - src/cxx_supportlib/vendor-modified/boost/container/detail/function_detector.hpp
1071
1074
  - src/cxx_supportlib/vendor-modified/boost/container/detail/guards_dended.hpp
1075
+ - src/cxx_supportlib/vendor-modified/boost/container/detail/is_constructible.hpp
1072
1076
  - src/cxx_supportlib/vendor-modified/boost/container/detail/is_container.hpp
1073
1077
  - src/cxx_supportlib/vendor-modified/boost/container/detail/is_contiguous_container.hpp
1074
1078
  - src/cxx_supportlib/vendor-modified/boost/container/detail/is_pair.hpp
@@ -1093,6 +1097,7 @@ files:
1093
1097
  - src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common.hpp
1094
1098
  - src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common_alloc.hpp
1095
1099
  - src/cxx_supportlib/vendor-modified/boost/container/detail/pool_resource.hpp
1100
+ - src/cxx_supportlib/vendor-modified/boost/container/detail/range_utils.hpp
1096
1101
  - src/cxx_supportlib/vendor-modified/boost/container/detail/singleton.hpp
1097
1102
  - src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp
1098
1103
  - src/cxx_supportlib/vendor-modified/boost/container/detail/thread_mutex.hpp
@@ -1105,8 +1110,58 @@ files:
1105
1110
  - src/cxx_supportlib/vendor-modified/boost/container/detail/version_type.hpp
1106
1111
  - src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp
1107
1112
  - src/cxx_supportlib/vendor-modified/boost/container/devector.hpp
1113
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/nest.hpp
1114
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/pmr/nest.hpp
1115
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_all_of.hpp
1116
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_any_of.hpp
1117
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy.hpp
1118
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy_if.hpp
1119
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy_n.hpp
1120
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_count.hpp
1121
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_count_if.hpp
1122
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_equal.hpp
1123
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_fill.hpp
1124
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_fill_n.hpp
1125
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find.hpp
1126
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_if.hpp
1127
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_if_not.hpp
1128
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last.hpp
1129
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last_if.hpp
1130
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last_if_not.hpp
1131
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_for_each.hpp
1132
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_generate.hpp
1133
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_generate_n.hpp
1134
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_partitioned.hpp
1135
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_sorted.hpp
1136
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_sorted_until.hpp
1137
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_iterator_traits.hpp
1138
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_merge.hpp
1139
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_mismatch.hpp
1140
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_none_of.hpp
1141
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition.hpp
1142
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition_copy.hpp
1143
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition_point.hpp
1144
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove.hpp
1145
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_copy.hpp
1146
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_copy_if.hpp
1147
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_if.hpp
1148
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_replace.hpp
1149
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_replace_if.hpp
1150
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_reverse.hpp
1151
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_reverse_copy.hpp
1152
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_search.hpp
1153
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_search_n.hpp
1154
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_difference.hpp
1155
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_intersection.hpp
1156
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_symmetric_difference.hpp
1157
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_union.hpp
1158
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_stable_partition.hpp
1159
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_swap_ranges.hpp
1160
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_transform.hpp
1161
+ - src/cxx_supportlib/vendor-modified/boost/container/experimental/wrapped_iterator.hpp
1108
1162
  - src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp
1109
1163
  - src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp
1164
+ - src/cxx_supportlib/vendor-modified/boost/container/hub.hpp
1110
1165
  - src/cxx_supportlib/vendor-modified/boost/container/list.hpp
1111
1166
  - src/cxx_supportlib/vendor-modified/boost/container/map.hpp
1112
1167
  - src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp
@@ -1118,6 +1173,7 @@ files:
1118
1173
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/flat_map.hpp
1119
1174
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/flat_set.hpp
1120
1175
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/global_resource.hpp
1176
+ - src/cxx_supportlib/vendor-modified/boost/container/pmr/hub.hpp
1121
1177
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/list.hpp
1122
1178
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/map.hpp
1123
1179
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp
@@ -1125,6 +1181,7 @@ files:
1125
1181
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp
1126
1182
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/pool_options.hpp
1127
1183
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp
1184
+ - src/cxx_supportlib/vendor-modified/boost/container/pmr/segtor.hpp
1128
1185
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/set.hpp
1129
1186
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/slist.hpp
1130
1187
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/small_vector.hpp
@@ -1135,6 +1192,7 @@ files:
1135
1192
  - src/cxx_supportlib/vendor-modified/boost/container/pmr/vector.hpp
1136
1193
  - src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp
1137
1194
  - src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator_fwd.hpp
1195
+ - src/cxx_supportlib/vendor-modified/boost/container/segtor.hpp
1138
1196
  - src/cxx_supportlib/vendor-modified/boost/container/set.hpp
1139
1197
  - src/cxx_supportlib/vendor-modified/boost/container/slist.hpp
1140
1198
  - src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp
@@ -1143,6 +1201,7 @@ files:
1143
1201
  - src/cxx_supportlib/vendor-modified/boost/container/string.hpp
1144
1202
  - src/cxx_supportlib/vendor-modified/boost/container/throw_exception.hpp
1145
1203
  - src/cxx_supportlib/vendor-modified/boost/container/uses_allocator.hpp
1204
+ - src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_construction.hpp
1146
1205
  - src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_fwd.hpp
1147
1206
  - src/cxx_supportlib/vendor-modified/boost/container/vector.hpp
1148
1207
  - src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_integral.hpp
@@ -1333,12 +1392,12 @@ files:
1333
1392
  - src/cxx_supportlib/vendor-modified/boost/describe/modifiers.hpp
1334
1393
  - src/cxx_supportlib/vendor-modified/boost/detail/basic_pointerbuf.hpp
1335
1394
  - src/cxx_supportlib/vendor-modified/boost/detail/fenv.hpp
1336
- - src/cxx_supportlib/vendor-modified/boost/detail/lcast_precision.hpp
1337
1395
  - src/cxx_supportlib/vendor-modified/boost/detail/reference_content.hpp
1338
1396
  - src/cxx_supportlib/vendor-modified/boost/detail/workaround.hpp
1339
1397
  - src/cxx_supportlib/vendor-modified/boost/enable_shared_from_this.hpp
1340
1398
  - src/cxx_supportlib/vendor-modified/boost/exception/current_exception_cast.hpp
1341
1399
  - src/cxx_supportlib/vendor-modified/boost/exception/detail/clone_current_exception.hpp
1400
+ - src/cxx_supportlib/vendor-modified/boost/exception/detail/encoder.hpp
1342
1401
  - src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp
1343
1402
  - src/cxx_supportlib/vendor-modified/boost/exception/detail/exception_ptr.hpp
1344
1403
  - src/cxx_supportlib/vendor-modified/boost/exception/detail/is_output_streamable.hpp
@@ -1513,6 +1572,7 @@ files:
1513
1572
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp
1514
1573
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp
1515
1574
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp
1575
+ - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/config.hpp
1516
1576
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp
1517
1577
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp
1518
1578
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp
@@ -1520,6 +1580,7 @@ files:
1520
1580
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp
1521
1581
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp
1522
1582
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp
1583
+ - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_precision.hpp
1523
1584
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp
1524
1585
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/type_traits.hpp
1525
1586
  - src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp
@@ -2691,14 +2752,17 @@ files:
2691
2752
  - src/cxx_supportlib/vendor-modified/boost/optional/bad_optional_access.hpp
2692
2753
  - src/cxx_supportlib/vendor-modified/boost/optional/detail/experimental_traits.hpp
2693
2754
  - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_aligned_storage.hpp
2755
+ - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_common_defs.hpp
2694
2756
  - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_config.hpp
2695
2757
  - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp
2696
2758
  - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_hash.hpp
2759
+ - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_nonmember_interface.hpp
2697
2760
  - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp
2698
2761
  - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp
2762
+ - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_select_implementation.hpp
2699
2763
  - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp
2700
2764
  - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp
2701
- - src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_utility.hpp
2765
+ - src/cxx_supportlib/vendor-modified/boost/optional/detail/union_optional.hpp
2702
2766
  - src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp
2703
2767
  - src/cxx_supportlib/vendor-modified/boost/optional/optional_fwd.hpp
2704
2768
  - src/cxx_supportlib/vendor-modified/boost/optional/optional_io.hpp
@@ -4045,6 +4109,7 @@ files:
4045
4109
  - src/cxx_supportlib/vendor-modified/boost/unordered/detail/narrow_cast.hpp
4046
4110
  - src/cxx_supportlib/vendor-modified/boost/unordered/detail/opt_storage.hpp
4047
4111
  - src/cxx_supportlib/vendor-modified/boost/unordered/detail/prime_fmod.hpp
4112
+ - src/cxx_supportlib/vendor-modified/boost/unordered/detail/ranges_support.hpp
4048
4113
  - src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialization_version.hpp
4049
4114
  - src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_container.hpp
4050
4115
  - src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_fca_container.hpp
@@ -1,41 +0,0 @@
1
- // Copyright (C) 2024 Ryan Malcolm Underwood.
2
- //
3
- // Use, modification, and distribution is subject to the Boost Software
4
- // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
5
- // http://www.boost.org/LICENSE_1_0.txt)
6
- //
7
- // See http://www.boost.org/libs/optional for documentation.
8
- //
9
- // You are welcome to contact the author at:
10
- // typenametea@gmail.com
11
-
12
- #ifndef BOOST_OPTIONAL_OPTIONAL_DETAIL_OPTIONAL_UTILITY_RMU_06OCT2024_HPP
13
- #define BOOST_OPTIONAL_OPTIONAL_DETAIL_OPTIONAL_UTILITY_RMU_06OCT2024_HPP
14
-
15
- namespace boost {
16
- namespace optional_detail {
17
-
18
- // Workaround: forward and move aren't constexpr in C++11
19
- template <class T>
20
- inline constexpr T&& forward(typename boost::remove_reference<T>::type& t) noexcept
21
- {
22
- return static_cast<T&&>(t);
23
- }
24
-
25
- template <class T>
26
- inline constexpr T&& forward(typename boost::remove_reference<T>::type&& t) noexcept
27
- {
28
- static_assert(!boost::is_lvalue_reference<T>::value, "Can not forward an rvalue as an lvalue.");
29
- return static_cast<T&&>(t);
30
- }
31
-
32
- template <class T>
33
- inline constexpr typename boost::remove_reference<T>::type&& move(T&& t) noexcept
34
- {
35
- return static_cast<typename boost::remove_reference<T>::type&&>(t);
36
- }
37
-
38
- } // namespace optional_detail
39
- } // namespace boost
40
-
41
- #endif