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.
- checksums.yaml +4 -4
- data/CHANGELOG +60 -19
- data/CONTRIBUTORS +2 -0
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +56 -3
- data/dev/copy_boost_headers +1 -0
- data/package.json +1 -1
- data/resources/templates/standalone/http.erb +1 -0
- data/src/agent/Core/Config.h +13 -1
- data/src/agent/Core/Controller/Config.h +1 -1
- data/src/agent/Core/CoreMain.cpp +1 -0
- data/src/agent/Core/SpawningKit/Context.h +1 -0
- data/src/agent/Core/SpawningKit/Handshake/Prepare.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +5 -2
- data/src/agent/Watchdog/Config.h +14 -1
- data/src/agent/Watchdog/WatchdogMain.cpp +7 -0
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +5 -0
- data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +5 -0
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +15 -0
- data/src/apache2_module/Hooks.cpp +1 -0
- data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +11 -0
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +13 -0
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/LoggingKit/Config.h +1 -0
- data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +1 -1
- data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +2 -2
- data/src/cxx_supportlib/WebSocketCommandReverseServer.h +11 -7
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/finder.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +46 -37
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +16 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +45 -26
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/future.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_buffer_sequence.hpp +38 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/bad_address_cast.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_results.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/packaged_task.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context_base.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +50 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_x86_dcas.hpp +13 -12
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/chrono.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/process_cpu_clocks.hpp +34 -34
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/thread_clock.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/chrono.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/process_cpu_clocks.hpp +27 -27
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/thread_clock.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/system.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/time_point_io.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/allocators.hpp +89 -0
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/base.hpp +83 -74
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/details.hpp +21 -33
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/space_optimized.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/concept/assert.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/concept/detail/general.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/concept/detail/has_constraints.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/concept/usage.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/concept_check.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/borland.hpp +5 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/codegear.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/comeau.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/cray.hpp +368 -52
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/greenhills.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/hp_acc.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/intel.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/kai.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/nvcc.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pathscale.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +9 -4
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp_zos.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/select_compiler_config.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +14 -4
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +262 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +22 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +833 -459
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +24 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocator_version_traits.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +61 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +33 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +132 -41
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterator.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/multiallocation_chain.hpp +28 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +167 -115
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/thread_mutex.hpp +181 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +167 -29
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/type_traits.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/variadic_templates_tools.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +18 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +389 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +262 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +52 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +364 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/synchronized_pool_resource.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +286 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +56 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +43 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +100 -31
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +126 -69
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +75 -51
- data/src/cxx_supportlib/vendor-modified/boost/core/empty_value.hpp +136 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/exchange.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/explicit_operator_bool.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +101 -130
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test_trait.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/core/noncopyable.hpp +16 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/quick_exit.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/ref.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/swap.hpp +9 -2
- data/src/cxx_supportlib/vendor-modified/boost/core/typeinfo.hpp +26 -10
- data/src/cxx_supportlib/vendor-modified/boost/date_time/compiler_config.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_duration.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_duration.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/detail/basic_pointerbuf.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/detail/indirect_traits.hpp +38 -47
- data/src/cxx_supportlib/vendor-modified/boost/detail/lcast_precision.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/detail/reference_content.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +62 -58
- data/src/cxx_supportlib/vendor-modified/boost/function.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +29 -29
- data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +38 -40
- data/src/cxx_supportlib/vendor-modified/boost/integer/common_factor_rt.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +44 -44
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +39 -39
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/derivation_value_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/avltree_node.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_iterator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_node.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_cloner_disposer.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/rbtree_node.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/simple_disposers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_iterator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_node.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_iterator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_node.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_value_compare.hpp +33 -14
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_plus_bits.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +39 -39
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +61 -61
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree_algorithms.hpp +66 -66
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +54 -54
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/distance.hpp +65 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +23 -23
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +5 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +18 -13
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/cregex.cpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/libs/system/src/error_code.cpp +16 -5
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/future.cpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +14 -8
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/tss_null.cpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/detail/fp_traits.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/math_fwd.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/math/tools/config.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_merge.hpp +29 -6
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_sort.hpp +12 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/move.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/algorithm.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/assert.hpp +23 -3
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/experimental_traits.hpp +9 -3
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/old_optional_implementation.hpp +10 -11
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +20 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +211 -101
- data/src/cxx_supportlib/vendor-modified/boost/parameter/python.hpp +5 -6
- data/src/cxx_supportlib/vendor-modified/boost/pool/detail/mutex.hpp +119 -25
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/arm.h +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/ptx.h +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/compaq.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/nvcc.h +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/detail/endian_compat.h +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/language.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/language/cuda.h +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/make.h +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/cygwin.h +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/other/endian.h +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/config/config.hpp +17 -8
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/stringize.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/wstringize.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/gray_coded_qrng.hpp +166 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/niederreiter_base2_table.hpp +513 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/qrng_base.hpp +291 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/sobol_table.hpp +4106 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/faure.hpp +367 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/niederreiter_base2.hpp +360 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/sobol.hpp +237 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/as_literal.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/begin.hpp +13 -5
- data/src/cxx_supportlib/vendor-modified/boost/range/concepts.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/common.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/implementation_help.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/range/distance.hpp +11 -5
- data/src/cxx_supportlib/vendor-modified/boost/range/end.hpp +14 -6
- data/src/cxx_supportlib/vendor-modified/boost/range/has_range_iterator.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/ratio/config.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/rational.hpp +55 -37
- data/src/cxx_supportlib/vendor-modified/boost/regex/concepts.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/config.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex.hpp +7 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_creator.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +5 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/fileiter.hpp +0 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/instances.hpp +15 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_flags.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_results.hpp +12 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher.hpp +7 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_common.hpp +7 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_non_recursive.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_format.hpp +0 -5
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_iterator.hpp +0 -8
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_raw_buffer.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_split.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_token_iterator.hpp +0 -8
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits_defaults.hpp +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +7 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_iterator.hpp +1 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_token_iterator.hpp +2 -10
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/w32_regex_traits.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/allocate_shared_array.hpp +60 -115
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/local_counted_base.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_acc_ia64.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_aix.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_clang.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_ppc.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_x86.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ia64.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_mips.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ppc.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_sparc.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_nt.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_pt.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_snc_ps3.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_solaris.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_spin.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_std_atomic.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_sync.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_vacpp_ppc.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/yield_k.hpp +14 -8
- data/src/cxx_supportlib/vendor-modified/boost/system/config.hpp +4 -24
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category.hpp +101 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_interoperability.hpp +141 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_posix.hpp +132 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/error_code.hpp +775 -588
- data/src/cxx_supportlib/vendor-modified/boost/system/system_error.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/config.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/move.hpp +13 -6
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/nullary_function.hpp +8 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread_safety.hpp +160 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/tss_hooks.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/exceptions.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/basic_thread_pool.hpp +24 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/lock_guard.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/lockable_traits.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable_fwd.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/mutex.hpp +8 -53
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/pthread_mutex_scoped_lock.hpp +73 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/recursive_mutex.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/thread_data.hpp +14 -9
- data/src/cxx_supportlib/vendor-modified/boost/thread/xtime.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/throw_exception.hpp +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/token_functions.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_index/stl_type_index.hpp +21 -19
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/common_arithmetic_type.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/config.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/detector.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_postfix_operator.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_prefix_operator.hpp +72 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_cxx_03.hpp +108 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_cxx_11.hpp +501 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_msvc10_fix.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_likely_lambda.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_member_function_pointer_cxx_03.hpp +117 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_member_function_pointer_cxx_11.hpp +557 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_rvalue_reference_msvc10_fix.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detected.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detected_or.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/enable_if.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_dereference.hpp +344 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus_assign.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_plus_assign.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_post_decrement.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_post_increment.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_pre_decrement.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_pre_increment.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_assign.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_constructor.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_constant.hpp +5 -15
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/intrinsics.hpp +16 -6
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_complete.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_copy_assignable.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_copy_constructible.hpp +4 -6
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected_convertible.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected_exact.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_final.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_function.hpp +4 -79
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_member_function_pointer.hpp +3 -97
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_noncopyable.hpp +39 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_assignable.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_constructible.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_rvalue_reference.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_virtual_base_of.hpp +104 -63
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/make_void.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/nonesuch.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/typeof/constant.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/dmc/typeof_impl.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode.hpp +0 -3
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode_params.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/typeof/int_encoding.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/modifiers.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/msvc/typeof_impl.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/native.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/typeof/pointers_data_members.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions_iterate.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_mem_functions.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_encoding.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_template_param.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/typeof/type_encoding.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof_impl.hpp +16 -16
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector100.hpp +201 -201
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector150.hpp +301 -301
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector200.hpp +401 -401
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector50.hpp +101 -101
- data/src/cxx_supportlib/vendor-modified/boost/utility/detail/minstd_rand.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/string_ref.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/string_view.hpp +26 -6
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +16 -0
- data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +13 -0
- data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +24 -0
- data/src/nginx_module/Configuration.c +9 -0
- data/src/nginx_module/ContentHandler.c +7 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +5 -0
- data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +13 -0
- data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +3 -0
- data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +4 -0
- data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +6 -0
- data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +12 -0
- data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +4 -0
- data/src/nginx_module/ngx_http_passenger_module.c +1 -0
- data/src/ruby_supportlib/phusion_passenger.rb +7 -7
- data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +7 -0
- data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +15 -0
- data/src/ruby_supportlib/phusion_passenger/request_handler.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +5 -0
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +1 -0
- metadata +33 -6
- data/src/cxx_supportlib/vendor-modified/boost/call_traits.hpp +0 -20
- data/src/cxx_supportlib/vendor-modified/boost/detail/call_traits.hpp +0 -172
- data/src/cxx_supportlib/vendor-modified/boost/detail/no_exceptions_support.hpp +0 -17
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.ipp +0 -496
|
@@ -654,6 +654,9 @@ usage() {
|
|
|
654
654
|
printf(" --instance-registry-dir Directory to register instance into.\n");
|
|
655
655
|
printf(" Default: %s\n", getSystemTempDir());
|
|
656
656
|
printf("\n");
|
|
657
|
+
printf(" --spawn-dir Directory for spawn handshakes.\n");
|
|
658
|
+
printf(" Default: %s\n", getSystemTempDir());
|
|
659
|
+
printf("\n");
|
|
657
660
|
printf(" --no-user-switching Disables user switching support [A]\n");
|
|
658
661
|
printf(" --default-user NAME Default user to start apps as, when user\n");
|
|
659
662
|
printf(" switching is enabled. Default: " DEFAULT_WEB_APP_USER "\n");
|
|
@@ -774,6 +777,9 @@ parseOptions(int argc, const char *argv[], ConfigKit::Store &config) {
|
|
|
774
777
|
} else if (p.isValueFlag(argc, i, argv[i], '\0', "--instance-registry-dir")) {
|
|
775
778
|
updates["instance_registry_dir"] = argv[i + 1];
|
|
776
779
|
i += 2;
|
|
780
|
+
} else if (p.isValueFlag(argc, i, argv[i], '\0', "--spawn-dir")) {
|
|
781
|
+
updates["spawn_dir"] = argv[i + 1];
|
|
782
|
+
i += 2;
|
|
777
783
|
} else if (p.isFlag(argv[i], '\0', "--no-user-switching")) {
|
|
778
784
|
updates["user_switching"] = false;
|
|
779
785
|
i++;
|
|
@@ -1111,6 +1117,7 @@ initializeWorkingObjects(const WorkingObjectsPtr &wo, InstanceDirToucherPtr &ins
|
|
|
1111
1117
|
|
|
1112
1118
|
// check if path is safe
|
|
1113
1119
|
warnIfInstanceDirVulnerable(watchdogConfig->get("instance_registry_dir").asString());
|
|
1120
|
+
warnIfInstanceDirVulnerable(watchdogConfig->get("spawn_dir").asString());
|
|
1114
1121
|
|
|
1115
1122
|
wo->instanceDir = boost::make_shared<InstanceDirectory>(instanceOptions,
|
|
1116
1123
|
watchdogConfig->get("instance_registry_dir").asString());
|
|
@@ -382,6 +382,11 @@ extern "C" const command_rec passenger_commands[] = {
|
|
|
382
382
|
NULL,
|
|
383
383
|
RSRC_CONF,
|
|
384
384
|
"The Phusion Passenger socket backlog."),
|
|
385
|
+
AP_INIT_TAKE1("PassengerSpawnDir",
|
|
386
|
+
(Take1Func) cmd_passenger_spawn_dir,
|
|
387
|
+
NULL,
|
|
388
|
+
RSRC_CONF,
|
|
389
|
+
"The directory for Phusion Passenger used during child spawning."),
|
|
385
390
|
AP_INIT_TAKE1("PassengerSpawnMethod",
|
|
386
391
|
(Take1Func) cmd_passenger_spawn_method,
|
|
387
392
|
NULL,
|
|
@@ -128,6 +128,11 @@ ConfigManifestGenerator::autoGenerated_setGlobalConfigDefaults() {
|
|
|
128
128
|
"PassengerSocketBacklog",
|
|
129
129
|
DEFAULT_SOCKET_BACKLOG);
|
|
130
130
|
|
|
131
|
+
addOptionsContainerDynamicDefault(
|
|
132
|
+
globalConfigContainer,
|
|
133
|
+
"PassengerSpawnDir",
|
|
134
|
+
P_STATIC_STRING("Either $TMPDIR or /tmp"));
|
|
135
|
+
|
|
131
136
|
addOptionsContainerStaticDefaultInt(
|
|
132
137
|
globalConfigContainer,
|
|
133
138
|
"PassengerStatThrottleRate",
|
|
@@ -832,6 +832,21 @@ cmd_passenger_socket_backlog(cmd_parms *cmd, void *pcfg, const char *arg) {
|
|
|
832
832
|
return setIntConfig(cmd, arg, serverConfig.socketBacklog, 0);
|
|
833
833
|
}
|
|
834
834
|
|
|
835
|
+
static const char *
|
|
836
|
+
cmd_passenger_spawn_dir(cmd_parms *cmd, void *pcfg, const char *arg) {
|
|
837
|
+
const char *err = ap_check_cmd_context(cmd, GLOBAL_ONLY);
|
|
838
|
+
if (err != NULL) {
|
|
839
|
+
ap_log_perror(APLOG_MARK, APLOG_STARTUP, 0, cmd->temp_pool,
|
|
840
|
+
"WARNING: %s", err);
|
|
841
|
+
}
|
|
842
|
+
|
|
843
|
+
serverConfig.spawnDirSourceFile = cmd->directive->filename;
|
|
844
|
+
serverConfig.spawnDirSourceLine = cmd->directive->line_num;
|
|
845
|
+
serverConfig.spawnDirExplicitlySet = true;
|
|
846
|
+
serverConfig.spawnDir = arg;
|
|
847
|
+
return NULL;
|
|
848
|
+
}
|
|
849
|
+
|
|
835
850
|
static const char *
|
|
836
851
|
cmd_passenger_start_timeout(cmd_parms *cmd, void *pcfg, const char *arg) {
|
|
837
852
|
const char *err = ap_check_cmd_context(cmd, NOT_IN_FILES);
|
|
@@ -1334,6 +1334,7 @@ public:
|
|
|
1334
1334
|
config["controller_socket_backlog"] = serverConfig.socketBacklog;
|
|
1335
1335
|
config["controller_file_buffered_channel_buffer_dir"] = nonEmptyString(serverConfig.dataBufferDir);
|
|
1336
1336
|
config["instance_registry_dir"] = nonEmptyString(serverConfig.instanceRegistryDir);
|
|
1337
|
+
config["spawn_dir"] = nonEmptyString(serverConfig.spawnDir);
|
|
1337
1338
|
config["security_update_checker_disabled"] = serverConfig.disableSecurityUpdateCheck;
|
|
1338
1339
|
config["security_update_checker_proxy_url"] = nonEmptyString(serverConfig.securityUpdateCheckProxy);
|
|
1339
1340
|
config["telemetry_collector_disabled"] = serverConfig.disableAnonymousTelemetry;
|
|
@@ -312,6 +312,17 @@ ConfigManifestGenerator::autoGenerated_generateConfigManifestForServerConfig() {
|
|
|
312
312
|
serverConfig.socketBacklogSourceLine);
|
|
313
313
|
hierarchyMember["value"] = serverConfig.socketBacklog;
|
|
314
314
|
}
|
|
315
|
+
if (serverConfig.spawnDirExplicitlySet) {
|
|
316
|
+
Json::Value &optionContainer = findOrCreateOptionContainer(globalOptionsContainer,
|
|
317
|
+
"PassengerSpawnDir",
|
|
318
|
+
sizeof("PassengerSpawnDir") - 1);
|
|
319
|
+
Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer,
|
|
320
|
+
serverConfig.spawnDirSourceFile,
|
|
321
|
+
serverConfig.spawnDirSourceLine);
|
|
322
|
+
hierarchyMember["value"] = Json::Value(
|
|
323
|
+
serverConfig.spawnDir.data(),
|
|
324
|
+
serverConfig.spawnDir.data() + serverConfig.spawnDir.size());
|
|
325
|
+
}
|
|
315
326
|
if (serverConfig.statThrottleRateExplicitlySet) {
|
|
316
327
|
Json::Value &optionContainer = findOrCreateOptionContainer(globalOptionsContainer,
|
|
317
328
|
"PassengerStatThrottleRate",
|
|
@@ -197,6 +197,11 @@ struct AutoGeneratedServerConfig {
|
|
|
197
197
|
*/
|
|
198
198
|
StaticString securityUpdateCheckProxy;
|
|
199
199
|
|
|
200
|
+
/*
|
|
201
|
+
* The directory for Phusion Passenger used during child spawning.
|
|
202
|
+
*/
|
|
203
|
+
StaticString spawnDir;
|
|
204
|
+
|
|
200
205
|
/*
|
|
201
206
|
* Prestart the given web applications during startup.
|
|
202
207
|
*/
|
|
@@ -231,6 +236,7 @@ struct AutoGeneratedServerConfig {
|
|
|
231
236
|
StaticString logFileSourceFile;
|
|
232
237
|
StaticString rootSourceFile;
|
|
233
238
|
StaticString securityUpdateCheckProxySourceFile;
|
|
239
|
+
StaticString spawnDirSourceFile;
|
|
234
240
|
StaticString prestartURLsSourceFile;
|
|
235
241
|
|
|
236
242
|
unsigned int disableAnonymousTelemetrySourceLine;
|
|
@@ -261,6 +267,7 @@ struct AutoGeneratedServerConfig {
|
|
|
261
267
|
unsigned int logFileSourceLine;
|
|
262
268
|
unsigned int rootSourceLine;
|
|
263
269
|
unsigned int securityUpdateCheckProxySourceLine;
|
|
270
|
+
unsigned int spawnDirSourceLine;
|
|
264
271
|
unsigned int prestartURLsSourceLine;
|
|
265
272
|
|
|
266
273
|
bool disableAnonymousTelemetryExplicitlySet: 1;
|
|
@@ -291,6 +298,7 @@ struct AutoGeneratedServerConfig {
|
|
|
291
298
|
bool logFileExplicitlySet: 1;
|
|
292
299
|
bool rootExplicitlySet: 1;
|
|
293
300
|
bool securityUpdateCheckProxyExplicitlySet: 1;
|
|
301
|
+
bool spawnDirExplicitlySet: 1;
|
|
294
302
|
bool prestartURLsExplicitlySet: 1;
|
|
295
303
|
|
|
296
304
|
|
|
@@ -349,6 +357,9 @@ struct AutoGeneratedServerConfig {
|
|
|
349
357
|
/*
|
|
350
358
|
* securityUpdateCheckProxy: default initialized
|
|
351
359
|
*/
|
|
360
|
+
/*
|
|
361
|
+
* spawnDir: default initialized
|
|
362
|
+
*/
|
|
352
363
|
/*
|
|
353
364
|
* prestartURLs: default initialized
|
|
354
365
|
*/
|
|
@@ -381,6 +392,7 @@ struct AutoGeneratedServerConfig {
|
|
|
381
392
|
logFileSourceLine = 0;
|
|
382
393
|
rootSourceLine = 0;
|
|
383
394
|
securityUpdateCheckProxySourceLine = 0;
|
|
395
|
+
spawnDirSourceLine = 0;
|
|
384
396
|
prestartURLsSourceLine = 0;
|
|
385
397
|
|
|
386
398
|
disableAnonymousTelemetryExplicitlySet = false;
|
|
@@ -411,6 +423,7 @@ struct AutoGeneratedServerConfig {
|
|
|
411
423
|
logFileExplicitlySet = false;
|
|
412
424
|
rootExplicitlySet = false;
|
|
413
425
|
securityUpdateCheckProxyExplicitlySet = false;
|
|
426
|
+
spawnDirExplicitlySet = false;
|
|
414
427
|
prestartURLsExplicitlySet = false;
|
|
415
428
|
}
|
|
416
429
|
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
#define PASSENGER_API_VERSION_MAJOR 0
|
|
82
82
|
#define PASSENGER_API_VERSION_MINOR 3
|
|
83
83
|
#define PASSENGER_DEFAULT_USER "nobody"
|
|
84
|
-
#define PASSENGER_VERSION "6.0.
|
|
84
|
+
#define PASSENGER_VERSION "6.0.3"
|
|
85
85
|
#define POOL_HELPER_THREAD_STACK_SIZE 262144
|
|
86
86
|
#define PROCESS_SHUTDOWN_TIMEOUT 60
|
|
87
87
|
#define PROCESS_SHUTDOWN_TIMEOUT_DISPLAY "1 minute"
|
|
@@ -51,6 +51,7 @@ using namespace std;
|
|
|
51
51
|
*
|
|
52
52
|
* app_output_log_level string - default("notice")
|
|
53
53
|
* buffer_logs boolean - default(false)
|
|
54
|
+
* disable_log_prefix boolean - default(false)
|
|
54
55
|
* file_descriptor_log_target any - -
|
|
55
56
|
* level string - default("notice")
|
|
56
57
|
* redirect_stderr boolean - default(true)
|
|
@@ -43,7 +43,7 @@ _linuxAutoDetectInContainer() {
|
|
|
43
43
|
return (file.length() > 0);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
if (
|
|
46
|
+
if (geteuid() == 0) {
|
|
47
47
|
if (fileExists("/proc/1/environ")) {
|
|
48
48
|
string file = unsafeReadFile("/proc/1/environ");
|
|
49
49
|
if (file.size() > 0) {
|
|
@@ -59,7 +59,7 @@ _linuxAutoDetectInContainer() {
|
|
|
59
59
|
|
|
60
60
|
if (fileExists("/proc/1/sched")) {
|
|
61
61
|
string file = unsafeReadFile("/proc/1/sched");
|
|
62
|
-
if (file.length()
|
|
62
|
+
if (file.length() > 0) {
|
|
63
63
|
const char t = file[0];
|
|
64
64
|
if (t == '\0') {
|
|
65
65
|
return false;
|
|
@@ -295,6 +295,10 @@ private:
|
|
|
295
295
|
bool reconnectAfterReply;
|
|
296
296
|
bool shuttingDown;
|
|
297
297
|
|
|
298
|
+
unsigned int secondsToMilis(double seconds) {
|
|
299
|
+
return (unsigned int) (seconds * 1000.0);
|
|
300
|
+
}
|
|
301
|
+
|
|
298
302
|
/**
|
|
299
303
|
* It could happen that a certain method or handler is invoked
|
|
300
304
|
* for a connection that has already been closed. For example,
|
|
@@ -528,7 +532,7 @@ private:
|
|
|
528
532
|
}
|
|
529
533
|
}
|
|
530
534
|
|
|
531
|
-
conn->set_proxy_timeout(config["proxy_timeout"].asDouble()
|
|
535
|
+
conn->set_proxy_timeout(secondsToMilis(config["proxy_timeout"].asDouble()), ec);
|
|
532
536
|
if (ec) {
|
|
533
537
|
P_ERROR(getLogPrefix()
|
|
534
538
|
<< "Error setting proxy timeout to "
|
|
@@ -538,9 +542,9 @@ private:
|
|
|
538
542
|
}
|
|
539
543
|
}
|
|
540
544
|
|
|
541
|
-
conn->set_open_handshake_timeout(config["connect_timeout"].asDouble()
|
|
542
|
-
conn->set_pong_timeout(config["ping_timeout"].asDouble()
|
|
543
|
-
conn->set_close_handshake_timeout(config["close_timeout"].asDouble()
|
|
545
|
+
conn->set_open_handshake_timeout(secondsToMilis(config["connect_timeout"].asDouble()));
|
|
546
|
+
conn->set_pong_timeout(secondsToMilis(config["ping_timeout"].asDouble()));
|
|
547
|
+
conn->set_close_handshake_timeout(secondsToMilis(config["close_timeout"].asDouble()));
|
|
544
548
|
|
|
545
549
|
return true;
|
|
546
550
|
}
|
|
@@ -566,7 +570,7 @@ private:
|
|
|
566
570
|
void scheduleReconnect() {
|
|
567
571
|
P_NOTICE(getLogPrefix() << "Reestablishing connection in " <<
|
|
568
572
|
config["reconnect_timeout"].asDouble() << " seconds");
|
|
569
|
-
restartTimer(config["reconnect_timeout"].asDouble()
|
|
573
|
+
restartTimer(secondsToMilis(config["reconnect_timeout"].asDouble()));
|
|
570
574
|
}
|
|
571
575
|
|
|
572
576
|
void closeConnection(websocketpp::close::status::value code,
|
|
@@ -626,7 +630,7 @@ private:
|
|
|
626
630
|
buffer.clear();
|
|
627
631
|
P_DEBUG(getLogPrefix() << "Scheduling next ping in " <<
|
|
628
632
|
config["ping_interval"].asDouble() << " seconds");
|
|
629
|
-
restartTimer(config["ping_interval"].asDouble()
|
|
633
|
+
restartTimer(secondsToMilis(config["ping_interval"].asDouble()));
|
|
630
634
|
}
|
|
631
635
|
|
|
632
636
|
void onConnectFailed(ConnectionWeakPtr wconn) {
|
|
@@ -741,7 +745,7 @@ private:
|
|
|
741
745
|
|
|
742
746
|
P_DEBUG(getLogPrefix() << "Pong received. Scheduling next ping in " <<
|
|
743
747
|
config["ping_interval"].asDouble() << " seconds");
|
|
744
|
-
restartTimer(config["ping_interval"].asDouble()
|
|
748
|
+
restartTimer(secondsToMilis(config["ping_interval"].asDouble()));
|
|
745
749
|
}
|
|
746
750
|
|
|
747
751
|
void onMessage(ConnectionWeakPtr wconn, MessagePtr msg) {
|
|
@@ -43,7 +43,6 @@ namespace boost {
|
|
|
43
43
|
The result is given as an \c iterator_range delimiting the match.
|
|
44
44
|
|
|
45
45
|
\param Search A substring to be searched for.
|
|
46
|
-
\param Comp An element comparison predicate
|
|
47
46
|
\return An instance of the \c first_finder object
|
|
48
47
|
*/
|
|
49
48
|
template<typename RangeT>
|
|
@@ -84,7 +83,6 @@ namespace boost {
|
|
|
84
83
|
The result is given as an \c iterator_range delimiting the match.
|
|
85
84
|
|
|
86
85
|
\param Search A substring to be searched for.
|
|
87
|
-
\param Comp An element comparison predicate
|
|
88
86
|
\return An instance of the \c last_finder object
|
|
89
87
|
*/
|
|
90
88
|
template<typename RangeT>
|
|
@@ -124,7 +122,6 @@ namespace boost {
|
|
|
124
122
|
|
|
125
123
|
\param Search A substring to be searched for.
|
|
126
124
|
\param Nth An index of the match to be find
|
|
127
|
-
\param Comp An element comparison predicate
|
|
128
125
|
\return An instance of the \c nth_finder object
|
|
129
126
|
*/
|
|
130
127
|
template<typename RangeT>
|
|
@@ -230,7 +227,6 @@ namespace boost {
|
|
|
230
227
|
|
|
231
228
|
\param Begin Beginning of the range
|
|
232
229
|
\param End End of the range
|
|
233
|
-
\param Range The range.
|
|
234
230
|
\return An instance of the \c range_finger object
|
|
235
231
|
*/
|
|
236
232
|
template< typename ForwardIteratorT >
|
|
@@ -23,7 +23,6 @@
|
|
|
23
23
|
#include <string>
|
|
24
24
|
#include <vector>
|
|
25
25
|
#include <boost/asio/detail/array_fwd.hpp>
|
|
26
|
-
#include <boost/asio/detail/is_buffer_sequence.hpp>
|
|
27
26
|
#include <boost/asio/detail/string_view.hpp>
|
|
28
27
|
#include <boost/asio/detail/throw_exception.hpp>
|
|
29
28
|
#include <boost/asio/detail/type_traits.hpp>
|
|
@@ -347,41 +346,6 @@ public:
|
|
|
347
346
|
|
|
348
347
|
#endif // !defined(BOOST_ASIO_NO_DEPRECATED)
|
|
349
348
|
|
|
350
|
-
/// Trait to determine whether a type satisfies the MutableBufferSequence
|
|
351
|
-
/// requirements.
|
|
352
|
-
template <typename T>
|
|
353
|
-
struct is_mutable_buffer_sequence
|
|
354
|
-
#if defined(GENERATING_DOCUMENTATION)
|
|
355
|
-
: integral_constant<bool, automatically_determined>
|
|
356
|
-
#else // defined(GENERATING_DOCUMENTATION)
|
|
357
|
-
: boost::asio::detail::is_buffer_sequence<T, mutable_buffer>
|
|
358
|
-
#endif // defined(GENERATING_DOCUMENTATION)
|
|
359
|
-
{
|
|
360
|
-
};
|
|
361
|
-
|
|
362
|
-
/// Trait to determine whether a type satisfies the ConstBufferSequence
|
|
363
|
-
/// requirements.
|
|
364
|
-
template <typename T>
|
|
365
|
-
struct is_const_buffer_sequence
|
|
366
|
-
#if defined(GENERATING_DOCUMENTATION)
|
|
367
|
-
: integral_constant<bool, automatically_determined>
|
|
368
|
-
#else // defined(GENERATING_DOCUMENTATION)
|
|
369
|
-
: boost::asio::detail::is_buffer_sequence<T, const_buffer>
|
|
370
|
-
#endif // defined(GENERATING_DOCUMENTATION)
|
|
371
|
-
{
|
|
372
|
-
};
|
|
373
|
-
|
|
374
|
-
/// Trait to determine whether a type satisfies the DynamicBuffer requirements.
|
|
375
|
-
template <typename T>
|
|
376
|
-
struct is_dynamic_buffer
|
|
377
|
-
#if defined(GENERATING_DOCUMENTATION)
|
|
378
|
-
: integral_constant<bool, automatically_determined>
|
|
379
|
-
#else // defined(GENERATING_DOCUMENTATION)
|
|
380
|
-
: boost::asio::detail::is_dynamic_buffer<T>
|
|
381
|
-
#endif // defined(GENERATING_DOCUMENTATION)
|
|
382
|
-
{
|
|
383
|
-
};
|
|
384
|
-
|
|
385
349
|
/// (Deprecated: Use the socket/descriptor wait() and async_wait() member
|
|
386
350
|
/// functions.) An implementation of both the ConstBufferSequence and
|
|
387
351
|
/// MutableBufferSequence concepts to represent a null buffer sequence.
|
|
@@ -1404,7 +1368,7 @@ inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1404
1368
|
);
|
|
1405
1369
|
}
|
|
1406
1370
|
|
|
1407
|
-
/// Create a new
|
|
1371
|
+
/// Create a new modifiable buffer that represents the given string.
|
|
1408
1372
|
/**
|
|
1409
1373
|
* @returns A mutable_buffer value equivalent to:
|
|
1410
1374
|
* @code mutable_buffer(
|
|
@@ -2159,6 +2123,51 @@ inline std::size_t buffer_copy(const MutableBufferSequence& target,
|
|
|
2159
2123
|
} // namespace asio
|
|
2160
2124
|
} // namespace boost
|
|
2161
2125
|
|
|
2126
|
+
#include <boost/asio/detail/pop_options.hpp>
|
|
2127
|
+
#include <boost/asio/detail/is_buffer_sequence.hpp>
|
|
2128
|
+
#include <boost/asio/detail/push_options.hpp>
|
|
2129
|
+
|
|
2130
|
+
namespace boost {
|
|
2131
|
+
namespace asio {
|
|
2132
|
+
|
|
2133
|
+
/// Trait to determine whether a type satisfies the MutableBufferSequence
|
|
2134
|
+
/// requirements.
|
|
2135
|
+
template <typename T>
|
|
2136
|
+
struct is_mutable_buffer_sequence
|
|
2137
|
+
#if defined(GENERATING_DOCUMENTATION)
|
|
2138
|
+
: integral_constant<bool, automatically_determined>
|
|
2139
|
+
#else // defined(GENERATING_DOCUMENTATION)
|
|
2140
|
+
: boost::asio::detail::is_buffer_sequence<T, mutable_buffer>
|
|
2141
|
+
#endif // defined(GENERATING_DOCUMENTATION)
|
|
2142
|
+
{
|
|
2143
|
+
};
|
|
2144
|
+
|
|
2145
|
+
/// Trait to determine whether a type satisfies the ConstBufferSequence
|
|
2146
|
+
/// requirements.
|
|
2147
|
+
template <typename T>
|
|
2148
|
+
struct is_const_buffer_sequence
|
|
2149
|
+
#if defined(GENERATING_DOCUMENTATION)
|
|
2150
|
+
: integral_constant<bool, automatically_determined>
|
|
2151
|
+
#else // defined(GENERATING_DOCUMENTATION)
|
|
2152
|
+
: boost::asio::detail::is_buffer_sequence<T, const_buffer>
|
|
2153
|
+
#endif // defined(GENERATING_DOCUMENTATION)
|
|
2154
|
+
{
|
|
2155
|
+
};
|
|
2156
|
+
|
|
2157
|
+
/// Trait to determine whether a type satisfies the DynamicBuffer requirements.
|
|
2158
|
+
template <typename T>
|
|
2159
|
+
struct is_dynamic_buffer
|
|
2160
|
+
#if defined(GENERATING_DOCUMENTATION)
|
|
2161
|
+
: integral_constant<bool, automatically_determined>
|
|
2162
|
+
#else // defined(GENERATING_DOCUMENTATION)
|
|
2163
|
+
: boost::asio::detail::is_dynamic_buffer<T>
|
|
2164
|
+
#endif // defined(GENERATING_DOCUMENTATION)
|
|
2165
|
+
{
|
|
2166
|
+
};
|
|
2167
|
+
|
|
2168
|
+
} // namespace asio
|
|
2169
|
+
} // namespace boost
|
|
2170
|
+
|
|
2162
2171
|
#include <boost/asio/detail/pop_options.hpp>
|
|
2163
2172
|
|
|
2164
2173
|
#endif // BOOST_ASIO_BUFFER_HPP
|
|
@@ -59,7 +59,8 @@ struct is_endpoint_sequence
|
|
|
59
59
|
/**
|
|
60
60
|
* @defgroup connect boost::asio::connect
|
|
61
61
|
*
|
|
62
|
-
* @brief
|
|
62
|
+
* @brief The @c connect function is a composed operation that establishes a
|
|
63
|
+
* socket connection by trying each endpoint in a sequence.
|
|
63
64
|
*/
|
|
64
65
|
/*@{*/
|
|
65
66
|
|
|
@@ -132,8 +133,8 @@ typename Protocol::endpoint connect(
|
|
|
132
133
|
EndpointSequence>::value>::type* = 0);
|
|
133
134
|
|
|
134
135
|
#if !defined(BOOST_ASIO_NO_DEPRECATED)
|
|
135
|
-
/// (Deprecated.) Establishes a socket connection by trying
|
|
136
|
-
/// sequence.
|
|
136
|
+
/// (Deprecated: Use range overload.) Establishes a socket connection by trying
|
|
137
|
+
/// each endpoint in a sequence.
|
|
137
138
|
/**
|
|
138
139
|
* This function attempts to connect a socket to one of a sequence of
|
|
139
140
|
* endpoints. It does this by repeated calls to the socket's @c connect member
|
|
@@ -160,8 +161,8 @@ template <typename Protocol BOOST_ASIO_SVC_TPARAM, typename Iterator>
|
|
|
160
161
|
Iterator connect(basic_socket<Protocol BOOST_ASIO_SVC_TARG>& s, Iterator begin,
|
|
161
162
|
typename enable_if<!is_endpoint_sequence<Iterator>::value>::type* = 0);
|
|
162
163
|
|
|
163
|
-
/// (Deprecated.) Establishes a socket connection by trying
|
|
164
|
-
/// sequence.
|
|
164
|
+
/// (Deprecated: Use range overload.) Establishes a socket connection by trying
|
|
165
|
+
/// each endpoint in a sequence.
|
|
165
166
|
/**
|
|
166
167
|
* This function attempts to connect a socket to one of a sequence of
|
|
167
168
|
* endpoints. It does this by repeated calls to the socket's @c connect member
|
|
@@ -387,8 +388,8 @@ typename Protocol::endpoint connect(
|
|
|
387
388
|
EndpointSequence>::value>::type* = 0);
|
|
388
389
|
|
|
389
390
|
#if !defined(BOOST_ASIO_NO_DEPRECATED)
|
|
390
|
-
/// (Deprecated.) Establishes a socket connection by trying
|
|
391
|
-
/// sequence.
|
|
391
|
+
/// (Deprecated: Use range overload.) Establishes a socket connection by trying
|
|
392
|
+
/// each endpoint in a sequence.
|
|
392
393
|
/**
|
|
393
394
|
* This function attempts to connect a socket to one of a sequence of
|
|
394
395
|
* endpoints. It does this by repeated calls to the socket's @c connect member
|
|
@@ -428,8 +429,8 @@ Iterator connect(basic_socket<Protocol BOOST_ASIO_SVC_TARG>& s,
|
|
|
428
429
|
Iterator begin, ConnectCondition connect_condition,
|
|
429
430
|
typename enable_if<!is_endpoint_sequence<Iterator>::value>::type* = 0);
|
|
430
431
|
|
|
431
|
-
/// (Deprecated.) Establishes a socket connection by trying
|
|
432
|
-
/// sequence.
|
|
432
|
+
/// (Deprecated: Use range overload.) Establishes a socket connection by trying
|
|
433
|
+
/// each endpoint in a sequence.
|
|
433
434
|
/**
|
|
434
435
|
* This function attempts to connect a socket to one of a sequence of
|
|
435
436
|
* endpoints. It does this by repeated calls to the socket's @c connect member
|
|
@@ -603,8 +604,8 @@ Iterator connect(basic_socket<Protocol BOOST_ASIO_SVC_TARG>& s,
|
|
|
603
604
|
/**
|
|
604
605
|
* @defgroup async_connect boost::asio::async_connect
|
|
605
606
|
*
|
|
606
|
-
* @brief
|
|
607
|
-
* endpoint in a sequence.
|
|
607
|
+
* @brief The @c async_connect function is a composed asynchronous operation
|
|
608
|
+
* that establishes a socket connection by trying each endpoint in a sequence.
|
|
608
609
|
*/
|
|
609
610
|
/*@{*/
|
|
610
611
|
|
|
@@ -680,8 +681,8 @@ async_connect(basic_socket<Protocol BOOST_ASIO_SVC_TARG>& s,
|
|
|
680
681
|
EndpointSequence>::value>::type* = 0);
|
|
681
682
|
|
|
682
683
|
#if !defined(BOOST_ASIO_NO_DEPRECATED)
|
|
683
|
-
/// (Deprecated.) Asynchronously establishes a socket
|
|
684
|
-
/// endpoint in a sequence.
|
|
684
|
+
/// (Deprecated: Use range overload.) Asynchronously establishes a socket
|
|
685
|
+
/// connection by trying each endpoint in a sequence.
|
|
685
686
|
/**
|
|
686
687
|
* This function attempts to connect a socket to one of a sequence of
|
|
687
688
|
* endpoints. It does this by repeated calls to the socket's @c async_connect
|
|
@@ -887,8 +888,8 @@ async_connect(basic_socket<Protocol BOOST_ASIO_SVC_TARG>& s,
|
|
|
887
888
|
EndpointSequence>::value>::type* = 0);
|
|
888
889
|
|
|
889
890
|
#if !defined(BOOST_ASIO_NO_DEPRECATED)
|
|
890
|
-
/// (Deprecated.) Asynchronously establishes a socket
|
|
891
|
-
/// endpoint in a sequence.
|
|
891
|
+
/// (Deprecated: Use range overload.) Asynchronously establishes a socket
|
|
892
|
+
/// connection by trying each endpoint in a sequence.
|
|
892
893
|
/**
|
|
893
894
|
* This function attempts to connect a socket to one of a sequence of
|
|
894
895
|
* endpoints. It does this by repeated calls to the socket's @c async_connect
|