passenger 5.1.2 → 5.1.3

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of passenger might be problematic. Click here for more details.

Files changed (404) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +19 -2
  3. data/LICENSE +1 -1
  4. data/bin/passenger +1 -1
  5. data/bin/passenger-config +1 -1
  6. data/bin/passenger-install-apache2-module +12 -3
  7. data/bin/passenger-install-nginx-module +1 -1
  8. data/bin/passenger-memory-stats +1 -1
  9. data/bin/passenger-status +1 -1
  10. data/build/agent.rb +1 -1
  11. data/build/apache2.rb +1 -1
  12. data/build/basics.rb +1 -1
  13. data/build/common_library.rb +1 -1
  14. data/build/cxx_tests.rb +1 -1
  15. data/build/documentation.rb +1 -1
  16. data/build/integration_tests.rb +1 -1
  17. data/build/misc.rb +1 -1
  18. data/build/nginx.rb +1 -1
  19. data/build/node_tests.rb +1 -1
  20. data/build/oxt_tests.rb +1 -1
  21. data/build/packaging.rb +15 -2
  22. data/build/ruby_extension.rb +1 -1
  23. data/build/ruby_tests.rb +1 -1
  24. data/build/support/cplusplus.rb +4 -3
  25. data/build/support/cxx_dependency_map.rb +2 -1
  26. data/build/support/general.rb +1 -1
  27. data/build/test_basics.rb +1 -1
  28. data/dev/ci/run_travis.sh +2 -1
  29. data/dev/copy_boost_headers +3 -3
  30. data/dev/index_cxx_dependencies.rb +4 -2
  31. data/doc/Users guide Apache.html +1 -1
  32. data/resources/templates/error_layout.html.template +1 -1
  33. data/resources/templates/undisclosed_error.html.template +1 -1
  34. data/src/agent/AgentMain.cpp +1 -1
  35. data/src/agent/Core/ApiServer.h +1 -1
  36. data/src/agent/Core/ApplicationPool/AbstractSession.h +1 -1
  37. data/src/agent/Core/ApplicationPool/BasicGroupInfo.h +1 -1
  38. data/src/agent/Core/ApplicationPool/BasicProcessInfo.h +1 -1
  39. data/src/agent/Core/ApplicationPool/Common.h +1 -1
  40. data/src/agent/Core/ApplicationPool/Context.h +1 -1
  41. data/src/agent/Core/ApplicationPool/ErrorRenderer.h +1 -1
  42. data/src/agent/Core/ApplicationPool/Group.h +1 -1
  43. data/src/agent/Core/ApplicationPool/Group/InitializationAndShutdown.cpp +1 -1
  44. data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +1 -1
  45. data/src/agent/Core/ApplicationPool/Group/LifetimeAndBasics.cpp +1 -1
  46. data/src/agent/Core/ApplicationPool/Group/Miscellaneous.cpp +1 -1
  47. data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +5 -5
  48. data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +1 -1
  49. data/src/agent/Core/ApplicationPool/Group/SessionManagement.cpp +1 -1
  50. data/src/agent/Core/ApplicationPool/Group/SpawningAndRestarting.cpp +13 -13
  51. data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +1 -1
  52. data/src/agent/Core/ApplicationPool/Group/Verification.cpp +1 -1
  53. data/src/agent/Core/ApplicationPool/Implementation.cpp +1 -1
  54. data/src/agent/Core/ApplicationPool/Options.h +1 -1
  55. data/src/agent/Core/ApplicationPool/Pool.h +1 -1
  56. data/src/agent/Core/ApplicationPool/Pool/AnalyticsCollection.cpp +4 -4
  57. data/src/agent/Core/ApplicationPool/Pool/GarbageCollection.cpp +1 -1
  58. data/src/agent/Core/ApplicationPool/Pool/GeneralUtils.cpp +1 -1
  59. data/src/agent/Core/ApplicationPool/Pool/GroupUtils.cpp +1 -1
  60. data/src/agent/Core/ApplicationPool/Pool/InitializationAndShutdown.cpp +1 -1
  61. data/src/agent/Core/ApplicationPool/Pool/Miscellaneous.cpp +1 -1
  62. data/src/agent/Core/ApplicationPool/Pool/ProcessUtils.cpp +1 -1
  63. data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +1 -1
  64. data/src/agent/Core/ApplicationPool/Process.h +1 -1
  65. data/src/agent/Core/ApplicationPool/Session.h +1 -1
  66. data/src/agent/Core/ApplicationPool/Socket.h +1 -1
  67. data/src/agent/Core/ApplicationPool/TestSession.h +1 -1
  68. data/src/agent/Core/Controller.h +1 -1
  69. data/src/agent/Core/Controller/AppResponse.h +1 -1
  70. data/src/agent/Core/Controller/BufferBody.cpp +1 -1
  71. data/src/agent/Core/Controller/CheckoutSession.cpp +1 -1
  72. data/src/agent/Core/Controller/Client.h +1 -1
  73. data/src/agent/Core/Controller/ForwardResponse.cpp +1 -1
  74. data/src/agent/Core/Controller/Hooks.cpp +1 -1
  75. data/src/agent/Core/Controller/Implementation.cpp +1 -1
  76. data/src/agent/Core/Controller/InitRequest.cpp +1 -1
  77. data/src/agent/Core/Controller/InitializationAndShutdown.cpp +1 -1
  78. data/src/agent/Core/Controller/InternalUtils.cpp +1 -1
  79. data/src/agent/Core/Controller/Miscellaneous.cpp +1 -1
  80. data/src/agent/Core/Controller/Request.h +1 -1
  81. data/src/agent/Core/Controller/SendRequest.cpp +1 -1
  82. data/src/agent/Core/Controller/StateInspectionAndConfiguration.cpp +1 -1
  83. data/src/agent/Core/Controller/TurboCaching.h +1 -1
  84. data/src/agent/Core/CoreMain.cpp +2 -2
  85. data/src/agent/Core/OptionParser.h +1 -1
  86. data/src/agent/Core/ResponseCache.h +1 -1
  87. data/src/agent/Core/SecurityUpdateChecker.h +5 -115
  88. data/src/agent/Core/SpawningKit/BackgroundIOCapturer.h +7 -7
  89. data/src/agent/Core/SpawningKit/Config.h +1 -1
  90. data/src/agent/Core/SpawningKit/DirectSpawner.h +12 -7
  91. data/src/agent/Core/SpawningKit/DummySpawner.h +1 -1
  92. data/src/agent/Core/SpawningKit/Factory.h +1 -1
  93. data/src/agent/Core/SpawningKit/Options.h +1 -1
  94. data/src/agent/Core/SpawningKit/PipeWatcher.h +1 -1
  95. data/src/agent/Core/SpawningKit/Result.h +1 -1
  96. data/src/agent/Core/SpawningKit/SmartSpawner.h +13 -8
  97. data/src/agent/Core/SpawningKit/Spawner.h +8 -5
  98. data/src/agent/Core/SpawningKit/UserSwitchingRules.h +1 -1
  99. data/src/agent/Core/UnionStation/Connection.h +3 -3
  100. data/src/agent/Core/UnionStation/Context.h +1 -1
  101. data/src/agent/Core/UnionStation/StopwatchLog.h +1 -1
  102. data/src/agent/Core/UnionStation/Transaction.h +1 -1
  103. data/src/agent/Shared/ApiServerUtils.h +1 -1
  104. data/src/agent/Shared/ApplicationPoolApiKey.h +1 -1
  105. data/src/agent/Shared/Base.cpp +1 -1
  106. data/src/agent/Shared/Base.h +1 -1
  107. data/src/agent/SpawnPreparer/SpawnPreparerMain.cpp +1 -1
  108. data/src/agent/SystemMetrics/SystemMetricsMain.cpp +1 -1
  109. data/src/agent/TempDirToucher/TempDirToucherMain.cpp +1 -1
  110. data/src/agent/UstRouter/ApiServer.h +1 -1
  111. data/src/agent/UstRouter/Client.h +1 -1
  112. data/src/agent/UstRouter/Controller.h +1 -1
  113. data/src/agent/UstRouter/FileSink.h +1 -1
  114. data/src/agent/UstRouter/LogSink.h +1 -1
  115. data/src/agent/UstRouter/OptionParser.h +1 -1
  116. data/src/agent/UstRouter/RemoteSender.h +1 -1
  117. data/src/agent/UstRouter/RemoteSink.h +1 -1
  118. data/src/agent/UstRouter/Transaction.h +1 -1
  119. data/src/agent/UstRouter/UstRouterMain.cpp +2 -2
  120. data/src/agent/Watchdog/AgentWatcher.cpp +14 -14
  121. data/src/agent/Watchdog/ApiServer.h +1 -1
  122. data/src/agent/Watchdog/CoreWatcher.cpp +1 -1
  123. data/src/agent/Watchdog/InstanceDirToucher.cpp +6 -6
  124. data/src/agent/Watchdog/UstRouterWatcher.cpp +1 -1
  125. data/src/agent/Watchdog/WatchdogMain.cpp +5 -5
  126. data/src/apache2_module/Bucket.cpp +1 -1
  127. data/src/apache2_module/Bucket.h +1 -1
  128. data/src/apache2_module/Configuration.cpp +1 -1
  129. data/src/apache2_module/Configuration.h +1 -1
  130. data/src/apache2_module/Configuration.hpp +1 -1
  131. data/src/apache2_module/ConfigurationCommands.cpp +1 -1
  132. data/src/apache2_module/ConfigurationCommands.cpp.cxxcodebuilder +1 -1
  133. data/src/apache2_module/ConfigurationFields.hpp +1 -1
  134. data/src/apache2_module/ConfigurationFields.hpp.cxxcodebuilder +1 -1
  135. data/src/apache2_module/ConfigurationSetters.cpp +1 -1
  136. data/src/apache2_module/ConfigurationSetters.cpp.cxxcodebuilder +1 -1
  137. data/src/apache2_module/CreateDirConfig.cpp +1 -1
  138. data/src/apache2_module/CreateDirConfig.cpp.cxxcodebuilder +1 -1
  139. data/src/apache2_module/DirectoryMapper.h +1 -1
  140. data/src/apache2_module/Hooks.cpp +5 -5
  141. data/src/apache2_module/Hooks.h +1 -1
  142. data/src/apache2_module/MergeDirConfig.cpp +1 -1
  143. data/src/apache2_module/MergeDirConfig.cpp.cxxcodebuilder +1 -1
  144. data/src/apache2_module/SetHeaders.cpp +1 -1
  145. data/src/apache2_module/SetHeaders.cpp.cxxcodebuilder +1 -1
  146. data/src/apache2_module/mod_passenger.c +1 -1
  147. data/src/cxx_supportlib/Algorithms/MovingAverage.h +1 -1
  148. data/src/cxx_supportlib/AppTypes.cpp +1 -1
  149. data/src/cxx_supportlib/AppTypes.h +1 -1
  150. data/src/cxx_supportlib/BackgroundEventLoop.cpp +1 -1
  151. data/src/cxx_supportlib/BackgroundEventLoop.h +1 -1
  152. data/src/cxx_supportlib/Constants.h +2 -2
  153. data/src/cxx_supportlib/Constants.h.cxxcodebuilder +1 -1
  154. data/src/cxx_supportlib/Crypto.cpp +28 -7
  155. data/src/cxx_supportlib/Crypto.h +2 -1
  156. data/src/cxx_supportlib/DataStructures/HashedStaticString.h +1 -1
  157. data/src/cxx_supportlib/DataStructures/LString.cpp +1 -1
  158. data/src/cxx_supportlib/DataStructures/LString.h +1 -1
  159. data/src/cxx_supportlib/DataStructures/StringKeyTable.h +1 -1
  160. data/src/cxx_supportlib/Exceptions.cpp +1 -1
  161. data/src/cxx_supportlib/Exceptions.h +1 -1
  162. data/src/cxx_supportlib/FileDescriptor.h +4 -4
  163. data/src/cxx_supportlib/Hooks.h +1 -1
  164. data/src/cxx_supportlib/InstanceDirectory.h +1 -1
  165. data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +1 -1
  166. data/src/cxx_supportlib/Logging.cpp +1 -1
  167. data/src/cxx_supportlib/Logging.h +3 -3
  168. data/src/cxx_supportlib/LveLoggingDecorator.h +1 -1
  169. data/src/cxx_supportlib/MemoryKit/mbuf.cpp +1 -1
  170. data/src/cxx_supportlib/MemoryKit/mbuf.h +1 -1
  171. data/src/cxx_supportlib/MemoryKit/palloc.cpp +1 -1
  172. data/src/cxx_supportlib/MemoryKit/palloc.h +1 -1
  173. data/src/cxx_supportlib/MessageClient.h +1 -1
  174. data/src/cxx_supportlib/MessageReadersWriters.h +1 -1
  175. data/src/cxx_supportlib/RandomGenerator.h +2 -2
  176. data/src/cxx_supportlib/ResourceLocator.h +1 -1
  177. data/src/cxx_supportlib/SafeLibev.h +1 -1
  178. data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +1 -1
  179. data/src/cxx_supportlib/ServerKit/Channel.h +1 -1
  180. data/src/cxx_supportlib/ServerKit/Client.h +1 -1
  181. data/src/cxx_supportlib/ServerKit/ClientRef.h +1 -1
  182. data/src/cxx_supportlib/ServerKit/Context.h +1 -1
  183. data/src/cxx_supportlib/ServerKit/CookieUtils.h +1 -1
  184. data/src/cxx_supportlib/ServerKit/Errors.h +1 -1
  185. data/src/cxx_supportlib/ServerKit/FdSinkChannel.h +1 -1
  186. data/src/cxx_supportlib/ServerKit/FdSourceChannel.h +1 -1
  187. data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +1 -1
  188. data/src/cxx_supportlib/ServerKit/FileBufferedFdSinkChannel.h +1 -1
  189. data/src/cxx_supportlib/ServerKit/HeaderTable.h +1 -1
  190. data/src/cxx_supportlib/ServerKit/Hooks.h +1 -1
  191. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +1 -1
  192. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParserState.h +1 -1
  193. data/src/cxx_supportlib/ServerKit/HttpClient.h +1 -1
  194. data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +1 -1
  195. data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +1 -1
  196. data/src/cxx_supportlib/ServerKit/HttpRequest.h +1 -1
  197. data/src/cxx_supportlib/ServerKit/HttpRequestRef.h +1 -1
  198. data/src/cxx_supportlib/ServerKit/HttpServer.h +1 -1
  199. data/src/cxx_supportlib/ServerKit/Implementation.cpp +1 -1
  200. data/src/cxx_supportlib/ServerKit/Server.h +1 -1
  201. data/src/cxx_supportlib/StaticString.h +1 -1
  202. data/src/cxx_supportlib/UnionStationFilterSupport.cpp +1 -1
  203. data/src/cxx_supportlib/UnionStationFilterSupport.h +1 -1
  204. data/src/cxx_supportlib/Utils.cpp +16 -16
  205. data/src/cxx_supportlib/Utils.h +1 -1
  206. data/src/cxx_supportlib/Utils/AnsiColorConstants.h +1 -1
  207. data/src/cxx_supportlib/Utils/BlockingQueue.h +1 -1
  208. data/src/cxx_supportlib/Utils/BufferedIO.h +1 -1
  209. data/src/cxx_supportlib/Utils/CachedFileStat.cpp +1 -1
  210. data/src/cxx_supportlib/Utils/CachedFileStat.h +1 -1
  211. data/src/cxx_supportlib/Utils/CachedFileStat.hpp +1 -1
  212. data/src/cxx_supportlib/Utils/ClassUtils.h +1 -1
  213. data/src/cxx_supportlib/Utils/Curl.h +1 -1
  214. data/src/cxx_supportlib/Utils/DateParsing.h +1 -1
  215. data/src/cxx_supportlib/Utils/FastStringStream.h +1 -1
  216. data/src/cxx_supportlib/Utils/FileChangeChecker.h +1 -1
  217. data/src/cxx_supportlib/Utils/HashMap.h +1 -1
  218. data/src/cxx_supportlib/Utils/Hasher.cpp +1 -1
  219. data/src/cxx_supportlib/Utils/Hasher.h +1 -1
  220. data/src/cxx_supportlib/Utils/HttpConstants.h +1 -1
  221. data/src/cxx_supportlib/Utils/IOUtils.cpp +1 -1
  222. data/src/cxx_supportlib/Utils/IOUtils.h +1 -1
  223. data/src/cxx_supportlib/Utils/IniFile.h +1 -1
  224. data/src/cxx_supportlib/Utils/JsonUtils.h +1 -1
  225. data/src/cxx_supportlib/Utils/LargeFiles.h +1 -1
  226. data/src/cxx_supportlib/Utils/MemZeroGuard.h +1 -1
  227. data/src/cxx_supportlib/Utils/MemoryBarrier.h +1 -1
  228. data/src/cxx_supportlib/Utils/MessageIO.h +1 -1
  229. data/src/cxx_supportlib/Utils/MessagePassing.h +1 -1
  230. data/src/cxx_supportlib/Utils/OptionParsing.h +1 -1
  231. data/src/cxx_supportlib/Utils/ProcessMetricsCollector.h +2 -3
  232. data/src/cxx_supportlib/Utils/ReleaseableScopedPointer.h +1 -1
  233. data/src/cxx_supportlib/Utils/ScopeGuard.h +5 -5
  234. data/src/cxx_supportlib/Utils/SpeedMeter.h +1 -1
  235. data/src/cxx_supportlib/Utils/StrIntUtils.cpp +1 -1
  236. data/src/cxx_supportlib/Utils/StrIntUtils.h +1 -1
  237. data/src/cxx_supportlib/Utils/StrIntUtilsNoStrictAliasing.cpp +1 -1
  238. data/src/cxx_supportlib/Utils/StringMap.h +1 -1
  239. data/src/cxx_supportlib/Utils/StringScanning.h +1 -1
  240. data/src/cxx_supportlib/Utils/SystemMetricsCollector.h +1 -1
  241. data/src/cxx_supportlib/Utils/SystemTime.cpp +1 -1
  242. data/src/cxx_supportlib/Utils/SystemTime.h +1 -1
  243. data/src/cxx_supportlib/Utils/Timer.h +1 -1
  244. data/src/cxx_supportlib/Utils/VariantMap.h +1 -1
  245. data/src/cxx_supportlib/WatchdogLauncher.cpp +2 -2
  246. data/src/cxx_supportlib/WatchdogLauncher.h +9 -9
  247. data/src/cxx_supportlib/oxt/backtrace.hpp +1 -1
  248. data/src/cxx_supportlib/oxt/detail/backtrace_disabled.hpp +1 -1
  249. data/src/cxx_supportlib/oxt/detail/backtrace_enabled.hpp +1 -1
  250. data/src/cxx_supportlib/oxt/detail/context.hpp +1 -1
  251. data/src/cxx_supportlib/oxt/detail/spin_lock_darwin.hpp +1 -1
  252. data/src/cxx_supportlib/oxt/detail/spin_lock_gcc_x86.hpp +1 -1
  253. data/src/cxx_supportlib/oxt/detail/spin_lock_portable.hpp +1 -1
  254. data/src/cxx_supportlib/oxt/detail/spin_lock_pthreads.hpp +1 -1
  255. data/src/cxx_supportlib/oxt/detail/tracable_exception_disabled.hpp +1 -1
  256. data/src/cxx_supportlib/oxt/detail/tracable_exception_enabled.hpp +1 -1
  257. data/src/cxx_supportlib/oxt/dynamic_thread_group.hpp +3 -3
  258. data/src/cxx_supportlib/oxt/implementation.cpp +1 -1
  259. data/src/cxx_supportlib/oxt/initialize.hpp +1 -1
  260. data/src/cxx_supportlib/oxt/macros.hpp +1 -1
  261. data/src/cxx_supportlib/oxt/spin_lock.hpp +1 -1
  262. data/src/cxx_supportlib/oxt/system_calls.cpp +4 -4
  263. data/src/cxx_supportlib/oxt/system_calls.hpp +2 -2
  264. data/src/cxx_supportlib/oxt/thread.hpp +1 -1
  265. data/src/cxx_supportlib/oxt/tracable_exception.hpp +1 -1
  266. data/src/cxx_supportlib/vendor-copy/adhoc_lve.h +1 -1
  267. data/src/cxx_supportlib/vendor-modified/modp_b64_strict_aliasing.cpp +1 -1
  268. data/src/helper-scripts/backtrace-sanitizer.rb +1 -1
  269. data/src/helper-scripts/crash-watch.rb +1 -1
  270. data/src/helper-scripts/download_binaries/extconf.rb +1 -1
  271. data/src/helper-scripts/meteor-loader.rb +1 -1
  272. data/src/helper-scripts/node-loader.js +1 -1
  273. data/src/helper-scripts/prespawn +1 -1
  274. data/src/helper-scripts/rack-loader.rb +6 -6
  275. data/src/helper-scripts/rack-preloader.rb +7 -7
  276. data/src/helper-scripts/wsgi-loader.py +1 -1
  277. data/src/nginx_module/CacheLocationConfig.c +1 -1
  278. data/src/nginx_module/CacheLocationConfig.c.cxxcodebuilder +1 -1
  279. data/src/nginx_module/Configuration.c +1 -1
  280. data/src/nginx_module/Configuration.h +1 -1
  281. data/src/nginx_module/ConfigurationCommands.c +1 -1
  282. data/src/nginx_module/ConfigurationCommands.c.cxxcodebuilder +1 -1
  283. data/src/nginx_module/ContentHandler.c +1 -1
  284. data/src/nginx_module/ContentHandler.h +1 -1
  285. data/src/nginx_module/CreateLocationConfig.c +1 -1
  286. data/src/nginx_module/CreateLocationConfig.c.cxxcodebuilder +1 -1
  287. data/src/nginx_module/LocationConfig.h +1 -1
  288. data/src/nginx_module/LocationConfig.h.cxxcodebuilder +1 -1
  289. data/src/nginx_module/MergeLocationConfig.c +1 -1
  290. data/src/nginx_module/MergeLocationConfig.c.cxxcodebuilder +1 -1
  291. data/src/nginx_module/StaticContentHandler.c +1 -1
  292. data/src/nginx_module/StaticContentHandler.h +1 -1
  293. data/src/nginx_module/ngx_http_passenger_module.c +1 -1
  294. data/src/nginx_module/ngx_http_passenger_module.h +1 -1
  295. data/src/nodejs_supportlib/phusion_passenger/line_reader.js +1 -1
  296. data/src/nodejs_supportlib/phusion_passenger/log_express.js +1 -1
  297. data/src/nodejs_supportlib/phusion_passenger/log_mongodb.js +1 -1
  298. data/src/nodejs_supportlib/phusion_passenger/ustreporter.js +2 -2
  299. data/src/nodejs_supportlib/phusion_passenger/ustrouter_connector.js +2 -2
  300. data/src/ruby_native_extension/extconf.rb +1 -1
  301. data/src/ruby_native_extension/passenger_native_support.c +1 -1
  302. data/src/ruby_supportlib/phusion_passenger.rb +4 -4
  303. data/src/ruby_supportlib/phusion_passenger/abstract_installer.rb +2 -2
  304. data/src/ruby_supportlib/phusion_passenger/admin_tools.rb +1 -1
  305. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance.rb +1 -1
  306. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +1 -1
  307. data/src/ruby_supportlib/phusion_passenger/admin_tools/memory_stats.rb +1 -1
  308. data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +1 -1
  309. data/src/ruby_supportlib/phusion_passenger/common_library.rb +1 -1
  310. data/src/ruby_supportlib/phusion_passenger/config/about_command.rb +1 -1
  311. data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +1 -1
  312. data/src/ruby_supportlib/phusion_passenger/config/api_call_command.rb +1 -1
  313. data/src/ruby_supportlib/phusion_passenger/config/build_native_support_command.rb +1 -1
  314. data/src/ruby_supportlib/phusion_passenger/config/command.rb +1 -1
  315. data/src/ruby_supportlib/phusion_passenger/config/compile_agent_command.rb +1 -1
  316. data/src/ruby_supportlib/phusion_passenger/config/compile_nginx_engine_command.rb +1 -1
  317. data/src/ruby_supportlib/phusion_passenger/config/detach_process_command.rb +1 -1
  318. data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +1 -1
  319. data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +1 -1
  320. data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +1 -1
  321. data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +1 -0
  322. data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +4 -4
  323. data/src/ruby_supportlib/phusion_passenger/config/list_instances_command.rb +1 -1
  324. data/src/ruby_supportlib/phusion_passenger/config/main.rb +1 -1
  325. data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +1 -1
  326. data/src/ruby_supportlib/phusion_passenger/config/reopen_logs_command.rb +1 -1
  327. data/src/ruby_supportlib/phusion_passenger/config/restart_app_command.rb +1 -1
  328. data/src/ruby_supportlib/phusion_passenger/config/system_metrics_command.rb +1 -1
  329. data/src/ruby_supportlib/phusion_passenger/config/utils.rb +1 -1
  330. data/src/ruby_supportlib/phusion_passenger/config/validate_install_command.rb +1 -1
  331. data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +1 -1
  332. data/src/ruby_supportlib/phusion_passenger/constants.rb +1 -1
  333. data/src/ruby_supportlib/phusion_passenger/debug_logging.rb +1 -1
  334. data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +1 -1
  335. data/src/ruby_supportlib/phusion_passenger/message_channel.rb +1 -1
  336. data/src/ruby_supportlib/phusion_passenger/message_client.rb +1 -1
  337. data/src/ruby_supportlib/phusion_passenger/native_support.rb +1 -1
  338. data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +1 -1
  339. data/src/ruby_supportlib/phusion_passenger/packaging.rb +1 -1
  340. data/src/ruby_supportlib/phusion_passenger/platform_info.rb +1 -1
  341. data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +16 -4
  342. data/src/ruby_supportlib/phusion_passenger/platform_info/apache_detector.rb +1 -1
  343. data/src/ruby_supportlib/phusion_passenger/platform_info/binary_compatibility.rb +1 -1
  344. data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +1 -1
  345. data/src/ruby_supportlib/phusion_passenger/platform_info/crypto.rb +1 -1
  346. data/src/ruby_supportlib/phusion_passenger/platform_info/curl.rb +1 -1
  347. data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +1 -1
  348. data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck.rb +12 -3
  349. data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/apache2.rb +21 -2
  350. data/src/ruby_supportlib/phusion_passenger/platform_info/linux.rb +1 -1
  351. data/src/ruby_supportlib/phusion_passenger/platform_info/macos.rb +45 -0
  352. data/src/ruby_supportlib/phusion_passenger/platform_info/openssl.rb +1 -1
  353. data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +1 -1
  354. data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +1 -1
  355. data/src/ruby_supportlib/phusion_passenger/platform_info/zlib.rb +1 -1
  356. data/src/ruby_supportlib/phusion_passenger/plugin.rb +1 -1
  357. data/src/ruby_supportlib/phusion_passenger/preloader_shared_helpers.rb +1 -1
  358. data/src/ruby_supportlib/phusion_passenger/public_api.rb +1 -1
  359. data/src/ruby_supportlib/phusion_passenger/rack/out_of_band_gc.rb +1 -1
  360. data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +1 -1
  361. data/src/ruby_supportlib/phusion_passenger/rack_handler.rb +1 -1
  362. data/src/ruby_supportlib/phusion_passenger/request_handler.rb +1 -1
  363. data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +1 -1
  364. data/src/ruby_supportlib/phusion_passenger/ruby_core_enhancements.rb +1 -1
  365. data/src/ruby_supportlib/phusion_passenger/ruby_core_io_enhancements.rb +1 -1
  366. data/src/ruby_supportlib/phusion_passenger/simple_benchmarking.rb +1 -1
  367. data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +1 -1
  368. data/src/ruby_supportlib/phusion_passenger/standalone/command.rb +1 -1
  369. data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +1 -1
  370. data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +1 -1
  371. data/src/ruby_supportlib/phusion_passenger/standalone/control_utils.rb +1 -1
  372. data/src/ruby_supportlib/phusion_passenger/standalone/main.rb +1 -1
  373. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +1 -1
  374. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +1 -1
  375. data/src/ruby_supportlib/phusion_passenger/standalone/status_command.rb +1 -1
  376. data/src/ruby_supportlib/phusion_passenger/standalone/stop_command.rb +1 -1
  377. data/src/ruby_supportlib/phusion_passenger/standalone/version_command.rb +1 -1
  378. data/src/ruby_supportlib/phusion_passenger/utils.rb +1 -1
  379. data/src/ruby_supportlib/phusion_passenger/utils/ansi_colors.rb +1 -1
  380. data/src/ruby_supportlib/phusion_passenger/utils/download.rb +1 -1
  381. data/src/ruby_supportlib/phusion_passenger/utils/file_system_watcher.rb +1 -1
  382. data/src/ruby_supportlib/phusion_passenger/utils/hosts_file_parser.rb +1 -1
  383. data/src/ruby_supportlib/phusion_passenger/utils/lock.rb +1 -1
  384. data/src/ruby_supportlib/phusion_passenger/utils/native_support_utils.rb +1 -1
  385. data/src/ruby_supportlib/phusion_passenger/utils/progress_bar.rb +1 -1
  386. data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +1 -1
  387. data/src/ruby_supportlib/phusion_passenger/utils/unseekable_socket.rb +1 -1
  388. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +1 -1
  389. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/base.rb +1 -1
  390. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +1 -1
  391. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +1 -1
  392. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/utils.rb +1 -1
  393. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/version.rb +1 -1
  394. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +1 -1
  395. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/lock_file.rb +1 -1
  396. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/spawn.rb +2 -2
  397. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/version.rb +1 -1
  398. metadata +4 -9
  399. data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/output.0 +0 -15477
  400. data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/output.1 +0 -15477
  401. data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/requests +0 -324
  402. data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/traces.0 +0 -3105
  403. data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/traces.1 +0 -703
  404. data/src/ruby_supportlib/phusion_passenger/vendor/union_station_hooks_core/ruby_versions.yml +0 -4
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2016 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2017 Phusion Holding B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2016 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2017 Phusion Holding B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2016 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2017 Phusion Holding B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2016 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2017 Phusion Holding B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2014 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -567,8 +567,8 @@ private:
567
567
  return httpStatus;
568
568
  }
569
569
 
570
- this_thread::disable_interruption di;
571
- this_thread::disable_syscall_interruption dsi;
570
+ boost::this_thread::disable_interruption di;
571
+ boost::this_thread::disable_syscall_interruption dsi;
572
572
  bool expectingBody;
573
573
 
574
574
  expectingBody = ap_should_client_block(r);
@@ -1560,8 +1560,8 @@ static Hooks *hooks = NULL;
1560
1560
  static apr_status_t
1561
1561
  destroy_hooks(void *arg) {
1562
1562
  try {
1563
- this_thread::disable_interruption di;
1564
- this_thread::disable_syscall_interruption dsi;
1563
+ boost::this_thread::disable_interruption di;
1564
+ boost::this_thread::disable_syscall_interruption dsi;
1565
1565
  P_DEBUG("Shutting down Phusion Passenger...");
1566
1566
  delete hooks;
1567
1567
  hooks = NULL;
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2016 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2017 Phusion Holding B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2016 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2017 Phusion Holding B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
5
  # trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010, 2011, 2012 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2016 Phusion Holding B.V.
3
+ * Copyright (c) 2016-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2013-2015 Phusion Holding B.V.
3
+ * Copyright (c) 2013-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2013-2014 Phusion Holding B.V.
3
+ * Copyright (c) 2013-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2011-2015 Phusion Holding B.V.
3
+ * Copyright (c) 2011-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2011-2015 Phusion Holding B.V.
3
+ * Copyright (c) 2011-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * encoding: utf-8
3
3
  * Phusion Passenger - https://www.phusionpassenger.com/
4
- * Copyright (c) 2010-2016 Phusion Holding B.V.
4
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
5
5
  *
6
6
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
7
7
  * trademarks of Phusion Holding B.V.
@@ -80,7 +80,7 @@
80
80
  #define PASSENGER_API_VERSION_MAJOR 0
81
81
  #define PASSENGER_API_VERSION_MINOR 3
82
82
  #define PASSENGER_DEFAULT_USER "nobody"
83
- #define PASSENGER_VERSION "5.1.2"
83
+ #define PASSENGER_VERSION "5.1.3"
84
84
  #define POOL_HELPER_THREAD_STACK_SIZE 262144
85
85
  #define PROCESS_SHUTDOWN_TIMEOUT 60
86
86
  #define PROCESS_SHUTDOWN_TIMEOUT_DISPLAY "1 minute"
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ # Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  # trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -47,7 +47,8 @@ using namespace oxt;
47
47
 
48
48
  #if BOOST_OS_MACOS
49
49
 
50
- Crypto::Crypto() {
50
+ Crypto::Crypto()
51
+ :id(NULL) {
51
52
  }
52
53
 
53
54
  Crypto::~Crypto() {
@@ -139,6 +140,9 @@ OSStatus Crypto::copyIdentityFromPKCS12File(const char *cPath,
139
140
  logError( prefix + ": " + CFStringGetCStringPtr(str, kCFStringEncodingUTF8) + "\n" + suffix );
140
141
  CFRelease(str);
141
142
  }
143
+ }else{
144
+ id = (CFDataRef)CFDictionaryGetValue((CFDictionaryRef)CFArrayGetValueAtIndex(items, 0),kSecImportItemKeyID);
145
+ CFRetain(id);
142
146
  }
143
147
 
144
148
  if (items) {
@@ -165,18 +169,35 @@ void Crypto::killKey(const char *cLabel) {
165
169
 
166
170
  CFArrayRef itemList = CFArrayCreate(NULL, (const void **) &id, 1, NULL);
167
171
  CFTypeRef keys[] = { kSecClass, kSecMatchItemList, kSecMatchLimit };
168
- CFTypeRef values[] = { kSecClassIdentity, itemList, kSecMatchLimitAll };
172
+ CFTypeRef values[] = { kSecClassCertificate, itemList, kSecMatchLimitOne };
169
173
 
170
174
  CFDictionaryRef dict = CFDictionaryCreate(NULL, keys, values, 3L, NULL, NULL);
171
175
  OSStatus oserr = SecItemDelete(dict);
172
176
  if (oserr) {
173
177
  CFStringRef str = SecCopyErrorMessageString(oserr, NULL);
174
178
  logError(string("Removing Passenger Cert from keychain failed: ") + CFStringGetCStringPtr(str, kCFStringEncodingUTF8) +
175
- " Please remove the private key from the certificate labeled " + cLabel + " in your keychain.");
179
+ " Please remove the certificate labeled " + cLabel + " in your keychain.");
176
180
  CFRelease(str);
177
181
  }
178
182
  CFRelease(dict);
179
183
  CFRelease(itemList);
184
+
185
+ if(id){
186
+ CFTypeRef keys2[] = { kSecClass, kSecAttrSubjectKeyID, kSecMatchLimit };
187
+ CFTypeRef values2[] = { kSecClassKey, id, kSecMatchLimitOne };
188
+ dict = CFDictionaryCreate(NULL, keys2, values2, 3L, NULL, NULL);
189
+ oserr = SecItemDelete(dict);
190
+ if (oserr) {
191
+ CFStringRef str = SecCopyErrorMessageString(oserr, NULL);
192
+ logError(string("Removing Passenger private key from keychain failed: ") + CFStringGetCStringPtr(str, kCFStringEncodingUTF8) +
193
+ " Please remove the private key from the certificate labeled " + cLabel + " in your keychain.");
194
+ CFRelease(str);
195
+ }
196
+ CFRelease(dict);
197
+ CFRelease(id);
198
+ id = NULL;
199
+ }
200
+
180
201
  } else {
181
202
  CFStringRef str = SecCopyErrorMessageString(status, NULL);
182
203
  logError(string("Finding Passenger Cert failed: ") + CFStringGetCStringPtr(str, kCFStringEncodingUTF8) );
@@ -210,7 +231,7 @@ bool Crypto::preAuthKey(const char *path, const char *passwd, const char *cLabel
210
231
  }
211
232
  return success;
212
233
  } else {
213
- logError(string("Passenger client certificate was found in the keychain unexpectedly, you may see keychain popups until you remove the private key from the certificate labeled ") + cLabel + " in your keychain.");
234
+ logError(string("Passenger client certificate was found in the keychain unexpectedly, skipping security update check. Please remove the private key from the certificate labeled ") + cLabel + " in your keychain.");
214
235
  if (id) {
215
236
  CFRelease(id);
216
237
  }
@@ -301,12 +322,12 @@ bool Crypto::getKeyBytes(SecKeyRef cryptokey, void **target, size_t &len) {
301
322
  &ccHandle);
302
323
  if (error != CSSM_OK) { cssmPerror("CSSM_CSP_CreateSymmetricContext",error); }
303
324
 
304
- CSSM_WrapKey(ccHandle,
325
+ error = CSSM_WrapKey(ccHandle,
305
326
  creds,
306
327
  cssmKey,
307
328
  NULL,
308
329
  &wrappedKey);
309
- cssmPerror("CSSM_WrapKey", error);
330
+ if (error != CSSM_OK) { cssmPerror("CSSM_WrapKey", error); }
310
331
 
311
332
  CSSM_DeleteContext(ccHandle);
312
333
 
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -80,6 +80,7 @@ private:
80
80
  * log prefix using P_ERROR, and (library-specific) detail from either additional or global query
81
81
  */
82
82
  #if BOOST_OS_MACOS
83
+ CFDataRef id;
83
84
  // (additional needs to be defined as a CFErrorRef, void * won't work)
84
85
  void logFreeErrorExtended(const StaticString &prefix, CFErrorRef &additional);
85
86
  CFDictionaryRef createQueryDict(const char *label);
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2014 Phusion Holding B.V.
3
+ * Copyright (c) 2014-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2016 Phusion Holding B.V.
3
+ * Copyright (c) 2016-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2014-2016 Phusion Holding B.V.
3
+ * Copyright (c) 2014-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2014 Phusion Holding B.V.
3
+ * Copyright (c) 2014-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2013 Phusion Holding B.V.
3
+ * Copyright (c) 2013-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2015 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2015 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.
@@ -79,7 +79,7 @@ private:
79
79
 
80
80
  ~SharedData() {
81
81
  if (fd >= 0 && autoClose) {
82
- this_thread::disable_syscall_interruption dsi;
82
+ boost::this_thread::disable_syscall_interruption dsi;
83
83
  syscalls::close(fd);
84
84
  P_LOG_FILE_DESCRIPTOR_CLOSE(fd);
85
85
  }
@@ -87,7 +87,7 @@ private:
87
87
 
88
88
  void close(bool checkErrors = true) {
89
89
  if (fd >= 0) {
90
- this_thread::disable_syscall_interruption dsi;
90
+ boost::this_thread::disable_syscall_interruption dsi;
91
91
  int theFd = fd;
92
92
  fd = -1;
93
93
  safelyClose(theFd, !checkErrors);
@@ -292,7 +292,7 @@ public:
292
292
  }
293
293
 
294
294
  ~EventFd() {
295
- this_thread::disable_syscall_interruption dsi;
295
+ boost::this_thread::disable_syscall_interruption dsi;
296
296
  syscalls::close(reader);
297
297
  syscalls::close(writer);
298
298
  P_LOG_FILE_DESCRIPTOR_CLOSE(reader);
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2015 Phusion Holding B.V.
3
+ * Copyright (c) 2010-2017 Phusion Holding B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
6
  * trademarks of Phusion Holding B.V.