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
@@ -1603,7 +1603,7 @@ std::size_t read_until(SyncReadStream& s, DynamicBuffer_v2 buffers,
|
|
1603
1603
|
* Regardless of whether the asynchronous operation completes immediately or
|
1604
1604
|
* not, the completion handler will not be invoked from within this function.
|
1605
1605
|
* On immediate completion, invocation of the handler will be performed in a
|
1606
|
-
* manner equivalent to using boost::asio::
|
1606
|
+
* manner equivalent to using boost::asio::async_immediate().
|
1607
1607
|
*
|
1608
1608
|
* @par Completion Signature
|
1609
1609
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -1656,7 +1656,7 @@ template <typename AsyncReadStream, typename DynamicBuffer_v1,
|
|
1656
1656
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
1657
1657
|
std::size_t)) ReadToken = default_completion_token_t<
|
1658
1658
|
typename AsyncReadStream::executor_type>>
|
1659
|
-
auto async_read_until(AsyncReadStream& s,
|
1659
|
+
inline auto async_read_until(AsyncReadStream& s,
|
1660
1660
|
DynamicBuffer_v1&& buffers, char delim,
|
1661
1661
|
ReadToken&& token = default_completion_token_t<
|
1662
1662
|
typename AsyncReadStream::executor_type>(),
|
@@ -1670,7 +1670,13 @@ auto async_read_until(AsyncReadStream& s,
|
|
1670
1670
|
async_initiate<ReadToken,
|
1671
1671
|
void (boost::system::error_code, std::size_t)>(
|
1672
1672
|
declval<detail::initiate_async_read_until_delim_v1<AsyncReadStream>>(),
|
1673
|
-
token, static_cast<DynamicBuffer_v1&&>(buffers), delim))
|
1673
|
+
token, static_cast<DynamicBuffer_v1&&>(buffers), delim))
|
1674
|
+
{
|
1675
|
+
return async_initiate<ReadToken,
|
1676
|
+
void (boost::system::error_code, std::size_t)>(
|
1677
|
+
detail::initiate_async_read_until_delim_v1<AsyncReadStream>(s),
|
1678
|
+
token, static_cast<DynamicBuffer_v1&&>(buffers), delim);
|
1679
|
+
}
|
1674
1680
|
|
1675
1681
|
/// Start an asynchronous operation to read data into a dynamic buffer sequence
|
1676
1682
|
/// until it contains a specified delimiter.
|
@@ -1720,7 +1726,7 @@ auto async_read_until(AsyncReadStream& s,
|
|
1720
1726
|
* Regardless of whether the asynchronous operation completes immediately or
|
1721
1727
|
* not, the completion handler will not be invoked from within this function.
|
1722
1728
|
* On immediate completion, invocation of the handler will be performed in a
|
1723
|
-
* manner equivalent to using boost::asio::
|
1729
|
+
* manner equivalent to using boost::asio::async_immediate().
|
1724
1730
|
*
|
1725
1731
|
* @par Completion Signature
|
1726
1732
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -1773,7 +1779,7 @@ template <typename AsyncReadStream, typename DynamicBuffer_v1,
|
|
1773
1779
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
1774
1780
|
std::size_t)) ReadToken = default_completion_token_t<
|
1775
1781
|
typename AsyncReadStream::executor_type>>
|
1776
|
-
auto async_read_until(AsyncReadStream& s,
|
1782
|
+
inline auto async_read_until(AsyncReadStream& s,
|
1777
1783
|
DynamicBuffer_v1&& buffers,
|
1778
1784
|
BOOST_ASIO_STRING_VIEW_PARAM delim,
|
1779
1785
|
ReadToken&& token = default_completion_token_t<
|
@@ -1790,7 +1796,14 @@ auto async_read_until(AsyncReadStream& s,
|
|
1790
1796
|
declval<detail::initiate_async_read_until_delim_string_v1<
|
1791
1797
|
AsyncReadStream>>(),
|
1792
1798
|
token, static_cast<DynamicBuffer_v1&&>(buffers),
|
1793
|
-
static_cast<std::string>(delim)))
|
1799
|
+
static_cast<std::string>(delim)))
|
1800
|
+
{
|
1801
|
+
return async_initiate<ReadToken,
|
1802
|
+
void (boost::system::error_code, std::size_t)>(
|
1803
|
+
detail::initiate_async_read_until_delim_string_v1<AsyncReadStream>(s),
|
1804
|
+
token, static_cast<DynamicBuffer_v1&&>(buffers),
|
1805
|
+
static_cast<std::string>(delim));
|
1806
|
+
}
|
1794
1807
|
|
1795
1808
|
#if !defined(BOOST_ASIO_NO_EXTENSIONS)
|
1796
1809
|
#if defined(BOOST_ASIO_HAS_BOOST_REGEX) \
|
@@ -1848,7 +1861,7 @@ auto async_read_until(AsyncReadStream& s,
|
|
1848
1861
|
* Regardless of whether the asynchronous operation completes immediately or
|
1849
1862
|
* not, the completion handler will not be invoked from within this function.
|
1850
1863
|
* On immediate completion, invocation of the handler will be performed in a
|
1851
|
-
* manner equivalent to using boost::asio::
|
1864
|
+
* manner equivalent to using boost::asio::async_immediate().
|
1852
1865
|
*
|
1853
1866
|
* @par Completion Signature
|
1854
1867
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -1902,7 +1915,7 @@ template <typename AsyncReadStream, typename DynamicBuffer_v1, typename Traits,
|
|
1902
1915
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
1903
1916
|
std::size_t)) ReadToken = default_completion_token_t<
|
1904
1917
|
typename AsyncReadStream::executor_type>>
|
1905
|
-
auto async_read_until(AsyncReadStream& s, DynamicBuffer_v1&& buffers,
|
1918
|
+
inline auto async_read_until(AsyncReadStream& s, DynamicBuffer_v1&& buffers,
|
1906
1919
|
const boost::basic_regex<char, Traits>& expr,
|
1907
1920
|
ReadToken&& token = default_completion_token_t<
|
1908
1921
|
typename AsyncReadStream::executor_type>(),
|
@@ -1916,7 +1929,13 @@ auto async_read_until(AsyncReadStream& s, DynamicBuffer_v1&& buffers,
|
|
1916
1929
|
async_initiate<ReadToken,
|
1917
1930
|
void (boost::system::error_code, std::size_t)>(
|
1918
1931
|
declval<detail::initiate_async_read_until_expr_v1<AsyncReadStream>>(),
|
1919
|
-
token, static_cast<DynamicBuffer_v1&&>(buffers), expr))
|
1932
|
+
token, static_cast<DynamicBuffer_v1&&>(buffers), expr))
|
1933
|
+
{
|
1934
|
+
return async_initiate<ReadToken,
|
1935
|
+
void (boost::system::error_code, std::size_t)>(
|
1936
|
+
detail::initiate_async_read_until_expr_v1<AsyncReadStream>(s),
|
1937
|
+
token, static_cast<DynamicBuffer_v1&&>(buffers), expr);
|
1938
|
+
}
|
1920
1939
|
|
1921
1940
|
#endif // defined(BOOST_ASIO_HAS_BOOST_REGEX)
|
1922
1941
|
// || defined(GENERATING_DOCUMENTATION)
|
@@ -1984,7 +2003,7 @@ auto async_read_until(AsyncReadStream& s, DynamicBuffer_v1&& buffers,
|
|
1984
2003
|
* Regardless of whether the asynchronous operation completes immediately or
|
1985
2004
|
* not, the completion handler will not be invoked from within this function.
|
1986
2005
|
* On immediate completion, invocation of the handler will be performed in a
|
1987
|
-
* manner equivalent to using boost::asio::
|
2006
|
+
* manner equivalent to using boost::asio::async_immediate().
|
1988
2007
|
*
|
1989
2008
|
* @note After a successful async_read_until operation, the dynamic buffer
|
1990
2009
|
* sequence may contain additional data beyond that which matched the function
|
@@ -2070,7 +2089,7 @@ template <typename AsyncReadStream,
|
|
2070
2089
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
2071
2090
|
std::size_t)) ReadToken = default_completion_token_t<
|
2072
2091
|
typename AsyncReadStream::executor_type>>
|
2073
|
-
auto async_read_until(AsyncReadStream& s,
|
2092
|
+
inline auto async_read_until(AsyncReadStream& s,
|
2074
2093
|
DynamicBuffer_v1&& buffers, MatchCondition match_condition,
|
2075
2094
|
ReadToken&& token = default_completion_token_t<
|
2076
2095
|
typename AsyncReadStream::executor_type>(),
|
@@ -2088,7 +2107,14 @@ auto async_read_until(AsyncReadStream& s,
|
|
2088
2107
|
void (boost::system::error_code, std::size_t)>(
|
2089
2108
|
declval<detail::initiate_async_read_until_match_v1<AsyncReadStream>>(),
|
2090
2109
|
token, static_cast<DynamicBuffer_v1&&>(buffers),
|
2091
|
-
match_condition))
|
2110
|
+
match_condition))
|
2111
|
+
{
|
2112
|
+
return async_initiate<ReadToken,
|
2113
|
+
void (boost::system::error_code, std::size_t)>(
|
2114
|
+
detail::initiate_async_read_until_match_v1<AsyncReadStream>(s),
|
2115
|
+
token, static_cast<DynamicBuffer_v1&&>(buffers),
|
2116
|
+
match_condition);
|
2117
|
+
}
|
2092
2118
|
|
2093
2119
|
#if !defined(BOOST_ASIO_NO_IOSTREAM)
|
2094
2120
|
|
@@ -2139,7 +2165,7 @@ auto async_read_until(AsyncReadStream& s,
|
|
2139
2165
|
* Regardless of whether the asynchronous operation completes immediately or
|
2140
2166
|
* not, the completion handler will not be invoked from within this function.
|
2141
2167
|
* On immediate completion, invocation of the handler will be performed in a
|
2142
|
-
* manner equivalent to using boost::asio::
|
2168
|
+
* manner equivalent to using boost::asio::async_immediate().
|
2143
2169
|
*
|
2144
2170
|
* @par Completion Signature
|
2145
2171
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -2191,7 +2217,7 @@ template <typename AsyncReadStream, typename Allocator,
|
|
2191
2217
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
2192
2218
|
std::size_t)) ReadToken = default_completion_token_t<
|
2193
2219
|
typename AsyncReadStream::executor_type>>
|
2194
|
-
auto async_read_until(AsyncReadStream& s,
|
2220
|
+
inline auto async_read_until(AsyncReadStream& s,
|
2195
2221
|
boost::asio::basic_streambuf<Allocator>& b, char delim,
|
2196
2222
|
ReadToken&& token = default_completion_token_t<
|
2197
2223
|
typename AsyncReadStream::executor_type>())
|
@@ -2199,7 +2225,13 @@ auto async_read_until(AsyncReadStream& s,
|
|
2199
2225
|
async_initiate<ReadToken,
|
2200
2226
|
void (boost::system::error_code, std::size_t)>(
|
2201
2227
|
declval<detail::initiate_async_read_until_delim_v1<AsyncReadStream>>(),
|
2202
|
-
token, basic_streambuf_ref<Allocator>(b), delim))
|
2228
|
+
token, basic_streambuf_ref<Allocator>(b), delim))
|
2229
|
+
{
|
2230
|
+
return async_initiate<ReadToken,
|
2231
|
+
void (boost::system::error_code, std::size_t)>(
|
2232
|
+
detail::initiate_async_read_until_delim_v1<AsyncReadStream>(s),
|
2233
|
+
token, basic_streambuf_ref<Allocator>(b), delim);
|
2234
|
+
}
|
2203
2235
|
|
2204
2236
|
/// Start an asynchronous operation to read data into a streambuf until it
|
2205
2237
|
/// contains a specified delimiter.
|
@@ -2248,7 +2280,7 @@ auto async_read_until(AsyncReadStream& s,
|
|
2248
2280
|
* Regardless of whether the asynchronous operation completes immediately or
|
2249
2281
|
* not, the completion handler will not be invoked from within this function.
|
2250
2282
|
* On immediate completion, invocation of the handler will be performed in a
|
2251
|
-
* manner equivalent to using boost::asio::
|
2283
|
+
* manner equivalent to using boost::asio::async_immediate().
|
2252
2284
|
*
|
2253
2285
|
* @par Completion Signature
|
2254
2286
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -2300,7 +2332,7 @@ template <typename AsyncReadStream, typename Allocator,
|
|
2300
2332
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
2301
2333
|
std::size_t)) ReadToken = default_completion_token_t<
|
2302
2334
|
typename AsyncReadStream::executor_type>>
|
2303
|
-
auto async_read_until(AsyncReadStream& s,
|
2335
|
+
inline auto async_read_until(AsyncReadStream& s,
|
2304
2336
|
boost::asio::basic_streambuf<Allocator>& b,
|
2305
2337
|
BOOST_ASIO_STRING_VIEW_PARAM delim,
|
2306
2338
|
ReadToken&& token = default_completion_token_t<
|
@@ -2311,7 +2343,14 @@ auto async_read_until(AsyncReadStream& s,
|
|
2311
2343
|
declval<detail::initiate_async_read_until_delim_string_v1<
|
2312
2344
|
AsyncReadStream>>(),
|
2313
2345
|
token, basic_streambuf_ref<Allocator>(b),
|
2314
|
-
static_cast<std::string>(delim)))
|
2346
|
+
static_cast<std::string>(delim)))
|
2347
|
+
{
|
2348
|
+
return async_initiate<ReadToken,
|
2349
|
+
void (boost::system::error_code, std::size_t)>(
|
2350
|
+
detail::initiate_async_read_until_delim_string_v1<AsyncReadStream>(s),
|
2351
|
+
token, basic_streambuf_ref<Allocator>(b),
|
2352
|
+
static_cast<std::string>(delim));
|
2353
|
+
}
|
2315
2354
|
|
2316
2355
|
#if defined(BOOST_ASIO_HAS_BOOST_REGEX) \
|
2317
2356
|
|| defined(GENERATING_DOCUMENTATION)
|
@@ -2365,7 +2404,7 @@ auto async_read_until(AsyncReadStream& s,
|
|
2365
2404
|
* Regardless of whether the asynchronous operation completes immediately or
|
2366
2405
|
* not, the completion handler will not be invoked from within this function.
|
2367
2406
|
* On immediate completion, invocation of the handler will be performed in a
|
2368
|
-
* manner equivalent to using boost::asio::
|
2407
|
+
* manner equivalent to using boost::asio::async_immediate().
|
2369
2408
|
*
|
2370
2409
|
* @par Completion Signature
|
2371
2410
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -2418,7 +2457,7 @@ template <typename AsyncReadStream, typename Allocator, typename Traits,
|
|
2418
2457
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
2419
2458
|
std::size_t)) ReadToken = default_completion_token_t<
|
2420
2459
|
typename AsyncReadStream::executor_type>>
|
2421
|
-
auto async_read_until(AsyncReadStream& s,
|
2460
|
+
inline auto async_read_until(AsyncReadStream& s,
|
2422
2461
|
boost::asio::basic_streambuf<Allocator>& b,
|
2423
2462
|
const boost::basic_regex<char, Traits>& expr,
|
2424
2463
|
ReadToken&& token = default_completion_token_t<
|
@@ -2427,7 +2466,13 @@ auto async_read_until(AsyncReadStream& s,
|
|
2427
2466
|
async_initiate<ReadToken,
|
2428
2467
|
void (boost::system::error_code, std::size_t)>(
|
2429
2468
|
declval<detail::initiate_async_read_until_expr_v1<AsyncReadStream>>(),
|
2430
|
-
token, basic_streambuf_ref<Allocator>(b), expr))
|
2469
|
+
token, basic_streambuf_ref<Allocator>(b), expr))
|
2470
|
+
{
|
2471
|
+
return async_initiate<ReadToken,
|
2472
|
+
void (boost::system::error_code, std::size_t)>(
|
2473
|
+
detail::initiate_async_read_until_expr_v1<AsyncReadStream>(s),
|
2474
|
+
token, basic_streambuf_ref<Allocator>(b), expr);
|
2475
|
+
}
|
2431
2476
|
|
2432
2477
|
#endif // defined(BOOST_ASIO_HAS_BOOST_REGEX)
|
2433
2478
|
// || defined(GENERATING_DOCUMENTATION)
|
@@ -2492,7 +2537,7 @@ auto async_read_until(AsyncReadStream& s,
|
|
2492
2537
|
* Regardless of whether the asynchronous operation completes immediately or
|
2493
2538
|
* not, the completion handler will not be invoked from within this function.
|
2494
2539
|
* On immediate completion, invocation of the handler will be performed in a
|
2495
|
-
* manner equivalent to using boost::asio::
|
2540
|
+
* manner equivalent to using boost::asio::async_immediate().
|
2496
2541
|
*
|
2497
2542
|
* @note After a successful async_read_until operation, the streambuf may
|
2498
2543
|
* contain additional data beyond that which matched the function object. An
|
@@ -2576,7 +2621,7 @@ template <typename AsyncReadStream, typename Allocator, typename MatchCondition,
|
|
2576
2621
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
2577
2622
|
std::size_t)) ReadToken = default_completion_token_t<
|
2578
2623
|
typename AsyncReadStream::executor_type>>
|
2579
|
-
auto async_read_until(AsyncReadStream& s,
|
2624
|
+
inline auto async_read_until(AsyncReadStream& s,
|
2580
2625
|
boost::asio::basic_streambuf<Allocator>& b, MatchCondition match_condition,
|
2581
2626
|
ReadToken&& token = default_completion_token_t<
|
2582
2627
|
typename AsyncReadStream::executor_type>(),
|
@@ -2585,7 +2630,13 @@ auto async_read_until(AsyncReadStream& s,
|
|
2585
2630
|
async_initiate<ReadToken,
|
2586
2631
|
void (boost::system::error_code, std::size_t)>(
|
2587
2632
|
declval<detail::initiate_async_read_until_match_v1<AsyncReadStream>>(),
|
2588
|
-
token, basic_streambuf_ref<Allocator>(b), match_condition))
|
2633
|
+
token, basic_streambuf_ref<Allocator>(b), match_condition))
|
2634
|
+
{
|
2635
|
+
return async_initiate<ReadToken,
|
2636
|
+
void (boost::system::error_code, std::size_t)>(
|
2637
|
+
detail::initiate_async_read_until_match_v1<AsyncReadStream>(s),
|
2638
|
+
token, basic_streambuf_ref<Allocator>(b), match_condition);
|
2639
|
+
}
|
2589
2640
|
|
2590
2641
|
#endif // !defined(BOOST_ASIO_NO_IOSTREAM)
|
2591
2642
|
#endif // !defined(BOOST_ASIO_NO_EXTENSIONS)
|
@@ -2640,7 +2691,7 @@ auto async_read_until(AsyncReadStream& s,
|
|
2640
2691
|
* Regardless of whether the asynchronous operation completes immediately or
|
2641
2692
|
* not, the completion handler will not be invoked from within this function.
|
2642
2693
|
* On immediate completion, invocation of the handler will be performed in a
|
2643
|
-
* manner equivalent to using boost::asio::
|
2694
|
+
* manner equivalent to using boost::asio::async_immediate().
|
2644
2695
|
*
|
2645
2696
|
* @par Completion Signature
|
2646
2697
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -2693,7 +2744,8 @@ template <typename AsyncReadStream, typename DynamicBuffer_v2,
|
|
2693
2744
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
2694
2745
|
std::size_t)) ReadToken = default_completion_token_t<
|
2695
2746
|
typename AsyncReadStream::executor_type>>
|
2696
|
-
auto async_read_until(AsyncReadStream& s,
|
2747
|
+
inline auto async_read_until(AsyncReadStream& s,
|
2748
|
+
DynamicBuffer_v2 buffers, char delim,
|
2697
2749
|
ReadToken&& token = default_completion_token_t<
|
2698
2750
|
typename AsyncReadStream::executor_type>(),
|
2699
2751
|
constraint_t<
|
@@ -2703,7 +2755,13 @@ auto async_read_until(AsyncReadStream& s, DynamicBuffer_v2 buffers, char delim,
|
|
2703
2755
|
async_initiate<ReadToken,
|
2704
2756
|
void (boost::system::error_code, std::size_t)>(
|
2705
2757
|
declval<detail::initiate_async_read_until_delim_v2<AsyncReadStream>>(),
|
2706
|
-
token, static_cast<DynamicBuffer_v2&&>(buffers), delim))
|
2758
|
+
token, static_cast<DynamicBuffer_v2&&>(buffers), delim))
|
2759
|
+
{
|
2760
|
+
return async_initiate<ReadToken,
|
2761
|
+
void (boost::system::error_code, std::size_t)>(
|
2762
|
+
detail::initiate_async_read_until_delim_v2<AsyncReadStream>(s),
|
2763
|
+
token, static_cast<DynamicBuffer_v2&&>(buffers), delim);
|
2764
|
+
}
|
2707
2765
|
|
2708
2766
|
/// Start an asynchronous operation to read data into a dynamic buffer sequence
|
2709
2767
|
/// until it contains a specified delimiter.
|
@@ -2753,7 +2811,7 @@ auto async_read_until(AsyncReadStream& s, DynamicBuffer_v2 buffers, char delim,
|
|
2753
2811
|
* Regardless of whether the asynchronous operation completes immediately or
|
2754
2812
|
* not, the completion handler will not be invoked from within this function.
|
2755
2813
|
* On immediate completion, invocation of the handler will be performed in a
|
2756
|
-
* manner equivalent to using boost::asio::
|
2814
|
+
* manner equivalent to using boost::asio::async_immediate().
|
2757
2815
|
*
|
2758
2816
|
* @par Completion Signature
|
2759
2817
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -2806,7 +2864,7 @@ template <typename AsyncReadStream, typename DynamicBuffer_v2,
|
|
2806
2864
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
2807
2865
|
std::size_t)) ReadToken = default_completion_token_t<
|
2808
2866
|
typename AsyncReadStream::executor_type>>
|
2809
|
-
auto async_read_until(AsyncReadStream& s, DynamicBuffer_v2 buffers,
|
2867
|
+
inline auto async_read_until(AsyncReadStream& s, DynamicBuffer_v2 buffers,
|
2810
2868
|
BOOST_ASIO_STRING_VIEW_PARAM delim,
|
2811
2869
|
ReadToken&& token = default_completion_token_t<
|
2812
2870
|
typename AsyncReadStream::executor_type>(),
|
@@ -2819,7 +2877,14 @@ auto async_read_until(AsyncReadStream& s, DynamicBuffer_v2 buffers,
|
|
2819
2877
|
declval<detail::initiate_async_read_until_delim_string_v2<
|
2820
2878
|
AsyncReadStream>>(),
|
2821
2879
|
token, static_cast<DynamicBuffer_v2&&>(buffers),
|
2822
|
-
static_cast<std::string>(delim)))
|
2880
|
+
static_cast<std::string>(delim)))
|
2881
|
+
{
|
2882
|
+
return async_initiate<ReadToken,
|
2883
|
+
void (boost::system::error_code, std::size_t)>(
|
2884
|
+
detail::initiate_async_read_until_delim_string_v2<AsyncReadStream>(s),
|
2885
|
+
token, static_cast<DynamicBuffer_v2&&>(buffers),
|
2886
|
+
static_cast<std::string>(delim));
|
2887
|
+
}
|
2823
2888
|
|
2824
2889
|
#if !defined(BOOST_ASIO_NO_EXTENSIONS)
|
2825
2890
|
#if defined(BOOST_ASIO_HAS_BOOST_REGEX) \
|
@@ -2877,7 +2942,7 @@ auto async_read_until(AsyncReadStream& s, DynamicBuffer_v2 buffers,
|
|
2877
2942
|
* Regardless of whether the asynchronous operation completes immediately or
|
2878
2943
|
* not, the completion handler will not be invoked from within this function.
|
2879
2944
|
* On immediate completion, invocation of the handler will be performed in a
|
2880
|
-
* manner equivalent to using boost::asio::
|
2945
|
+
* manner equivalent to using boost::asio::async_immediate().
|
2881
2946
|
*
|
2882
2947
|
* @par Completion Signature
|
2883
2948
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -2931,7 +2996,7 @@ template <typename AsyncReadStream, typename DynamicBuffer_v2, typename Traits,
|
|
2931
2996
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
2932
2997
|
std::size_t)) ReadToken = default_completion_token_t<
|
2933
2998
|
typename AsyncReadStream::executor_type>>
|
2934
|
-
auto async_read_until(AsyncReadStream& s, DynamicBuffer_v2 buffers,
|
2999
|
+
inline auto async_read_until(AsyncReadStream& s, DynamicBuffer_v2 buffers,
|
2935
3000
|
const boost::basic_regex<char, Traits>& expr,
|
2936
3001
|
ReadToken&& token = default_completion_token_t<
|
2937
3002
|
typename AsyncReadStream::executor_type>(),
|
@@ -2942,7 +3007,13 @@ auto async_read_until(AsyncReadStream& s, DynamicBuffer_v2 buffers,
|
|
2942
3007
|
async_initiate<ReadToken,
|
2943
3008
|
void (boost::system::error_code, std::size_t)>(
|
2944
3009
|
declval<detail::initiate_async_read_until_expr_v2<AsyncReadStream>>(),
|
2945
|
-
token, static_cast<DynamicBuffer_v2&&>(buffers), expr))
|
3010
|
+
token, static_cast<DynamicBuffer_v2&&>(buffers), expr))
|
3011
|
+
{
|
3012
|
+
return async_initiate<ReadToken,
|
3013
|
+
void (boost::system::error_code, std::size_t)>(
|
3014
|
+
detail::initiate_async_read_until_expr_v2<AsyncReadStream>(s),
|
3015
|
+
token, static_cast<DynamicBuffer_v2&&>(buffers), expr);
|
3016
|
+
}
|
2946
3017
|
|
2947
3018
|
#endif // defined(BOOST_ASIO_HAS_BOOST_REGEX)
|
2948
3019
|
// || defined(GENERATING_DOCUMENTATION)
|
@@ -3010,7 +3081,7 @@ auto async_read_until(AsyncReadStream& s, DynamicBuffer_v2 buffers,
|
|
3010
3081
|
* Regardless of whether the asynchronous operation completes immediately or
|
3011
3082
|
* not, the completion handler will not be invoked from within this function.
|
3012
3083
|
* On immediate completion, invocation of the handler will be performed in a
|
3013
|
-
* manner equivalent to using boost::asio::
|
3084
|
+
* manner equivalent to using boost::asio::async_immediate().
|
3014
3085
|
*
|
3015
3086
|
* @note After a successful async_read_until operation, the dynamic buffer
|
3016
3087
|
* sequence may contain additional data beyond that which matched the function
|
@@ -3096,7 +3167,7 @@ template <typename AsyncReadStream,
|
|
3096
3167
|
BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
|
3097
3168
|
std::size_t)) ReadToken = default_completion_token_t<
|
3098
3169
|
typename AsyncReadStream::executor_type>>
|
3099
|
-
auto async_read_until(AsyncReadStream& s,
|
3170
|
+
inline auto async_read_until(AsyncReadStream& s,
|
3100
3171
|
DynamicBuffer_v2 buffers, MatchCondition match_condition,
|
3101
3172
|
ReadToken&& token = default_completion_token_t<
|
3102
3173
|
typename AsyncReadStream::executor_type>(),
|
@@ -3110,7 +3181,14 @@ auto async_read_until(AsyncReadStream& s,
|
|
3110
3181
|
async_initiate<ReadToken,
|
3111
3182
|
void (boost::system::error_code, std::size_t)>(
|
3112
3183
|
declval<detail::initiate_async_read_until_match_v2<AsyncReadStream>>(),
|
3113
|
-
token, static_cast<DynamicBuffer_v2&&>(buffers), match_condition))
|
3184
|
+
token, static_cast<DynamicBuffer_v2&&>(buffers), match_condition))
|
3185
|
+
{
|
3186
|
+
return async_initiate<ReadToken,
|
3187
|
+
void (boost::system::error_code, std::size_t)>(
|
3188
|
+
detail::initiate_async_read_until_match_v2<AsyncReadStream>(s),
|
3189
|
+
token, static_cast<DynamicBuffer_v2&&>(buffers),
|
3190
|
+
match_condition);
|
3191
|
+
}
|
3114
3192
|
|
3115
3193
|
#endif // !defined(BOOST_ASIO_NO_EXTENSIONS)
|
3116
3194
|
|
@@ -34,7 +34,7 @@ template <typename CompletionToken>
|
|
34
34
|
class redirect_error_t
|
35
35
|
{
|
36
36
|
public:
|
37
|
-
/// Constructor.
|
37
|
+
/// Constructor.
|
38
38
|
template <typename T>
|
39
39
|
redirect_error_t(T&& completion_token, boost::system::error_code& ec)
|
40
40
|
: token_(static_cast<T&&>(completion_token)),
|
@@ -47,10 +47,50 @@ public:
|
|
47
47
|
boost::system::error_code& ec_;
|
48
48
|
};
|
49
49
|
|
50
|
+
/// A function object type that adapts a @ref completion_token to capture
|
51
|
+
/// error_code values to a variable.
|
52
|
+
/**
|
53
|
+
* May also be used directly as a completion token, in which case it adapts the
|
54
|
+
* asynchronous operation's default completion token (or boost::asio::deferred
|
55
|
+
* if no default is available).
|
56
|
+
*/
|
57
|
+
class partial_redirect_error
|
58
|
+
{
|
59
|
+
public:
|
60
|
+
/// Constructor that specifies the variable used to capture error_code values.
|
61
|
+
explicit partial_redirect_error(boost::system::error_code& ec)
|
62
|
+
: ec_(ec)
|
63
|
+
{
|
64
|
+
}
|
65
|
+
|
66
|
+
/// Adapt a @ref completion_token to specify that the completion handler
|
67
|
+
/// should capture error_code values to a variable.
|
68
|
+
template <typename CompletionToken>
|
69
|
+
BOOST_ASIO_NODISCARD inline
|
70
|
+
constexpr redirect_error_t<decay_t<CompletionToken>>
|
71
|
+
operator()(CompletionToken&& completion_token) const
|
72
|
+
{
|
73
|
+
return redirect_error_t<decay_t<CompletionToken>>(
|
74
|
+
static_cast<CompletionToken&&>(completion_token), ec_);
|
75
|
+
}
|
76
|
+
|
77
|
+
//private:
|
78
|
+
boost::system::error_code& ec_;
|
79
|
+
};
|
80
|
+
|
81
|
+
/// Create a partial completion token adapter that captures error_code values
|
82
|
+
/// to a variable.
|
83
|
+
BOOST_ASIO_NODISCARD inline partial_redirect_error
|
84
|
+
redirect_error(boost::system::error_code& ec)
|
85
|
+
{
|
86
|
+
return partial_redirect_error(ec);
|
87
|
+
}
|
88
|
+
|
50
89
|
/// Adapt a @ref completion_token to capture error_code values to a variable.
|
51
90
|
template <typename CompletionToken>
|
52
|
-
inline redirect_error_t<decay_t<CompletionToken>>
|
53
|
-
|
91
|
+
BOOST_ASIO_NODISCARD inline redirect_error_t<decay_t<CompletionToken>>
|
92
|
+
redirect_error(CompletionToken&& completion_token,
|
93
|
+
boost::system::error_code& ec)
|
54
94
|
{
|
55
95
|
return redirect_error_t<decay_t<CompletionToken>>(
|
56
96
|
static_cast<CompletionToken&&>(completion_token), ec);
|
@@ -79,7 +79,7 @@ private:
|
|
79
79
|
};
|
80
80
|
|
81
81
|
/// Holds a registered buffer over modifiable data.
|
82
|
-
/**
|
82
|
+
/**
|
83
83
|
* Satisfies the @c MutableBufferSequence type requirements.
|
84
84
|
*/
|
85
85
|
class mutable_registered_buffer
|
@@ -150,7 +150,7 @@ private:
|
|
150
150
|
};
|
151
151
|
|
152
152
|
/// Holds a registered buffer over non-modifiable data.
|
153
|
-
/**
|
153
|
+
/**
|
154
154
|
* Satisfies the @c ConstBufferSequence type requirements.
|
155
155
|
*/
|
156
156
|
class const_registered_buffer
|
@@ -38,7 +38,7 @@ public:
|
|
38
38
|
{
|
39
39
|
#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
|
40
40
|
::SSL_library_init();
|
41
|
-
::SSL_load_error_strings();
|
41
|
+
::SSL_load_error_strings();
|
42
42
|
::OpenSSL_add_all_algorithms();
|
43
43
|
|
44
44
|
mutexes_.resize(::CRYPTO_num_locks());
|
@@ -124,7 +124,7 @@ private:
|
|
124
124
|
#endif // (OPENSSL_VERSION_NUMBER < 0x10000000L)
|
125
125
|
|
126
126
|
#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
|
127
|
-
static void openssl_locking_func(int mode, int n,
|
127
|
+
static void openssl_locking_func(int mode, int n,
|
128
128
|
const char* /*file*/, int /*line*/)
|
129
129
|
{
|
130
130
|
if (mode & CRYPTO_LOCK)
|
@@ -270,8 +270,9 @@ context::context(context::method m)
|
|
270
270
|
#endif // defined(SSL_TXT_TLSV1_2)
|
271
271
|
|
272
272
|
// TLS v1.3.
|
273
|
-
#if (OPENSSL_VERSION_NUMBER >= 0x10101000L) \
|
274
|
-
|
273
|
+
#if ((OPENSSL_VERSION_NUMBER >= 0x10101000L) \
|
274
|
+
&& !defined(LIBRESSL_VERSION_NUMBER)) \
|
275
|
+
|| defined(BOOST_ASIO_USE_WOLFSSL)
|
275
276
|
case context::tlsv13:
|
276
277
|
handle_ = ::SSL_CTX_new(::TLS_method());
|
277
278
|
if (handle_)
|
@@ -296,16 +297,18 @@ context::context(context::method m)
|
|
296
297
|
SSL_CTX_set_max_proto_version(handle_, TLS1_3_VERSION);
|
297
298
|
}
|
298
299
|
break;
|
299
|
-
#else // (OPENSSL_VERSION_NUMBER >= 0x10101000L)
|
300
|
-
//
|
300
|
+
#else // ((OPENSSL_VERSION_NUMBER >= 0x10101000L)
|
301
|
+
// && !defined(LIBRESSL_VERSION_NUMBER))
|
302
|
+
// || defined(BOOST_ASIO_USE_WOLFSSL)
|
301
303
|
case context::tlsv13:
|
302
304
|
case context::tlsv13_client:
|
303
305
|
case context::tlsv13_server:
|
304
306
|
boost::asio::detail::throw_error(
|
305
307
|
boost::asio::error::invalid_argument, "context");
|
306
308
|
break;
|
307
|
-
#endif // (OPENSSL_VERSION_NUMBER >= 0x10101000L)
|
308
|
-
//
|
309
|
+
#endif // ((OPENSSL_VERSION_NUMBER >= 0x10101000L)
|
310
|
+
// && !defined(LIBRESSL_VERSION_NUMBER))
|
311
|
+
// || defined(BOOST_ASIO_USE_WOLFSSL)
|
309
312
|
|
310
313
|
// Any supported SSL/TLS version.
|
311
314
|
case context::sslv23:
|
@@ -795,7 +798,7 @@ BOOST_ASIO_SYNC_OP_VOID context::use_certificate_chain(
|
|
795
798
|
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
796
799
|
}
|
797
800
|
}
|
798
|
-
|
801
|
+
|
799
802
|
result = ::ERR_peek_last_error();
|
800
803
|
if ((ERR_GET_LIB(result) == ERR_LIB_PEM)
|
801
804
|
&& (ERR_GET_REASON(result) == PEM_R_NO_START_LINE))
|
@@ -482,7 +482,7 @@ public:
|
|
482
482
|
* Regardless of whether the asynchronous operation completes immediately or
|
483
483
|
* not, the completion handler will not be invoked from within this function.
|
484
484
|
* On immediate completion, invocation of the handler will be performed in a
|
485
|
-
* manner equivalent to using boost::asio::
|
485
|
+
* manner equivalent to using boost::asio::async_immediate().
|
486
486
|
*
|
487
487
|
* @par Completion Signature
|
488
488
|
* @code void(boost::system::error_code) @endcode
|
@@ -539,7 +539,7 @@ public:
|
|
539
539
|
* Regardless of whether the asynchronous operation completes immediately or
|
540
540
|
* not, the completion handler will not be invoked from within this function.
|
541
541
|
* On immediate completion, invocation of the handler will be performed in a
|
542
|
-
* manner equivalent to using boost::asio::
|
542
|
+
* manner equivalent to using boost::asio::async_immediate().
|
543
543
|
*
|
544
544
|
* @par Completion Signature
|
545
545
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -619,7 +619,7 @@ public:
|
|
619
619
|
* Regardless of whether the asynchronous operation completes immediately or
|
620
620
|
* not, the completion handler will not be invoked from within this function.
|
621
621
|
* On immediate completion, invocation of the handler will be performed in a
|
622
|
-
* manner equivalent to using boost::asio::
|
622
|
+
* manner equivalent to using boost::asio::async_immediate().
|
623
623
|
*
|
624
624
|
* @par Completion Signature
|
625
625
|
* @code void(boost::system::error_code) @endcode
|
@@ -723,7 +723,7 @@ public:
|
|
723
723
|
* Regardless of whether the asynchronous operation completes immediately or
|
724
724
|
* not, the completion handler will not be invoked from within this function.
|
725
725
|
* On immediate completion, invocation of the handler will be performed in a
|
726
|
-
* manner equivalent to using boost::asio::
|
726
|
+
* manner equivalent to using boost::asio::async_immediate().
|
727
727
|
*
|
728
728
|
* @par Completion Signature
|
729
729
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -831,7 +831,7 @@ public:
|
|
831
831
|
* Regardless of whether the asynchronous operation completes immediately or
|
832
832
|
* not, the completion handler will not be invoked from within this function.
|
833
833
|
* On immediate completion, invocation of the handler will be performed in a
|
834
|
-
* manner equivalent to using boost::asio::
|
834
|
+
* manner equivalent to using boost::asio::async_immediate().
|
835
835
|
*
|
836
836
|
* @par Completion Signature
|
837
837
|
* @code void(boost::system::error_code, std::size_t) @endcode
|
@@ -33,7 +33,7 @@ struct executor_t
|
|
33
33
|
};
|
34
34
|
|
35
35
|
/// Awaitable object that returns the executor of the current coroutine.
|
36
|
-
constexpr executor_t executor;
|
36
|
+
BOOST_ASIO_INLINE_VARIABLE constexpr executor_t executor;
|
37
37
|
|
38
38
|
/// Awaitable type that returns the cancellation state of the current coroutine.
|
39
39
|
struct cancellation_state_t
|
@@ -58,7 +58,7 @@ struct cancellation_state_t
|
|
58
58
|
* // ...
|
59
59
|
* } @endcode
|
60
60
|
*/
|
61
|
-
constexpr cancellation_state_t cancellation_state;
|
61
|
+
BOOST_ASIO_INLINE_VARIABLE constexpr cancellation_state_t cancellation_state;
|
62
62
|
|
63
63
|
#if defined(GENERATING_DOCUMENTATION)
|
64
64
|
|
@@ -146,9 +146,9 @@ struct use_awaitable_t
|
|
146
146
|
* See the documentation for boost::asio::use_awaitable_t for a usage example.
|
147
147
|
*/
|
148
148
|
#if defined(GENERATING_DOCUMENTATION)
|
149
|
-
constexpr use_awaitable_t<> use_awaitable;
|
149
|
+
BOOST_ASIO_INLINE_VARIABLE constexpr use_awaitable_t<> use_awaitable;
|
150
150
|
#else
|
151
|
-
constexpr use_awaitable_t<> use_awaitable(0, 0, 0);
|
151
|
+
BOOST_ASIO_INLINE_VARIABLE constexpr use_awaitable_t<> use_awaitable(0, 0, 0);
|
152
152
|
#endif
|
153
153
|
|
154
154
|
} // namespace asio
|
@@ -146,7 +146,7 @@ private:
|
|
146
146
|
/**
|
147
147
|
* See the documentation for boost::asio::use_future_t for a usage example.
|
148
148
|
*/
|
149
|
-
constexpr use_future_t<> use_future;
|
149
|
+
BOOST_ASIO_INLINE_VARIABLE constexpr use_future_t<> use_future;
|
150
150
|
|
151
151
|
} // namespace asio
|
152
152
|
} // namespace boost
|
@@ -46,7 +46,7 @@ struct executor_arg_t
|
|
46
46
|
* See boost::asio::executor_arg_t and boost::asio::uses_executor
|
47
47
|
* for more information.
|
48
48
|
*/
|
49
|
-
constexpr executor_arg_t executor_arg;
|
49
|
+
BOOST_ASIO_INLINE_VARIABLE constexpr executor_arg_t executor_arg;
|
50
50
|
|
51
51
|
/// The uses_executor trait detects whether a type T has an associated executor
|
52
52
|
/// that is convertible from type Executor.
|
@@ -18,6 +18,6 @@
|
|
18
18
|
// BOOST_ASIO_VERSION % 100 is the sub-minor version
|
19
19
|
// BOOST_ASIO_VERSION / 100 % 1000 is the minor version
|
20
20
|
// BOOST_ASIO_VERSION / 100000 is the major version
|
21
|
-
#define BOOST_ASIO_VERSION
|
21
|
+
#define BOOST_ASIO_VERSION 103200 // 1.32.0
|
22
22
|
|
23
23
|
#endif // BOOST_ASIO_VERSION_HPP
|