passenger 6.0.23 → 6.0.25
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG +158 -114
- data/LICENSE +1 -1
- data/README.md +1 -1
- data/Rakefile +9 -5
- data/bin/passenger +2 -2
- data/bin/passenger-config +2 -2
- data/bin/passenger-install-apache2-module +7 -2
- data/bin/passenger-install-nginx-module +19 -4
- data/bin/passenger-memory-stats +2 -2
- data/bin/passenger-status +2 -2
- data/build/agent.rb +2 -2
- data/build/apache2.rb +3 -3
- data/build/basics.rb +12 -6
- data/build/common_library.rb +2 -2
- data/build/cxx_tests.rb +20 -9
- data/build/integration_tests.rb +2 -2
- data/build/misc.rb +2 -2
- data/build/nginx.rb +2 -2
- data/build/node_tests.rb +2 -2
- data/build/oxt_tests.rb +2 -2
- data/build/packaging.rb +2 -2
- data/build/ruby_extension.rb +2 -2
- data/build/ruby_tests.rb +2 -2
- data/build/schema_printer.rb +2 -2
- data/build/support/cplusplus.rb +2 -2
- data/build/support/cxx_dependency_map.rb +40 -6
- data/build/support/general.rb +2 -2
- data/build/support/vendor/cxx_hinted_parser/LICENSE.md +1 -1
- data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser/parser.rb +2 -2
- data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser.rb +2 -2
- data/build/support/vendor/cxxcodebuilder/LICENSE.md +1 -1
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +2 -2
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/initializer_builder.rb +2 -2
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder.rb +2 -2
- data/build/test_basics.rb +6 -14
- data/dev/copy_boost_headers +2 -2
- data/dev/nginx_version_sha256 +2 -2
- data/doc/DesignAspects/LimitedGemDependencies.md +39 -0
- data/doc/DesignAspects/NoGemActivationDuringRubyLoaderInitialization.md +27 -0
- data/package.json +1 -1
- data/passenger.gemspec +5 -1
- data/resources/templates/apache2/deployment_example.txt.erb +1 -1
- data/resources/templates/nginx/deployment_example.txt.erb +1 -1
- data/resources/templates/standalone/http.erb +1 -0
- data/src/agent/AgentMain.cpp +2 -2
- data/src/agent/Core/AdminPanelConnector.h +2 -2
- data/src/agent/Core/ApiServer.h +2 -2
- data/src/agent/Core/ApplicationPool/AbstractSession.h +2 -2
- data/src/agent/Core/ApplicationPool/BasicGroupInfo.h +2 -2
- data/src/agent/Core/ApplicationPool/BasicProcessInfo.h +2 -2
- data/src/agent/Core/ApplicationPool/Common.h +2 -2
- data/src/agent/Core/ApplicationPool/Context.h +7 -4
- data/src/agent/Core/ApplicationPool/Group/InitializationAndShutdown.cpp +10 -2
- data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +12 -4
- data/src/agent/Core/ApplicationPool/Group/LifetimeAndBasics.cpp +10 -2
- data/src/agent/Core/ApplicationPool/Group/Miscellaneous.cpp +11 -2
- data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +11 -2
- data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +85 -5
- data/src/agent/Core/ApplicationPool/Group/SessionManagement.cpp +42 -12
- data/src/agent/Core/ApplicationPool/Group/SpawningAndRestarting.cpp +10 -2
- data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +10 -2
- data/src/agent/Core/ApplicationPool/Group/Verification.cpp +10 -2
- data/src/agent/Core/ApplicationPool/Group.h +18 -7
- data/src/agent/Core/ApplicationPool/Implementation.cpp +2 -2
- data/src/agent/Core/ApplicationPool/Options.h +3 -4
- data/src/agent/Core/ApplicationPool/Pool/AnalyticsCollection.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/GarbageCollection.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/GeneralUtils.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/GroupUtils.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/InitializationAndShutdown.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/Miscellaneous.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/ProcessUtils.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +13 -3
- data/src/agent/Core/ApplicationPool/Pool.h +2 -4
- data/src/agent/Core/ApplicationPool/Process.cpp +2 -2
- data/src/agent/Core/ApplicationPool/Process.h +24 -8
- data/src/agent/Core/ApplicationPool/Session.h +8 -3
- data/src/agent/Core/ApplicationPool/Socket.h +2 -2
- data/src/agent/Core/ApplicationPool/TestSession.h +2 -2
- data/src/agent/Core/Config.h +10 -5
- data/src/agent/Core/ConfigChange.cpp +2 -2
- data/src/agent/Core/ConfigChange.h +2 -2
- data/src/agent/Core/Controller/AppResponse.h +2 -2
- data/src/agent/Core/Controller/BufferBody.cpp +2 -2
- data/src/agent/Core/Controller/CheckoutSession.cpp +2 -2
- data/src/agent/Core/Controller/Client.h +2 -2
- data/src/agent/Core/Controller/Config.cpp +2 -2
- data/src/agent/Core/Controller/Config.h +9 -4
- data/src/agent/Core/Controller/ForwardResponse.cpp +2 -2
- data/src/agent/Core/Controller/Hooks.cpp +2 -2
- data/src/agent/Core/Controller/Implementation.cpp +2 -2
- data/src/agent/Core/Controller/InitRequest.cpp +2 -3
- data/src/agent/Core/Controller/InitializationAndShutdown.cpp +2 -2
- data/src/agent/Core/Controller/InternalUtils.cpp +2 -2
- data/src/agent/Core/Controller/Miscellaneous.cpp +2 -2
- data/src/agent/Core/Controller/Request.h +2 -2
- data/src/agent/Core/Controller/SendRequest.cpp +2 -2
- data/src/agent/Core/Controller/StateInspection.cpp +2 -2
- data/src/agent/Core/Controller/TurboCaching.h +2 -2
- data/src/agent/Core/Controller.h +2 -2
- data/src/agent/Core/CoreMain.cpp +13 -20
- data/src/agent/Core/OptionParser.h +7 -2
- data/src/agent/Core/ResponseCache.h +2 -2
- data/src/agent/Core/SecurityUpdateChecker.h +2 -2
- data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h +2 -2
- data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h.cxxcodebuilder +2 -2
- data/src/agent/Core/SpawningKit/Config.h +2 -2
- data/src/agent/Core/SpawningKit/Context.h +2 -2
- data/src/agent/Core/SpawningKit/DirectSpawner.h +2 -2
- data/src/agent/Core/SpawningKit/DummySpawner.h +2 -2
- data/src/agent/Core/SpawningKit/ErrorRenderer.h +2 -2
- data/src/agent/Core/SpawningKit/Exceptions.h +2 -2
- data/src/agent/Core/SpawningKit/Factory.h +2 -2
- data/src/agent/Core/SpawningKit/Handshake/BackgroundIOCapturer.h +2 -2
- data/src/agent/Core/SpawningKit/Handshake/Perform.h +2 -2
- data/src/agent/Core/SpawningKit/Handshake/Prepare.h +3 -55
- data/src/agent/Core/SpawningKit/Handshake/Session.h +5 -2
- data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +7 -4
- data/src/agent/Core/SpawningKit/Journey.h +2 -2
- data/src/agent/Core/SpawningKit/PipeWatcher.h +2 -2
- data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h +2 -2
- data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h.cxxcodebuilder +2 -2
- data/src/agent/Core/SpawningKit/Result.h +2 -2
- data/src/agent/Core/SpawningKit/SmartSpawner.h +8 -4
- data/src/agent/Core/SpawningKit/Spawner.h +6 -2
- data/src/agent/Core/SpawningKit/UserSwitchingRules.h +2 -2
- data/src/agent/Core/TelemetryCollector.h +2 -2
- data/src/agent/ExecHelper/ExecHelperMain.cpp +2 -2
- data/src/agent/FileReadHelper/FileReadHelperMain.cpp +2 -2
- data/src/agent/MainFunctions.h +2 -2
- data/src/agent/Shared/ApiAccountUtils.h +2 -2
- data/src/agent/Shared/ApiServerUtils.h +2 -2
- data/src/agent/Shared/ApplicationPoolApiKey.h +2 -2
- data/src/agent/Shared/Fundamentals/AbortHandler.cpp +90 -11
- data/src/agent/Shared/Fundamentals/AbortHandler.h +4 -2
- data/src/agent/Shared/Fundamentals/Initialization.cpp +11 -5
- data/src/agent/Shared/Fundamentals/Initialization.h +5 -5
- data/src/agent/Shared/Fundamentals/Utils.cpp +2 -2
- data/src/agent/Shared/Fundamentals/Utils.h +2 -2
- data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +8 -9
- data/src/agent/SystemMetrics/SystemMetricsMain.cpp +2 -2
- data/src/agent/TempDirToucher/TempDirToucherMain.cpp +2 -2
- data/src/agent/Watchdog/AgentWatcher.cpp +2 -2
- data/src/agent/Watchdog/ApiServer.h +2 -2
- data/src/agent/Watchdog/Config.h +4 -3
- data/src/agent/Watchdog/CoreWatcher.cpp +2 -2
- data/src/agent/Watchdog/InstanceDirToucher.cpp +2 -2
- data/src/agent/Watchdog/WatchdogMain.cpp +6 -9
- data/src/apache2_module/Bucket.cpp +2 -2
- data/src/apache2_module/Bucket.h +2 -2
- data/src/apache2_module/CBindings.cpp +2 -2
- data/src/apache2_module/Config.cpp +2 -2
- data/src/apache2_module/Config.h +2 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +7 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +7 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +17 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/ConfigGeneral/Common.h +2 -2
- data/src/apache2_module/ConfigGeneral/ManifestGeneration.h +7 -5
- data/src/apache2_module/ConfigGeneral/SetterFuncs.h +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +5 -2
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h.cxxcodebuilder +5 -2
- data/src/apache2_module/DirectoryMapper.h +2 -2
- data/src/apache2_module/Hooks.cpp +3 -2
- data/src/apache2_module/Hooks.h +2 -2
- data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +11 -2
- data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +15 -3
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h.cxxcodebuilder +4 -3
- data/src/apache2_module/Utils.h +2 -2
- data/src/apache2_module/mod_passenger.c +2 -2
- data/src/cxx_supportlib/Algorithms/Hasher.cpp +2 -2
- data/src/cxx_supportlib/Algorithms/Hasher.h +2 -2
- data/src/cxx_supportlib/Algorithms/MovingAverage.h +2 -8
- data/src/cxx_supportlib/AppLocalConfigFileUtils.h +2 -2
- data/src/cxx_supportlib/AppTypeDetector/CBindings.cpp +2 -2
- data/src/cxx_supportlib/AppTypeDetector/CBindings.h +2 -2
- data/src/cxx_supportlib/AppTypeDetector/Detector.h +2 -2
- data/src/cxx_supportlib/BackgroundEventLoop.cpp +2 -2
- data/src/cxx_supportlib/BackgroundEventLoop.h +2 -2
- data/src/cxx_supportlib/ConfigKit/AsyncUtils.h +2 -2
- data/src/cxx_supportlib/ConfigKit/Common.h +2 -2
- data/src/cxx_supportlib/ConfigKit/ConfigKit.h +2 -2
- data/src/cxx_supportlib/ConfigKit/DummyTranslator.h +2 -2
- data/src/cxx_supportlib/ConfigKit/PrefixTranslator.h +2 -2
- data/src/cxx_supportlib/ConfigKit/Schema.h +2 -2
- data/src/cxx_supportlib/ConfigKit/SchemaUtils.h +2 -2
- data/src/cxx_supportlib/ConfigKit/Store.h +2 -2
- data/src/cxx_supportlib/ConfigKit/SubComponentUtils.h +2 -2
- data/src/cxx_supportlib/ConfigKit/TableTranslator.h +2 -2
- data/src/cxx_supportlib/ConfigKit/Translator.h +2 -2
- data/src/cxx_supportlib/ConfigKit/Utils.h +2 -2
- data/src/cxx_supportlib/Constants.h +3 -3
- data/src/cxx_supportlib/Constants.h.cxxcodebuilder +2 -2
- data/src/cxx_supportlib/DataStructures/HashMap.h +2 -2
- data/src/cxx_supportlib/DataStructures/HashedStaticString.h +2 -2
- data/src/cxx_supportlib/DataStructures/LString.cpp +2 -2
- data/src/cxx_supportlib/DataStructures/LString.h +2 -2
- data/src/cxx_supportlib/DataStructures/StringKeyTable.h +2 -2
- data/src/cxx_supportlib/DataStructures/StringMap.h +2 -3
- data/src/cxx_supportlib/Exceptions.cpp +2 -2
- data/src/cxx_supportlib/Exceptions.h +2 -2
- data/src/cxx_supportlib/FileDescriptor.h +2 -2
- data/src/cxx_supportlib/FileTools/FileManip.cpp +2 -2
- data/src/cxx_supportlib/FileTools/FileManip.h +2 -2
- data/src/cxx_supportlib/FileTools/LargeFiles.h +2 -2
- data/src/cxx_supportlib/FileTools/PathManip.cpp +3 -3
- data/src/cxx_supportlib/FileTools/PathManip.h +2 -2
- data/src/cxx_supportlib/FileTools/PathManipCBindings.cpp +2 -2
- data/src/cxx_supportlib/FileTools/PathManipCBindings.h +2 -2
- data/src/cxx_supportlib/FileTools/PathSecurityCheck.cpp +2 -2
- data/src/cxx_supportlib/FileTools/PathSecurityCheck.h +2 -2
- data/src/cxx_supportlib/Hooks.h +2 -2
- data/src/cxx_supportlib/IOTools/BufferedIO.h +2 -2
- data/src/cxx_supportlib/IOTools/IOUtils.cpp +2 -2
- data/src/cxx_supportlib/IOTools/IOUtils.h +2 -2
- data/src/cxx_supportlib/IOTools/MessageIO.h +2 -2
- data/src/cxx_supportlib/IOTools/MessageSerialization.h +2 -2
- data/src/cxx_supportlib/InstanceDirectory.h +2 -2
- data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +2 -2
- data/src/cxx_supportlib/JsonTools/Autocast.h +2 -2
- data/src/cxx_supportlib/JsonTools/CBindings.cpp +2 -2
- data/src/cxx_supportlib/JsonTools/CBindings.h +2 -2
- data/src/cxx_supportlib/JsonTools/JsonUtils.h +2 -2
- data/src/cxx_supportlib/LoggingKit/Assert.h +2 -2
- data/src/cxx_supportlib/LoggingKit/Config.h +2 -2
- data/src/cxx_supportlib/LoggingKit/Context.h +2 -2
- data/src/cxx_supportlib/LoggingKit/Forward.h +2 -2
- data/src/cxx_supportlib/LoggingKit/Implementation.cpp +2 -2
- data/src/cxx_supportlib/LoggingKit/Logging.h +2 -2
- data/src/cxx_supportlib/LoggingKit/LoggingKit.h +2 -2
- data/src/cxx_supportlib/LveLoggingDecorator.h +2 -2
- data/src/cxx_supportlib/MemoryKit/mbuf.cpp +2 -2
- data/src/cxx_supportlib/MemoryKit/mbuf.h +2 -2
- data/src/cxx_supportlib/MemoryKit/palloc.cpp +1 -1
- data/src/cxx_supportlib/MemoryKit/palloc.h +1 -1
- data/src/cxx_supportlib/ProcessManagement/Ruby.cpp +2 -2
- data/src/cxx_supportlib/ProcessManagement/Ruby.h +2 -2
- data/src/cxx_supportlib/ProcessManagement/Spawn.cpp +2 -2
- data/src/cxx_supportlib/ProcessManagement/Spawn.h +2 -2
- data/src/cxx_supportlib/ProcessManagement/Utils.cpp +2 -2
- data/src/cxx_supportlib/ProcessManagement/Utils.h +2 -2
- data/src/cxx_supportlib/RandomGenerator.h +2 -2
- data/src/cxx_supportlib/ResourceLocator.h +2 -2
- data/src/cxx_supportlib/SafeLibev.h +3 -5
- data/src/cxx_supportlib/SecurityKit/Crypto.cpp +2 -2
- data/src/cxx_supportlib/SecurityKit/Crypto.h +2 -2
- data/src/cxx_supportlib/SecurityKit/MemZeroGuard.h +2 -2
- data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +2 -2
- data/src/cxx_supportlib/ServerKit/Channel.h +2 -2
- data/src/cxx_supportlib/ServerKit/Client.h +2 -2
- data/src/cxx_supportlib/ServerKit/ClientRef.h +2 -2
- data/src/cxx_supportlib/ServerKit/Config.h +2 -2
- data/src/cxx_supportlib/ServerKit/Context.h +2 -2
- data/src/cxx_supportlib/ServerKit/CookieUtils.h +2 -2
- data/src/cxx_supportlib/ServerKit/Errors.h +2 -2
- data/src/cxx_supportlib/ServerKit/FdSinkChannel.h +2 -2
- data/src/cxx_supportlib/ServerKit/FdSourceChannel.h +2 -2
- data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +2 -2
- data/src/cxx_supportlib/ServerKit/FileBufferedFdSinkChannel.h +2 -2
- data/src/cxx_supportlib/ServerKit/HeaderTable.h +2 -2
- data/src/cxx_supportlib/ServerKit/Hooks.h +4 -4
- data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParserState.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpClient.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +2 -3
- data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpRequest.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpRequestRef.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpServer.h +17 -12
- data/src/cxx_supportlib/ServerKit/Implementation.cpp +2 -2
- data/src/cxx_supportlib/ServerKit/Server.h +2 -8
- data/src/cxx_supportlib/StaticString.h +2 -2
- data/src/cxx_supportlib/StrIntTools/DateParsing.h +2 -2
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.cpp +2 -2
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +2 -2
- data/src/cxx_supportlib/StrIntTools/StrIntUtilsNoStrictAliasing.cpp +2 -2
- data/src/cxx_supportlib/StrIntTools/StringScanning.h +2 -2
- data/src/cxx_supportlib/StrIntTools/Template.h +2 -2
- data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +2 -2
- data/src/cxx_supportlib/SystemTools/ProcessMetricsCollector.h +2 -2
- data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +2 -2
- data/src/cxx_supportlib/SystemTools/SystemTime.cpp +2 -2
- data/src/cxx_supportlib/SystemTools/SystemTime.h +2 -2
- data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +2 -2
- data/src/cxx_supportlib/SystemTools/UserDatabase.h +2 -2
- data/src/cxx_supportlib/Utils/AnsiColorConstants.h +2 -2
- data/src/cxx_supportlib/Utils/AsyncSignalSafeUtils.h +4 -2
- data/src/cxx_supportlib/Utils/BlockingQueue.h +2 -2
- data/src/cxx_supportlib/Utils/CachedFileStat.cpp +2 -2
- data/src/cxx_supportlib/Utils/CachedFileStat.h +2 -2
- data/src/cxx_supportlib/Utils/CachedFileStat.hpp +2 -2
- data/src/cxx_supportlib/Utils/ClassUtils.h +2 -2
- data/src/cxx_supportlib/Utils/Curl.h +2 -2
- data/src/cxx_supportlib/Utils/FastStringStream.h +2 -2
- data/src/cxx_supportlib/Utils/FileChangeChecker.h +2 -2
- data/src/cxx_supportlib/Utils/HttpConstants.h +2 -2
- data/src/cxx_supportlib/Utils/IniFile.h +2 -2
- data/src/cxx_supportlib/Utils/MessagePassing.h +2 -2
- data/src/cxx_supportlib/Utils/OptionParsing.h +2 -2
- data/src/cxx_supportlib/Utils/ReleaseableScopedPointer.h +2 -2
- data/src/cxx_supportlib/Utils/ScopeGuard.h +2 -2
- data/src/cxx_supportlib/Utils/SpeedMeter.h +2 -5
- data/src/cxx_supportlib/Utils/Timer.h +2 -2
- data/src/cxx_supportlib/Utils/VariantMap.h +2 -2
- data/src/cxx_supportlib/Utils.cpp +2 -2
- data/src/cxx_supportlib/Utils.h +2 -2
- data/src/cxx_supportlib/WatchdogLauncher.cpp +2 -2
- data/src/cxx_supportlib/WatchdogLauncher.h +3 -5
- data/src/cxx_supportlib/WebSocketCommandReverseServer.h +2 -2
- data/src/cxx_supportlib/WrapperRegistry/CBindings.cpp +2 -2
- data/src/cxx_supportlib/WrapperRegistry/CBindings.h +2 -2
- data/src/cxx_supportlib/WrapperRegistry/Entry.h +2 -2
- data/src/cxx_supportlib/WrapperRegistry/Registry.h +2 -2
- data/src/cxx_supportlib/oxt/backtrace.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/backtrace_disabled.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/backtrace_enabled.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/context.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/spin_lock_darwin.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/spin_lock_gcc_x86.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/spin_lock_portable.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/spin_lock_pthreads.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/tracable_exception_disabled.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/tracable_exception_enabled.hpp +1 -1
- data/src/cxx_supportlib/oxt/dynamic_thread_group.hpp +1 -1
- data/src/cxx_supportlib/oxt/implementation.cpp +12 -1
- data/src/cxx_supportlib/oxt/initialize.hpp +1 -1
- data/src/cxx_supportlib/oxt/macros.hpp +1 -1
- data/src/cxx_supportlib/oxt/spin_lock.hpp +1 -1
- data/src/cxx_supportlib/oxt/system_calls.cpp +11 -4
- data/src/cxx_supportlib/oxt/system_calls.hpp +1 -1
- data/src/cxx_supportlib/oxt/thread.hpp +2 -2
- data/src/cxx_supportlib/oxt/tracable_exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-copy/adhoc_lve.h +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/as_tuple.hpp +35 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_immediate_executor.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +74 -68
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +11 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_random_access_file.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_readable_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_file.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_writable_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_allocator.hpp +88 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +91 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +105 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_immediate_executor.hpp +90 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer_registration.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancel_after.hpp +303 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancel_at.hpp +296 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/impl/co_composed.hpp → co_composed.hpp} +208 -61
- data/src/cxx_supportlib/vendor-modified/boost/asio/completion_condition.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/compose.hpp +10 -201
- data/src/cxx_supportlib/vendor-modified/boost/asio/composed.hpp +415 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +214 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/coroutine.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/default_completion_token.hpp +91 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/deferred.hpp +9 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detached.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffered_stream_storage.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/detail/channel_message.hpp → detail/completion_message.hpp} +14 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/detail/channel_payload.hpp → detail/completion_payload.hpp} +30 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/detail/channel_handler.hpp → detail/completion_payload_handler.hpp} +15 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +26 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/deadline_timer_service.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +14 -118
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +36 -33
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_descriptor_service.ipp +7 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_socket_service_base.ipp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +44 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_select_interrupter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiation_base.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +20 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_send_op.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +23 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/recycling_allocator.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_query_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timed_cancel_op.hpp +363 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wrapped_handler.hpp +29 -51
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking_adaptation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/mapping.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/occupancy.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/outstanding_work.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/relationship.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_channel.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_composed.hpp +2 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_receive_op.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_functions.hpp +27 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_op.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +17 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/impl/channel_service.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +12 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +38 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/immediate.hpp +144 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/append.hpp +14 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/as_tuple.hpp +45 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancel_after.hpp +270 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancel_at.hpp +270 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +60 -166
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/consign.hpp +14 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/detached.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/prepend.hpp +14 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +26 -177
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +16 -82
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +13 -286
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +55 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +26 -185
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +16 -87
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context_strand.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/socket_option.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/placeholders.hpp +12 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +127 -28
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +70 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +114 -36
- data/src/cxx_supportlib/vendor-modified/boost/asio/redirect_error.hpp +43 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/registered_buffer.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/openssl_init.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +10 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/this_coro.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_awaitable.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/uses_executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +147 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +74 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/futex.hpp +42 -11
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +15 -37
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +151 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +11 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +611 -102
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +47 -47
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +25 -24
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocation_type.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/block_list.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/block_slist.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/construct_in_place.hpp +35 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +55 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/function_detector.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_container.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_contiguous_container.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_pair.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/multiallocation_chain.hpp +96 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +19 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common_alloc.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_resource.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +86 -52
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/version_type.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +145 -65
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +105 -22
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +30 -22
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +19 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +15 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/node_handle.hpp +6 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +31 -24
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +45 -43
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +45 -33
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +5 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +55 -47
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +222 -73
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/minstd_rand.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/core/empty_value.hpp +53 -5
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/pointer_in_range.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/span.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/type_name.hpp +7 -2
- data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +22 -34
- data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +141 -38
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/algorithm.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hook_traits.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +18 -18
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +22 -17
- data/src/cxx_supportlib/vendor-modified/boost/libs/random/src/random_device.cpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/config_begin.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/launder.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/integral_wrapper.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/requires_cxx11.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_gcc_intrinsics.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category_message.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map_fwd.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set_fwd.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +22 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +38 -10
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +111 -2
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/cumulative_stats.hpp +177 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +33 -7
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map_fwd.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set_fwd.hpp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map_fwd.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set_fwd.hpp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/detail/minstd_rand.hpp +1 -43
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/modp_b64_strict_aliasing.cpp +2 -2
- data/src/helper-scripts/backtrace-sanitizer.rb +2 -2
- data/src/helper-scripts/crash-watch.rb +1 -1
- data/src/helper-scripts/download_binaries/extconf.rb +2 -2
- data/src/helper-scripts/meteor-loader.rb +9 -4
- data/src/helper-scripts/node-loader.js +2 -2
- data/src/helper-scripts/prespawn +2 -2
- data/src/helper-scripts/rack-loader.rb +2 -2
- data/src/helper-scripts/rack-preloader.rb +2 -2
- data/src/helper-scripts/wsgi-loader.py +2 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +10 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c.cxxcodebuilder +2 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +8 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c.cxxcodebuilder +2 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +14 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c.cxxcodebuilder +2 -2
- data/src/nginx_module/Configuration.c +1 -1
- data/src/nginx_module/Configuration.h +1 -1
- data/src/nginx_module/ContentHandler.c +1 -1
- data/src/nginx_module/ContentHandler.h +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c.cxxcodebuilder +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c.cxxcodebuilder +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h.cxxcodebuilder +2 -2
- data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +7 -2
- data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +2 -2
- data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +13 -2
- data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +2 -2
- data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +6 -2
- data/src/nginx_module/MainConfig/AutoGeneratedStruct.h.cxxcodebuilder +2 -2
- data/src/nginx_module/StaticContentHandler.c +1 -1
- data/src/nginx_module/StaticContentHandler.h +1 -1
- data/src/nginx_module/ngx_http_passenger_module.c +2 -2
- data/src/nginx_module/ngx_http_passenger_module.h +1 -1
- data/src/nodejs_supportlib/phusion_passenger/line_reader.js +2 -2
- data/src/ruby_native_extension/extconf.rb +2 -2
- data/src/ruby_native_extension/passenger_native_support.c +2 -2
- data/src/ruby_supportlib/phusion_passenger/abstract_installer.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/admin_tools/instance.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/admin_tools/memory_stats.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/admin_tools.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +9 -2
- data/src/ruby_supportlib/phusion_passenger/apache2/config_utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/about_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/api_call_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/build_native_support_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/compile_agent_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/compile_nginx_engine_command.rb +8 -4
- data/src/ruby_supportlib/phusion_passenger/config/detach_process_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +12 -2
- data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/list_instances_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/main.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +14 -6
- data/src/ruby_supportlib/phusion_passenger/config/reopen_logs_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/restart_app_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/system_metrics_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/system_properties_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/validate_install_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/constants.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/debug_logging.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +12 -4
- data/src/ruby_supportlib/phusion_passenger/message_channel.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/message_client.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/native_support.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +10 -2
- data/src/ruby_supportlib/phusion_passenger/packaging.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache_detector.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/binary_compatibility.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +34 -7
- data/src/ruby_supportlib/phusion_passenger/platform_info/crypto.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/curl.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/linux.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/networking.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/openssl.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/zlib.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/plugin.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/preloader_shared_helpers.rb +14 -8
- data/src/ruby_supportlib/phusion_passenger/public_api.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/rack/handler.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/rack/out_of_band_gc.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/rack_handler.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/request_handler.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/ruby_core_enhancements.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/ruby_core_io_enhancements.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/simple_benchmarking.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +14 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/control_utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/main.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +5 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +3 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +2 -6
- data/src/ruby_supportlib/phusion_passenger/standalone/status_command.rb +3 -4
- data/src/ruby_supportlib/phusion_passenger/standalone/stop_command.rb +9 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/version_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/ansi_colors.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/download.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/file_system_watcher.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/hosts_file_parser.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/json.rb +5 -1
- data/src/ruby_supportlib/phusion_passenger/utils/lock.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/native_support_utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/progress_bar.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/strscan.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/unseekable_socket.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils.rb +7 -17
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/base.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/version.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/lock_file.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/spawn.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/version.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger.rb +8 -8
- data/src/schema_printer/SchemaPrinterMain.cpp +2 -2
- data/src/schema_printer/SchemaPrinterMain.cpp.cxxcodebuilder +2 -2
- metadata +23 -8
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -28,7 +28,6 @@
|
|
28
28
|
|
29
29
|
#include <string>
|
30
30
|
#include <vector>
|
31
|
-
#include <algorithm>
|
32
31
|
#include <boost/intrusive_ptr.hpp>
|
33
32
|
#include <boost/move/core.hpp>
|
34
33
|
#include <boost/container/vector.hpp>
|
@@ -54,6 +53,10 @@
|
|
54
53
|
#include <Core/SpawningKit/Result.h>
|
55
54
|
#include <Shared/ApplicationPoolApiKey.h>
|
56
55
|
|
56
|
+
namespace tut {
|
57
|
+
template<class Data> class test_object;
|
58
|
+
}
|
59
|
+
|
57
60
|
namespace Passenger {
|
58
61
|
namespace ApplicationPool2 {
|
59
62
|
|
@@ -100,6 +103,9 @@ typedef boost::container::vector<ProcessPtr> ProcessList;
|
|
100
103
|
*/
|
101
104
|
class Process {
|
102
105
|
public:
|
106
|
+
friend class Group;
|
107
|
+
template<class Data> friend class tut::test_object;
|
108
|
+
|
103
109
|
static const unsigned int MAX_SOCKETS_ACCEPTING_HTTP_REQUESTS = 3;
|
104
110
|
|
105
111
|
private:
|
@@ -337,9 +343,14 @@ private:
|
|
337
343
|
}
|
338
344
|
|
339
345
|
void destroySelf() const {
|
346
|
+
Context *context = getContext();
|
347
|
+
Process *storagePointer = const_cast<Process *>(this);
|
340
348
|
this->~Process();
|
341
|
-
|
342
|
-
|
349
|
+
|
350
|
+
LockGuard l(context->memoryManagementSyncher);
|
351
|
+
// Use `storagePointer` because using `this` after calling the destructor
|
352
|
+
// is undefined behavior.
|
353
|
+
context->processObjectPool.free(storagePointer);
|
343
354
|
}
|
344
355
|
|
345
356
|
|
@@ -384,6 +395,10 @@ public:
|
|
384
395
|
|
385
396
|
/** Last time when a session was opened for this Process. */
|
386
397
|
unsigned long long lastUsed;
|
398
|
+
/** Which generation of app processes this one belongs to,
|
399
|
+
inherited from the app group, incremented when a restart
|
400
|
+
is initiated*/
|
401
|
+
const unsigned int generation;
|
387
402
|
/** Number of sessions currently open.
|
388
403
|
* @invariant session >= 0
|
389
404
|
*/
|
@@ -446,8 +461,7 @@ public:
|
|
446
461
|
/** Collected by Pool::collectAnalytics(). */
|
447
462
|
ProcessMetrics metrics;
|
448
463
|
|
449
|
-
|
450
|
-
Process(const BasicGroupInfo *groupInfo, const Json::Value &args)
|
464
|
+
Process(const BasicGroupInfo *groupInfo, const unsigned int gen, const Json::Value &args)
|
451
465
|
: info(this, groupInfo, args),
|
452
466
|
socketsAcceptingHttpRequestsCount(0),
|
453
467
|
spawnerCreationTime(getJsonUint64Field(args, "spawner_creation_time")),
|
@@ -458,6 +472,7 @@ public:
|
|
458
472
|
refcount(1),
|
459
473
|
index(-1),
|
460
474
|
lastUsed(spawnEndTime),
|
475
|
+
generation(gen),
|
461
476
|
sessions(0),
|
462
477
|
processed(0),
|
463
478
|
lifeStatus(ALIVE),
|
@@ -471,7 +486,7 @@ public:
|
|
471
486
|
indexSocketsAcceptingHttpRequests();
|
472
487
|
}
|
473
488
|
|
474
|
-
Process(const BasicGroupInfo *groupInfo, const SpawningKit::Result &skResult,
|
489
|
+
Process(const BasicGroupInfo *groupInfo, const unsigned int gen, const SpawningKit::Result &skResult,
|
475
490
|
const Json::Value &args)
|
476
491
|
: info(this, groupInfo, skResult),
|
477
492
|
socketsAcceptingHttpRequestsCount(0),
|
@@ -483,6 +498,7 @@ public:
|
|
483
498
|
refcount(1),
|
484
499
|
index(-1),
|
485
500
|
lastUsed(spawnEndTime),
|
501
|
+
generation(gen),
|
486
502
|
sessions(0),
|
487
503
|
processed(0),
|
488
504
|
lifeStatus(ALIVE),
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -109,9 +109,14 @@ private:
|
|
109
109
|
}
|
110
110
|
|
111
111
|
void destroySelf() const {
|
112
|
+
Context *context = this->context;
|
113
|
+
Session *storagePointer = const_cast<Session *>(this);
|
112
114
|
this->~Session();
|
115
|
+
|
113
116
|
LockGuard l(context->memoryManagementSyncher);
|
114
|
-
|
117
|
+
// Use `storagePointer` because using `this` after calling the destructor
|
118
|
+
// is undefined behavior.
|
119
|
+
context->sessionObjectPool.free(storagePointer);
|
115
120
|
}
|
116
121
|
|
117
122
|
public:
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2016-
|
3
|
+
* Copyright (c) 2016-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
data/src/agent/Core/Config.h
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -155,6 +155,7 @@ using namespace std;
|
|
155
155
|
* max_instances_per_app unsigned integer - read_only
|
156
156
|
* max_pool_size unsigned integer - default(6)
|
157
157
|
* multi_app boolean - default(false),read_only
|
158
|
+
* old_routing boolean - default(false),read_only
|
158
159
|
* oom_score string - read_only
|
159
160
|
* passenger_root string required read_only
|
160
161
|
* pid_file string - read_only
|
@@ -167,13 +168,13 @@ using namespace std;
|
|
167
168
|
* security_update_checker_interval unsigned integer - default(86400)
|
168
169
|
* security_update_checker_proxy_url string - -
|
169
170
|
* security_update_checker_url string - default("https://securitycheck.phusionpassenger.com/v1/check.json")
|
170
|
-
* server_software string - default("Phusion_Passenger/6.0.
|
171
|
+
* server_software string - default("Phusion_Passenger/6.0.25")
|
171
172
|
* show_version_in_header boolean - default(true)
|
172
173
|
* single_app_mode_app_root string - default,read_only
|
173
174
|
* single_app_mode_app_start_command string - read_only
|
174
175
|
* single_app_mode_app_type string - read_only
|
175
176
|
* single_app_mode_startup_file string - read_only
|
176
|
-
* spawn_dir string
|
177
|
+
* spawn_dir string - default,read_only
|
177
178
|
* standalone_engine string - default
|
178
179
|
* stat_throttle_rate unsigned integer - default(10)
|
179
180
|
* telemetry_collector_ca_certificate_path string - -
|
@@ -240,6 +241,10 @@ private:
|
|
240
241
|
return 80;
|
241
242
|
}
|
242
243
|
|
244
|
+
static Json::Value getDefaultSpawnDir(const ConfigKit::Store &store) {
|
245
|
+
return getSystemTempDir();
|
246
|
+
}
|
247
|
+
|
243
248
|
static Json::Value getDefaultThreads(const ConfigKit::Store &store) {
|
244
249
|
return Json::UInt(boost::thread::hardware_concurrency());
|
245
250
|
}
|
@@ -488,7 +493,7 @@ public:
|
|
488
493
|
overrideWithDynamicDefault("default_server_port", UINT_TYPE, OPTIONAL, getDefaultServerPort);
|
489
494
|
|
490
495
|
add("passenger_root", STRING_TYPE, REQUIRED | READ_ONLY);
|
491
|
-
|
496
|
+
addWithDynamicDefault("spawn_dir", STRING_TYPE, OPTIONAL | READ_ONLY | CACHE_DEFAULT_VALUE, getDefaultSpawnDir);
|
492
497
|
add("config_manifest", OBJECT_TYPE, OPTIONAL | READ_ONLY);
|
493
498
|
add("pid_file", STRING_TYPE, OPTIONAL | READ_ONLY);
|
494
499
|
add("web_server_version", STRING_TYPE, OPTIONAL | READ_ONLY);
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2017
|
3
|
+
* Copyright (c) 2017-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2014-
|
3
|
+
* Copyright (c) 2014-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2017
|
3
|
+
* Copyright (c) 2017-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2017-
|
3
|
+
* Copyright (c) 2017-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -115,9 +115,10 @@ parseControllerBenchmarkMode(const StaticString &mode) {
|
|
115
115
|
* max_instances_per_app unsigned integer - read_only
|
116
116
|
* min_spare_clients unsigned integer - default(0)
|
117
117
|
* multi_app boolean - default(true),read_only
|
118
|
+
* old_routing boolean - default(false),read_only
|
118
119
|
* request_freelist_limit unsigned integer - default(1024)
|
119
120
|
* response_buffer_high_watermark unsigned integer - default(134217728)
|
120
|
-
* server_software string - default("Phusion_Passenger/6.0.
|
121
|
+
* server_software string - default("Phusion_Passenger/6.0.25")
|
121
122
|
* show_version_in_header boolean - default(true)
|
122
123
|
* start_reading_after_accept boolean - default(true)
|
123
124
|
* stat_throttle_rate unsigned integer - default(10)
|
@@ -138,6 +139,7 @@ private:
|
|
138
139
|
add("thread_number", UINT_TYPE, REQUIRED | READ_ONLY);
|
139
140
|
add("multi_app", BOOL_TYPE, OPTIONAL | READ_ONLY, true);
|
140
141
|
add("turbocaching", BOOL_TYPE, OPTIONAL | READ_ONLY, true);
|
142
|
+
add("old_routing", BOOL_TYPE, OPTIONAL | READ_ONLY, false);
|
141
143
|
add("integration_mode", STRING_TYPE, OPTIONAL | READ_ONLY, DEFAULT_INTEGRATION_MODE);
|
142
144
|
|
143
145
|
add("user_switching", BOOL_TYPE, OPTIONAL, true);
|
@@ -349,6 +351,7 @@ public:
|
|
349
351
|
bool userSwitching: 1;
|
350
352
|
bool defaultStickySessions: 1;
|
351
353
|
bool gracefulExit: 1;
|
354
|
+
bool oldRouting: 1;
|
352
355
|
|
353
356
|
/*******************/
|
354
357
|
/*******************/
|
@@ -366,7 +369,8 @@ public:
|
|
366
369
|
singleAppMode(!config["multi_app"].asBool()),
|
367
370
|
userSwitching(config["user_switching"].asBool()),
|
368
371
|
defaultStickySessions(config["default_sticky_sessions"].asBool()),
|
369
|
-
gracefulExit(config["graceful_exit"].asBool())
|
372
|
+
gracefulExit(config["graceful_exit"].asBool()),
|
373
|
+
oldRouting(config["old_routing"].asBool())
|
370
374
|
|
371
375
|
/*******************/
|
372
376
|
{
|
@@ -396,6 +400,7 @@ public:
|
|
396
400
|
SWAP_BITFIELD(bool, userSwitching);
|
397
401
|
SWAP_BITFIELD(bool, defaultStickySessions);
|
398
402
|
SWAP_BITFIELD(bool, gracefulExit);
|
403
|
+
SWAP_BITFIELD(bool, oldRouting);
|
399
404
|
|
400
405
|
/*******************/
|
401
406
|
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2015-
|
3
|
+
* Copyright (c) 2015-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -206,7 +206,6 @@ Controller::fillPoolOptionsFromConfigCaches(Options &options,
|
|
206
206
|
options.statThrottleRate = mainConfig.statThrottleRate;
|
207
207
|
options.maxRequests = requestConfig->defaultMaxRequests;
|
208
208
|
options.stickySessionsCookieAttributes = requestConfig->defaultStickySessionsCookieAttributes;
|
209
|
-
|
210
209
|
/******************************/
|
211
210
|
}
|
212
211
|
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2014-
|
3
|
+
* Copyright (c) 2014-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2014-
|
3
|
+
* Copyright (c) 2014-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2014-
|
3
|
+
* Copyright (c) 2014-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2014-
|
3
|
+
* Copyright (c) 2014-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
data/src/agent/Core/Controller.h
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2011-
|
3
|
+
* Copyright (c) 2011-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
data/src/agent/Core/CoreMain.cpp
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
/*
|
2
2
|
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
-
* Copyright (c) 2010-
|
3
|
+
* Copyright (c) 2010-2025 Asynchronous B.V.
|
4
4
|
*
|
5
5
|
* "Passenger", "Phusion Passenger" and "Union Station" are registered
|
6
|
-
* trademarks of
|
6
|
+
* trademarks of Asynchronous B.V.
|
7
7
|
*
|
8
8
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
9
9
|
* of this software and associated documentation files (the "Software"), to deal
|
@@ -85,7 +85,6 @@
|
|
85
85
|
#include <AppTypeDetector/Detector.h>
|
86
86
|
#include <IOTools/MessageSerialization.h>
|
87
87
|
#include <FileDescriptor.h>
|
88
|
-
#include <ResourceLocator.h>
|
89
88
|
#include <BackgroundEventLoop.cpp>
|
90
89
|
#include <FileTools/FileManip.h>
|
91
90
|
#include <FileTools/PathSecurityCheck.h>
|
@@ -145,7 +144,6 @@ namespace Core {
|
|
145
144
|
|
146
145
|
boost::mutex configSyncher;
|
147
146
|
|
148
|
-
ResourceLocator resourceLocator;
|
149
147
|
RandomGeneratorPtr randomGenerator;
|
150
148
|
SpawningKit::Context::Schema spawningKitContextSchema;
|
151
149
|
SpawningKit::ContextPtr spawningKitContext;
|
@@ -697,8 +695,6 @@ initializeNonPrivilegedWorkingObjects() {
|
|
697
695
|
|
698
696
|
setenv("SERVER_SOFTWARE", coreConfig->get("server_software").asCString(), 1);
|
699
697
|
|
700
|
-
wo->resourceLocator = ResourceLocator(coreConfig->get("passenger_root").asString());
|
701
|
-
|
702
698
|
wo->randomGenerator = boost::make_shared<RandomGenerator>();
|
703
699
|
// Check whether /dev/urandom is actually random.
|
704
700
|
// https://code.google.com/p/phusion-passenger/issues/detail?id=516
|
@@ -710,7 +706,7 @@ initializeNonPrivilegedWorkingObjects() {
|
|
710
706
|
UPDATE_TRACE_POINT();
|
711
707
|
wo->spawningKitContext = boost::make_shared<SpawningKit::Context>(
|
712
708
|
wo->spawningKitContextSchema);
|
713
|
-
wo->spawningKitContext->resourceLocator =
|
709
|
+
wo->spawningKitContext->resourceLocator = Agent::Fundamentals::context->resourceLocator;
|
714
710
|
wo->spawningKitContext->wrapperRegistry = coreWrapperRegistry;
|
715
711
|
wo->spawningKitContext->randomGenerator = wo->randomGenerator;
|
716
712
|
wo->spawningKitContext->integrationMode = coreConfig->get("integration_mode").asString();
|
@@ -723,7 +719,7 @@ initializeNonPrivilegedWorkingObjects() {
|
|
723
719
|
wo->spawningKitContext->finalize();
|
724
720
|
|
725
721
|
UPDATE_TRACE_POINT();
|
726
|
-
wo->appPoolContext = boost::make_shared<ApplicationPool2::Context>();
|
722
|
+
wo->appPoolContext = boost::make_shared<ApplicationPool2::Context>(coreConfig->get("old_routing").asBool());
|
727
723
|
wo->appPoolContext->spawningKitFactory = boost::make_shared<SpawningKit::Factory>(
|
728
724
|
wo->spawningKitContext.get());
|
729
725
|
wo->appPoolContext->agentConfig = coreConfig->inspectEffectiveValues();
|
@@ -772,7 +768,7 @@ initializeNonPrivilegedWorkingObjects() {
|
|
772
768
|
&coreSchema->controllerSingleAppMode.schema,
|
773
769
|
&wo->singleAppModeConfig,
|
774
770
|
coreSchema->controllerSingleAppMode.translator);
|
775
|
-
two.controller->resourceLocator =
|
771
|
+
two.controller->resourceLocator = Agent::Fundamentals::context->resourceLocator;
|
776
772
|
two.controller->wrapperRegistry = coreWrapperRegistry;
|
777
773
|
two.controller->appPool = wo->appPool;
|
778
774
|
two.controller->shutdownFinishCallback = controllerShutdownFinished;
|
@@ -877,7 +873,7 @@ initializeSecurityUpdateChecker() {
|
|
877
873
|
config,
|
878
874
|
coreSchema->securityUpdateChecker.translator);
|
879
875
|
workingObjects->securityUpdateChecker = checker;
|
880
|
-
checker->resourceLocator =
|
876
|
+
checker->resourceLocator = Agent::Fundamentals::context->resourceLocator;
|
881
877
|
checker->initialize();
|
882
878
|
checker->start();
|
883
879
|
}
|
@@ -927,7 +923,7 @@ initializeAdminPanelConnector() {
|
|
927
923
|
AdminPanelConnector *connector = new Core::AdminPanelConnector(
|
928
924
|
coreSchema->adminPanelConnector.schema, config,
|
929
925
|
coreSchema->adminPanelConnector.translator);
|
930
|
-
connector->resourceLocator =
|
926
|
+
connector->resourceLocator = Agent::Fundamentals::context->resourceLocator;
|
931
927
|
connector->appPool = wo.appPool;
|
932
928
|
connector->configGetter = inspectConfig;
|
933
929
|
for (unsigned int i = 0; i < wo.threadWorkingObjects.size(); i++) {
|
@@ -956,7 +952,7 @@ prestartWebApps() {
|
|
956
952
|
}
|
957
953
|
|
958
954
|
boost::function<void ()> func = boost::bind(prestartWebApps,
|
959
|
-
|
955
|
+
*Agent::Fundamentals::context->resourceLocator,
|
960
956
|
coreConfig->get("default_ruby").asString(),
|
961
957
|
prestartURLs
|
962
958
|
);
|
@@ -983,7 +979,7 @@ warnIfPassengerRootVulnerable() {
|
|
983
979
|
return; // Passenger is not root, so no escalation.
|
984
980
|
}
|
985
981
|
|
986
|
-
string root =
|
982
|
+
string root = Agent::Fundamentals::context->resourceLocator->getInstallSpec();
|
987
983
|
vector<string> errors, checkErrors;
|
988
984
|
if (isPathProbablySecureForRootUse(root, errors, checkErrors)) {
|
989
985
|
if (!checkErrors.empty()) {
|
@@ -1400,13 +1396,10 @@ parseOptions(int argc, const char *argv[], ConfigKit::Store &config) {
|
|
1400
1396
|
}
|
1401
1397
|
}
|
1402
1398
|
|
1403
|
-
|
1404
|
-
|
1405
|
-
|
1406
|
-
|
1407
|
-
ConfigKit::toString(errors) << "\n"
|
1408
|
-
"Raw initial configuration: " << updates.toStyledString());
|
1409
|
-
}
|
1399
|
+
vector<ConfigKit::Error> errors;
|
1400
|
+
if (!config.update(updates, errors)) {
|
1401
|
+
P_ERROR("*** Error in options: " << ConfigKit::toString(errors));
|
1402
|
+
std::exit(1);
|
1410
1403
|
}
|
1411
1404
|
}
|
1412
1405
|
|