passenger 6.2.0 → 6.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +33 -1
- data/CONTRIBUTING.md +7 -311
- data/CONTRIBUTORS +1 -0
- data/LICENSE +1 -1
- data/README.md +1 -1
- data/Rakefile +1 -1
- data/bin/passenger +1 -1
- data/bin/passenger-config +1 -1
- data/bin/passenger-install-apache2-module +1 -1
- data/bin/passenger-install-nginx-module +4 -9
- data/bin/passenger-memory-stats +1 -1
- data/bin/passenger-status +1 -1
- data/build/agent.rb +13 -15
- data/build/apache2.rb +13 -16
- data/build/basics.rb +10 -13
- data/build/common_library.rb +5 -9
- data/build/cxx_tests.rb +37 -12
- data/build/integration_tests.rb +5 -2
- data/build/misc.rb +1 -1
- data/build/nginx.rb +1 -1
- data/build/node_tests.rb +1 -1
- data/build/oxt_tests.rb +6 -8
- data/build/packaging.rb +1 -1
- data/build/ruby_extension.rb +1 -1
- data/build/ruby_tests.rb +1 -1
- data/build/schema_printer.rb +13 -15
- data/build/support/cplusplus.rb +61 -69
- data/build/support/cxx_dependency_map.rb +2 -1
- data/build/support/general.rb +1 -1
- data/build/support/vendor/cxx_hinted_parser/LICENSE.md +1 -1
- data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser/parser.rb +1 -1
- data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser.rb +1 -1
- data/build/support/vendor/cxxcodebuilder/LICENSE.md +1 -1
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +1 -1
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/initializer_builder.rb +1 -1
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder.rb +1 -1
- data/build/test_basics.rb +1 -1
- data/dev/copy_boost_headers +1 -1
- data/dev/index_cxx_dependencies.rb +5 -1
- data/dev/libev-changes.patch +108 -0
- data/dev/nginx_version_sha256 +1 -1
- data/dev/ruby_server.rb +1 -6
- data/dev/upgrading_libuv.sh +16 -0
- data/doc/BasicArchitectureOverview.md +55 -0
- data/doc/BuildCaching.md +23 -0
- data/doc/BuildSystem.md +49 -0
- data/doc/DebuggingAndStressTesting.md +2 -0
- data/doc/DesignAspects/LimitedGemDependencies.md +1 -0
- data/doc/DevEnvironmentSetup.md +46 -0
- data/doc/DevHandbook.md +28 -0
- data/doc/Packaging.md +1 -1
- data/doc/RunningTests.md +88 -0
- data/doc/{TempFileHandling.md → SecureTempFileHandling.md} +1 -1
- data/doc/{CxxTestingGuide.md → WritingCxxTests.md} +1 -20
- data/src/agent/AgentMain.cpp +1 -1
- data/src/agent/Core/ApiServer.h +1 -1
- data/src/agent/Core/ApplicationPool/AbstractSession.h +1 -1
- data/src/agent/Core/ApplicationPool/BasicGroupInfo.h +1 -1
- data/src/agent/Core/ApplicationPool/BasicProcessInfo.h +1 -1
- data/src/agent/Core/ApplicationPool/Common.h +1 -1
- data/src/agent/Core/ApplicationPool/Context.h +1 -1
- data/src/agent/Core/ApplicationPool/Group/InitializationAndShutdown.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/LifetimeAndBasics.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/Miscellaneous.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/SessionManagement.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/SpawningAndRestarting.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/Verification.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group.h +1 -1
- data/src/agent/Core/ApplicationPool/Implementation.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Options.h +1 -1
- data/src/agent/Core/ApplicationPool/Pool/AnalyticsCollection.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/GarbageCollection.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/GeneralUtils.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/GroupUtils.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/InitializationAndShutdown.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/Miscellaneous.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/ProcessUtils.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool.h +1 -1
- data/src/agent/Core/ApplicationPool/Process.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Process.h +1 -1
- data/src/agent/Core/ApplicationPool/Session.h +1 -1
- data/src/agent/Core/ApplicationPool/Socket.h +1 -1
- data/src/agent/Core/ApplicationPool/TestSession.h +1 -1
- data/src/agent/Core/Config.h +3 -2
- data/src/agent/Core/ConfigChange.cpp +1 -1
- data/src/agent/Core/ConfigChange.h +1 -1
- data/src/agent/Core/Controller/AppResponse.h +1 -1
- data/src/agent/Core/Controller/BufferBody.cpp +1 -1
- data/src/agent/Core/Controller/CheckoutSession.cpp +8 -5
- data/src/agent/Core/Controller/Client.h +1 -1
- data/src/agent/Core/Controller/Config.cpp +1 -1
- data/src/agent/Core/Controller/Config.h +2 -2
- data/src/agent/Core/Controller/ForwardResponse.cpp +2 -2
- data/src/agent/Core/Controller/Hooks.cpp +12 -9
- data/src/agent/Core/Controller/Implementation.cpp +1 -1
- data/src/agent/Core/Controller/InitRequest.cpp +1 -1
- data/src/agent/Core/Controller/InitializationAndShutdown.cpp +1 -1
- data/src/agent/Core/Controller/InternalUtils.cpp +1 -1
- data/src/agent/Core/Controller/Miscellaneous.cpp +1 -1
- data/src/agent/Core/Controller/Request.h +1 -1
- data/src/agent/Core/Controller/SendRequest.cpp +1 -1
- data/src/agent/Core/Controller/StateInspection.cpp +1 -1
- data/src/agent/Core/Controller/TurboCaching.h +1 -1
- data/src/agent/Core/Controller.h +1 -1
- data/src/agent/Core/CoreMain.cpp +1 -1
- data/src/agent/Core/OptionParser.h +1 -1
- data/src/agent/Core/ResponseCache.h +1 -1
- data/src/agent/Core/SecurityUpdateChecker.h +1 -1
- data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h +1 -1
- data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h.cxxcodebuilder +1 -1
- data/src/agent/Core/SpawningKit/Config.h +1 -1
- data/src/agent/Core/SpawningKit/Context.h +1 -1
- data/src/agent/Core/SpawningKit/DirectSpawner.h +1 -1
- data/src/agent/Core/SpawningKit/DummySpawner.h +1 -1
- data/src/agent/Core/SpawningKit/ErrorRenderer.h +1 -1
- data/src/agent/Core/SpawningKit/Exceptions.h +63 -2
- data/src/agent/Core/SpawningKit/Factory.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/BackgroundIOCapturer.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/Perform.h +3 -2
- data/src/agent/Core/SpawningKit/Handshake/Prepare.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/Session.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +1 -1
- data/src/agent/Core/SpawningKit/Journey.h +1 -1
- data/src/agent/Core/SpawningKit/PipeWatcher.h +1 -1
- data/src/agent/Core/SpawningKit/README.md +3 -3
- data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h +1 -1
- data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h.cxxcodebuilder +1 -1
- data/src/agent/Core/SpawningKit/Result.h +1 -1
- data/src/agent/Core/SpawningKit/SmartSpawner.h +17 -17
- data/src/agent/Core/SpawningKit/Spawner.h +1 -1
- data/src/agent/Core/SpawningKit/UserSwitchingRules.h +1 -1
- data/src/agent/Core/TelemetryCollector.h +1 -1
- data/src/agent/ExecHelper/ExecHelperMain.cpp +1 -1
- data/src/agent/FileReadHelper/FileReadHelperMain.cpp +1 -1
- data/src/agent/MainFunctions.h +1 -1
- data/src/agent/Shared/ApiAccountUtils.h +4 -3
- data/src/agent/Shared/ApiServerUtils.h +1 -2
- data/src/agent/Shared/ApplicationPoolApiKey.h +1 -1
- data/src/agent/Shared/Fundamentals/AbortHandler.cpp +1 -1
- data/src/agent/Shared/Fundamentals/AbortHandler.h +1 -1
- data/src/agent/Shared/Fundamentals/Initialization.cpp +1 -1
- data/src/agent/Shared/Fundamentals/Initialization.h +1 -1
- data/src/agent/Shared/Fundamentals/Utils.cpp +1 -1
- data/src/agent/Shared/Fundamentals/Utils.h +1 -1
- data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +1 -1
- data/src/agent/SystemMetrics/SystemMetricsMain.cpp +1 -1
- data/src/agent/TempDirToucher/TempDirToucherMain.cpp +1 -1
- data/src/agent/Watchdog/ApiServer.h +7 -6
- data/src/agent/Watchdog/Config.h +2 -2
- data/src/apache2_module/Bucket.cpp +1 -1
- data/src/apache2_module/Bucket.h +1 -1
- data/src/apache2_module/CBindings.cpp +1 -1
- data/src/apache2_module/Config.cpp +1 -1
- data/src/apache2_module/Config.h +1 -1
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +104 -104
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +1 -1
- data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +1 -1
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/ConfigGeneral/Common.h +1 -1
- data/src/apache2_module/ConfigGeneral/ManifestGeneration.h +1 -1
- data/src/apache2_module/ConfigGeneral/SetterFuncs.h +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
- data/src/apache2_module/DirectoryMapper.h +1 -1
- data/src/apache2_module/Hooks.cpp +8 -2
- data/src/apache2_module/Hooks.h +1 -1
- data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +1 -1
- data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +1 -1
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
- data/src/apache2_module/Utils.h +1 -1
- data/src/apache2_module/mod_passenger.c +1 -1
- data/src/cxx_supportlib/Algorithms/Hasher.cpp +1 -1
- data/src/cxx_supportlib/Algorithms/Hasher.h +1 -1
- data/src/cxx_supportlib/Algorithms/MovingAverage.h +1 -1
- data/src/cxx_supportlib/AppLocalConfigFileUtils.h +1 -1
- data/src/cxx_supportlib/AppTypeDetector/CBindings.cpp +1 -1
- data/src/cxx_supportlib/AppTypeDetector/CBindings.h +1 -1
- data/src/cxx_supportlib/AppTypeDetector/Detector.h +1 -1
- data/src/cxx_supportlib/BackgroundEventLoop.cpp +1 -1
- data/src/cxx_supportlib/BackgroundEventLoop.h +1 -1
- data/src/cxx_supportlib/ConfigKit/AsyncUtils.h +1 -1
- data/src/cxx_supportlib/ConfigKit/Common.h +1 -1
- data/src/cxx_supportlib/ConfigKit/ConfigKit.h +1 -1
- data/src/cxx_supportlib/ConfigKit/DummyTranslator.h +1 -1
- data/src/cxx_supportlib/ConfigKit/IN_PRACTICE.md +1 -3
- data/src/cxx_supportlib/ConfigKit/PrefixTranslator.h +3 -3
- data/src/cxx_supportlib/ConfigKit/Schema.h +1 -1
- data/src/cxx_supportlib/ConfigKit/SchemaUtils.h +1 -1
- data/src/cxx_supportlib/ConfigKit/Store.h +1 -1
- data/src/cxx_supportlib/ConfigKit/SubComponentUtils.h +1 -1
- data/src/cxx_supportlib/ConfigKit/TableTranslator.h +1 -1
- data/src/cxx_supportlib/ConfigKit/Translator.h +1 -1
- data/src/cxx_supportlib/ConfigKit/Utils.h +1 -1
- data/src/cxx_supportlib/Constants.h +2 -2
- data/src/cxx_supportlib/Constants.h.cxxcodebuilder +1 -1
- data/src/cxx_supportlib/DataStructures/HashedStaticString.h +1 -1
- data/src/cxx_supportlib/DataStructures/LString.cpp +1 -1
- data/src/cxx_supportlib/DataStructures/LString.h +1 -1
- data/src/cxx_supportlib/DataStructures/StringKeyTable.h +1 -1
- data/src/cxx_supportlib/DataStructures/StringMap.h +1 -1
- data/src/cxx_supportlib/Exceptions.cpp +1 -1
- data/src/cxx_supportlib/Exceptions.h +1 -1
- data/src/cxx_supportlib/FileDescriptor.h +1 -1
- data/src/cxx_supportlib/FileTools/FileManip.cpp +1 -1
- data/src/cxx_supportlib/FileTools/FileManip.h +1 -1
- data/src/cxx_supportlib/FileTools/PathManip.cpp +1 -1
- data/src/cxx_supportlib/FileTools/PathManip.h +1 -1
- data/src/cxx_supportlib/FileTools/PathManipCBindings.cpp +1 -1
- data/src/cxx_supportlib/FileTools/PathManipCBindings.h +1 -1
- data/src/cxx_supportlib/FileTools/PathSecurityCheck.cpp +1 -1
- data/src/cxx_supportlib/FileTools/PathSecurityCheck.h +1 -1
- data/src/cxx_supportlib/Hooks.h +1 -1
- data/src/cxx_supportlib/IOTools/BufferedIO.h +1 -1
- data/src/cxx_supportlib/IOTools/IOUtils.cpp +10 -10
- data/src/cxx_supportlib/IOTools/IOUtils.h +1 -1
- data/src/cxx_supportlib/IOTools/MessageIO.h +1 -1
- data/src/cxx_supportlib/IOTools/MessageSerialization.h +1 -1
- data/src/cxx_supportlib/InstanceDirectory.h +1 -1
- data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +1 -1
- data/src/cxx_supportlib/JsonTools/Autocast.h +1 -1
- data/src/cxx_supportlib/JsonTools/CBindings.cpp +1 -1
- data/src/cxx_supportlib/JsonTools/CBindings.h +1 -1
- data/src/cxx_supportlib/JsonTools/JsonUtils.h +1 -1
- data/src/cxx_supportlib/LoggingKit/Assert.h +1 -1
- data/src/cxx_supportlib/LoggingKit/Config.h +2 -1
- data/src/cxx_supportlib/LoggingKit/Context.h +1 -1
- data/src/cxx_supportlib/LoggingKit/Forward.h +1 -1
- data/src/cxx_supportlib/LoggingKit/Implementation.cpp +11 -1
- data/src/cxx_supportlib/LoggingKit/Logging.h +1 -1
- data/src/cxx_supportlib/LoggingKit/LoggingKit.h +1 -1
- data/src/cxx_supportlib/LveLoggingDecorator.h +1 -1
- data/src/cxx_supportlib/MemoryKit/mbuf.cpp +1 -1
- data/src/cxx_supportlib/MemoryKit/mbuf.h +1 -1
- 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 +1 -1
- data/src/cxx_supportlib/ProcessManagement/Ruby.h +1 -1
- data/src/cxx_supportlib/ProcessManagement/Spawn.cpp +1 -1
- data/src/cxx_supportlib/ProcessManagement/Spawn.h +1 -1
- data/src/cxx_supportlib/ProcessManagement/Utils.cpp +1 -1
- data/src/cxx_supportlib/ProcessManagement/Utils.h +1 -1
- data/src/cxx_supportlib/RandomGenerator.h +1 -1
- data/src/cxx_supportlib/ResourceLocator.h +1 -1
- data/src/cxx_supportlib/SafeLibev.h +1 -1
- data/src/cxx_supportlib/SecurityKit/Crypto.cpp +9 -27
- data/src/cxx_supportlib/SecurityKit/Crypto.h +2 -2
- data/src/cxx_supportlib/SecurityKit/MemZeroGuard.h +1 -1
- data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +1 -1
- data/src/cxx_supportlib/ServerKit/Channel.h +1 -1
- data/src/cxx_supportlib/ServerKit/Client.h +1 -1
- data/src/cxx_supportlib/ServerKit/ClientRef.h +1 -1
- data/src/cxx_supportlib/ServerKit/Config.h +1 -1
- data/src/cxx_supportlib/ServerKit/Context.h +1 -1
- data/src/cxx_supportlib/ServerKit/CookieUtils.h +1 -1
- data/src/cxx_supportlib/ServerKit/Errors.h +1 -1
- data/src/cxx_supportlib/ServerKit/FdSinkChannel.h +1 -1
- data/src/cxx_supportlib/ServerKit/FdSourceChannel.h +1 -1
- data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +54 -2
- data/src/cxx_supportlib/ServerKit/FileBufferedFdSinkChannel.h +1 -1
- data/src/cxx_supportlib/ServerKit/HeaderTable.h +1 -1
- data/src/cxx_supportlib/ServerKit/Hooks.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParserState.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpClient.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpRequest.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpRequestRef.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpServer.h +1 -1
- data/src/cxx_supportlib/ServerKit/Implementation.cpp +1 -1
- data/src/cxx_supportlib/ServerKit/Server.h +4 -2
- data/src/cxx_supportlib/StaticString.h +1 -1
- data/src/cxx_supportlib/StrIntTools/DateParsing.h +1 -1
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.cpp +1 -1
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +1 -1
- data/src/cxx_supportlib/StrIntTools/StrIntUtilsNoStrictAliasing.cpp +1 -1
- data/src/cxx_supportlib/StrIntTools/StringScanning.h +1 -1
- data/src/cxx_supportlib/StrIntTools/Template.h +1 -1
- data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +1 -1
- data/src/cxx_supportlib/SystemTools/ProcessMetricsCollector.h +1 -1
- data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +1 -1
- data/src/cxx_supportlib/SystemTools/SystemTime.cpp +1 -1
- data/src/cxx_supportlib/SystemTools/SystemTime.h +1 -1
- data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +1 -1
- data/src/cxx_supportlib/SystemTools/UserDatabase.h +1 -1
- data/src/cxx_supportlib/Utils/AnsiColorConstants.h +1 -1
- data/src/cxx_supportlib/Utils/AsyncSignalSafeUtils.h +1 -1
- data/src/cxx_supportlib/Utils/BlockingQueue.h +1 -1
- data/src/cxx_supportlib/Utils/CachedFileStat.cpp +1 -1
- data/src/cxx_supportlib/Utils/CachedFileStat.h +1 -1
- data/src/cxx_supportlib/Utils/CachedFileStat.hpp +1 -1
- data/src/cxx_supportlib/Utils/ClassUtils.h +1 -1
- data/src/cxx_supportlib/Utils/Curl.h +1 -1
- data/src/cxx_supportlib/Utils/FastStringStream.h +1 -1
- data/src/cxx_supportlib/Utils/FileChangeChecker.h +1 -1
- data/src/cxx_supportlib/Utils/HttpConstants.h +1 -1
- data/src/cxx_supportlib/Utils/IniFile.h +1 -1
- data/src/cxx_supportlib/Utils/MessagePassing.h +1 -1
- data/src/cxx_supportlib/Utils/OptionParsing.h +1 -1
- data/src/cxx_supportlib/Utils/ReleaseableScopedPointer.h +1 -1
- data/src/cxx_supportlib/Utils/ScopeGuard.h +1 -1
- data/src/cxx_supportlib/Utils/SpeedMeter.h +1 -1
- data/src/cxx_supportlib/Utils/Timer.h +1 -1
- data/src/cxx_supportlib/Utils/VariantMap.h +1 -1
- data/src/cxx_supportlib/Utils.cpp +1 -1
- data/src/cxx_supportlib/Utils.h +1 -1
- data/src/cxx_supportlib/WatchdogLauncher.cpp +1 -1
- data/src/cxx_supportlib/WatchdogLauncher.h +1 -1
- data/src/cxx_supportlib/WrapperRegistry/CBindings.cpp +1 -1
- data/src/cxx_supportlib/WrapperRegistry/CBindings.h +1 -1
- data/src/cxx_supportlib/WrapperRegistry/Entry.h +1 -1
- data/src/cxx_supportlib/WrapperRegistry/Registry.h +1 -1
- 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/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 +1 -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 +1 -1
- data/src/cxx_supportlib/oxt/system_calls.hpp +1 -1
- data/src/cxx_supportlib/oxt/thread.hpp +1 -1
- data/src/cxx_supportlib/oxt/tracable_exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-copy/adhoc_lve.h +1 -1
- data/src/cxx_supportlib/vendor-copy/libuv/AUTHORS +353 -3
- data/src/cxx_supportlib/vendor-copy/libuv/ChangeLog +3981 -2
- data/src/cxx_supportlib/vendor-copy/libuv/LICENSE +1 -28
- data/src/cxx_supportlib/vendor-copy/libuv/LICENSE-docs +396 -0
- data/src/cxx_supportlib/vendor-copy/libuv/LICENSE-extra +36 -0
- data/src/cxx_supportlib/vendor-copy/libuv/Makefile.am +275 -58
- data/src/cxx_supportlib/vendor-copy/libuv/Makefile.in +4380 -2125
- data/src/cxx_supportlib/vendor-copy/libuv/aclocal.m4 +425 -221
- data/src/cxx_supportlib/vendor-copy/libuv/ar-lib +30 -10
- data/src/cxx_supportlib/vendor-copy/libuv/compile +31 -14
- data/src/cxx_supportlib/vendor-copy/libuv/config.guess +1084 -690
- data/src/cxx_supportlib/vendor-copy/libuv/config.sub +1844 -1297
- data/src/cxx_supportlib/vendor-copy/libuv/configure +6935 -3664
- data/src/cxx_supportlib/vendor-copy/libuv/configure.ac +43 -19
- data/src/cxx_supportlib/vendor-copy/libuv/depcomp +12 -11
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-darwin.h → uv/darwin.h} +3 -3
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-errno.h → uv/errno.h} +119 -60
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-linux.h → uv/linux.h} +1 -1
- data/src/cxx_supportlib/vendor-copy/libuv/include/uv/os390.h +33 -0
- data/src/cxx_supportlib/vendor-copy/libuv/include/uv/posix.h +31 -0
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-threadpool.h → uv/threadpool.h} +1 -1
- data/src/cxx_supportlib/vendor-copy/libuv/include/{tree.h → uv/tree.h} +3 -250
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-unix.h → uv/unix.h} +186 -60
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-version.h → uv/version.h} +3 -3
- data/src/cxx_supportlib/vendor-copy/libuv/include/uv/win.h +703 -0
- data/src/cxx_supportlib/vendor-copy/libuv/include/uv.h +528 -40
- data/src/cxx_supportlib/vendor-copy/libuv/install-sh +110 -70
- data/src/cxx_supportlib/vendor-copy/libuv/libuv-static.pc.in +12 -0
- data/src/cxx_supportlib/vendor-copy/libuv/libuv.pc.in +4 -2
- data/src/cxx_supportlib/vendor-copy/libuv/ltmain.sh +995 -619
- data/src/cxx_supportlib/vendor-copy/libuv/m4/ax_pthread.m4 +485 -0
- data/src/cxx_supportlib/vendor-copy/libuv/m4/libtool.m4 +438 -289
- data/src/cxx_supportlib/vendor-copy/libuv/m4/libuv-check-flags.m4 +21 -4
- data/src/cxx_supportlib/vendor-copy/libuv/m4/libuv-check-versions.m4 +7 -0
- data/src/cxx_supportlib/vendor-copy/libuv/m4/ltoptions.m4 +69 -39
- data/src/cxx_supportlib/vendor-copy/libuv/m4/ltsugar.m4 +1 -1
- data/src/cxx_supportlib/vendor-copy/libuv/m4/ltversion.m4 +7 -6
- data/src/cxx_supportlib/vendor-copy/libuv/m4/lt~obsolete.m4 +2 -2
- data/src/cxx_supportlib/vendor-copy/libuv/missing +55 -34
- data/src/cxx_supportlib/vendor-copy/libuv/src/fs-poll.c +52 -20
- data/src/cxx_supportlib/vendor-copy/libuv/src/idna.c +560 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/idna.h +31 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/inet.c +5 -16
- data/src/cxx_supportlib/vendor-copy/libuv/src/queue.h +68 -86
- data/src/cxx_supportlib/vendor-copy/libuv/src/random.c +123 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/strscpy.c +38 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/strscpy.h +39 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/strtok.c +52 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/strtok.h +27 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/thread-common.c +175 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/threadpool.c +172 -57
- data/src/cxx_supportlib/vendor-copy/libuv/src/{unix/timer.c → timer.c} +57 -29
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/aix-common.c +89 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/aix.c +418 -256
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/async.c +168 -129
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/bsd-ifaddrs.c +163 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/bsd-proctitle.c +99 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/core.c +1312 -378
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/cygwin.c +93 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin-proctitle.c +18 -32
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin-stub.h +97 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin-syscalls.h +17 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin.c +41 -139
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/dl.c +1 -1
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/freebsd.c +75 -235
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/fs.c +1308 -299
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/fsevents.c +150 -148
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/getaddrinfo.c +58 -8
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/getnameinfo.c +3 -2
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/haiku.c +172 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/hurd.c +172 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/ibmi.c +542 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/internal.h +297 -106
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/kqueue.c +325 -94
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux.c +2708 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/loop-watcher.c +11 -11
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/loop.c +105 -24
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/netbsd.c +51 -157
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/no-fsevents.c +42 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/no-proctitle.c +45 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/openbsd.c +42 -183
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390-proctitle.c +136 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390-syscalls.c +536 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390-syscalls.h +75 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390.c +1070 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/pipe.c +324 -55
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/poll.c +58 -11
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/posix-hrtime.c +36 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/posix-poll.c +385 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/process.c +795 -248
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/procfs-exepath.c +45 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/proctitle.c +77 -22
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/qnx.c +142 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-devurandom.c +93 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-getentropy.c +57 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-getrandom.c +86 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-sysctl-linux.c +99 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/signal.c +147 -39
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/stream.c +426 -474
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/sunos.c +240 -98
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/sysinfo-loadavg.c +36 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/sysinfo-memory.c +42 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/tcp.c +402 -91
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/thread.c +497 -145
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/tty.c +269 -45
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/udp.c +695 -165
- data/src/cxx_supportlib/vendor-copy/libuv/src/uv-common.c +463 -61
- data/src/cxx_supportlib/vendor-copy/libuv/src/uv-common.h +248 -44
- data/src/cxx_supportlib/vendor-copy/libuv/src/uv-data-getter-setters.c +119 -0
- data/src/cxx_supportlib/vendor-copy/libuv/tsansupp.txt +2 -0
- data/src/cxx_supportlib/vendor-modified/libev/Changes +109 -0
- data/src/cxx_supportlib/vendor-modified/libev/Makefile.am +2 -1
- data/src/cxx_supportlib/vendor-modified/libev/Makefile.in +47 -33
- data/src/cxx_supportlib/vendor-modified/libev/README +2 -1
- data/src/cxx_supportlib/vendor-modified/libev/aclocal.m4 +1653 -1224
- data/src/cxx_supportlib/vendor-modified/libev/config.guess +376 -316
- data/src/cxx_supportlib/vendor-modified/libev/config.h.in +13 -2
- data/src/cxx_supportlib/vendor-modified/libev/config.sub +156 -154
- data/src/cxx_supportlib/vendor-modified/libev/configure +1431 -940
- data/src/cxx_supportlib/vendor-modified/libev/configure.ac +3 -3
- data/src/cxx_supportlib/vendor-modified/libev/depcomp +5 -5
- data/src/cxx_supportlib/vendor-modified/libev/ev++.h +109 -107
- data/src/cxx_supportlib/vendor-modified/libev/ev.c +807 -319
- data/src/cxx_supportlib/vendor-modified/libev/ev.h +111 -105
- data/src/cxx_supportlib/vendor-modified/libev/ev_epoll.c +42 -29
- data/src/cxx_supportlib/vendor-modified/libev/ev_iouring.c +694 -0
- data/src/cxx_supportlib/vendor-modified/libev/ev_kqueue.c +15 -9
- data/src/cxx_supportlib/vendor-modified/libev/ev_linuxaio.c +620 -0
- data/src/cxx_supportlib/vendor-modified/libev/ev_poll.c +19 -14
- data/src/cxx_supportlib/vendor-modified/libev/ev_port.c +8 -5
- data/src/cxx_supportlib/vendor-modified/libev/ev_select.c +6 -6
- data/src/cxx_supportlib/vendor-modified/libev/ev_vars.h +48 -3
- data/src/cxx_supportlib/vendor-modified/libev/ev_win32.c +2 -2
- data/src/cxx_supportlib/vendor-modified/libev/ev_wrap.h +72 -0
- data/src/cxx_supportlib/vendor-modified/libev/install-sh +23 -13
- data/src/cxx_supportlib/vendor-modified/libev/libev.m4 +6 -1
- data/src/cxx_supportlib/vendor-modified/libev/ltmain.sh +3581 -1993
- data/src/cxx_supportlib/vendor-modified/libev/missing +8 -8
- data/src/cxx_supportlib/vendor-modified/libev/mkinstalldirs +3 -3
- data/src/cxx_supportlib/vendor-modified/modp_b64_strict_aliasing.cpp +1 -1
- data/src/helper-scripts/backtrace-sanitizer.rb +1 -1
- data/src/helper-scripts/crash-watch.rb +1 -1
- data/src/helper-scripts/download_binaries/extconf.rb +1 -1
- data/src/helper-scripts/meteor-loader.rb +1 -1
- data/src/helper-scripts/node-loader.js +1 -1
- data/src/helper-scripts/prespawn +1 -1
- data/src/helper-scripts/rack-loader.rb +1 -1
- data/src/helper-scripts/rack-preloader.rb +1 -1
- data/src/helper-scripts/wsgi-loader.py +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c.cxxcodebuilder +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c.cxxcodebuilder +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c.cxxcodebuilder +1 -1
- 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 +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c.cxxcodebuilder +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c.cxxcodebuilder +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
- 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 +1 -1
- data/src/nginx_module/ngx_http_passenger_module.h +1 -1
- data/src/nodejs_supportlib/phusion_passenger/line_reader.js +1 -1
- data/src/ruby_native_extension/extconf.rb +1 -1
- data/src/ruby_native_extension/passenger_native_support.c +1 -1
- data/src/ruby_supportlib/phusion_passenger/abstract_installer.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/admin_tools/instance.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/admin_tools/memory_stats.rb +2 -12
- data/src/ruby_supportlib/phusion_passenger/admin_tools.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/apache2/config_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +8 -10
- data/src/ruby_supportlib/phusion_passenger/config/about_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/api_call_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/build_native_support_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/compile_agent_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/compile_nginx_engine_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/detach_process_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/list_instances_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/main.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +3 -2
- data/src/ruby_supportlib/phusion_passenger/config/reopen_logs_command.rb +6 -1
- data/src/ruby_supportlib/phusion_passenger/config/restart_app_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/system_metrics_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/system_properties_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/validate_install_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/constants.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/debug_logging.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/message_channel.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/message_client.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/native_support.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/packaging.rb +4 -3
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache_detector.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/binary_compatibility.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +195 -11
- data/src/ruby_supportlib/phusion_passenger/platform_info/crypto.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/curl.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/linux.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/networking.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/openssl.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/zlib.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/plugin.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/preloader_shared_helpers.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/public_api.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/rack/handler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/rack/out_of_band_gc.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/rack_handler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +2 -7
- data/src/ruby_supportlib/phusion_passenger/request_handler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/ruby_core_enhancements.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/ruby_core_io_enhancements.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/simple_benchmarking.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/control_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/main.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +4 -8
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/status_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/stop_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/version_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/ansi_colors.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/download.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/file_system_watcher.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/hosts_file_parser.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/lock.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/native_support_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/progress_bar.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/strscan.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/unseekable_socket.rb +3 -13
- data/src/ruby_supportlib/phusion_passenger/utils.rb +1 -1
- 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 +8 -6
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/spawn.rb +4 -3
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/version.rb +6 -4
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +395 -579
- data/src/ruby_supportlib/phusion_passenger.rb +8 -8
- data/src/schema_printer/SchemaPrinterMain.cpp +1 -1
- data/src/schema_printer/SchemaPrinterMain.cpp.cxxcodebuilder +1 -1
- metadata +69 -32
- data/doc/DeveloperQuickstart.md +0 -70
- data/src/README.md +0 -7
- data/src/cxx_supportlib/vendor-copy/libuv/README.md +0 -245
- data/src/cxx_supportlib/vendor-copy/libuv/checksparse.sh +0 -234
- data/src/cxx_supportlib/vendor-copy/libuv/common.gypi +0 -210
- data/src/cxx_supportlib/vendor-copy/libuv/gyp_uv.py +0 -93
- data/src/cxx_supportlib/vendor-copy/libuv/include/android-ifaddrs.h +0 -54
- data/src/cxx_supportlib/vendor-copy/libuv/include/pthread-fixes.h +0 -72
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/android-ifaddrs.c +0 -703
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/atomic-ops.h +0 -77
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-core.c +0 -899
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-inotify.c +0 -285
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-syscalls.c +0 -471
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-syscalls.h +0 -158
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/pthread-fixes.c +0 -104
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/spinlock.h +0 -53
- data/src/cxx_supportlib/vendor-copy/libuv/uv.gyp +0 -508
- /data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-aix.h → uv/aix.h} +0 -0
- /data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-bsd.h → uv/bsd.h} +0 -0
- /data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-sunos.h → uv/sunos.h} +0 -0
|
@@ -25,17 +25,38 @@
|
|
|
25
25
|
#include "uv-common.h"
|
|
26
26
|
|
|
27
27
|
#include <assert.h>
|
|
28
|
+
#include <limits.h> /* _POSIX_PATH_MAX, PATH_MAX */
|
|
29
|
+
#include <stdint.h>
|
|
28
30
|
#include <stdlib.h> /* abort */
|
|
29
31
|
#include <string.h> /* strrchr */
|
|
30
|
-
#include <fcntl.h> /* O_CLOEXEC,
|
|
32
|
+
#include <fcntl.h> /* O_CLOEXEC and O_NONBLOCK, if supported. */
|
|
33
|
+
#include <stdio.h>
|
|
34
|
+
#include <errno.h>
|
|
35
|
+
#include <sys/socket.h>
|
|
36
|
+
#include <sys/stat.h>
|
|
37
|
+
#include <sys/types.h>
|
|
38
|
+
|
|
39
|
+
#define uv__msan_unpoison(p, n) \
|
|
40
|
+
do { \
|
|
41
|
+
(void) (p); \
|
|
42
|
+
(void) (n); \
|
|
43
|
+
} while (0)
|
|
44
|
+
|
|
45
|
+
#if defined(__has_feature)
|
|
46
|
+
# if __has_feature(memory_sanitizer)
|
|
47
|
+
# include <sanitizer/msan_interface.h>
|
|
48
|
+
# undef uv__msan_unpoison
|
|
49
|
+
# define uv__msan_unpoison __msan_unpoison
|
|
50
|
+
# endif
|
|
51
|
+
#endif
|
|
31
52
|
|
|
32
53
|
#if defined(__STRICT_ANSI__)
|
|
33
54
|
# define inline __inline
|
|
34
55
|
#endif
|
|
35
56
|
|
|
36
|
-
#if defined(
|
|
37
|
-
# include "
|
|
38
|
-
#endif /*
|
|
57
|
+
#if defined(__MVS__)
|
|
58
|
+
# include "os390-syscalls.h"
|
|
59
|
+
#endif /* __MVS__ */
|
|
39
60
|
|
|
40
61
|
#if defined(__sun)
|
|
41
62
|
# include <sys/port.h>
|
|
@@ -43,15 +64,43 @@
|
|
|
43
64
|
#endif /* __sun */
|
|
44
65
|
|
|
45
66
|
#if defined(_AIX)
|
|
46
|
-
#define reqevents events
|
|
47
|
-
#define rtnevents revents
|
|
48
|
-
#include <sys/poll.h>
|
|
67
|
+
# define reqevents events
|
|
68
|
+
# define rtnevents revents
|
|
69
|
+
# include <sys/poll.h>
|
|
70
|
+
#else
|
|
71
|
+
# include <poll.h>
|
|
49
72
|
#endif /* _AIX */
|
|
50
73
|
|
|
51
|
-
#if defined(__APPLE__)
|
|
52
|
-
# include
|
|
74
|
+
#if defined(__APPLE__)
|
|
75
|
+
# include "darwin-syscalls.h"
|
|
76
|
+
# if !TARGET_OS_IPHONE
|
|
77
|
+
# include <AvailabilityMacros.h>
|
|
78
|
+
# endif
|
|
79
|
+
#endif
|
|
80
|
+
|
|
81
|
+
/*
|
|
82
|
+
* Define common detection for active Thread Sanitizer
|
|
83
|
+
* - clang uses __has_feature(thread_sanitizer)
|
|
84
|
+
* - gcc-7+ uses __SANITIZE_THREAD__
|
|
85
|
+
*/
|
|
86
|
+
#if defined(__has_feature)
|
|
87
|
+
# if __has_feature(thread_sanitizer)
|
|
88
|
+
# define __SANITIZE_THREAD__ 1
|
|
89
|
+
# endif
|
|
90
|
+
#endif
|
|
91
|
+
|
|
92
|
+
#if defined(PATH_MAX)
|
|
93
|
+
# define UV__PATH_MAX PATH_MAX
|
|
94
|
+
#else
|
|
95
|
+
# define UV__PATH_MAX 8192
|
|
53
96
|
#endif
|
|
54
97
|
|
|
98
|
+
union uv__sockaddr {
|
|
99
|
+
struct sockaddr_in6 in6;
|
|
100
|
+
struct sockaddr_in in;
|
|
101
|
+
struct sockaddr addr;
|
|
102
|
+
};
|
|
103
|
+
|
|
55
104
|
#define ACCESS_ONCE(type, var) \
|
|
56
105
|
(*(volatile type*) &(var))
|
|
57
106
|
|
|
@@ -79,43 +128,23 @@
|
|
|
79
128
|
*/
|
|
80
129
|
#if defined(__clang__) || \
|
|
81
130
|
defined(__GNUC__) || \
|
|
82
|
-
defined(__INTEL_COMPILER)
|
|
83
|
-
defined(__SUNPRO_C)
|
|
84
|
-
# define UV_DESTRUCTOR(declaration) __attribute__((destructor)) declaration
|
|
131
|
+
defined(__INTEL_COMPILER)
|
|
85
132
|
# define UV_UNUSED(declaration) __attribute__((unused)) declaration
|
|
86
133
|
#else
|
|
87
|
-
# define UV_DESTRUCTOR(declaration) declaration
|
|
88
134
|
# define UV_UNUSED(declaration) declaration
|
|
89
135
|
#endif
|
|
90
136
|
|
|
91
|
-
|
|
92
|
-
#
|
|
93
|
-
# define
|
|
94
|
-
#
|
|
95
|
-
# define
|
|
96
|
-
#endif
|
|
97
|
-
|
|
98
|
-
#if defined(__sun) || defined(_AIX)
|
|
99
|
-
# define UV__POLLIN POLLIN
|
|
100
|
-
# define UV__POLLOUT POLLOUT
|
|
101
|
-
# define UV__POLLERR POLLERR
|
|
102
|
-
# define UV__POLLHUP POLLHUP
|
|
103
|
-
#endif
|
|
104
|
-
|
|
105
|
-
#ifndef UV__POLLIN
|
|
106
|
-
# define UV__POLLIN 1
|
|
107
|
-
#endif
|
|
108
|
-
|
|
109
|
-
#ifndef UV__POLLOUT
|
|
110
|
-
# define UV__POLLOUT 2
|
|
111
|
-
#endif
|
|
112
|
-
|
|
113
|
-
#ifndef UV__POLLERR
|
|
114
|
-
# define UV__POLLERR 4
|
|
137
|
+
/* Leans on the fact that, on Linux, POLLRDHUP == EPOLLRDHUP. */
|
|
138
|
+
#ifdef POLLRDHUP
|
|
139
|
+
# define UV__POLLRDHUP POLLRDHUP
|
|
140
|
+
#else
|
|
141
|
+
# define UV__POLLRDHUP 0x2000
|
|
115
142
|
#endif
|
|
116
143
|
|
|
117
|
-
#
|
|
118
|
-
# define
|
|
144
|
+
#ifdef POLLPRI
|
|
145
|
+
# define UV__POLLPRI POLLPRI
|
|
146
|
+
#else
|
|
147
|
+
# define UV__POLLPRI 0
|
|
119
148
|
#endif
|
|
120
149
|
|
|
121
150
|
#if !defined(O_CLOEXEC) && defined(__FreeBSD__)
|
|
@@ -128,28 +157,17 @@
|
|
|
128
157
|
|
|
129
158
|
typedef struct uv__stream_queued_fds_s uv__stream_queued_fds_t;
|
|
130
159
|
|
|
131
|
-
/*
|
|
160
|
+
/* loop flags */
|
|
132
161
|
enum {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
UV_STREAM_SHUTTING = 0x08, /* uv_shutdown() called but not complete. */
|
|
137
|
-
UV_STREAM_SHUT = 0x10, /* Write side closed. */
|
|
138
|
-
UV_STREAM_READABLE = 0x20, /* The stream is readable */
|
|
139
|
-
UV_STREAM_WRITABLE = 0x40, /* The stream is writable */
|
|
140
|
-
UV_STREAM_BLOCKING = 0x80, /* Synchronous writes. */
|
|
141
|
-
UV_STREAM_READ_PARTIAL = 0x100, /* read(2) read less than requested. */
|
|
142
|
-
UV_STREAM_READ_EOF = 0x200, /* read(2) read EOF. */
|
|
143
|
-
UV_TCP_NODELAY = 0x400, /* Disable Nagle. */
|
|
144
|
-
UV_TCP_KEEPALIVE = 0x800, /* Turn on keep-alive. */
|
|
145
|
-
UV_TCP_SINGLE_ACCEPT = 0x1000, /* Only accept() when idle. */
|
|
146
|
-
UV_HANDLE_IPV6 = 0x10000, /* Handle is bound to a IPv6 socket. */
|
|
147
|
-
UV_UDP_PROCESSING = 0x20000 /* Handle is running the send callback queue. */
|
|
162
|
+
UV_LOOP_BLOCK_SIGPROF = 0x1,
|
|
163
|
+
UV_LOOP_REAP_CHILDREN = 0x2,
|
|
164
|
+
UV_LOOP_ENABLE_IO_URING_SQPOLL = 0x4
|
|
148
165
|
};
|
|
149
166
|
|
|
150
|
-
/*
|
|
167
|
+
/* flags of excluding ifaddr */
|
|
151
168
|
enum {
|
|
152
|
-
|
|
169
|
+
UV__EXCLUDE_IFPHYS,
|
|
170
|
+
UV__EXCLUDE_IFADDR
|
|
153
171
|
};
|
|
154
172
|
|
|
155
173
|
typedef enum {
|
|
@@ -163,13 +181,73 @@ struct uv__stream_queued_fds_s {
|
|
|
163
181
|
int fds[1];
|
|
164
182
|
};
|
|
165
183
|
|
|
184
|
+
#ifdef __linux__
|
|
185
|
+
struct uv__statx_timestamp {
|
|
186
|
+
int64_t tv_sec;
|
|
187
|
+
uint32_t tv_nsec;
|
|
188
|
+
int32_t unused0;
|
|
189
|
+
};
|
|
190
|
+
|
|
191
|
+
struct uv__statx {
|
|
192
|
+
uint32_t stx_mask;
|
|
193
|
+
uint32_t stx_blksize;
|
|
194
|
+
uint64_t stx_attributes;
|
|
195
|
+
uint32_t stx_nlink;
|
|
196
|
+
uint32_t stx_uid;
|
|
197
|
+
uint32_t stx_gid;
|
|
198
|
+
uint16_t stx_mode;
|
|
199
|
+
uint16_t unused0;
|
|
200
|
+
uint64_t stx_ino;
|
|
201
|
+
uint64_t stx_size;
|
|
202
|
+
uint64_t stx_blocks;
|
|
203
|
+
uint64_t stx_attributes_mask;
|
|
204
|
+
struct uv__statx_timestamp stx_atime;
|
|
205
|
+
struct uv__statx_timestamp stx_btime;
|
|
206
|
+
struct uv__statx_timestamp stx_ctime;
|
|
207
|
+
struct uv__statx_timestamp stx_mtime;
|
|
208
|
+
uint32_t stx_rdev_major;
|
|
209
|
+
uint32_t stx_rdev_minor;
|
|
210
|
+
uint32_t stx_dev_major;
|
|
211
|
+
uint32_t stx_dev_minor;
|
|
212
|
+
uint64_t unused1[14];
|
|
213
|
+
};
|
|
214
|
+
#endif /* __linux__ */
|
|
215
|
+
|
|
216
|
+
#if defined(_AIX) || \
|
|
217
|
+
defined(__APPLE__) || \
|
|
218
|
+
defined(__DragonFly__) || \
|
|
219
|
+
defined(__FreeBSD__) || \
|
|
220
|
+
defined(__linux__) || \
|
|
221
|
+
defined(__OpenBSD__) || \
|
|
222
|
+
defined(__NetBSD__)
|
|
223
|
+
#define uv__nonblock uv__nonblock_ioctl
|
|
224
|
+
#define UV__NONBLOCK_IS_IOCTL 1
|
|
225
|
+
#else
|
|
226
|
+
#define uv__nonblock uv__nonblock_fcntl
|
|
227
|
+
#define UV__NONBLOCK_IS_IOCTL 0
|
|
228
|
+
#endif
|
|
229
|
+
|
|
230
|
+
/* On Linux, uv__nonblock_fcntl() and uv__nonblock_ioctl() do not commute
|
|
231
|
+
* when O_NDELAY is not equal to O_NONBLOCK. Case in point: linux/sparc32
|
|
232
|
+
* and linux/sparc64, where O_NDELAY is O_NONBLOCK + another bit.
|
|
233
|
+
*
|
|
234
|
+
* Libuv uses uv__nonblock_fcntl() directly sometimes so ensure that it
|
|
235
|
+
* commutes with uv__nonblock().
|
|
236
|
+
*/
|
|
237
|
+
#if defined(__linux__) && O_NDELAY != O_NONBLOCK
|
|
238
|
+
#undef uv__nonblock
|
|
239
|
+
#define uv__nonblock uv__nonblock_fcntl
|
|
240
|
+
#endif
|
|
166
241
|
|
|
167
242
|
/* core */
|
|
168
|
-
int uv__nonblock(int fd, int set);
|
|
169
|
-
int uv__close(int fd);
|
|
170
243
|
int uv__cloexec(int fd, int set);
|
|
244
|
+
int uv__nonblock_ioctl(int fd, int set);
|
|
245
|
+
int uv__nonblock_fcntl(int fd, int set);
|
|
246
|
+
int uv__close(int fd); /* preserves errno */
|
|
247
|
+
int uv__close_nocheckstdio(int fd);
|
|
248
|
+
int uv__close_nocancel(int fd);
|
|
171
249
|
int uv__socket(int domain, int type, int protocol);
|
|
172
|
-
int
|
|
250
|
+
int uv__sock_reuseport(int fd);
|
|
173
251
|
ssize_t uv__recvmsg(int fd, struct msghdr *msg, int flags);
|
|
174
252
|
void uv__make_close_pending(uv_handle_t* handle);
|
|
175
253
|
int uv__getiovmax(void);
|
|
@@ -180,13 +258,15 @@ void uv__io_stop(uv_loop_t* loop, uv__io_t* w, unsigned int events);
|
|
|
180
258
|
void uv__io_close(uv_loop_t* loop, uv__io_t* w);
|
|
181
259
|
void uv__io_feed(uv_loop_t* loop, uv__io_t* w);
|
|
182
260
|
int uv__io_active(const uv__io_t* w, unsigned int events);
|
|
261
|
+
int uv__io_check_fd(uv_loop_t* loop, int fd);
|
|
183
262
|
void uv__io_poll(uv_loop_t* loop, int timeout); /* in milliseconds or -1 */
|
|
263
|
+
int uv__io_fork(uv_loop_t* loop);
|
|
264
|
+
int uv__fd_exists(uv_loop_t* loop, int fd);
|
|
184
265
|
|
|
185
266
|
/* async */
|
|
186
|
-
void
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
void uv__async_stop(uv_loop_t* loop, struct uv__async* wa);
|
|
267
|
+
void uv__async_stop(uv_loop_t* loop);
|
|
268
|
+
int uv__async_fork(uv_loop_t* loop);
|
|
269
|
+
|
|
190
270
|
|
|
191
271
|
/* loop */
|
|
192
272
|
void uv__run_idle(uv_loop_t* loop);
|
|
@@ -205,23 +285,24 @@ void uv__server_io(uv_loop_t* loop, uv__io_t* w, unsigned int events);
|
|
|
205
285
|
int uv__accept(int sockfd);
|
|
206
286
|
int uv__dup2_cloexec(int oldfd, int newfd);
|
|
207
287
|
int uv__open_cloexec(const char* path, int flags);
|
|
288
|
+
int uv__slurp(const char* filename, char* buf, size_t len);
|
|
208
289
|
|
|
209
290
|
/* tcp */
|
|
210
|
-
int
|
|
291
|
+
int uv__tcp_listen(uv_tcp_t* tcp, int backlog, uv_connection_cb cb);
|
|
211
292
|
int uv__tcp_nodelay(int fd, int on);
|
|
212
293
|
int uv__tcp_keepalive(int fd, int on, unsigned int delay);
|
|
213
294
|
|
|
214
|
-
/*
|
|
215
|
-
|
|
295
|
+
/* tty */
|
|
296
|
+
void uv__tty_close(uv_tty_t* handle);
|
|
216
297
|
|
|
217
|
-
/*
|
|
218
|
-
|
|
219
|
-
int uv__next_timeout(const uv_loop_t* loop);
|
|
298
|
+
/* pipe */
|
|
299
|
+
int uv__pipe_listen(uv_pipe_t* handle, int backlog, uv_connection_cb cb);
|
|
220
300
|
|
|
221
301
|
/* signal */
|
|
222
302
|
void uv__signal_close(uv_signal_t* handle);
|
|
223
303
|
void uv__signal_global_once_init(void);
|
|
224
304
|
void uv__signal_loop_cleanup(uv_loop_t* loop);
|
|
305
|
+
int uv__signal_loop_fork(uv_loop_t* loop);
|
|
225
306
|
|
|
226
307
|
/* platform specific */
|
|
227
308
|
uint64_t uv__hrtime(uv_clocktype_t type);
|
|
@@ -229,6 +310,7 @@ int uv__kqueue_init(uv_loop_t* loop);
|
|
|
229
310
|
int uv__platform_loop_init(uv_loop_t* loop);
|
|
230
311
|
void uv__platform_loop_delete(uv_loop_t* loop);
|
|
231
312
|
void uv__platform_invalidate_fd(uv_loop_t* loop, int fd);
|
|
313
|
+
int uv__process_init(uv_loop_t* loop);
|
|
232
314
|
|
|
233
315
|
/* various */
|
|
234
316
|
void uv__async_close(uv_async_t* handle);
|
|
@@ -241,10 +323,53 @@ void uv__prepare_close(uv_prepare_t* handle);
|
|
|
241
323
|
void uv__process_close(uv_process_t* handle);
|
|
242
324
|
void uv__stream_close(uv_stream_t* handle);
|
|
243
325
|
void uv__tcp_close(uv_tcp_t* handle);
|
|
244
|
-
|
|
326
|
+
size_t uv__thread_stack_size(void);
|
|
245
327
|
void uv__udp_close(uv_udp_t* handle);
|
|
246
328
|
void uv__udp_finish_close(uv_udp_t* handle);
|
|
247
|
-
|
|
329
|
+
FILE* uv__open_file(const char* path);
|
|
330
|
+
int uv__search_path(const char* prog, char* buf, size_t* buflen);
|
|
331
|
+
void uv__wait_children(uv_loop_t* loop);
|
|
332
|
+
|
|
333
|
+
/* random */
|
|
334
|
+
int uv__random_devurandom(void* buf, size_t buflen);
|
|
335
|
+
int uv__random_getrandom(void* buf, size_t buflen);
|
|
336
|
+
int uv__random_getentropy(void* buf, size_t buflen);
|
|
337
|
+
int uv__random_readpath(const char* path, void* buf, size_t buflen);
|
|
338
|
+
int uv__random_sysctl(void* buf, size_t buflen);
|
|
339
|
+
|
|
340
|
+
/* io_uring */
|
|
341
|
+
#ifdef __linux__
|
|
342
|
+
int uv__iou_fs_close(uv_loop_t* loop, uv_fs_t* req);
|
|
343
|
+
int uv__iou_fs_ftruncate(uv_loop_t* loop, uv_fs_t* req);
|
|
344
|
+
int uv__iou_fs_fsync_or_fdatasync(uv_loop_t* loop,
|
|
345
|
+
uv_fs_t* req,
|
|
346
|
+
uint32_t fsync_flags);
|
|
347
|
+
int uv__iou_fs_link(uv_loop_t* loop, uv_fs_t* req);
|
|
348
|
+
int uv__iou_fs_mkdir(uv_loop_t* loop, uv_fs_t* req);
|
|
349
|
+
int uv__iou_fs_open(uv_loop_t* loop, uv_fs_t* req);
|
|
350
|
+
int uv__iou_fs_read_or_write(uv_loop_t* loop,
|
|
351
|
+
uv_fs_t* req,
|
|
352
|
+
int is_read);
|
|
353
|
+
int uv__iou_fs_rename(uv_loop_t* loop, uv_fs_t* req);
|
|
354
|
+
int uv__iou_fs_statx(uv_loop_t* loop,
|
|
355
|
+
uv_fs_t* req,
|
|
356
|
+
int is_fstat,
|
|
357
|
+
int is_lstat);
|
|
358
|
+
int uv__iou_fs_symlink(uv_loop_t* loop, uv_fs_t* req);
|
|
359
|
+
int uv__iou_fs_unlink(uv_loop_t* loop, uv_fs_t* req);
|
|
360
|
+
#else
|
|
361
|
+
#define uv__iou_fs_close(loop, req) 0
|
|
362
|
+
#define uv__iou_fs_ftruncate(loop, req) 0
|
|
363
|
+
#define uv__iou_fs_fsync_or_fdatasync(loop, req, fsync_flags) 0
|
|
364
|
+
#define uv__iou_fs_link(loop, req) 0
|
|
365
|
+
#define uv__iou_fs_mkdir(loop, req) 0
|
|
366
|
+
#define uv__iou_fs_open(loop, req) 0
|
|
367
|
+
#define uv__iou_fs_read_or_write(loop, req, is_read) 0
|
|
368
|
+
#define uv__iou_fs_rename(loop, req) 0
|
|
369
|
+
#define uv__iou_fs_statx(loop, req, is_fstat, is_lstat) 0
|
|
370
|
+
#define uv__iou_fs_symlink(loop, req) 0
|
|
371
|
+
#define uv__iou_fs_unlink(loop, req) 0
|
|
372
|
+
#endif
|
|
248
373
|
|
|
249
374
|
#if defined(__APPLE__)
|
|
250
375
|
int uv___stream_fd(const uv_stream_t* handle);
|
|
@@ -253,13 +378,6 @@ int uv___stream_fd(const uv_stream_t* handle);
|
|
|
253
378
|
#define uv__stream_fd(handle) ((handle)->io_watcher.fd)
|
|
254
379
|
#endif /* defined(__APPLE__) */
|
|
255
380
|
|
|
256
|
-
#ifdef UV__O_NONBLOCK
|
|
257
|
-
# define UV__F_NONBLOCK UV__O_NONBLOCK
|
|
258
|
-
#else
|
|
259
|
-
# define UV__F_NONBLOCK 1
|
|
260
|
-
#endif
|
|
261
|
-
|
|
262
|
-
int uv__make_socketpair(int fds[2], int flags);
|
|
263
381
|
int uv__make_pipe(int fds[2], int flags);
|
|
264
382
|
|
|
265
383
|
#if defined(__APPLE__)
|
|
@@ -268,35 +386,8 @@ int uv__fsevents_init(uv_fs_event_t* handle);
|
|
|
268
386
|
int uv__fsevents_close(uv_fs_event_t* handle);
|
|
269
387
|
void uv__fsevents_loop_delete(uv_loop_t* loop);
|
|
270
388
|
|
|
271
|
-
/* OSX < 10.7 has no file events, polyfill them */
|
|
272
|
-
#ifndef MAC_OS_X_VERSION_10_7
|
|
273
|
-
|
|
274
|
-
static const int kFSEventStreamCreateFlagFileEvents = 0x00000010;
|
|
275
|
-
static const int kFSEventStreamEventFlagItemCreated = 0x00000100;
|
|
276
|
-
static const int kFSEventStreamEventFlagItemRemoved = 0x00000200;
|
|
277
|
-
static const int kFSEventStreamEventFlagItemInodeMetaMod = 0x00000400;
|
|
278
|
-
static const int kFSEventStreamEventFlagItemRenamed = 0x00000800;
|
|
279
|
-
static const int kFSEventStreamEventFlagItemModified = 0x00001000;
|
|
280
|
-
static const int kFSEventStreamEventFlagItemFinderInfoMod = 0x00002000;
|
|
281
|
-
static const int kFSEventStreamEventFlagItemChangeOwner = 0x00004000;
|
|
282
|
-
static const int kFSEventStreamEventFlagItemXattrMod = 0x00008000;
|
|
283
|
-
static const int kFSEventStreamEventFlagItemIsFile = 0x00010000;
|
|
284
|
-
static const int kFSEventStreamEventFlagItemIsDir = 0x00020000;
|
|
285
|
-
static const int kFSEventStreamEventFlagItemIsSymlink = 0x00040000;
|
|
286
|
-
|
|
287
|
-
#endif /* __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1070 */
|
|
288
|
-
|
|
289
389
|
#endif /* defined(__APPLE__) */
|
|
290
390
|
|
|
291
|
-
UV_UNUSED(static void uv__req_init(uv_loop_t* loop,
|
|
292
|
-
uv_req_t* req,
|
|
293
|
-
uv_req_type type)) {
|
|
294
|
-
req->type = type;
|
|
295
|
-
uv__req_register(loop, req);
|
|
296
|
-
}
|
|
297
|
-
#define uv__req_init(loop, req, type) \
|
|
298
|
-
uv__req_init((loop), (uv_req_t*)(req), (type))
|
|
299
|
-
|
|
300
391
|
UV_UNUSED(static void uv__update_time(uv_loop_t* loop)) {
|
|
301
392
|
/* Use a fast time source if available. We only need millisecond precision.
|
|
302
393
|
*/
|
|
@@ -313,4 +404,104 @@ UV_UNUSED(static char* uv__basename_r(const char* path)) {
|
|
|
313
404
|
return s + 1;
|
|
314
405
|
}
|
|
315
406
|
|
|
407
|
+
UV_UNUSED(static int uv__fstat(int fd, struct stat* s)) {
|
|
408
|
+
int rc;
|
|
409
|
+
|
|
410
|
+
rc = fstat(fd, s);
|
|
411
|
+
if (rc >= 0)
|
|
412
|
+
uv__msan_unpoison(s, sizeof(*s));
|
|
413
|
+
|
|
414
|
+
return rc;
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
UV_UNUSED(static int uv__lstat(const char* path, struct stat* s)) {
|
|
418
|
+
int rc;
|
|
419
|
+
|
|
420
|
+
rc = lstat(path, s);
|
|
421
|
+
if (rc >= 0)
|
|
422
|
+
uv__msan_unpoison(s, sizeof(*s));
|
|
423
|
+
|
|
424
|
+
return rc;
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
UV_UNUSED(static int uv__stat(const char* path, struct stat* s)) {
|
|
428
|
+
int rc;
|
|
429
|
+
|
|
430
|
+
rc = stat(path, s);
|
|
431
|
+
if (rc >= 0)
|
|
432
|
+
uv__msan_unpoison(s, sizeof(*s));
|
|
433
|
+
|
|
434
|
+
return rc;
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
#if defined(__linux__)
|
|
438
|
+
void uv__fs_post(uv_loop_t* loop, uv_fs_t* req);
|
|
439
|
+
ssize_t
|
|
440
|
+
uv__fs_copy_file_range(int fd_in,
|
|
441
|
+
off_t* off_in,
|
|
442
|
+
int fd_out,
|
|
443
|
+
off_t* off_out,
|
|
444
|
+
size_t len,
|
|
445
|
+
unsigned int flags);
|
|
446
|
+
int uv__statx(int dirfd,
|
|
447
|
+
const char* path,
|
|
448
|
+
int flags,
|
|
449
|
+
unsigned int mask,
|
|
450
|
+
struct uv__statx* statxbuf);
|
|
451
|
+
void uv__statx_to_stat(const struct uv__statx* statxbuf, uv_stat_t* buf);
|
|
452
|
+
ssize_t uv__getrandom(void* buf, size_t buflen, unsigned flags);
|
|
453
|
+
unsigned uv__kernel_version(void);
|
|
454
|
+
#endif
|
|
455
|
+
|
|
456
|
+
typedef int (*uv__peersockfunc)(int, struct sockaddr*, socklen_t*);
|
|
457
|
+
|
|
458
|
+
int uv__getsockpeername(const uv_handle_t* handle,
|
|
459
|
+
uv__peersockfunc func,
|
|
460
|
+
struct sockaddr* name,
|
|
461
|
+
int* namelen);
|
|
462
|
+
|
|
463
|
+
#if defined(__sun)
|
|
464
|
+
#if !defined(_POSIX_VERSION) || _POSIX_VERSION < 200809L
|
|
465
|
+
size_t strnlen(const char* s, size_t maxlen);
|
|
466
|
+
#endif
|
|
467
|
+
#endif
|
|
468
|
+
|
|
469
|
+
#if defined(__FreeBSD__)
|
|
470
|
+
ssize_t
|
|
471
|
+
uv__fs_copy_file_range(int fd_in,
|
|
472
|
+
off_t* off_in,
|
|
473
|
+
int fd_out,
|
|
474
|
+
off_t* off_out,
|
|
475
|
+
size_t len,
|
|
476
|
+
unsigned int flags);
|
|
477
|
+
#endif
|
|
478
|
+
|
|
479
|
+
#if defined(__linux__) || (defined(__FreeBSD__) && __FreeBSD_version >= 1301000)
|
|
480
|
+
#define UV__CPU_AFFINITY_SUPPORTED 1
|
|
481
|
+
#else
|
|
482
|
+
#define UV__CPU_AFFINITY_SUPPORTED 0
|
|
483
|
+
#endif
|
|
484
|
+
|
|
485
|
+
#ifdef __linux__
|
|
486
|
+
typedef struct {
|
|
487
|
+
long long quota_per_period;
|
|
488
|
+
long long period_length;
|
|
489
|
+
double proportions;
|
|
490
|
+
} uv__cpu_constraint;
|
|
491
|
+
|
|
492
|
+
int uv__get_constrained_cpu(uv__cpu_constraint* constraint);
|
|
493
|
+
#endif
|
|
494
|
+
|
|
495
|
+
#if defined(__sun) && !defined(__illumos__)
|
|
496
|
+
#ifdef SO_FLOW_NAME
|
|
497
|
+
/* Since it's impossible to detect the Solaris 11.4 version via OS macros,
|
|
498
|
+
* so we check the presence of the socket option SO_FLOW_NAME that was first
|
|
499
|
+
* introduced to Solaris 11.4 and define a custom macro for determining 11.4.
|
|
500
|
+
*/
|
|
501
|
+
#define UV__SOLARIS_11_4 (1)
|
|
502
|
+
#else
|
|
503
|
+
#define UV__SOLARIS_11_4 (0)
|
|
504
|
+
#endif
|
|
505
|
+
#endif
|
|
506
|
+
|
|
316
507
|
#endif /* UV_UNIX_INTERNAL_H_ */
|