passenger 6.1.8 → 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.
Files changed (662) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +56 -2
  3. data/CONTRIBUTING.md +7 -311
  4. data/CONTRIBUTORS +1 -0
  5. data/LICENSE +1 -1
  6. data/README.md +2 -2
  7. data/Rakefile +1 -1
  8. data/bin/passenger +1 -1
  9. data/bin/passenger-config +1 -1
  10. data/bin/passenger-install-apache2-module +1 -1
  11. data/bin/passenger-install-nginx-module +4 -9
  12. data/bin/passenger-memory-stats +1 -1
  13. data/bin/passenger-status +1 -1
  14. data/build/agent.rb +13 -15
  15. data/build/apache2.rb +13 -16
  16. data/build/basics.rb +10 -13
  17. data/build/common_library.rb +5 -9
  18. data/build/cxx_tests.rb +40 -12
  19. data/build/integration_tests.rb +5 -2
  20. data/build/misc.rb +1 -1
  21. data/build/nginx.rb +1 -1
  22. data/build/node_tests.rb +1 -1
  23. data/build/oxt_tests.rb +6 -8
  24. data/build/packaging.rb +1 -1
  25. data/build/ruby_extension.rb +1 -1
  26. data/build/ruby_tests.rb +1 -1
  27. data/build/schema_printer.rb +13 -15
  28. data/build/support/cplusplus.rb +61 -69
  29. data/build/support/cxx_dependency_map.rb +1488 -666
  30. data/build/support/general.rb +1 -1
  31. data/build/support/vendor/cxx_hinted_parser/LICENSE.md +1 -1
  32. data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser/parser.rb +3 -1
  33. data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser.rb +1 -1
  34. data/build/support/vendor/cxxcodebuilder/LICENSE.md +1 -1
  35. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +3 -1
  36. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/initializer_builder.rb +3 -1
  37. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder.rb +1 -1
  38. data/build/test_basics.rb +1 -1
  39. data/dev/copy_boost_headers +1 -1
  40. data/dev/index_cxx_dependencies.rb +6 -2
  41. data/dev/libev-changes.patch +108 -0
  42. data/dev/nginx_version_sha256 +1 -1
  43. data/dev/ruby_server.rb +1 -6
  44. data/dev/runner +2 -0
  45. data/dev/upgrading_libuv.sh +16 -0
  46. data/doc/BasicArchitectureOverview.md +55 -0
  47. data/doc/BuildCaching.md +23 -0
  48. data/doc/BuildSystem.md +49 -0
  49. data/doc/DebuggingAndStressTesting.md +2 -0
  50. data/doc/DesignAspects/LimitedGemDependencies.md +1 -0
  51. data/doc/DevEnvironmentSetup.md +46 -0
  52. data/doc/DevHandbook.md +28 -0
  53. data/doc/Packaging.md +1 -1
  54. data/doc/RunningTests.md +88 -0
  55. data/doc/{TempFileHandling.md → SecureTempFileHandling.md} +1 -1
  56. data/doc/{CxxTestingGuide.md → WritingCxxTests.md} +1 -20
  57. data/src/agent/AgentMain.cpp +1 -1
  58. data/src/agent/Core/ApiServer.h +1 -1
  59. data/src/agent/Core/ApplicationPool/AbstractSession.h +1 -1
  60. data/src/agent/Core/ApplicationPool/BasicGroupInfo.h +1 -1
  61. data/src/agent/Core/ApplicationPool/BasicProcessInfo.h +1 -1
  62. data/src/agent/Core/ApplicationPool/Common.h +1 -1
  63. data/src/agent/Core/ApplicationPool/Context.h +1 -1
  64. data/src/agent/Core/ApplicationPool/Group/InitializationAndShutdown.cpp +1 -1
  65. data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +1 -1
  66. data/src/agent/Core/ApplicationPool/Group/LifetimeAndBasics.cpp +1 -1
  67. data/src/agent/Core/ApplicationPool/Group/Miscellaneous.cpp +1 -1
  68. data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +1 -1
  69. data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +1 -1
  70. data/src/agent/Core/ApplicationPool/Group/SessionManagement.cpp +1 -1
  71. data/src/agent/Core/ApplicationPool/Group/SpawningAndRestarting.cpp +1 -1
  72. data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +1 -1
  73. data/src/agent/Core/ApplicationPool/Group/Verification.cpp +1 -1
  74. data/src/agent/Core/ApplicationPool/Group.h +1 -1
  75. data/src/agent/Core/ApplicationPool/Implementation.cpp +1 -1
  76. data/src/agent/Core/ApplicationPool/Options.h +1 -1
  77. data/src/agent/Core/ApplicationPool/Pool/AnalyticsCollection.cpp +1 -1
  78. data/src/agent/Core/ApplicationPool/Pool/GarbageCollection.cpp +1 -1
  79. data/src/agent/Core/ApplicationPool/Pool/GeneralUtils.cpp +1 -1
  80. data/src/agent/Core/ApplicationPool/Pool/GroupUtils.cpp +1 -1
  81. data/src/agent/Core/ApplicationPool/Pool/InitializationAndShutdown.cpp +1 -1
  82. data/src/agent/Core/ApplicationPool/Pool/Miscellaneous.cpp +1 -1
  83. data/src/agent/Core/ApplicationPool/Pool/ProcessUtils.cpp +1 -1
  84. data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +1 -1
  85. data/src/agent/Core/ApplicationPool/Pool.h +1 -1
  86. data/src/agent/Core/ApplicationPool/Process.cpp +1 -1
  87. data/src/agent/Core/ApplicationPool/Process.h +1 -1
  88. data/src/agent/Core/ApplicationPool/Session.h +1 -1
  89. data/src/agent/Core/ApplicationPool/Socket.h +1 -1
  90. data/src/agent/Core/ApplicationPool/TestSession.h +1 -1
  91. data/src/agent/Core/Config.h +3 -2
  92. data/src/agent/Core/ConfigChange.cpp +1 -1
  93. data/src/agent/Core/ConfigChange.h +1 -1
  94. data/src/agent/Core/Controller/AppResponse.h +1 -1
  95. data/src/agent/Core/Controller/BufferBody.cpp +1 -1
  96. data/src/agent/Core/Controller/CheckoutSession.cpp +8 -5
  97. data/src/agent/Core/Controller/Client.h +1 -1
  98. data/src/agent/Core/Controller/Config.cpp +1 -1
  99. data/src/agent/Core/Controller/Config.h +2 -2
  100. data/src/agent/Core/Controller/ForwardResponse.cpp +2 -2
  101. data/src/agent/Core/Controller/Hooks.cpp +12 -9
  102. data/src/agent/Core/Controller/Implementation.cpp +1 -1
  103. data/src/agent/Core/Controller/InitRequest.cpp +1 -1
  104. data/src/agent/Core/Controller/InitializationAndShutdown.cpp +1 -1
  105. data/src/agent/Core/Controller/InternalUtils.cpp +1 -1
  106. data/src/agent/Core/Controller/Miscellaneous.cpp +1 -1
  107. data/src/agent/Core/Controller/Request.h +1 -1
  108. data/src/agent/Core/Controller/SendRequest.cpp +1 -1
  109. data/src/agent/Core/Controller/StateInspection.cpp +1 -1
  110. data/src/agent/Core/Controller/TurboCaching.h +1 -1
  111. data/src/agent/Core/Controller.h +1 -1
  112. data/src/agent/Core/CoreMain.cpp +1 -1
  113. data/src/agent/Core/OptionParser.h +1 -1
  114. data/src/agent/Core/ResponseCache.h +1 -1
  115. data/src/agent/Core/SecurityUpdateChecker.h +1 -1
  116. data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h +1 -1
  117. data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h.cxxcodebuilder +1 -1
  118. data/src/agent/Core/SpawningKit/Config.h +1 -1
  119. data/src/agent/Core/SpawningKit/Context.h +1 -1
  120. data/src/agent/Core/SpawningKit/DirectSpawner.h +1 -1
  121. data/src/agent/Core/SpawningKit/DummySpawner.h +1 -1
  122. data/src/agent/Core/SpawningKit/ErrorRenderer.h +1 -1
  123. data/src/agent/Core/SpawningKit/Exceptions.h +63 -2
  124. data/src/agent/Core/SpawningKit/Factory.h +1 -1
  125. data/src/agent/Core/SpawningKit/Handshake/BackgroundIOCapturer.h +1 -1
  126. data/src/agent/Core/SpawningKit/Handshake/Perform.h +3 -2
  127. data/src/agent/Core/SpawningKit/Handshake/Prepare.h +1 -1
  128. data/src/agent/Core/SpawningKit/Handshake/Session.h +1 -1
  129. data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +1 -1
  130. data/src/agent/Core/SpawningKit/Journey.h +1 -1
  131. data/src/agent/Core/SpawningKit/PipeWatcher.h +1 -1
  132. data/src/agent/Core/SpawningKit/README.md +3 -3
  133. data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h +1 -1
  134. data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h.cxxcodebuilder +1 -1
  135. data/src/agent/Core/SpawningKit/Result.h +1 -1
  136. data/src/agent/Core/SpawningKit/SmartSpawner.h +17 -17
  137. data/src/agent/Core/SpawningKit/Spawner.h +1 -1
  138. data/src/agent/Core/SpawningKit/UserSwitchingRules.h +1 -1
  139. data/src/agent/Core/TelemetryCollector.h +1 -1
  140. data/src/agent/ExecHelper/ExecHelperMain.cpp +1 -1
  141. data/src/agent/FileReadHelper/FileReadHelperMain.cpp +1 -1
  142. data/src/agent/MainFunctions.h +1 -1
  143. data/src/agent/Shared/ApiAccountUtils.h +4 -3
  144. data/src/agent/Shared/ApiServerUtils.h +15 -11
  145. data/src/agent/Shared/ApplicationPoolApiKey.h +1 -1
  146. data/src/agent/Shared/Fundamentals/AbortHandler.cpp +1 -1
  147. data/src/agent/Shared/Fundamentals/AbortHandler.h +1 -1
  148. data/src/agent/Shared/Fundamentals/Initialization.cpp +1 -1
  149. data/src/agent/Shared/Fundamentals/Initialization.h +1 -1
  150. data/src/agent/Shared/Fundamentals/Utils.cpp +1 -1
  151. data/src/agent/Shared/Fundamentals/Utils.h +1 -1
  152. data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +1 -1
  153. data/src/agent/SystemMetrics/SystemMetricsMain.cpp +1 -1
  154. data/src/agent/TempDirToucher/TempDirToucherMain.cpp +1 -1
  155. data/src/agent/Watchdog/{AgentWatcher.cpp → AgentWatcher.h} +28 -1
  156. data/src/agent/Watchdog/ApiServer.h +25 -1
  157. data/src/agent/Watchdog/Config.h +2 -2
  158. data/src/agent/Watchdog/{CoreWatcher.cpp → CoreWatcher.h} +18 -1
  159. data/src/agent/Watchdog/{InstanceDirToucher.cpp → InstanceDirToucher.h} +20 -1
  160. data/src/agent/Watchdog/WatchdogMain.cpp +11 -77
  161. data/src/agent/Watchdog/WorkingObjects.h +108 -0
  162. data/src/apache2_module/Bucket.cpp +1 -1
  163. data/src/apache2_module/Bucket.h +1 -1
  164. data/src/apache2_module/CBindings.cpp +1 -1
  165. data/src/apache2_module/Config.cpp +1 -1
  166. data/src/apache2_module/Config.h +1 -1
  167. data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +104 -104
  168. data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp.cxxcodebuilder +2 -2
  169. data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +1 -1
  170. data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp.cxxcodebuilder +1 -1
  171. data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +1 -1
  172. data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp.cxxcodebuilder +1 -1
  173. data/src/apache2_module/ConfigGeneral/Common.h +1 -1
  174. data/src/apache2_module/ConfigGeneral/ManifestGeneration.h +1 -1
  175. data/src/apache2_module/ConfigGeneral/SetterFuncs.h +1 -1
  176. data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp +1 -1
  177. data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp.cxxcodebuilder +1 -1
  178. data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp +1 -1
  179. data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp.cxxcodebuilder +1 -1
  180. data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp +1 -1
  181. data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +1 -1
  182. data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp +1 -1
  183. data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp.cxxcodebuilder +1 -1
  184. data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +1 -1
  185. data/src/apache2_module/DirConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
  186. data/src/apache2_module/DirectoryMapper.h +1 -1
  187. data/src/apache2_module/Hooks.cpp +8 -2
  188. data/src/apache2_module/Hooks.h +1 -1
  189. data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +1 -1
  190. data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +1 -1
  191. data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +1 -1
  192. data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
  193. data/src/apache2_module/Utils.h +1 -1
  194. data/src/apache2_module/mod_passenger.c +1 -1
  195. data/src/cxx_supportlib/Algorithms/Hasher.cpp +1 -1
  196. data/src/cxx_supportlib/Algorithms/Hasher.h +1 -1
  197. data/src/cxx_supportlib/Algorithms/MovingAverage.h +1 -1
  198. data/src/cxx_supportlib/AppLocalConfigFileUtils.h +1 -1
  199. data/src/cxx_supportlib/AppTypeDetector/CBindings.cpp +1 -1
  200. data/src/cxx_supportlib/AppTypeDetector/CBindings.h +1 -1
  201. data/src/cxx_supportlib/AppTypeDetector/Detector.h +1 -1
  202. data/src/cxx_supportlib/BackgroundEventLoop.cpp +1 -1
  203. data/src/cxx_supportlib/BackgroundEventLoop.h +1 -1
  204. data/src/cxx_supportlib/ConfigKit/AsyncUtils.h +1 -1
  205. data/src/cxx_supportlib/ConfigKit/Common.h +1 -1
  206. data/src/cxx_supportlib/ConfigKit/ConfigKit.h +1 -1
  207. data/src/cxx_supportlib/ConfigKit/DummyTranslator.h +1 -1
  208. data/src/cxx_supportlib/ConfigKit/IN_PRACTICE.md +1 -3
  209. data/src/cxx_supportlib/ConfigKit/PrefixTranslator.h +3 -3
  210. data/src/cxx_supportlib/ConfigKit/Schema.h +1 -1
  211. data/src/cxx_supportlib/ConfigKit/SchemaUtils.h +1 -1
  212. data/src/cxx_supportlib/ConfigKit/Store.h +1 -1
  213. data/src/cxx_supportlib/ConfigKit/SubComponentUtils.h +1 -1
  214. data/src/cxx_supportlib/ConfigKit/TableTranslator.h +1 -1
  215. data/src/cxx_supportlib/ConfigKit/Translator.h +1 -1
  216. data/src/cxx_supportlib/ConfigKit/Utils.h +1 -1
  217. data/src/cxx_supportlib/Constants.h +2 -2
  218. data/src/cxx_supportlib/Constants.h.cxxcodebuilder +1 -1
  219. data/src/cxx_supportlib/DataStructures/HashedStaticString.h +1 -1
  220. data/src/cxx_supportlib/DataStructures/LString.cpp +1 -1
  221. data/src/cxx_supportlib/DataStructures/LString.h +1 -1
  222. data/src/cxx_supportlib/DataStructures/StringKeyTable.h +1 -1
  223. data/src/cxx_supportlib/DataStructures/StringMap.h +1 -1
  224. data/src/cxx_supportlib/Exceptions.cpp +1 -1
  225. data/src/cxx_supportlib/Exceptions.h +1 -1
  226. data/src/cxx_supportlib/FileDescriptor.h +1 -1
  227. data/src/cxx_supportlib/FileTools/FileManip.cpp +1 -1
  228. data/src/cxx_supportlib/FileTools/FileManip.h +1 -1
  229. data/src/cxx_supportlib/FileTools/PathManip.cpp +1 -1
  230. data/src/cxx_supportlib/FileTools/PathManip.h +1 -1
  231. data/src/cxx_supportlib/FileTools/PathManipCBindings.cpp +1 -1
  232. data/src/cxx_supportlib/FileTools/PathManipCBindings.h +1 -1
  233. data/src/cxx_supportlib/FileTools/PathSecurityCheck.cpp +1 -1
  234. data/src/cxx_supportlib/FileTools/PathSecurityCheck.h +1 -1
  235. data/src/cxx_supportlib/Hooks.h +1 -1
  236. data/src/cxx_supportlib/IOTools/BufferedIO.h +1 -1
  237. data/src/cxx_supportlib/IOTools/IOUtils.cpp +12 -27
  238. data/src/cxx_supportlib/IOTools/IOUtils.h +1 -1
  239. data/src/cxx_supportlib/IOTools/MessageIO.h +1 -1
  240. data/src/cxx_supportlib/IOTools/MessageSerialization.h +1 -1
  241. data/src/cxx_supportlib/InstanceDirectory.h +1 -1
  242. data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +1 -1
  243. data/src/cxx_supportlib/JsonTools/Autocast.h +1 -1
  244. data/src/cxx_supportlib/JsonTools/CBindings.cpp +1 -1
  245. data/src/cxx_supportlib/JsonTools/CBindings.h +1 -1
  246. data/src/cxx_supportlib/JsonTools/JsonUtils.h +1 -1
  247. data/src/cxx_supportlib/LoggingKit/Assert.h +1 -1
  248. data/src/cxx_supportlib/LoggingKit/Config.h +2 -1
  249. data/src/cxx_supportlib/LoggingKit/Context.h +1 -1
  250. data/src/cxx_supportlib/LoggingKit/Forward.h +1 -1
  251. data/src/cxx_supportlib/LoggingKit/Implementation.cpp +11 -1
  252. data/src/cxx_supportlib/LoggingKit/Logging.h +1 -1
  253. data/src/cxx_supportlib/LoggingKit/LoggingKit.h +1 -1
  254. data/src/cxx_supportlib/LveLoggingDecorator.h +1 -1
  255. data/src/cxx_supportlib/MemoryKit/mbuf.cpp +1 -1
  256. data/src/cxx_supportlib/MemoryKit/mbuf.h +1 -1
  257. data/src/cxx_supportlib/MemoryKit/palloc.cpp +1 -1
  258. data/src/cxx_supportlib/MemoryKit/palloc.h +1 -1
  259. data/src/cxx_supportlib/ProcessManagement/Ruby.cpp +1 -1
  260. data/src/cxx_supportlib/ProcessManagement/Ruby.h +1 -1
  261. data/src/cxx_supportlib/ProcessManagement/Spawn.cpp +1 -1
  262. data/src/cxx_supportlib/ProcessManagement/Spawn.h +1 -1
  263. data/src/cxx_supportlib/ProcessManagement/Utils.cpp +1 -1
  264. data/src/cxx_supportlib/ProcessManagement/Utils.h +1 -1
  265. data/src/cxx_supportlib/RandomGenerator.h +1 -1
  266. data/src/cxx_supportlib/ResourceLocator.h +1 -1
  267. data/src/cxx_supportlib/SafeLibev.h +1 -1
  268. data/src/cxx_supportlib/SecurityKit/Crypto.cpp +9 -27
  269. data/src/cxx_supportlib/SecurityKit/Crypto.h +2 -2
  270. data/src/cxx_supportlib/SecurityKit/MemZeroGuard.h +1 -1
  271. data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +4 -1
  272. data/src/cxx_supportlib/ServerKit/Channel.h +1 -1
  273. data/src/cxx_supportlib/ServerKit/Client.h +1 -1
  274. data/src/cxx_supportlib/ServerKit/ClientRef.h +1 -1
  275. data/src/cxx_supportlib/ServerKit/Config.h +1 -1
  276. data/src/cxx_supportlib/ServerKit/Context.h +1 -1
  277. data/src/cxx_supportlib/ServerKit/CookieUtils.h +1 -1
  278. data/src/cxx_supportlib/ServerKit/Errors.h +1 -1
  279. data/src/cxx_supportlib/ServerKit/FdSinkChannel.h +1 -1
  280. data/src/cxx_supportlib/ServerKit/FdSourceChannel.h +1 -1
  281. data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +54 -2
  282. data/src/cxx_supportlib/ServerKit/FileBufferedFdSinkChannel.h +1 -1
  283. data/src/cxx_supportlib/ServerKit/HeaderTable.h +1 -1
  284. data/src/cxx_supportlib/ServerKit/Hooks.h +1 -1
  285. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +1 -1
  286. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParserState.h +1 -1
  287. data/src/cxx_supportlib/ServerKit/HttpClient.h +1 -1
  288. data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +1 -1
  289. data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +1 -1
  290. data/src/cxx_supportlib/ServerKit/HttpRequest.h +1 -1
  291. data/src/cxx_supportlib/ServerKit/HttpRequestRef.h +1 -1
  292. data/src/cxx_supportlib/ServerKit/HttpServer.h +1 -1
  293. data/src/cxx_supportlib/ServerKit/Implementation.cpp +1 -1
  294. data/src/cxx_supportlib/ServerKit/Server.h +8 -23
  295. data/src/cxx_supportlib/StaticString.h +1 -1
  296. data/src/cxx_supportlib/StrIntTools/DateParsing.h +1 -1
  297. data/src/cxx_supportlib/StrIntTools/StrIntUtils.cpp +1 -1
  298. data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +1 -1
  299. data/src/cxx_supportlib/StrIntTools/StrIntUtilsNoStrictAliasing.cpp +1 -1
  300. data/src/cxx_supportlib/StrIntTools/StringScanning.h +1 -1
  301. data/src/cxx_supportlib/StrIntTools/Template.h +1 -1
  302. data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +1 -1
  303. data/src/cxx_supportlib/SystemTools/ProcessMetricsCollector.h +1 -1
  304. data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +1 -1
  305. data/src/cxx_supportlib/SystemTools/SystemTime.cpp +1 -1
  306. data/src/cxx_supportlib/SystemTools/SystemTime.h +1 -1
  307. data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +1 -1
  308. data/src/cxx_supportlib/SystemTools/UserDatabase.h +1 -1
  309. data/src/cxx_supportlib/Utils/AnsiColorConstants.h +1 -1
  310. data/src/cxx_supportlib/Utils/AsyncSignalSafeUtils.h +1 -1
  311. data/src/cxx_supportlib/Utils/BlockingQueue.h +1 -1
  312. data/src/cxx_supportlib/Utils/CachedFileStat.cpp +1 -1
  313. data/src/cxx_supportlib/Utils/CachedFileStat.h +1 -1
  314. data/src/cxx_supportlib/Utils/CachedFileStat.hpp +1 -1
  315. data/src/cxx_supportlib/Utils/ClassUtils.h +1 -1
  316. data/src/cxx_supportlib/Utils/Curl.h +1 -1
  317. data/src/cxx_supportlib/Utils/FastStringStream.h +1 -1
  318. data/src/cxx_supportlib/Utils/FileChangeChecker.h +1 -1
  319. data/src/cxx_supportlib/Utils/HttpConstants.h +1 -1
  320. data/src/cxx_supportlib/Utils/IniFile.h +1 -1
  321. data/src/cxx_supportlib/Utils/MessagePassing.h +1 -1
  322. data/src/cxx_supportlib/Utils/OptionParsing.h +1 -1
  323. data/src/cxx_supportlib/Utils/ReleaseableScopedPointer.h +1 -1
  324. data/src/cxx_supportlib/Utils/ScopeGuard.h +1 -1
  325. data/src/cxx_supportlib/Utils/Socket.cpp +67 -0
  326. data/src/cxx_supportlib/Utils/Socket.h +35 -0
  327. data/src/cxx_supportlib/Utils/SpeedMeter.h +1 -1
  328. data/src/cxx_supportlib/Utils/Timer.h +1 -1
  329. data/src/cxx_supportlib/Utils/VariantMap.h +1 -1
  330. data/src/cxx_supportlib/Utils.cpp +1 -1
  331. data/src/cxx_supportlib/Utils.h +1 -1
  332. data/src/cxx_supportlib/WatchdogLauncher.cpp +1 -1
  333. data/src/cxx_supportlib/WatchdogLauncher.h +1 -1
  334. data/src/cxx_supportlib/WrapperRegistry/CBindings.cpp +1 -1
  335. data/src/cxx_supportlib/WrapperRegistry/CBindings.h +1 -1
  336. data/src/cxx_supportlib/WrapperRegistry/Entry.h +1 -1
  337. data/src/cxx_supportlib/WrapperRegistry/Registry.h +1 -1
  338. data/src/cxx_supportlib/oxt/backtrace.hpp +1 -1
  339. data/src/cxx_supportlib/oxt/detail/backtrace_disabled.hpp +1 -1
  340. data/src/cxx_supportlib/oxt/detail/backtrace_enabled.hpp +1 -1
  341. data/src/cxx_supportlib/oxt/detail/context.hpp +1 -1
  342. data/src/cxx_supportlib/oxt/detail/tracable_exception_disabled.hpp +1 -1
  343. data/src/cxx_supportlib/oxt/detail/tracable_exception_enabled.hpp +1 -1
  344. data/src/cxx_supportlib/oxt/dynamic_thread_group.hpp +1 -1
  345. data/src/cxx_supportlib/oxt/implementation.cpp +1 -1
  346. data/src/cxx_supportlib/oxt/initialize.hpp +1 -1
  347. data/src/cxx_supportlib/oxt/macros.hpp +1 -1
  348. data/src/cxx_supportlib/oxt/spin_lock.hpp +1 -1
  349. data/src/cxx_supportlib/oxt/system_calls.cpp +1 -1
  350. data/src/cxx_supportlib/oxt/system_calls.hpp +1 -1
  351. data/src/cxx_supportlib/oxt/thread.hpp +1 -1
  352. data/src/cxx_supportlib/oxt/tracable_exception.hpp +1 -1
  353. data/src/cxx_supportlib/vendor-copy/adhoc_lve.h +1 -1
  354. data/src/cxx_supportlib/vendor-copy/libuv/AUTHORS +353 -3
  355. data/src/cxx_supportlib/vendor-copy/libuv/ChangeLog +3981 -2
  356. data/src/cxx_supportlib/vendor-copy/libuv/LICENSE +1 -28
  357. data/src/cxx_supportlib/vendor-copy/libuv/LICENSE-docs +396 -0
  358. data/src/cxx_supportlib/vendor-copy/libuv/LICENSE-extra +36 -0
  359. data/src/cxx_supportlib/vendor-copy/libuv/Makefile.am +275 -58
  360. data/src/cxx_supportlib/vendor-copy/libuv/Makefile.in +4380 -2125
  361. data/src/cxx_supportlib/vendor-copy/libuv/aclocal.m4 +425 -221
  362. data/src/cxx_supportlib/vendor-copy/libuv/ar-lib +30 -10
  363. data/src/cxx_supportlib/vendor-copy/libuv/compile +31 -14
  364. data/src/cxx_supportlib/vendor-copy/libuv/config.guess +1084 -690
  365. data/src/cxx_supportlib/vendor-copy/libuv/config.sub +1844 -1297
  366. data/src/cxx_supportlib/vendor-copy/libuv/configure +6935 -3664
  367. data/src/cxx_supportlib/vendor-copy/libuv/configure.ac +43 -19
  368. data/src/cxx_supportlib/vendor-copy/libuv/depcomp +12 -11
  369. data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-darwin.h → uv/darwin.h} +3 -3
  370. data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-errno.h → uv/errno.h} +119 -60
  371. data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-linux.h → uv/linux.h} +1 -1
  372. data/src/cxx_supportlib/vendor-copy/libuv/include/uv/os390.h +33 -0
  373. data/src/cxx_supportlib/vendor-copy/libuv/include/uv/posix.h +31 -0
  374. data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-threadpool.h → uv/threadpool.h} +1 -1
  375. data/src/cxx_supportlib/vendor-copy/libuv/include/{tree.h → uv/tree.h} +3 -250
  376. data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-unix.h → uv/unix.h} +186 -60
  377. data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-version.h → uv/version.h} +3 -3
  378. data/src/cxx_supportlib/vendor-copy/libuv/include/uv/win.h +703 -0
  379. data/src/cxx_supportlib/vendor-copy/libuv/include/uv.h +528 -40
  380. data/src/cxx_supportlib/vendor-copy/libuv/install-sh +110 -70
  381. data/src/cxx_supportlib/vendor-copy/libuv/libuv-static.pc.in +12 -0
  382. data/src/cxx_supportlib/vendor-copy/libuv/libuv.pc.in +4 -2
  383. data/src/cxx_supportlib/vendor-copy/libuv/ltmain.sh +995 -619
  384. data/src/cxx_supportlib/vendor-copy/libuv/m4/ax_pthread.m4 +485 -0
  385. data/src/cxx_supportlib/vendor-copy/libuv/m4/libtool.m4 +438 -289
  386. data/src/cxx_supportlib/vendor-copy/libuv/m4/libuv-check-flags.m4 +21 -4
  387. data/src/cxx_supportlib/vendor-copy/libuv/m4/libuv-check-versions.m4 +7 -0
  388. data/src/cxx_supportlib/vendor-copy/libuv/m4/ltoptions.m4 +69 -39
  389. data/src/cxx_supportlib/vendor-copy/libuv/m4/ltsugar.m4 +1 -1
  390. data/src/cxx_supportlib/vendor-copy/libuv/m4/ltversion.m4 +7 -6
  391. data/src/cxx_supportlib/vendor-copy/libuv/m4/lt~obsolete.m4 +2 -2
  392. data/src/cxx_supportlib/vendor-copy/libuv/missing +55 -34
  393. data/src/cxx_supportlib/vendor-copy/libuv/src/fs-poll.c +52 -20
  394. data/src/cxx_supportlib/vendor-copy/libuv/src/idna.c +560 -0
  395. data/src/cxx_supportlib/vendor-copy/libuv/src/idna.h +31 -0
  396. data/src/cxx_supportlib/vendor-copy/libuv/src/inet.c +5 -16
  397. data/src/cxx_supportlib/vendor-copy/libuv/src/queue.h +68 -86
  398. data/src/cxx_supportlib/vendor-copy/libuv/src/random.c +123 -0
  399. data/src/cxx_supportlib/vendor-copy/libuv/src/strscpy.c +38 -0
  400. data/src/cxx_supportlib/vendor-copy/libuv/src/strscpy.h +39 -0
  401. data/src/cxx_supportlib/vendor-copy/libuv/src/strtok.c +52 -0
  402. data/src/cxx_supportlib/vendor-copy/libuv/src/strtok.h +27 -0
  403. data/src/cxx_supportlib/vendor-copy/libuv/src/thread-common.c +175 -0
  404. data/src/cxx_supportlib/vendor-copy/libuv/src/threadpool.c +172 -57
  405. data/src/cxx_supportlib/vendor-copy/libuv/src/{unix/timer.c → timer.c} +57 -29
  406. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/aix-common.c +89 -0
  407. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/aix.c +418 -256
  408. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/async.c +168 -129
  409. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/bsd-ifaddrs.c +163 -0
  410. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/bsd-proctitle.c +99 -0
  411. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/core.c +1312 -378
  412. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/cygwin.c +93 -0
  413. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin-proctitle.c +18 -32
  414. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin-stub.h +97 -0
  415. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin-syscalls.h +17 -0
  416. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin.c +41 -139
  417. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/dl.c +1 -1
  418. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/freebsd.c +75 -235
  419. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/fs.c +1308 -299
  420. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/fsevents.c +150 -148
  421. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/getaddrinfo.c +58 -8
  422. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/getnameinfo.c +3 -2
  423. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/haiku.c +172 -0
  424. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/hurd.c +172 -0
  425. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/ibmi.c +542 -0
  426. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/internal.h +297 -106
  427. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/kqueue.c +325 -94
  428. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux.c +2708 -0
  429. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/loop-watcher.c +11 -11
  430. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/loop.c +105 -24
  431. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/netbsd.c +51 -157
  432. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/no-fsevents.c +42 -0
  433. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/no-proctitle.c +45 -0
  434. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/openbsd.c +42 -183
  435. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390-proctitle.c +136 -0
  436. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390-syscalls.c +536 -0
  437. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390-syscalls.h +75 -0
  438. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390.c +1070 -0
  439. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/pipe.c +324 -55
  440. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/poll.c +58 -11
  441. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/posix-hrtime.c +36 -0
  442. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/posix-poll.c +385 -0
  443. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/process.c +795 -248
  444. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/procfs-exepath.c +45 -0
  445. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/proctitle.c +77 -22
  446. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/qnx.c +142 -0
  447. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-devurandom.c +93 -0
  448. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-getentropy.c +57 -0
  449. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-getrandom.c +86 -0
  450. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-sysctl-linux.c +99 -0
  451. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/signal.c +147 -39
  452. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/stream.c +426 -474
  453. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/sunos.c +240 -98
  454. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/sysinfo-loadavg.c +36 -0
  455. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/sysinfo-memory.c +42 -0
  456. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/tcp.c +402 -91
  457. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/thread.c +497 -145
  458. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/tty.c +269 -45
  459. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/udp.c +695 -165
  460. data/src/cxx_supportlib/vendor-copy/libuv/src/uv-common.c +463 -61
  461. data/src/cxx_supportlib/vendor-copy/libuv/src/uv-common.h +248 -44
  462. data/src/cxx_supportlib/vendor-copy/libuv/src/uv-data-getter-setters.c +119 -0
  463. data/src/cxx_supportlib/vendor-copy/libuv/tsansupp.txt +2 -0
  464. data/src/cxx_supportlib/vendor-modified/libev/Changes +109 -0
  465. data/src/cxx_supportlib/vendor-modified/libev/Makefile.am +2 -1
  466. data/src/cxx_supportlib/vendor-modified/libev/Makefile.in +47 -33
  467. data/src/cxx_supportlib/vendor-modified/libev/README +2 -1
  468. data/src/cxx_supportlib/vendor-modified/libev/aclocal.m4 +1653 -1224
  469. data/src/cxx_supportlib/vendor-modified/libev/config.guess +376 -316
  470. data/src/cxx_supportlib/vendor-modified/libev/config.h.in +13 -2
  471. data/src/cxx_supportlib/vendor-modified/libev/config.sub +156 -154
  472. data/src/cxx_supportlib/vendor-modified/libev/configure +1431 -940
  473. data/src/cxx_supportlib/vendor-modified/libev/configure.ac +3 -3
  474. data/src/cxx_supportlib/vendor-modified/libev/depcomp +5 -5
  475. data/src/cxx_supportlib/vendor-modified/libev/ev++.h +109 -107
  476. data/src/cxx_supportlib/vendor-modified/libev/ev.c +807 -319
  477. data/src/cxx_supportlib/vendor-modified/libev/ev.h +111 -105
  478. data/src/cxx_supportlib/vendor-modified/libev/ev_epoll.c +42 -29
  479. data/src/cxx_supportlib/vendor-modified/libev/ev_iouring.c +694 -0
  480. data/src/cxx_supportlib/vendor-modified/libev/ev_kqueue.c +15 -9
  481. data/src/cxx_supportlib/vendor-modified/libev/ev_linuxaio.c +620 -0
  482. data/src/cxx_supportlib/vendor-modified/libev/ev_poll.c +19 -14
  483. data/src/cxx_supportlib/vendor-modified/libev/ev_port.c +8 -5
  484. data/src/cxx_supportlib/vendor-modified/libev/ev_select.c +6 -6
  485. data/src/cxx_supportlib/vendor-modified/libev/ev_vars.h +48 -3
  486. data/src/cxx_supportlib/vendor-modified/libev/ev_win32.c +2 -2
  487. data/src/cxx_supportlib/vendor-modified/libev/ev_wrap.h +72 -0
  488. data/src/cxx_supportlib/vendor-modified/libev/install-sh +23 -13
  489. data/src/cxx_supportlib/vendor-modified/libev/libev.m4 +6 -1
  490. data/src/cxx_supportlib/vendor-modified/libev/ltmain.sh +3581 -1993
  491. data/src/cxx_supportlib/vendor-modified/libev/missing +8 -8
  492. data/src/cxx_supportlib/vendor-modified/libev/mkinstalldirs +3 -3
  493. data/src/cxx_supportlib/vendor-modified/modp_b64_strict_aliasing.cpp +1 -1
  494. data/src/helper-scripts/backtrace-sanitizer.rb +1 -1
  495. data/src/helper-scripts/crash-watch.rb +1 -1
  496. data/src/helper-scripts/download_binaries/extconf.rb +1 -1
  497. data/src/helper-scripts/meteor-loader.rb +4 -1
  498. data/src/helper-scripts/node-loader.js +1 -1
  499. data/src/helper-scripts/prespawn +1 -1
  500. data/src/helper-scripts/rack-loader.rb +4 -1
  501. data/src/helper-scripts/rack-preloader.rb +4 -1
  502. data/src/helper-scripts/wsgi-loader.py +1 -1
  503. data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +1 -1
  504. data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c.cxxcodebuilder +1 -1
  505. data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +1 -1
  506. data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c.cxxcodebuilder +1 -1
  507. data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +1 -1
  508. data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c.cxxcodebuilder +1 -1
  509. data/src/nginx_module/Configuration.c +1 -1
  510. data/src/nginx_module/Configuration.h +1 -1
  511. data/src/nginx_module/ContentHandler.c +14 -2
  512. data/src/nginx_module/ContentHandler.h +1 -1
  513. data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +1 -1
  514. data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +1 -1
  515. data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c +1 -1
  516. data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c.cxxcodebuilder +1 -1
  517. data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +1 -1
  518. data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +1 -1
  519. data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +1 -1
  520. data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c.cxxcodebuilder +1 -1
  521. data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +1 -1
  522. data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
  523. data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +1 -1
  524. data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +1 -1
  525. data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +1 -1
  526. data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +1 -1
  527. data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +1 -1
  528. data/src/nginx_module/MainConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
  529. data/src/nginx_module/StaticContentHandler.c +1 -1
  530. data/src/nginx_module/StaticContentHandler.h +1 -1
  531. data/src/nginx_module/ngx_http_passenger_module.c +1 -1
  532. data/src/nginx_module/ngx_http_passenger_module.h +1 -1
  533. data/src/nodejs_supportlib/phusion_passenger/line_reader.js +1 -1
  534. data/src/ruby_native_extension/extconf.rb +1 -1
  535. data/src/ruby_native_extension/passenger_native_support.c +1 -1
  536. data/src/ruby_supportlib/phusion_passenger/abstract_installer.rb +1 -1
  537. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance.rb +3 -1
  538. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +3 -1
  539. data/src/ruby_supportlib/phusion_passenger/admin_tools/memory_stats.rb +4 -12
  540. data/src/ruby_supportlib/phusion_passenger/admin_tools.rb +3 -1
  541. data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +1 -1
  542. data/src/ruby_supportlib/phusion_passenger/apache2/config_utils.rb +7 -1
  543. data/src/ruby_supportlib/phusion_passenger/common_library.rb +11 -10
  544. data/src/ruby_supportlib/phusion_passenger/config/about_command.rb +3 -1
  545. data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +3 -1
  546. data/src/ruby_supportlib/phusion_passenger/config/api_call_command.rb +3 -1
  547. data/src/ruby_supportlib/phusion_passenger/config/build_native_support_command.rb +3 -1
  548. data/src/ruby_supportlib/phusion_passenger/config/command.rb +3 -1
  549. data/src/ruby_supportlib/phusion_passenger/config/compile_agent_command.rb +3 -1
  550. data/src/ruby_supportlib/phusion_passenger/config/compile_nginx_engine_command.rb +3 -1
  551. data/src/ruby_supportlib/phusion_passenger/config/detach_process_command.rb +3 -1
  552. data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +3 -1
  553. data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +3 -1
  554. data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +3 -1
  555. data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +3 -1
  556. data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +5 -1
  557. data/src/ruby_supportlib/phusion_passenger/config/list_instances_command.rb +3 -1
  558. data/src/ruby_supportlib/phusion_passenger/config/main.rb +3 -1
  559. data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +5 -2
  560. data/src/ruby_supportlib/phusion_passenger/config/reopen_logs_command.rb +8 -1
  561. data/src/ruby_supportlib/phusion_passenger/config/restart_app_command.rb +3 -1
  562. data/src/ruby_supportlib/phusion_passenger/config/system_metrics_command.rb +3 -1
  563. data/src/ruby_supportlib/phusion_passenger/config/system_properties_command.rb +3 -1
  564. data/src/ruby_supportlib/phusion_passenger/config/utils.rb +5 -1
  565. data/src/ruby_supportlib/phusion_passenger/config/validate_install_command.rb +3 -1
  566. data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +1 -1
  567. data/src/ruby_supportlib/phusion_passenger/constants.rb +5 -1
  568. data/src/ruby_supportlib/phusion_passenger/debug_logging.rb +3 -1
  569. data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +3 -1
  570. data/src/ruby_supportlib/phusion_passenger/message_channel.rb +1 -1
  571. data/src/ruby_supportlib/phusion_passenger/message_client.rb +1 -1
  572. data/src/ruby_supportlib/phusion_passenger/native_support.rb +1 -1
  573. data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +1 -1
  574. data/src/ruby_supportlib/phusion_passenger/packaging.rb +7 -3
  575. data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +3 -1
  576. data/src/ruby_supportlib/phusion_passenger/platform_info/apache_detector.rb +3 -1
  577. data/src/ruby_supportlib/phusion_passenger/platform_info/binary_compatibility.rb +3 -1
  578. data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +197 -11
  579. data/src/ruby_supportlib/phusion_passenger/platform_info/crypto.rb +2 -1
  580. data/src/ruby_supportlib/phusion_passenger/platform_info/curl.rb +3 -1
  581. data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +3 -1
  582. data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck.rb +4 -0
  583. data/src/ruby_supportlib/phusion_passenger/platform_info/linux.rb +3 -1
  584. data/src/ruby_supportlib/phusion_passenger/platform_info/networking.rb +3 -1
  585. data/src/ruby_supportlib/phusion_passenger/platform_info/openssl.rb +3 -1
  586. data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +3 -1
  587. data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +3 -1
  588. data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +3 -1
  589. data/src/ruby_supportlib/phusion_passenger/platform_info/zlib.rb +3 -1
  590. data/src/ruby_supportlib/phusion_passenger/platform_info.rb +3 -1
  591. data/src/ruby_supportlib/phusion_passenger/plugin.rb +1 -1
  592. data/src/ruby_supportlib/phusion_passenger/preloader_shared_helpers.rb +2 -1
  593. data/src/ruby_supportlib/phusion_passenger/public_api.rb +3 -1
  594. data/src/ruby_supportlib/phusion_passenger/rack/handler.rb +7 -1
  595. data/src/ruby_supportlib/phusion_passenger/rack/out_of_band_gc.rb +3 -1
  596. data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +7 -1
  597. data/src/ruby_supportlib/phusion_passenger/rack_handler.rb +13 -1
  598. data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +4 -7
  599. data/src/ruby_supportlib/phusion_passenger/request_handler.rb +1 -1
  600. data/src/ruby_supportlib/phusion_passenger/ruby_core_enhancements.rb +5 -1
  601. data/src/ruby_supportlib/phusion_passenger/ruby_core_io_enhancements.rb +1 -1
  602. data/src/ruby_supportlib/phusion_passenger/simple_benchmarking.rb +1 -1
  603. data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +3 -1
  604. data/src/ruby_supportlib/phusion_passenger/standalone/command.rb +3 -1
  605. data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +5 -1
  606. data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +5 -1
  607. data/src/ruby_supportlib/phusion_passenger/standalone/control_utils.rb +5 -1
  608. data/src/ruby_supportlib/phusion_passenger/standalone/main.rb +3 -1
  609. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +8 -2
  610. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +10 -8
  611. data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +3 -1
  612. data/src/ruby_supportlib/phusion_passenger/standalone/status_command.rb +3 -1
  613. data/src/ruby_supportlib/phusion_passenger/standalone/stop_command.rb +3 -1
  614. data/src/ruby_supportlib/phusion_passenger/standalone/version_command.rb +3 -1
  615. data/src/ruby_supportlib/phusion_passenger/utils/ansi_colors.rb +5 -1
  616. data/src/ruby_supportlib/phusion_passenger/utils/download.rb +5 -1
  617. data/src/ruby_supportlib/phusion_passenger/utils/file_system_watcher.rb +3 -1
  618. data/src/ruby_supportlib/phusion_passenger/utils/hosts_file_parser.rb +3 -1
  619. data/src/ruby_supportlib/phusion_passenger/utils/json.rb +4 -0
  620. data/src/ruby_supportlib/phusion_passenger/utils/lock.rb +3 -1
  621. data/src/ruby_supportlib/phusion_passenger/utils/native_support_utils.rb +5 -1
  622. data/src/ruby_supportlib/phusion_passenger/utils/progress_bar.rb +1 -1
  623. data/src/ruby_supportlib/phusion_passenger/utils/strscan.rb +3 -1
  624. data/src/ruby_supportlib/phusion_passenger/utils/tee_input.rb +2 -0
  625. data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +3 -1
  626. data/src/ruby_supportlib/phusion_passenger/utils/tmpio.rb +2 -0
  627. data/src/ruby_supportlib/phusion_passenger/utils/unseekable_socket.rb +5 -13
  628. data/src/ruby_supportlib/phusion_passenger/utils.rb +3 -1
  629. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +3 -1
  630. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/base.rb +3 -1
  631. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +3 -1
  632. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +3 -1
  633. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/utils.rb +5 -1
  634. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/version.rb +3 -1
  635. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/lock_file.rb +10 -6
  636. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/spawn.rb +4 -3
  637. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/version.rb +8 -4
  638. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +395 -579
  639. data/src/ruby_supportlib/phusion_passenger.rb +10 -8
  640. data/src/schema_printer/SchemaPrinterMain.cpp +1 -1
  641. data/src/schema_printer/SchemaPrinterMain.cpp.cxxcodebuilder +1 -1
  642. metadata +76 -36
  643. data/doc/DeveloperQuickstart.md +0 -70
  644. data/src/README.md +0 -7
  645. data/src/cxx_supportlib/vendor-copy/libuv/README.md +0 -245
  646. data/src/cxx_supportlib/vendor-copy/libuv/checksparse.sh +0 -234
  647. data/src/cxx_supportlib/vendor-copy/libuv/common.gypi +0 -210
  648. data/src/cxx_supportlib/vendor-copy/libuv/gyp_uv.py +0 -93
  649. data/src/cxx_supportlib/vendor-copy/libuv/include/android-ifaddrs.h +0 -54
  650. data/src/cxx_supportlib/vendor-copy/libuv/include/pthread-fixes.h +0 -72
  651. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/android-ifaddrs.c +0 -703
  652. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/atomic-ops.h +0 -77
  653. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-core.c +0 -899
  654. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-inotify.c +0 -285
  655. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-syscalls.c +0 -471
  656. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-syscalls.h +0 -158
  657. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/pthread-fixes.c +0 -104
  658. data/src/cxx_supportlib/vendor-copy/libuv/src/unix/spinlock.h +0 -53
  659. data/src/cxx_supportlib/vendor-copy/libuv/uv.gyp +0 -508
  660. /data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-aix.h → uv/aix.h} +0 -0
  661. /data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-bsd.h → uv/bsd.h} +0 -0
  662. /data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-sunos.h → uv/sunos.h} +0 -0
@@ -1,9 +1,9 @@
1
1
  #! /bin/sh
2
2
  # Common wrapper for a few potentially missing GNU programs.
3
3
 
4
- scriptversion=2013-10-28.13; # UTC
4
+ scriptversion=2018-03-07.03; # UTC
5
5
 
6
- # Copyright (C) 1996-2014 Free Software Foundation, Inc.
6
+ # Copyright (C) 1996-2018 Free Software Foundation, Inc.
7
7
  # Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
8
8
 
9
9
  # This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@ scriptversion=2013-10-28.13; # UTC
17
17
  # GNU General Public License for more details.
18
18
 
19
19
  # You should have received a copy of the GNU General Public License
20
- # along with this program. If not, see <http://www.gnu.org/licenses/>.
20
+ # along with this program. If not, see <https://www.gnu.org/licenses/>.
21
21
 
22
22
  # As a special exception to the GNU General Public License, if you
23
23
  # distribute this file as part of a program that contains a
@@ -101,9 +101,9 @@ else
101
101
  exit $st
102
102
  fi
103
103
 
104
- perl_URL=http://www.perl.org/
105
- flex_URL=http://flex.sourceforge.net/
106
- gnu_software_URL=http://www.gnu.org/software
104
+ perl_URL=https://www.perl.org/
105
+ flex_URL=https://github.com/westes/flex
106
+ gnu_software_URL=https://www.gnu.org/software
107
107
 
108
108
  program_details ()
109
109
  {
@@ -207,9 +207,9 @@ give_advice "$1" | sed -e '1s/^/WARNING: /' \
207
207
  exit $st
208
208
 
209
209
  # Local variables:
210
- # eval: (add-hook 'write-file-hooks 'time-stamp)
210
+ # eval: (add-hook 'before-save-hook 'time-stamp)
211
211
  # time-stamp-start: "scriptversion="
212
212
  # time-stamp-format: "%:y-%02m-%02d.%02H"
213
- # time-stamp-time-zone: "UTC"
213
+ # time-stamp-time-zone: "UTC0"
214
214
  # time-stamp-end: "; # UTC"
215
215
  # End:
@@ -1,7 +1,7 @@
1
1
  #! /bin/sh
2
2
  # mkinstalldirs --- make directory hierarchy
3
3
 
4
- scriptversion=2009-04-28.21; # UTC
4
+ scriptversion=2018-03-07.03; # UTC
5
5
 
6
6
  # Original author: Noah Friedman <friedman@prep.ai.mit.edu>
7
7
  # Created: 1993-05-16
@@ -154,9 +154,9 @@ exit $errstatus
154
154
  # Local Variables:
155
155
  # mode: shell-script
156
156
  # sh-indentation: 2
157
- # eval: (add-hook 'write-file-hooks 'time-stamp)
157
+ # eval: (add-hook 'before-save-hook 'time-stamp)
158
158
  # time-stamp-start: "scriptversion="
159
159
  # time-stamp-format: "%:y-%02m-%02d.%02H"
160
- # time-stamp-time-zone: "UTC"
160
+ # time-stamp-time-zone: "UTC0"
161
161
  # time-stamp-end: "; # UTC"
162
162
  # End:
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2014-2025 Asynchronous B.V.
3
+ * Copyright (c) 2014-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2013-2025 Asynchronous B.V.
3
+ # Copyright (c) 2013-2026 Asynchronous B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  # trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
- # Copyright (c) 2015-2025 Asynchronous B.V.
2
+ # Copyright (c) 2015-2026 Asynchronous B.V.
3
3
  #
4
4
  # Permission is hereby granted, free of charge, to any person obtaining
5
5
  # a copy of this software and associated documentation files (the
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2010-2025 Asynchronous B.V.
3
+ # Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  # trademarks of Asynchronous B.V.
@@ -2,7 +2,7 @@
2
2
  # encoding: binary
3
3
 
4
4
  # Phusion Passenger - https://www.phusionpassenger.com/
5
- # Copyright (c) 2010-2025 Asynchronous B.V.
5
+ # Copyright (c) 2010-2026 Asynchronous B.V.
6
6
  #
7
7
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
8
8
  # trademarks of Asynchronous B.V.
@@ -30,7 +30,9 @@ require 'thread'
30
30
  require 'logger'
31
31
 
32
32
  module PhusionPassenger
33
+
33
34
  module App
35
+
34
36
  def self.options
35
37
  @@options ||= {}
36
38
  @@options
@@ -254,4 +256,5 @@ module PhusionPassenger
254
256
  end
255
257
 
256
258
  end # module App
259
+
257
260
  end # module PhusionPassenger
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2025 Asynchronous B.V.
3
+ * Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2010-2025 Asynchronous B.V.
3
+ # Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  # trademarks of Asynchronous B.V.
@@ -2,7 +2,7 @@
2
2
  # encoding: binary
3
3
 
4
4
  # Phusion Passenger - https://www.phusionpassenger.com/
5
- # Copyright (c) 2013-2025 Asynchronous B.V.
5
+ # Copyright (c) 2013-2026 Asynchronous B.V.
6
6
  #
7
7
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
8
8
  # trademarks of Asynchronous B.V.
@@ -26,7 +26,9 @@
26
26
  # THE SOFTWARE.
27
27
 
28
28
  module PhusionPassenger
29
+
29
30
  module App
31
+
30
32
  def self.options
31
33
  @@options
32
34
  end
@@ -137,4 +139,5 @@ module PhusionPassenger
137
139
  LoaderSharedHelpers.after_handling_requests
138
140
 
139
141
  end # module App
142
+
140
143
  end # module PhusionPassenger
@@ -2,7 +2,7 @@
2
2
  # encoding: binary
3
3
 
4
4
  # Phusion Passenger - https://www.phusionpassenger.com/
5
- # Copyright (c) 2013-2025 Asynchronous B.V.
5
+ # Copyright (c) 2013-2026 Asynchronous B.V.
6
6
  #
7
7
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
8
8
  # trademarks of Asynchronous B.V.
@@ -28,7 +28,9 @@
28
28
  GC.copy_on_write_friendly = true if GC.respond_to?(:copy_on_write_friendly=)
29
29
 
30
30
  module PhusionPassenger
31
+
31
32
  module App
33
+
32
34
  def self.options
33
35
  @@options
34
36
  end
@@ -216,4 +218,5 @@ module PhusionPassenger
216
218
  end
217
219
 
218
220
  end # module App
221
+
219
222
  end # module PhusionPassenger
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env python
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2010-2025 Asynchronous B.V.
3
+ # Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2025 Asynchronous B.V.
3
+ * Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2025 Asynchronous B.V.
2
+ # Copyright (c) 2010-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2017-2025 Asynchronous B.V.
3
+ * Copyright (c) 2017-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2017-2025 Asynchronous B.V.
2
+ # Copyright (c) 2017-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2017-2025 Asynchronous B.V.
3
+ * Copyright (c) 2017-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2017-2025 Asynchronous B.V.
2
+ # Copyright (c) 2017-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * Copyright (C) Igor Sysoev
3
3
  * Copyright (C) 2007 Manlio Perillo (manlio.perillo@gmail.com)
4
- * Copyright (c) 2010-2025 Asynchronous B.V.
4
+ * Copyright (c) 2010-2026 Asynchronous B.V.
5
5
  *
6
6
  * Redistribution and use in source and binary forms, with or without
7
7
  * modification, are permitted provided that the following conditions
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * Copyright (C) Igor Sysoev
3
3
  * Copyright (C) 2007 Manlio Perillo (manlio.perillo@gmail.com)
4
- * Copyright (c) 2010-2025 Asynchronous B.V.
4
+ * Copyright (c) 2010-2026 Asynchronous B.V.
5
5
  *
6
6
  * Redistribution and use in source and binary forms, with or without
7
7
  * modification, are permitted provided that the following conditions
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * Copyright (C) Igor Sysoev
3
3
  * Copyright (C) 2007 Manlio Perillo (manlio.perillo@gmail.com)
4
- * Copyright (c) 2010-2025 Asynchronous B.V.
4
+ * Copyright (c) 2010-2026 Asynchronous B.V.
5
5
  *
6
6
  * Redistribution and use in source and binary forms, with or without
7
7
  * modification, are permitted provided that the following conditions
@@ -1304,6 +1304,7 @@ parse_status_line(ngx_http_request_t *r, passenger_context_t *context)
1304
1304
  return NGX_HTTP_SCGI_PARSE_NO_HEADER;
1305
1305
  }
1306
1306
 
1307
+ r->http_major = ch - '0';
1307
1308
  state = sw_major_digit;
1308
1309
  break;
1309
1310
 
@@ -1318,6 +1319,11 @@ parse_status_line(ngx_http_request_t *r, passenger_context_t *context)
1318
1319
  return NGX_HTTP_SCGI_PARSE_NO_HEADER;
1319
1320
  }
1320
1321
 
1322
+ if (r->http_major > 99) {
1323
+ return NGX_HTTP_SCGI_PARSE_NO_HEADER;
1324
+ }
1325
+
1326
+ r->http_major = r->http_major * 10 + (ch - '0');
1321
1327
  break;
1322
1328
 
1323
1329
  /* the first digit of minor HTTP version */
@@ -1326,6 +1332,7 @@ parse_status_line(ngx_http_request_t *r, passenger_context_t *context)
1326
1332
  return NGX_HTTP_SCGI_PARSE_NO_HEADER;
1327
1333
  }
1328
1334
 
1335
+ r->http_minor = ch - '0';
1329
1336
  state = sw_minor_digit;
1330
1337
  break;
1331
1338
 
@@ -1340,6 +1347,11 @@ parse_status_line(ngx_http_request_t *r, passenger_context_t *context)
1340
1347
  return NGX_HTTP_SCGI_PARSE_NO_HEADER;
1341
1348
  }
1342
1349
 
1350
+ if (r->http_minor > 99) {
1351
+ return NGX_HTTP_SCGI_PARSE_NO_HEADER;
1352
+ }
1353
+
1354
+ r->http_minor = r->http_minor * 10 + (ch - '0');
1343
1355
  break;
1344
1356
 
1345
1357
  /* HTTP status code */
@@ -1352,7 +1364,7 @@ parse_status_line(ngx_http_request_t *r, passenger_context_t *context)
1352
1364
  return NGX_HTTP_SCGI_PARSE_NO_HEADER;
1353
1365
  }
1354
1366
 
1355
- context->status = context->status * 10 + ch - '0';
1367
+ context->status = context->status * 10 + (ch - '0');
1356
1368
 
1357
1369
  if (++context->status_count == 3) {
1358
1370
  state = sw_space_after_status;
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * Copyright (C) Igor Sysoev
3
3
  * Copyright (C) 2007 Manlio Perillo (manlio.perillo@gmail.com)
4
- * Copyright (c) 2010-2025 Asynchronous B.V.
4
+ * Copyright (c) 2010-2026 Asynchronous B.V.
5
5
  *
6
6
  * Redistribution and use in source and binary forms, with or without
7
7
  * modification, are permitted provided that the following conditions
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2025 Asynchronous B.V.
3
+ * Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2025 Asynchronous B.V.
2
+ # Copyright (c) 2010-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2025 Asynchronous B.V.
3
+ * Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2025 Asynchronous B.V.
2
+ # Copyright (c) 2010-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2025 Asynchronous B.V.
3
+ * Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2025 Asynchronous B.V.
2
+ # Copyright (c) 2010-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2025 Asynchronous B.V.
3
+ * Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2025 Asynchronous B.V.
2
+ # Copyright (c) 2010-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2025 Asynchronous B.V.
3
+ * Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2025 Asynchronous B.V.
2
+ # Copyright (c) 2010-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2025 Asynchronous B.V.
3
+ * Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2025 Asynchronous B.V.
2
+ # Copyright (c) 2010-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2017-2025 Asynchronous B.V.
3
+ * Copyright (c) 2017-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2017-2025 Asynchronous B.V.
2
+ # Copyright (c) 2017-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2025 Asynchronous B.V.
3
+ * Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2025 Asynchronous B.V.
2
+ # Copyright (c) 2010-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Copyright (C) Igor Sysoev
3
- * Copyright (c) 2010-2025 Asynchronous B.V.
3
+ * Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  *
5
5
  * Redistribution and use in source and binary forms, with or without
6
6
  * modification, are permitted provided that the following conditions
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * Copyright (C) Igor Sysoev
3
3
  * Copyright (C) 2007 Manlio Perillo (manlio.perillo@gmail.com)
4
- * Copyright (c) 2010-2025 Asynchronous B.V.
4
+ * Copyright (c) 2010-2026 Asynchronous B.V.
5
5
  *
6
6
  * Redistribution and use in source and binary forms, with or without
7
7
  * modification, are permitted provided that the following conditions
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * Copyright (C) Igor Sysoev
3
3
  * Copyright (C) 2007 Manlio Perillo (manlio.perillo@gmail.com)
4
- * Copyright (c) 2010-2025 Asynchronous B.V.
4
+ * Copyright (c) 2010-2026 Asynchronous B.V.
5
5
  *
6
6
  * Redistribution and use in source and binary forms, with or without
7
7
  * modification, are permitted provided that the following conditions
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * Copyright (C) Igor Sysoev
3
3
  * Copyright (C) 2007 Manlio Perillo (manlio.perillo@gmail.com)
4
- * Copyright (c) 2010-2025 Asynchronous B.V.
4
+ * Copyright (c) 2010-2026 Asynchronous B.V.
5
5
  *
6
6
  * Redistribution and use in source and binary forms, with or without
7
7
  * modification, are permitted provided that the following conditions
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2012-2025 Asynchronous B.V.
3
+ * Copyright (c) 2012-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2025 Asynchronous B.V.
2
+ # Copyright (c) 2010-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2025 Asynchronous B.V.
3
+ * Copyright (c) 2010-2026 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Asynchronous B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2025 Asynchronous B.V.
2
+ # Copyright (c) 2010-2026 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Asynchronous B.V.
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
 
3
3
  # Phusion Passenger - https://www.phusionpassenger.com/
4
- # Copyright (c) 2014-2025 Asynchronous B.V.
4
+ # Copyright (c) 2014-2026 Asynchronous B.V.
5
5
  #
6
6
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
7
7
  # trademarks of Asynchronous B.V.
@@ -30,6 +30,7 @@ PhusionPassenger.require_passenger_lib 'platform_info/operating_system'
30
30
  PhusionPassenger.require_passenger_lib 'utils/json'
31
31
 
32
32
  module PhusionPassenger
33
+
33
34
  module AdminTools
34
35
 
35
36
  class Instance
@@ -240,4 +241,5 @@ module PhusionPassenger
240
241
  end
241
242
 
242
243
  end # module AdminTools
244
+
243
245
  end # module PhusionPassenger
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
 
3
3
  # Phusion Passenger - https://www.phusionpassenger.com/
4
- # Copyright (c) 2014-2025 Asynchronous B.V.
4
+ # Copyright (c) 2014-2026 Asynchronous B.V.
5
5
  #
6
6
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
7
7
  # trademarks of Asynchronous B.V.
@@ -28,6 +28,7 @@ require 'fileutils'
28
28
  PhusionPassenger.require_passenger_lib 'admin_tools/instance'
29
29
 
30
30
  module PhusionPassenger
31
+
31
32
  module AdminTools
32
33
 
33
34
  class InstanceRegistry
@@ -130,4 +131,5 @@ module PhusionPassenger
130
131
  end
131
132
 
132
133
  end # module AdminTools
134
+
133
135
  end # module PhusionPassenger