passenger 5.0.20 → 5.0.21

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 (408) hide show
  1. checksums.yaml +8 -8
  2. checksums.yaml.gz.asc +7 -7
  3. data.tar.gz.asc +7 -7
  4. data/CHANGELOG +14 -0
  5. data/CONTRIBUTORS +1 -0
  6. data/README.md +1 -1
  7. data/Rakefile +4 -1
  8. data/bin/passenger +3 -2
  9. data/bin/passenger-config +3 -2
  10. data/bin/passenger-install-apache2-module +3 -3
  11. data/bin/passenger-install-nginx-module +10 -3
  12. data/bin/passenger-memory-stats +3 -2
  13. data/bin/passenger-status +3 -2
  14. data/build/agent.rb +4 -3
  15. data/build/apache2.rb +3 -2
  16. data/build/basics.rb +3 -2
  17. data/build/common_library.rb +9 -8
  18. data/build/cplusplus_support.rb +3 -2
  19. data/build/cxx_dependency_map.rb +67 -134
  20. data/build/cxx_tests.rb +3 -2
  21. data/build/documentation.rb +3 -2
  22. data/build/integration_tests.rb +3 -2
  23. data/build/misc.rb +3 -22
  24. data/build/nginx.rb +3 -2
  25. data/build/node_tests.rb +3 -2
  26. data/build/oxt_tests.rb +3 -2
  27. data/build/packaging.rb +4 -3
  28. data/build/ruby_extension.rb +3 -2
  29. data/build/ruby_tests.rb +3 -2
  30. data/build/test_basics.rb +3 -2
  31. data/dev/copy_boost_headers +3 -2
  32. data/doc/Design and Architecture.html +1 -1
  33. data/doc/Design and Architecture.txt +1 -1
  34. data/doc/Users guide Apache.html +1 -1
  35. data/doc/Users guide Nginx.html +1 -1
  36. data/doc/users_guide_snippets/appendix_a_about.txt +1 -1
  37. data/man/passenger-config.1 +0 -2
  38. data/man/passenger-memory-stats.8 +0 -2
  39. data/man/passenger-status.8 +0 -2
  40. data/src/agent/AgentMain.cpp +3 -2
  41. data/src/agent/Core/ApiServer.h +3 -2
  42. data/src/agent/Core/ApplicationPool/BasicGroupInfo.h +3 -2
  43. data/src/agent/Core/ApplicationPool/BasicProcessInfo.h +3 -2
  44. data/src/agent/Core/ApplicationPool/Common.h +3 -2
  45. data/src/agent/Core/ApplicationPool/Context.h +3 -2
  46. data/src/agent/Core/ApplicationPool/ErrorRenderer.h +3 -2
  47. data/src/agent/Core/ApplicationPool/Group.h +3 -2
  48. data/src/agent/Core/ApplicationPool/Group/InitializationAndShutdown.cpp +3 -2
  49. data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +3 -2
  50. data/src/agent/Core/ApplicationPool/Group/LifetimeAndBasics.cpp +3 -2
  51. data/src/agent/Core/ApplicationPool/Group/Miscellaneous.cpp +3 -2
  52. data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +3 -2
  53. data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +3 -2
  54. data/src/agent/Core/ApplicationPool/Group/SessionManagement.cpp +3 -2
  55. data/src/agent/Core/ApplicationPool/Group/SpawningAndRestarting.cpp +3 -2
  56. data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +3 -2
  57. data/src/agent/Core/ApplicationPool/Group/Verification.cpp +3 -2
  58. data/src/agent/Core/ApplicationPool/Implementation.cpp +3 -2
  59. data/src/agent/Core/ApplicationPool/Options.h +3 -11
  60. data/src/agent/Core/ApplicationPool/Pool.h +3 -2
  61. data/src/agent/Core/ApplicationPool/Pool/AnalyticsCollection.cpp +3 -2
  62. data/src/agent/Core/ApplicationPool/Pool/GarbageCollection.cpp +3 -2
  63. data/src/agent/Core/ApplicationPool/Pool/GeneralUtils.cpp +3 -2
  64. data/src/agent/Core/ApplicationPool/Pool/GroupUtils.cpp +3 -2
  65. data/src/agent/Core/ApplicationPool/Pool/InitializationAndShutdown.cpp +3 -2
  66. data/src/agent/Core/ApplicationPool/Pool/Miscellaneous.cpp +3 -2
  67. data/src/agent/Core/ApplicationPool/Pool/ProcessUtils.cpp +3 -2
  68. data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +3 -2
  69. data/src/agent/Core/ApplicationPool/Process.h +3 -2
  70. data/src/agent/Core/ApplicationPool/Session.h +3 -2
  71. data/src/agent/Core/ApplicationPool/Socket.h +3 -2
  72. data/src/agent/Core/CoreMain.cpp +3 -2
  73. data/src/agent/Core/OptionParser.h +3 -2
  74. data/src/agent/Core/RequestHandler.h +3 -2
  75. data/src/agent/Core/RequestHandler/AppResponse.h +3 -2
  76. data/src/agent/Core/RequestHandler/BufferBody.cpp +3 -2
  77. data/src/agent/Core/RequestHandler/CheckoutSession.cpp +3 -2
  78. data/src/agent/Core/RequestHandler/Client.h +3 -2
  79. data/src/agent/Core/RequestHandler/ForwardResponse.cpp +3 -2
  80. data/src/agent/Core/RequestHandler/Hooks.cpp +4 -2
  81. data/src/agent/Core/RequestHandler/InitRequest.cpp +13 -4
  82. data/src/agent/Core/RequestHandler/Request.h +10 -2
  83. data/src/agent/Core/RequestHandler/SendRequest.cpp +40 -9
  84. data/src/agent/Core/RequestHandler/TurboCaching.h +3 -2
  85. data/src/agent/Core/RequestHandler/Utils.cpp +3 -2
  86. data/src/agent/Core/ResponseCache.h +3 -2
  87. data/src/agent/Core/SpawningKit/BackgroundIOCapturer.h +3 -2
  88. data/src/agent/Core/SpawningKit/Config.h +3 -2
  89. data/src/agent/Core/SpawningKit/DirectSpawner.h +3 -2
  90. data/src/agent/Core/SpawningKit/DummySpawner.h +3 -2
  91. data/src/agent/Core/SpawningKit/Factory.h +3 -2
  92. data/src/agent/Core/SpawningKit/Options.h +3 -2
  93. data/src/agent/Core/SpawningKit/PipeWatcher.h +3 -2
  94. data/src/agent/Core/SpawningKit/Result.h +3 -2
  95. data/src/agent/Core/SpawningKit/SmartSpawner.h +3 -2
  96. data/src/agent/Core/SpawningKit/Spawner.h +18 -2
  97. data/src/agent/Core/SpawningKit/UserSwitchingRules.h +3 -2
  98. data/src/agent/Core/UnionStation/Connection.h +3 -2
  99. data/src/agent/Core/UnionStation/Core.h +3 -2
  100. data/src/agent/Core/UnionStation/StopwatchLog.h +3 -2
  101. data/src/agent/Core/UnionStation/Transaction.h +3 -2
  102. data/src/agent/Shared/ApiServerUtils.h +3 -2
  103. data/src/agent/Shared/ApplicationPoolApiKey.h +3 -2
  104. data/src/agent/Shared/Base.cpp +3 -2
  105. data/src/agent/Shared/Base.h +3 -2
  106. data/src/agent/SpawnPreparer/SpawnPreparerMain.cpp +3 -2
  107. data/src/agent/SystemMetrics/SystemMetricsMain.cpp +3 -2
  108. data/src/agent/TempDirToucher/TempDirToucherMain.cpp +3 -2
  109. data/src/agent/UstRouter/ApiServer.h +3 -2
  110. data/src/agent/UstRouter/Client.h +3 -2
  111. data/src/agent/UstRouter/Controller.h +3 -2
  112. data/src/agent/UstRouter/DataStoreId.h +3 -2
  113. data/src/agent/UstRouter/FileSink.h +3 -2
  114. data/src/agent/UstRouter/LogSink.h +3 -2
  115. data/src/agent/UstRouter/OptionParser.h +3 -2
  116. data/src/agent/UstRouter/RemoteSender.h +3 -2
  117. data/src/agent/UstRouter/RemoteSink.h +3 -2
  118. data/src/agent/UstRouter/Transaction.h +3 -2
  119. data/src/agent/UstRouter/UstRouterMain.cpp +3 -2
  120. data/src/agent/Watchdog/AgentWatcher.cpp +3 -2
  121. data/src/agent/Watchdog/ApiServer.h +3 -2
  122. data/src/agent/Watchdog/CoreWatcher.cpp +3 -2
  123. data/src/agent/Watchdog/InstanceDirToucher.cpp +3 -2
  124. data/src/agent/Watchdog/UstRouterWatcher.cpp +3 -2
  125. data/src/agent/Watchdog/WatchdogMain.cpp +4 -3
  126. data/src/apache2_module/Bucket.cpp +3 -2
  127. data/src/apache2_module/Bucket.h +3 -2
  128. data/src/apache2_module/Configuration.cpp +3 -2
  129. data/src/apache2_module/Configuration.h +3 -2
  130. data/src/apache2_module/Configuration.hpp +3 -2
  131. data/src/apache2_module/ConfigurationCommands.cpp +3 -2
  132. data/src/apache2_module/ConfigurationCommands.cpp.erb +3 -2
  133. data/src/apache2_module/ConfigurationFields.hpp +3 -2
  134. data/src/apache2_module/ConfigurationFields.hpp.erb +3 -2
  135. data/src/apache2_module/ConfigurationSetters.cpp +3 -2
  136. data/src/apache2_module/ConfigurationSetters.cpp.erb +3 -2
  137. data/src/apache2_module/CreateDirConfig.cpp +3 -2
  138. data/src/apache2_module/CreateDirConfig.cpp.erb +3 -2
  139. data/src/apache2_module/DirectoryMapper.h +3 -2
  140. data/src/apache2_module/Hooks.cpp +12 -11
  141. data/src/apache2_module/Hooks.h +3 -2
  142. data/src/apache2_module/MergeDirConfig.cpp +3 -2
  143. data/src/apache2_module/MergeDirConfig.cpp.erb +3 -2
  144. data/src/apache2_module/SetHeaders.cpp +3 -2
  145. data/src/apache2_module/SetHeaders.cpp.erb +3 -2
  146. data/src/apache2_module/mod_passenger.c +3 -2
  147. data/src/cxx_supportlib/AppTypes.cpp +3 -2
  148. data/src/cxx_supportlib/AppTypes.h +3 -2
  149. data/src/cxx_supportlib/BackgroundEventLoop.cpp +3 -2
  150. data/src/cxx_supportlib/BackgroundEventLoop.h +3 -2
  151. data/src/cxx_supportlib/Constants.h +4 -7
  152. data/src/cxx_supportlib/Constants.h.erb +3 -4
  153. data/src/cxx_supportlib/DataStructures/HashedStaticString.h +3 -2
  154. data/src/cxx_supportlib/DataStructures/LString.h +3 -2
  155. data/src/cxx_supportlib/DataStructures/StringKeyTable.h +3 -2
  156. data/src/cxx_supportlib/Exceptions.cpp +3 -2
  157. data/src/cxx_supportlib/Exceptions.h +3 -2
  158. data/src/cxx_supportlib/FileDescriptor.h +3 -2
  159. data/src/cxx_supportlib/Hooks.h +3 -2
  160. data/src/cxx_supportlib/InstanceDirectory.h +4 -3
  161. data/src/cxx_supportlib/Logging.cpp +3 -2
  162. data/src/cxx_supportlib/Logging.h +3 -2
  163. data/src/cxx_supportlib/MemoryKit/mbuf.h +1 -1
  164. data/src/cxx_supportlib/MemoryKit/palloc.cpp +1 -1
  165. data/src/cxx_supportlib/MemoryKit/palloc.h +1 -1
  166. data/src/cxx_supportlib/MessageClient.h +3 -2
  167. data/src/cxx_supportlib/MessageReadersWriters.h +3 -2
  168. data/src/cxx_supportlib/RandomGenerator.h +3 -2
  169. data/src/cxx_supportlib/ResourceLocator.h +3 -2
  170. data/src/cxx_supportlib/SafeLibev.h +3 -2
  171. data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +3 -2
  172. data/src/cxx_supportlib/ServerKit/Channel.h +3 -2
  173. data/src/cxx_supportlib/ServerKit/Client.h +3 -2
  174. data/src/cxx_supportlib/ServerKit/ClientRef.h +3 -2
  175. data/src/cxx_supportlib/ServerKit/Context.h +3 -2
  176. data/src/cxx_supportlib/ServerKit/CookieUtils.h +3 -2
  177. data/src/cxx_supportlib/ServerKit/Errors.h +3 -2
  178. data/src/cxx_supportlib/ServerKit/FdSinkChannel.h +3 -2
  179. data/src/cxx_supportlib/ServerKit/FdSourceChannel.h +3 -2
  180. data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +3 -2
  181. data/src/cxx_supportlib/ServerKit/FileBufferedFdSinkChannel.h +3 -2
  182. data/src/cxx_supportlib/ServerKit/HeaderTable.h +3 -2
  183. data/src/cxx_supportlib/ServerKit/Hooks.h +3 -2
  184. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +3 -2
  185. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParserState.h +3 -2
  186. data/src/cxx_supportlib/ServerKit/HttpClient.h +3 -2
  187. data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +3 -2
  188. data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +3 -2
  189. data/src/cxx_supportlib/ServerKit/HttpRequest.h +3 -2
  190. data/src/cxx_supportlib/ServerKit/HttpRequestRef.h +3 -2
  191. data/src/cxx_supportlib/ServerKit/HttpServer.h +3 -2
  192. data/src/cxx_supportlib/ServerKit/Implementation.cpp +3 -2
  193. data/src/cxx_supportlib/ServerKit/Server.h +3 -2
  194. data/src/cxx_supportlib/StaticString.h +3 -2
  195. data/src/cxx_supportlib/UnionStationFilterSupport.cpp +3 -2
  196. data/src/cxx_supportlib/UnionStationFilterSupport.h +3 -2
  197. data/src/cxx_supportlib/Utils.cpp +3 -2
  198. data/src/cxx_supportlib/Utils.h +3 -2
  199. data/src/cxx_supportlib/Utils/AnsiColorConstants.h +3 -2
  200. data/src/cxx_supportlib/Utils/BlockingQueue.h +3 -2
  201. data/src/cxx_supportlib/Utils/BufferedIO.h +3 -2
  202. data/src/cxx_supportlib/Utils/CachedFileStat.cpp +3 -2
  203. data/src/cxx_supportlib/Utils/CachedFileStat.h +3 -2
  204. data/src/cxx_supportlib/Utils/CachedFileStat.hpp +3 -2
  205. data/src/cxx_supportlib/Utils/ClassUtils.h +20 -2
  206. data/src/cxx_supportlib/Utils/Curl.h +3 -2
  207. data/src/cxx_supportlib/Utils/DateParsing.h +3 -2
  208. data/src/cxx_supportlib/Utils/FastStringStream.h +3 -2
  209. data/src/cxx_supportlib/Utils/FileChangeChecker.h +3 -2
  210. data/src/cxx_supportlib/Utils/HashMap.h +3 -2
  211. data/src/cxx_supportlib/Utils/Hasher.cpp +3 -2
  212. data/src/cxx_supportlib/Utils/Hasher.h +3 -2
  213. data/src/cxx_supportlib/Utils/HttpConstants.h +3 -2
  214. data/src/cxx_supportlib/Utils/IOUtils.cpp +3 -2
  215. data/src/cxx_supportlib/Utils/IOUtils.h +3 -2
  216. data/src/cxx_supportlib/Utils/IniFile.h +3 -2
  217. data/src/cxx_supportlib/Utils/JsonUtils.h +3 -2
  218. data/src/cxx_supportlib/Utils/LargeFiles.h +3 -2
  219. data/src/cxx_supportlib/Utils/MemZeroGuard.h +3 -2
  220. data/src/cxx_supportlib/Utils/MemoryBarrier.h +3 -2
  221. data/src/cxx_supportlib/Utils/MessageIO.h +3 -2
  222. data/src/cxx_supportlib/Utils/MessagePassing.h +4 -3
  223. data/src/cxx_supportlib/Utils/OptionParsing.h +3 -2
  224. data/src/cxx_supportlib/Utils/ProcessMetricsCollector.h +3 -2
  225. data/src/cxx_supportlib/Utils/ScopeGuard.h +3 -2
  226. data/src/cxx_supportlib/Utils/SpeedMeter.h +3 -2
  227. data/src/cxx_supportlib/Utils/StrIntUtils.cpp +3 -2
  228. data/src/cxx_supportlib/Utils/StrIntUtils.h +3 -2
  229. data/src/cxx_supportlib/Utils/StrIntUtilsNoStrictAliasing.cpp +3 -2
  230. data/src/cxx_supportlib/Utils/StringMap.h +3 -2
  231. data/src/cxx_supportlib/Utils/StringScanning.h +3 -2
  232. data/src/cxx_supportlib/Utils/SystemMetricsCollector.h +3 -2
  233. data/src/cxx_supportlib/Utils/SystemTime.cpp +3 -2
  234. data/src/cxx_supportlib/Utils/SystemTime.h +3 -2
  235. data/src/cxx_supportlib/Utils/Timer.h +3 -2
  236. data/src/cxx_supportlib/Utils/VariantMap.h +3 -2
  237. data/src/cxx_supportlib/{AgentsStarter.cpp → WatchdogLauncher.cpp} +42 -41
  238. data/src/cxx_supportlib/{AgentsStarter.h → WatchdogLauncher.h} +99 -112
  239. data/src/cxx_supportlib/oxt/backtrace.hpp +1 -1
  240. data/src/cxx_supportlib/oxt/detail/backtrace_disabled.hpp +1 -1
  241. data/src/cxx_supportlib/oxt/detail/backtrace_enabled.hpp +1 -1
  242. data/src/cxx_supportlib/oxt/detail/context.hpp +1 -1
  243. data/src/cxx_supportlib/oxt/detail/spin_lock_darwin.hpp +1 -1
  244. data/src/cxx_supportlib/oxt/detail/spin_lock_gcc_x86.hpp +1 -1
  245. data/src/cxx_supportlib/oxt/detail/spin_lock_portable.hpp +1 -1
  246. data/src/cxx_supportlib/oxt/detail/spin_lock_pthreads.hpp +1 -1
  247. data/src/cxx_supportlib/oxt/detail/tracable_exception_disabled.hpp +1 -1
  248. data/src/cxx_supportlib/oxt/detail/tracable_exception_enabled.hpp +1 -1
  249. data/src/cxx_supportlib/oxt/dynamic_thread_group.hpp +1 -1
  250. data/src/cxx_supportlib/oxt/implementation.cpp +1 -1
  251. data/src/cxx_supportlib/oxt/initialize.hpp +1 -1
  252. data/src/cxx_supportlib/oxt/macros.hpp +1 -1
  253. data/src/cxx_supportlib/oxt/spin_lock.hpp +1 -1
  254. data/src/cxx_supportlib/oxt/system_calls.cpp +1 -1
  255. data/src/cxx_supportlib/oxt/system_calls.hpp +1 -1
  256. data/src/cxx_supportlib/oxt/thread.hpp +1 -1
  257. data/src/cxx_supportlib/oxt/tracable_exception.hpp +1 -1
  258. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_raw_buffer.hpp +1 -1
  259. data/src/cxx_supportlib/vendor-modified/jsoncpp/jsoncpp.cpp +2 -2
  260. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/Changes +0 -0
  261. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/LICENSE +0 -0
  262. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/Makefile.am +0 -0
  263. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/Makefile.in +0 -0
  264. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/README +0 -0
  265. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/aclocal.m4 +0 -0
  266. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/autogen.sh +0 -0
  267. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/config.guess +0 -0
  268. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/config.h.in +0 -0
  269. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/config.sub +0 -0
  270. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/configure +0 -0
  271. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/configure.ac +0 -0
  272. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/depcomp +0 -0
  273. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ev++.h +0 -0
  274. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ev.c +0 -0
  275. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ev.h +0 -0
  276. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ev_epoll.c +0 -0
  277. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ev_kqueue.c +0 -0
  278. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ev_poll.c +0 -0
  279. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ev_port.c +0 -0
  280. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ev_select.c +0 -0
  281. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ev_vars.h +0 -0
  282. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ev_win32.c +0 -0
  283. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ev_wrap.h +0 -0
  284. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/event.c +0 -0
  285. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/event.h +0 -0
  286. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/install-sh +0 -0
  287. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/libev.m4 +0 -0
  288. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/ltmain.sh +0 -0
  289. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/missing +0 -0
  290. data/src/cxx_supportlib/{vendor-copy → vendor-modified}/libev/mkinstalldirs +0 -0
  291. data/src/helper-scripts/backtrace-sanitizer.rb +3 -2
  292. data/src/helper-scripts/crash-watch.rb +1 -1
  293. data/src/helper-scripts/download_binaries/extconf.rb +3 -2
  294. data/src/helper-scripts/meteor-loader.rb +3 -2
  295. data/src/helper-scripts/node-loader.js +8 -5
  296. data/src/helper-scripts/prespawn +3 -2
  297. data/src/helper-scripts/rack-loader.rb +6 -3
  298. data/src/helper-scripts/rack-preloader.rb +6 -3
  299. data/src/helper-scripts/wsgi-loader.py +3 -2
  300. data/src/nginx_module/CacheLocationConfig.c +3 -2
  301. data/src/nginx_module/CacheLocationConfig.c.erb +3 -2
  302. data/src/nginx_module/Configuration.c +1 -1
  303. data/src/nginx_module/Configuration.h +1 -1
  304. data/src/nginx_module/ConfigurationCommands.c +3 -2
  305. data/src/nginx_module/ConfigurationCommands.c.erb +3 -2
  306. data/src/nginx_module/ConfigurationFields.h +3 -2
  307. data/src/nginx_module/ConfigurationFields.h.erb +3 -2
  308. data/src/nginx_module/ContentHandler.c +7 -7
  309. data/src/nginx_module/ContentHandler.h +1 -1
  310. data/src/nginx_module/CreateLocationConfig.c +3 -2
  311. data/src/nginx_module/CreateLocationConfig.c.erb +3 -2
  312. data/src/nginx_module/MergeLocationConfig.c +3 -2
  313. data/src/nginx_module/MergeLocationConfig.c.erb +3 -2
  314. data/src/nginx_module/StaticContentHandler.c +1 -1
  315. data/src/nginx_module/StaticContentHandler.h +1 -1
  316. data/src/nginx_module/config +1 -1
  317. data/src/nginx_module/ngx_http_passenger_module.c +46 -46
  318. data/src/nginx_module/ngx_http_passenger_module.h +3 -3
  319. data/src/nodejs_supportlib/phusion_passenger/line_reader.js +3 -2
  320. data/src/ruby_native_extension/extconf.rb +3 -2
  321. data/src/ruby_native_extension/passenger_native_support.c +6 -5
  322. data/src/ruby_supportlib/phusion_passenger.rb +4 -3
  323. data/src/ruby_supportlib/phusion_passenger/abstract_installer.rb +3 -2
  324. data/src/ruby_supportlib/phusion_passenger/admin_tools.rb +3 -2
  325. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance.rb +3 -2
  326. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +3 -2
  327. data/src/ruby_supportlib/phusion_passenger/admin_tools/memory_stats.rb +3 -2
  328. data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +3 -2
  329. data/src/ruby_supportlib/phusion_passenger/common_library.rb +6 -5
  330. data/src/ruby_supportlib/phusion_passenger/config/about_command.rb +3 -2
  331. data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +3 -2
  332. data/src/ruby_supportlib/phusion_passenger/config/api_call_command.rb +3 -2
  333. data/src/ruby_supportlib/phusion_passenger/config/build_native_support_command.rb +3 -2
  334. data/src/ruby_supportlib/phusion_passenger/config/command.rb +3 -2
  335. data/src/ruby_supportlib/phusion_passenger/config/compile_agent_command.rb +3 -2
  336. data/src/ruby_supportlib/phusion_passenger/config/compile_nginx_engine_command.rb +3 -2
  337. data/src/ruby_supportlib/phusion_passenger/config/detach_process_command.rb +3 -2
  338. data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +3 -2
  339. data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +3 -2
  340. data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +3 -2
  341. data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +3 -2
  342. data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +3 -2
  343. data/src/ruby_supportlib/phusion_passenger/config/list_instances_command.rb +3 -2
  344. data/src/ruby_supportlib/phusion_passenger/config/main.rb +3 -2
  345. data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +25 -3
  346. data/src/ruby_supportlib/phusion_passenger/config/reopen_logs_command.rb +3 -2
  347. data/src/ruby_supportlib/phusion_passenger/config/restart_app_command.rb +4 -3
  348. data/src/ruby_supportlib/phusion_passenger/config/system_metrics_command.rb +3 -2
  349. data/src/ruby_supportlib/phusion_passenger/config/utils.rb +3 -2
  350. data/src/ruby_supportlib/phusion_passenger/config/validate_install_command.rb +3 -2
  351. data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +3 -2
  352. data/src/ruby_supportlib/phusion_passenger/constants.rb +3 -11
  353. data/src/ruby_supportlib/phusion_passenger/debug_logging.rb +3 -2
  354. data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +21 -2
  355. data/src/ruby_supportlib/phusion_passenger/message_channel.rb +8 -2
  356. data/src/ruby_supportlib/phusion_passenger/message_client.rb +3 -2
  357. data/src/ruby_supportlib/phusion_passenger/native_support.rb +3 -2
  358. data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +3 -2
  359. data/src/ruby_supportlib/phusion_passenger/packaging.rb +3 -2
  360. data/src/ruby_supportlib/phusion_passenger/platform_info.rb +3 -2
  361. data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +3 -2
  362. data/src/ruby_supportlib/phusion_passenger/platform_info/apache_detector.rb +3 -2
  363. data/src/ruby_supportlib/phusion_passenger/platform_info/binary_compatibility.rb +3 -2
  364. data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +3 -2
  365. data/src/ruby_supportlib/phusion_passenger/platform_info/curl.rb +3 -2
  366. data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +3 -2
  367. data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck.rb +6 -0
  368. data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/libs.rb +5 -1
  369. data/src/ruby_supportlib/phusion_passenger/platform_info/linux.rb +3 -2
  370. data/src/ruby_supportlib/phusion_passenger/platform_info/openssl.rb +61 -0
  371. data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +3 -2
  372. data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +3 -2
  373. data/src/ruby_supportlib/phusion_passenger/platform_info/zlib.rb +3 -2
  374. data/src/ruby_supportlib/phusion_passenger/plugin.rb +3 -2
  375. data/src/ruby_supportlib/phusion_passenger/preloader_shared_helpers.rb +3 -2
  376. data/src/ruby_supportlib/phusion_passenger/public_api.rb +3 -2
  377. data/src/ruby_supportlib/phusion_passenger/rack/out_of_band_gc.rb +3 -2
  378. data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +18 -6
  379. data/src/ruby_supportlib/phusion_passenger/request_handler.rb +3 -2
  380. data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +3 -2
  381. data/src/ruby_supportlib/phusion_passenger/ruby_core_enhancements.rb +45 -18
  382. data/src/ruby_supportlib/phusion_passenger/ruby_core_io_enhancements.rb +3 -2
  383. data/src/ruby_supportlib/phusion_passenger/simple_benchmarking.rb +3 -2
  384. data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +8 -7
  385. data/src/ruby_supportlib/phusion_passenger/standalone/command.rb +3 -2
  386. data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +4 -3
  387. data/src/ruby_supportlib/phusion_passenger/standalone/control_utils.rb +3 -2
  388. data/src/ruby_supportlib/phusion_passenger/standalone/main.rb +3 -2
  389. data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +23 -20
  390. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +3 -2
  391. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +3 -2
  392. data/src/ruby_supportlib/phusion_passenger/standalone/status_command.rb +8 -3
  393. data/src/ruby_supportlib/phusion_passenger/standalone/stop_command.rb +8 -3
  394. data/src/ruby_supportlib/phusion_passenger/standalone/version_command.rb +5 -3
  395. data/src/ruby_supportlib/phusion_passenger/utils.rb +3 -2
  396. data/src/ruby_supportlib/phusion_passenger/utils/ansi_colors.rb +3 -2
  397. data/src/ruby_supportlib/phusion_passenger/utils/download.rb +3 -2
  398. data/src/ruby_supportlib/phusion_passenger/utils/file_system_watcher.rb +3 -2
  399. data/src/ruby_supportlib/phusion_passenger/utils/hosts_file_parser.rb +3 -2
  400. data/src/ruby_supportlib/phusion_passenger/utils/lock.rb +3 -2
  401. data/src/ruby_supportlib/phusion_passenger/utils/native_support_utils.rb +3 -2
  402. data/src/ruby_supportlib/phusion_passenger/utils/progress_bar.rb +3 -2
  403. data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +3 -2
  404. data/src/ruby_supportlib/phusion_passenger/utils/unseekable_socket.rb +3 -2
  405. metadata +36 -37
  406. metadata.gz.asc +7 -7
  407. data/src/cxx_supportlib/Account.h +0 -171
  408. data/src/cxx_supportlib/AccountsDatabase.h +0 -125
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2012-2015 Phusion
2
+ # Copyright (c) 2012-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -294,8 +295,8 @@ COMMON_LIBRARY = CommonLibraryBuilder.new do
294
295
  define_component 'Utils/LargeFiles.o',
295
296
  :source => 'Utils/LargeFiles.cpp',
296
297
  :category => :other
297
- define_component 'AgentsStarter.o',
298
- :source => 'AgentsStarter.cpp',
298
+ define_component 'WatchdogLauncher.o',
299
+ :source => 'WatchdogLauncher.cpp',
299
300
  :category => :other
300
301
  define_component 'MemoryKit/mbuf.o',
301
302
  :source => 'MemoryKit/mbuf.cpp',
@@ -337,5 +338,5 @@ end
337
338
 
338
339
  # A subset of the objects are linked to the Nginx binary. This defines
339
340
  # what those objects are.
340
- NGINX_LIBS_SELECTOR = [:base, 'AgentsStarter.o', 'AppTypes.o',
341
+ NGINX_LIBS_SELECTOR = [:base, 'WatchdogLauncher.o', 'AppTypes.o',
341
342
  'Utils/CachedFileStat.o', 'UnionStationFilterSupport.o']
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2015 Phusion
2
+ # Copyright (c) 2010-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,9 +1,10 @@
1
1
  # encoding: utf-8
2
2
  #
3
3
  # Phusion Passenger - https://www.phusionpassenger.com/
4
- # Copyright (c) 2010-2015 Phusion
4
+ # Copyright (c) 2010-2015 Phusion Holding B.V.
5
5
  #
6
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
6
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
7
+ # trademarks of Phusion Holding B.V.
7
8
  #
8
9
  # Permission is hereby granted, free of charge, to any person obtaining a copy
9
10
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014-2015 Phusion
2
+ # Copyright (c) 2014-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014 Phusion
2
+ # Copyright (c) 2014 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2013 Phusion
2
+ # Copyright (c) 2010-2013 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014 Phusion
2
+ # Copyright (c) 2014 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014-2015 Phusion
2
+ # Copyright (c) 2014-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014-2015 Phusion
2
+ # Copyright (c) 2014-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014-2015 Phusion
2
+ # Copyright (c) 2014-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014-2015 Phusion
2
+ # Copyright (c) 2014-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014-2015 Phusion
2
+ # Copyright (c) 2014-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014-2015 Phusion
2
+ # Copyright (c) 2014-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,9 +1,10 @@
1
1
  # encoding: utf-8
2
2
  #
3
3
  # Phusion Passenger - https://www.phusionpassenger.com/
4
- # Copyright (c) 2014-2015 Phusion
4
+ # Copyright (c) 2014-2015 Phusion Holding B.V.
5
5
  #
6
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
6
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
7
+ # trademarks of Phusion Holding B.V.
7
8
  #
8
9
  # Permission is hereby granted, free of charge, to any person obtaining a copy
9
10
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014 Phusion
2
+ # Copyright (c) 2014 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2013-2015 Phusion
2
+ # Copyright (c) 2013-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,9 +1,10 @@
1
1
  # encoding: utf-8
2
2
  #
3
3
  # Phusion Passenger - https://www.phusionpassenger.com/
4
- # Copyright (c) 2010-2015 Phusion
4
+ # Copyright (c) 2010-2015 Phusion Holding B.V.
5
5
  #
6
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
6
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
7
+ # trademarks of Phusion Holding B.V.
7
8
  #
8
9
  # Permission is hereby granted, free of charge, to any person obtaining a copy
9
10
  # of this software and associated documentation files (the "Software"), to deal
@@ -30,6 +31,7 @@ PhusionPassenger.require_passenger_lib 'common_library'
30
31
  PhusionPassenger.require_passenger_lib 'config/installation_utils'
31
32
  PhusionPassenger.require_passenger_lib 'platform_info'
32
33
  PhusionPassenger.require_passenger_lib 'platform_info/ruby'
34
+ PhusionPassenger.require_passenger_lib 'platform_info/openssl'
33
35
  PhusionPassenger.require_passenger_lib 'platform_info/compiler'
34
36
  PhusionPassenger.require_passenger_lib 'utils/shellwords'
35
37
  PhusionPassenger.require_passenger_lib 'utils/progress_bar'
@@ -41,6 +43,26 @@ module PhusionPassenger
41
43
  class NginxEngineCompiler < AbstractInstaller
42
44
  include InstallationUtils
43
45
 
46
+ def self.configure_script_options
47
+ extra_cflags = "-Wno-error #{PlatformInfo.openssl_extra_cflags}".strip
48
+ result = "--with-cc-opt=#{Shellwords.escape extra_cflags} "
49
+
50
+ extra_ldflags = PlatformInfo.openssl_extra_ldflags
51
+ if !extra_ldflags.empty?
52
+ result << "--with-ld-opt=#{Shellwords.escape extra_ldflags} "
53
+ end
54
+
55
+ result << "--without-http_fastcgi_module " \
56
+ "--without-http_scgi_module " \
57
+ "--without-http_uwsgi_module " \
58
+ "--with-http_gzip_static_module " \
59
+ "--with-http_stub_status_module " \
60
+ "--with-http_ssl_module " \
61
+ "--with-http_realip_module"
62
+
63
+ result
64
+ end
65
+
44
66
  protected
45
67
  def dependencies
46
68
  specs = [
@@ -302,7 +324,7 @@ module PhusionPassenger
302
324
  # work around the problem by configure Nginx with prefix
303
325
  # /tmp.
304
326
  command << "#{shell} ./configure --prefix=/tmp " +
305
- "#{STANDALONE_NGINX_CONFIGURE_OPTIONS} " +
327
+ "#{self.class.configure_script_options} " +
306
328
  "--add-module=#{Shellwords.escape PhusionPassenger.nginx_module_source_dir}"
307
329
  run_command_yield_activity(command) do
308
330
  yield
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014-2015 Phusion
2
+ # Copyright (c) 2014-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2013-2015 Phusion
2
+ # Copyright (c) 2013-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -224,7 +225,7 @@ module PhusionPassenger
224
225
  request.content_type = "application/json"
225
226
  request.body = PhusionPassenger::Utils::JSON.generate(
226
227
  :name => group_name,
227
- :method => restart_method)
228
+ :restart_method => restart_method)
228
229
  response = @instance.http_request("agents.s/core_api", request)
229
230
  if response.code.to_i / 100 == 2
230
231
  response.body
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014 Phusion
2
+ # Copyright (c) 2014 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2014 Phusion
2
+ # Copyright (c) 2010-2014 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,9 @@
1
1
  # encoding: utf-8
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2014-2015 Phusion
3
+ # Copyright (c) 2014-2015 Phusion Holding B.V.
4
4
  #
5
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
5
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
+ # trademarks of Phusion Holding B.V.
6
7
  #
7
8
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
9
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,9 @@
1
1
  # encoding: utf-8
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2010-2014 Phusion
3
+ # Copyright (c) 2010-2014 Phusion Holding B.V.
4
4
  #
5
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
5
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
+ # trademarks of Phusion Holding B.V.
6
7
  #
7
8
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
9
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2015 Phusion
2
+ # Copyright (c) 2010-2015 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -108,15 +109,6 @@ module PhusionPassenger
108
109
  RPM_DEV_PACKAGE = "passenger-devel"
109
110
  RPM_APACHE_MODULE_PACKAGE = "mod_passenger"
110
111
  RPM_NGINX_PACKAGE = "nginx"
111
- STANDALONE_NGINX_CONFIGURE_OPTIONS =
112
- "--with-cc-opt='-Wno-error' " <<
113
- "--without-http_fastcgi_module " <<
114
- "--without-http_scgi_module " <<
115
- "--without-http_uwsgi_module " <<
116
- "--with-http_gzip_static_module " <<
117
- "--with-http_stub_status_module " <<
118
- "--with-http_ssl_module " <<
119
- "--with-http_realip_module"
120
112
  end
121
113
 
122
114
  SharedConstants.constants.each do |name|
@@ -1,7 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2013 Phusion
2
+ # Copyright (c) 2010-2013 Phusion Holding B.V.
3
3
  #
4
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
4
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
+ # trademarks of Phusion Holding B.V.
5
6
  #
6
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,9 @@
1
1
  # encoding: binary
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2011-2015 Phusion
3
+ # Copyright (c) 2011-2015 Phusion Holding B.V.
4
4
  #
5
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
5
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
+ # trademarks of Phusion Holding B.V.
6
7
  #
7
8
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
9
  # of this software and associated documentation files (the "Software"), to deal
@@ -24,6 +25,7 @@
24
25
 
25
26
  PhusionPassenger.require_passenger_lib 'constants'
26
27
  PhusionPassenger.require_passenger_lib 'public_api'
28
+ PhusionPassenger.require_passenger_lib 'ruby_core_enhancements'
27
29
  PhusionPassenger.require_passenger_lib 'debug_logging'
28
30
  PhusionPassenger.require_passenger_lib 'utils/shellwords'
29
31
 
@@ -314,6 +316,23 @@ module PhusionPassenger
314
316
  UnionStationHooks.check_initialized
315
317
  end
316
318
 
319
+ # If the current working directory equals `app_root`, and `abs_path` is a
320
+ # file inside `app_root`, then returns its basename. Otherwise, returns
321
+ # `abs_path`.
322
+ #
323
+ # The main use case for this method is to ensure that we load config.ru
324
+ # with a relative path (only its base name) in most circumstances,
325
+ # instead of with an absolute path. This is necessary in order to retain
326
+ # compatibility with apps that expect config.ru's __FILE__ to be relative.
327
+ # See https://github.com/phusion/passenger/issues/1596
328
+ def maybe_make_path_relative_to_app_root(app_root, abs_path)
329
+ if Dir.logical_pwd == app_root && File.dirname(abs_path) == app_root
330
+ File.basename(abs_path)
331
+ else
332
+ abs_path
333
+ end
334
+ end
335
+
317
336
  def create_socket_address(protocol, address)
318
337
  if protocol == 'unix'
319
338
  return "unix:#{address}"
@@ -1,8 +1,9 @@
1
1
  # encoding: binary
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2010-2015 Phusion
3
+ # Copyright (c) 2010-2015 Phusion Holding B.V.
4
4
  #
5
- # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
5
+ # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
+ # trademarks of Phusion Holding B.V.
6
7
  #
7
8
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
9
  # of this software and associated documentation files (the "Software"), to deal
@@ -231,6 +232,11 @@ module PhusionPassenger
231
232
  args.each do |arg|
232
233
  message << arg.to_s << DELIMITER
233
234
  end
235
+
236
+ if message.size > 2 ** 16 - 1
237
+ raise ArgumentError, 'Message size too large'
238
+ end
239
+
234
240
  @io.write([message.size].pack('n') << message)
235
241
  @io.flush
236
242
  end