passenger 2.0.6 → 2.1.2

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 (497) hide show
  1. data/DEVELOPERS.TXT +10 -4
  2. data/LICENSE +1 -1
  3. data/NEWS +0 -0
  4. data/Rakefile +183 -117
  5. data/benchmark/dispatcher.rb +5 -9
  6. data/bin/passenger-install-apache2-module +52 -18
  7. data/bin/passenger-memory-stats +67 -13
  8. data/bin/passenger-spawn-server +8 -4
  9. data/bin/passenger-status +21 -46
  10. data/bin/passenger-stress-test +5 -5
  11. data/debian/postinst +1 -1
  12. data/doc/ApplicationPool algorithm.txt +180 -128
  13. data/doc/Architectural overview.html +1 -778
  14. data/doc/Security of user switching support.html +1 -643
  15. data/doc/Users guide Apache.html +3127 -0
  16. data/doc/Users guide Nginx.html +1458 -0
  17. data/doc/Users guide.html +1404 -467
  18. data/doc/Users guide.txt +843 -105
  19. data/doc/cxxapi/ApplicationPoolServer_8h-source.html +751 -641
  20. data/doc/cxxapi/ApplicationPool_8h-source.html +168 -171
  21. data/doc/cxxapi/Application_8h-source.html +494 -394
  22. data/doc/cxxapi/Bucket_8h-source.html +21 -15
  23. data/doc/cxxapi/CachedFileStat_8h-source.html +191 -0
  24. data/doc/cxxapi/Configuration_8h-source.html +311 -149
  25. data/doc/cxxapi/DirectoryMapper_8h-source.html +309 -0
  26. data/doc/cxxapi/DummySpawnManager_8h-source.html +3 -4
  27. data/doc/cxxapi/Exceptions_8h-source.html +182 -165
  28. data/doc/cxxapi/FileChecker_8h-source.html +130 -0
  29. data/doc/cxxapi/Hooks_8h-source.html +2 -3
  30. data/doc/cxxapi/Logging_8h-source.html +92 -89
  31. data/doc/cxxapi/MessageChannel_8h-source.html +585 -477
  32. data/doc/cxxapi/PoolOptions_8h-source.html +305 -0
  33. data/doc/cxxapi/SpawnManager_8h-source.html +515 -540
  34. data/doc/cxxapi/StandardApplicationPool_8h-source.html +779 -679
  35. data/doc/cxxapi/SystemTime_8h-source.html +104 -0
  36. data/doc/cxxapi/Utils_8h-source.html +331 -227
  37. data/doc/cxxapi/annotated.html +6 -7
  38. data/doc/cxxapi/classClient-members.html +1 -2
  39. data/doc/cxxapi/classClient.html +1 -2
  40. data/doc/cxxapi/classHooks-members.html +5 -2
  41. data/doc/cxxapi/classHooks.html +112 -2
  42. data/doc/cxxapi/classPassenger_1_1Application-members.html +2 -3
  43. data/doc/cxxapi/classPassenger_1_1Application.html +8 -9
  44. data/doc/cxxapi/classPassenger_1_1ApplicationPool-members.html +4 -4
  45. data/doc/cxxapi/classPassenger_1_1ApplicationPool.html +42 -81
  46. data/doc/cxxapi/classPassenger_1_1ApplicationPoolServer-members.html +1 -2
  47. data/doc/cxxapi/classPassenger_1_1ApplicationPoolServer.html +3 -4
  48. data/doc/cxxapi/classPassenger_1_1ApplicationPool__inherit__graph.png +0 -0
  49. data/doc/cxxapi/classPassenger_1_1Application_1_1Session-members.html +3 -2
  50. data/doc/cxxapi/classPassenger_1_1Application_1_1Session.html +74 -3
  51. data/doc/cxxapi/classPassenger_1_1BusyException-members.html +1 -2
  52. data/doc/cxxapi/classPassenger_1_1BusyException.html +2 -3
  53. data/doc/cxxapi/classPassenger_1_1ConfigurationException-members.html +1 -2
  54. data/doc/cxxapi/classPassenger_1_1ConfigurationException.html +2 -3
  55. data/doc/cxxapi/classPassenger_1_1DirectoryMapper-members.html +38 -0
  56. data/doc/cxxapi/classPassenger_1_1DirectoryMapper.html +256 -0
  57. data/doc/cxxapi/classPassenger_1_1DummySpawnManager-members.html +1 -2
  58. data/doc/cxxapi/classPassenger_1_1DummySpawnManager.html +2 -3
  59. data/doc/cxxapi/{classPassenger_1_1Thread-members.html → classPassenger_1_1FileChecker-members.html} +4 -5
  60. data/doc/cxxapi/classPassenger_1_1FileChecker.html +121 -0
  61. data/doc/cxxapi/classPassenger_1_1FileNotFoundException-members.html +1 -2
  62. data/doc/cxxapi/classPassenger_1_1FileNotFoundException.html +2 -3
  63. data/doc/cxxapi/classPassenger_1_1FileNotFoundException__inherit__graph.png +0 -0
  64. data/doc/cxxapi/classPassenger_1_1FileSystemException-members.html +2 -3
  65. data/doc/cxxapi/classPassenger_1_1FileSystemException.html +2 -3
  66. data/doc/cxxapi/classPassenger_1_1FileSystemException__inherit__graph.png +0 -0
  67. data/doc/cxxapi/classPassenger_1_1IOException-members.html +1 -2
  68. data/doc/cxxapi/classPassenger_1_1IOException.html +2 -3
  69. data/doc/cxxapi/classPassenger_1_1IOException__inherit__graph.png +0 -0
  70. data/doc/cxxapi/classPassenger_1_1MessageChannel-members.html +5 -2
  71. data/doc/cxxapi/classPassenger_1_1MessageChannel.html +155 -5
  72. data/doc/cxxapi/{classboost_1_1this__thread_1_1enable__syscall__interruption-members.html → classPassenger_1_1RuntimeException-members.html} +2 -3
  73. data/doc/cxxapi/{classboost_1_1this__thread_1_1enable__syscall__interruption.html → classPassenger_1_1RuntimeException.html} +10 -8
  74. data/doc/cxxapi/classPassenger_1_1SpawnException-members.html +1 -2
  75. data/doc/cxxapi/classPassenger_1_1SpawnException.html +2 -3
  76. data/doc/cxxapi/classPassenger_1_1SpawnManager-members.html +2 -3
  77. data/doc/cxxapi/classPassenger_1_1SpawnManager.html +15 -56
  78. data/doc/cxxapi/classPassenger_1_1StandardApplicationPool-members.html +5 -4
  79. data/doc/cxxapi/classPassenger_1_1StandardApplicationPool.html +20 -81
  80. data/doc/cxxapi/classPassenger_1_1StandardApplicationPool__inherit__graph.png +0 -0
  81. data/doc/cxxapi/classPassenger_1_1SystemException-members.html +2 -3
  82. data/doc/cxxapi/classPassenger_1_1SystemException.html +9 -10
  83. data/doc/cxxapi/classPassenger_1_1SystemException__inherit__graph.png +0 -0
  84. data/doc/cxxapi/{classboost_1_1this__thread_1_1disable__syscall__interruption-members.html → classPassenger_1_1SystemTime-members.html} +5 -3
  85. data/doc/cxxapi/classPassenger_1_1SystemTime.html +86 -0
  86. data/doc/cxxapi/classPassenger_1_1TempFile-members.html +2 -3
  87. data/doc/cxxapi/classPassenger_1_1TempFile.html +17 -9
  88. data/doc/cxxapi/definitions_8h-source.html +1 -2
  89. data/doc/cxxapi/files.html +6 -3
  90. data/doc/cxxapi/functions.html +98 -35
  91. data/doc/cxxapi/functions_func.html +60 -32
  92. data/doc/cxxapi/functions_type.html +1 -2
  93. data/doc/cxxapi/functions_vars.html +27 -2
  94. data/doc/cxxapi/graph_legend.html +1 -2
  95. data/doc/cxxapi/graph_legend.png +0 -0
  96. data/doc/cxxapi/group__Configuration.html +3 -4
  97. data/doc/cxxapi/group__Configuration.png +0 -0
  98. data/doc/cxxapi/group__Core.html +3 -4
  99. data/doc/cxxapi/group__Core.png +0 -0
  100. data/doc/cxxapi/group__Exceptions.html +4 -2
  101. data/doc/cxxapi/group__Hooks.html +1 -6
  102. data/doc/cxxapi/group__Hooks.png +0 -0
  103. data/doc/cxxapi/group__Support.html +259 -36
  104. data/doc/cxxapi/hierarchy.html +6 -7
  105. data/doc/cxxapi/inherit__graph__0.map +1 -1
  106. data/doc/cxxapi/inherit__graph__0.md5 +1 -1
  107. data/doc/cxxapi/inherit__graph__0.png +0 -0
  108. data/doc/cxxapi/inherit__graph__1.map +1 -1
  109. data/doc/cxxapi/inherit__graph__1.md5 +1 -1
  110. data/doc/cxxapi/inherit__graph__1.png +0 -0
  111. data/doc/cxxapi/inherit__graph__10.map +1 -1
  112. data/doc/cxxapi/inherit__graph__10.md5 +1 -1
  113. data/doc/cxxapi/inherit__graph__10.png +0 -0
  114. data/doc/cxxapi/inherit__graph__11.map +1 -1
  115. data/doc/cxxapi/inherit__graph__11.md5 +1 -1
  116. data/doc/cxxapi/inherit__graph__11.png +0 -0
  117. data/doc/cxxapi/inherit__graph__12.map +2 -1
  118. data/doc/cxxapi/inherit__graph__12.md5 +1 -1
  119. data/doc/cxxapi/inherit__graph__12.png +0 -0
  120. data/doc/cxxapi/inherit__graph__13.map +1 -1
  121. data/doc/cxxapi/inherit__graph__13.md5 +1 -1
  122. data/doc/cxxapi/inherit__graph__13.png +0 -0
  123. data/doc/cxxapi/inherit__graph__14.map +1 -2
  124. data/doc/cxxapi/inherit__graph__14.md5 +1 -1
  125. data/doc/cxxapi/inherit__graph__14.png +0 -0
  126. data/doc/cxxapi/inherit__graph__15.map +1 -1
  127. data/doc/cxxapi/inherit__graph__15.md5 +1 -1
  128. data/doc/cxxapi/inherit__graph__15.png +0 -0
  129. data/doc/cxxapi/inherit__graph__16.map +1 -1
  130. data/doc/cxxapi/inherit__graph__16.md5 +1 -1
  131. data/doc/cxxapi/inherit__graph__16.png +0 -0
  132. data/doc/cxxapi/inherit__graph__17.png +0 -0
  133. data/doc/cxxapi/inherit__graph__18.png +0 -0
  134. data/doc/cxxapi/inherit__graph__19.png +0 -0
  135. data/doc/cxxapi/inherit__graph__2.map +1 -1
  136. data/doc/cxxapi/inherit__graph__2.md5 +1 -1
  137. data/doc/cxxapi/inherit__graph__2.png +0 -0
  138. data/doc/cxxapi/inherit__graph__20.map +1 -1
  139. data/doc/cxxapi/inherit__graph__20.md5 +1 -1
  140. data/doc/cxxapi/inherit__graph__20.png +0 -0
  141. data/doc/cxxapi/inherit__graph__21.map +1 -1
  142. data/doc/cxxapi/inherit__graph__21.md5 +1 -1
  143. data/doc/cxxapi/inherit__graph__21.png +0 -0
  144. data/doc/cxxapi/inherit__graph__3.map +1 -1
  145. data/doc/cxxapi/inherit__graph__3.md5 +1 -1
  146. data/doc/cxxapi/inherit__graph__3.png +0 -0
  147. data/doc/cxxapi/inherit__graph__4.map +1 -1
  148. data/doc/cxxapi/inherit__graph__4.md5 +1 -1
  149. data/doc/cxxapi/inherit__graph__4.png +0 -0
  150. data/doc/cxxapi/inherit__graph__5.map +2 -1
  151. data/doc/cxxapi/inherit__graph__5.md5 +1 -1
  152. data/doc/cxxapi/inherit__graph__5.png +0 -0
  153. data/doc/cxxapi/inherit__graph__6.map +1 -1
  154. data/doc/cxxapi/inherit__graph__6.md5 +1 -1
  155. data/doc/cxxapi/inherit__graph__6.png +0 -0
  156. data/doc/cxxapi/inherit__graph__7.map +1 -1
  157. data/doc/cxxapi/inherit__graph__7.md5 +1 -1
  158. data/doc/cxxapi/inherit__graph__7.png +0 -0
  159. data/doc/cxxapi/inherit__graph__8.map +1 -1
  160. data/doc/cxxapi/inherit__graph__8.md5 +1 -1
  161. data/doc/cxxapi/inherit__graph__8.png +0 -0
  162. data/doc/cxxapi/inherit__graph__9.map +1 -2
  163. data/doc/cxxapi/inherit__graph__9.md5 +1 -1
  164. data/doc/cxxapi/inherit__graph__9.png +0 -0
  165. data/doc/cxxapi/inherits.html +30 -31
  166. data/doc/cxxapi/main.html +1 -2
  167. data/doc/cxxapi/modules.html +1 -2
  168. data/doc/cxxapi/structPassenger_1_1AnythingToString-members.html +1 -2
  169. data/doc/cxxapi/structPassenger_1_1AnythingToString.html +2 -3
  170. data/doc/cxxapi/structPassenger_1_1AnythingToString_3_01vector_3_01string_01_4_01_4-members.html +1 -2
  171. data/doc/cxxapi/structPassenger_1_1AnythingToString_3_01vector_3_01string_01_4_01_4.html +2 -3
  172. data/doc/cxxapi/structPassenger_1_1PoolOptions-members.html +49 -0
  173. data/doc/cxxapi/structPassenger_1_1PoolOptions.html +404 -0
  174. data/doc/cxxapi/tree.html +18 -20
  175. data/doc/images/conservative_spawning.png +0 -0
  176. data/doc/images/conservative_spawning.svg +248 -0
  177. data/doc/images/smart-lv2.png +0 -0
  178. data/doc/images/smart-lv2.svg +320 -0
  179. data/doc/rdoc/classes/ConditionVariable.html +68 -34
  180. data/doc/rdoc/classes/Exception.html +16 -16
  181. data/doc/rdoc/classes/GC.html +9 -9
  182. data/doc/rdoc/classes/IO.html +36 -17
  183. data/doc/rdoc/classes/PhusionPassenger.html +183 -0
  184. data/doc/rdoc/classes/PhusionPassenger/AbstractRequestHandler.html +511 -0
  185. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/AbstractServer.html +285 -242
  186. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/AbstractServer/ServerAlreadyStarted.html +3 -3
  187. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/AbstractServer/ServerError.html +3 -3
  188. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/AbstractServer/ServerNotStarted.html +3 -3
  189. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/AbstractServer/UnknownMessage.html +3 -3
  190. data/doc/rdoc/classes/PhusionPassenger/AbstractServerCollection.html +598 -0
  191. data/doc/rdoc/classes/PhusionPassenger/AdminTools.html +140 -0
  192. data/doc/rdoc/classes/PhusionPassenger/AdminTools/ControlProcess.html +247 -0
  193. data/doc/rdoc/classes/PhusionPassenger/AdminTools/ControlProcess/Instance.html +138 -0
  194. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/AppInitError.html +36 -19
  195. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/Application.html +81 -96
  196. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/ConsoleTextTemplate.html +18 -18
  197. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/FrameworkInitError.html +20 -18
  198. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/HTMLTemplate.html +18 -18
  199. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/InitializationError.html +9 -9
  200. data/doc/rdoc/classes/PhusionPassenger/InvalidPath.html +92 -0
  201. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/MessageChannel.html +93 -92
  202. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/NativeSupport.html +55 -25
  203. data/doc/rdoc/classes/PhusionPassenger/Rack.html +91 -0
  204. data/doc/rdoc/classes/PhusionPassenger/Rack/ApplicationSpawner.html +185 -0
  205. data/doc/rdoc/classes/PhusionPassenger/Rack/RequestHandler.html +182 -0
  206. data/doc/rdoc/classes/PhusionPassenger/Railz.html +95 -0
  207. data/doc/rdoc/classes/PhusionPassenger/Railz/ApplicationSpawner.html +424 -0
  208. data/doc/rdoc/classes/PhusionPassenger/Railz/ApplicationSpawner/Error.html +98 -0
  209. data/doc/rdoc/classes/PhusionPassenger/Railz/CGIFixed.html +200 -0
  210. data/doc/rdoc/classes/PhusionPassenger/Railz/FrameworkSpawner.html +444 -0
  211. data/doc/rdoc/classes/PhusionPassenger/Railz/FrameworkSpawner/Error.html +98 -0
  212. data/doc/rdoc/classes/PhusionPassenger/Railz/RequestHandler.html +154 -0
  213. data/doc/rdoc/classes/PhusionPassenger/SpawnManager.html +408 -0
  214. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/UnknownError.html +13 -13
  215. data/doc/rdoc/classes/PhusionPassenger/Utils.html +687 -0
  216. data/doc/rdoc/classes/{Passenger → PhusionPassenger}/VersionNotFound.html +8 -8
  217. data/doc/rdoc/classes/PhusionPassenger/WSGI.html +89 -0
  218. data/doc/rdoc/classes/PhusionPassenger/WSGI/ApplicationSpawner.html +188 -0
  219. data/doc/rdoc/classes/PlatformInfo.html +663 -159
  220. data/doc/rdoc/classes/RakeExtensions.html +4 -4
  221. data/doc/rdoc/classes/Signal.html +134 -0
  222. data/doc/rdoc/created.rid +1 -1
  223. data/doc/rdoc/files/DEVELOPERS_TXT.html +15 -10
  224. data/doc/rdoc/files/README.html +5 -7
  225. data/doc/rdoc/files/ext/{passenger → phusion_passenger}/native_support_c.html +2 -2
  226. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/abstract_request_handler_rb.html +7 -9
  227. data/doc/rdoc/files/lib/phusion_passenger/abstract_server_collection_rb.html +120 -0
  228. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/abstract_server_rb.html +7 -10
  229. data/doc/rdoc/files/lib/phusion_passenger/admin_tools/control_process_rb.html +99 -0
  230. data/doc/rdoc/files/lib/phusion_passenger/admin_tools_rb.html +92 -0
  231. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/application_rb.html +6 -8
  232. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/console_text_template_rb.html +5 -7
  233. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/constants_rb.html +4 -5
  234. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/dependencies_rb.html +6 -8
  235. data/doc/rdoc/files/lib/phusion_passenger/events_rb.html +116 -0
  236. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/exceptions_rb.html +5 -7
  237. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/html_template_rb.html +5 -7
  238. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/message_channel_rb.html +5 -7
  239. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/platform_info_rb.html +6 -7
  240. data/doc/rdoc/files/lib/phusion_passenger/rack/application_spawner_rb.html +123 -0
  241. data/doc/rdoc/files/lib/phusion_passenger/rack/request_handler_rb.html +117 -0
  242. data/doc/rdoc/files/lib/{passenger/utils_rb.html → phusion_passenger/railz/application_spawner_rb.html} +24 -17
  243. data/doc/rdoc/files/lib/phusion_passenger/railz/cgi_fixed_rb.html +126 -0
  244. data/doc/rdoc/files/lib/phusion_passenger/railz/framework_spawner_rb.html +139 -0
  245. data/doc/rdoc/files/lib/phusion_passenger/railz/request_handler_rb.html +118 -0
  246. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/simple_benchmarking_rb.html +5 -7
  247. data/doc/rdoc/files/lib/{passenger → phusion_passenger}/spawn_manager_rb.html +40 -24
  248. data/doc/rdoc/files/lib/phusion_passenger/utils_rb.html +169 -0
  249. data/doc/rdoc/files/lib/phusion_passenger/wsgi/application_spawner_rb.html +120 -0
  250. data/doc/rdoc/files/lib/rake/extensions_rb.html +3 -4
  251. data/doc/rdoc/fr_class_index.html +37 -19
  252. data/doc/rdoc/fr_file_index.html +25 -14
  253. data/doc/rdoc/fr_method_index.html +145 -74
  254. data/ext/apache2/Application.h +145 -44
  255. data/ext/apache2/ApplicationPool.h +27 -29
  256. data/ext/apache2/ApplicationPoolServer.h +183 -72
  257. data/ext/apache2/ApplicationPoolServerExecutable.cpp +249 -42
  258. data/ext/apache2/Bucket.cpp +61 -9
  259. data/ext/apache2/Bucket.h +15 -8
  260. data/ext/apache2/CachedFileStat.cpp +114 -0
  261. data/ext/apache2/CachedFileStat.h +169 -0
  262. data/ext/apache2/Configuration.cpp +213 -22
  263. data/ext/apache2/Configuration.h +176 -13
  264. data/ext/apache2/DirectoryMapper.h +287 -0
  265. data/ext/apache2/Exceptions.h +30 -12
  266. data/ext/apache2/FileChecker.h +108 -0
  267. data/ext/apache2/Hooks.cpp +709 -493
  268. data/ext/apache2/LICENSE-CNRI.TXT +15 -0
  269. data/ext/apache2/Logging.h +26 -22
  270. data/ext/apache2/MessageChannel.h +124 -15
  271. data/ext/apache2/PoolOptions.h +283 -0
  272. data/ext/apache2/SpawnManager.h +75 -99
  273. data/ext/apache2/StandardApplicationPool.h +296 -195
  274. data/ext/apache2/SystemTime.cpp +28 -0
  275. data/ext/apache2/SystemTime.h +82 -0
  276. data/ext/apache2/Utils.cpp +172 -18
  277. data/ext/apache2/Utils.h +124 -19
  278. data/ext/boost/cstdint.hpp +4 -2
  279. data/ext/boost/current_function.hpp +67 -0
  280. data/ext/boost/detail/sp_counted_base.hpp +4 -4
  281. data/ext/boost/thread/exceptions.hpp +2 -1
  282. data/ext/boost/thread/pthread/thread.hpp +11 -3
  283. data/ext/boost/thread/pthread/thread_data.hpp +2 -1
  284. data/ext/oxt/backtrace.cpp +172 -0
  285. data/ext/oxt/backtrace.hpp +135 -0
  286. data/ext/oxt/detail/backtrace_disabled.hpp +39 -0
  287. data/ext/oxt/detail/backtrace_enabled.hpp +155 -0
  288. data/ext/oxt/detail/spin_lock_gcc_x86.hpp +82 -0
  289. data/ext/oxt/detail/spin_lock_portable.hpp +38 -0
  290. data/ext/oxt/detail/spin_lock_pthreads.hpp +97 -0
  291. data/ext/oxt/detail/tracable_exception_disabled.hpp +46 -0
  292. data/ext/oxt/detail/tracable_exception_enabled.hpp +48 -0
  293. data/ext/oxt/macros.hpp +58 -0
  294. data/ext/oxt/spin_lock.hpp +55 -0
  295. data/ext/{apache2/System.cpp → oxt/system_calls.cpp} +87 -52
  296. data/ext/oxt/system_calls.hpp +234 -0
  297. data/ext/oxt/thread.cpp +32 -0
  298. data/ext/oxt/thread.hpp +223 -0
  299. data/ext/oxt/tracable_exception.cpp +87 -0
  300. data/ext/oxt/tracable_exception.hpp +35 -0
  301. data/{lib/passenger/constants.rb → ext/phusion_passenger/extconf.rb} +14 -9
  302. data/ext/{passenger → phusion_passenger}/native_support.c +33 -6
  303. data/lib/{passenger → phusion_passenger}/abstract_request_handler.rb +209 -93
  304. data/lib/{passenger → phusion_passenger}/abstract_server.rb +23 -8
  305. data/lib/phusion_passenger/abstract_server_collection.rb +301 -0
  306. data/lib/phusion_passenger/admin_tools.rb +25 -0
  307. data/lib/phusion_passenger/admin_tools/control_process.rb +107 -0
  308. data/lib/{passenger → phusion_passenger}/application.rb +13 -16
  309. data/lib/{passenger → phusion_passenger}/console_text_template.rb +2 -2
  310. data/{ext/passenger/extconf.rb → lib/phusion_passenger/constants.rb} +5 -5
  311. data/lib/{passenger → phusion_passenger}/dependencies.rb +38 -32
  312. data/lib/phusion_passenger/events.rb +45 -0
  313. data/lib/{passenger → phusion_passenger}/exceptions.rb +12 -5
  314. data/lib/{passenger → phusion_passenger}/html_template.rb +2 -2
  315. data/lib/{passenger → phusion_passenger}/message_channel.rb +3 -2
  316. data/lib/phusion_passenger/platform_info.rb +500 -0
  317. data/lib/{passenger → phusion_passenger}/rack/application_spawner.rb +29 -22
  318. data/lib/{passenger → phusion_passenger}/rack/request_handler.rb +14 -9
  319. data/lib/{passenger → phusion_passenger}/railz/application_spawner.rb +94 -74
  320. data/lib/{passenger → phusion_passenger}/railz/cgi_fixed.rb +2 -2
  321. data/lib/{passenger → phusion_passenger}/railz/framework_spawner.rb +86 -98
  322. data/lib/{passenger → phusion_passenger}/railz/request_handler.rb +6 -6
  323. data/lib/{passenger → phusion_passenger}/simple_benchmarking.rb +0 -0
  324. data/lib/{passenger → phusion_passenger}/spawn_manager.rb +136 -128
  325. data/lib/{passenger → phusion_passenger}/templates/apache2_config_snippets.txt.erb +0 -0
  326. data/lib/{passenger → phusion_passenger}/templates/apache_must_be_compiled_with_compatible_mpm.txt.erb +0 -0
  327. data/lib/phusion_passenger/templates/app_exited_during_initialization.html.erb +38 -0
  328. data/lib/{passenger → phusion_passenger}/templates/app_init_error.html.erb +0 -0
  329. data/lib/{passenger → phusion_passenger}/templates/database_error.html.erb +0 -0
  330. data/lib/{passenger → phusion_passenger}/templates/deployment_example.txt.erb +1 -1
  331. data/lib/{passenger → phusion_passenger}/templates/error_layout.css +0 -0
  332. data/lib/{passenger → phusion_passenger}/templates/error_layout.html.erb +0 -0
  333. data/lib/{passenger → phusion_passenger}/templates/framework_init_error.html.erb +0 -0
  334. data/lib/{passenger → phusion_passenger}/templates/general_error.html.erb +0 -0
  335. data/lib/{passenger → phusion_passenger}/templates/invalid_app_root.html.erb +1 -1
  336. data/lib/{passenger → phusion_passenger}/templates/load_error.html.erb +0 -0
  337. data/lib/{passenger → phusion_passenger}/templates/no_write_permission_to_passenger_root.txt.erb +0 -0
  338. data/lib/{passenger → phusion_passenger}/templates/possible_solutions_for_compilation_and_installation_problems.txt.erb +0 -0
  339. data/lib/{passenger → phusion_passenger}/templates/run_installer_as_root.txt.erb +0 -0
  340. data/lib/{passenger → phusion_passenger}/templates/version_not_found.html.erb +0 -0
  341. data/lib/{passenger → phusion_passenger}/templates/welcome.txt.erb +0 -0
  342. data/lib/{passenger → phusion_passenger}/utils.rb +210 -44
  343. data/lib/{passenger → phusion_passenger}/wsgi/application_spawner.rb +18 -15
  344. data/lib/{passenger → phusion_passenger}/wsgi/request_handler.py +7 -1
  345. data/man/passenger-memory-stats.8 +1 -1
  346. data/misc/render_error_pages.rb +1 -1
  347. data/test/ApplicationPoolServerTest.cpp +0 -28
  348. data/test/ApplicationPoolServer_ApplicationPoolTest.cpp +4 -0
  349. data/test/ApplicationPoolTest.cpp +307 -69
  350. data/test/CachedFileStatTest.cpp +262 -0
  351. data/test/FileCheckerTest.cpp +79 -0
  352. data/test/MessageChannelTest.cpp +3 -3
  353. data/test/PoolOptionsTest.cpp +37 -0
  354. data/test/SpawnManagerTest.cpp +4 -4
  355. data/test/StandardApplicationPoolTest.cpp +4 -0
  356. data/test/SystemTimeTest.cpp +37 -0
  357. data/test/UtilsTest.cpp +137 -0
  358. data/test/integration_tests.rb +270 -23
  359. data/test/oxt/backtrace_test.cpp +128 -0
  360. data/test/oxt/oxt_test_main.cpp +25 -0
  361. data/test/oxt/syscall_interruption_test.cpp +50 -0
  362. data/test/ruby/abstract_request_handler_spec.rb +83 -0
  363. data/test/ruby/abstract_server_collection_spec.rb +246 -0
  364. data/test/ruby/application_spec.rb +3 -3
  365. data/test/ruby/message_channel_spec.rb +2 -2
  366. data/test/ruby/rack/application_spawner_spec.rb +3 -5
  367. data/test/ruby/rails/application_spawner_spec.rb +54 -15
  368. data/test/ruby/rails/framework_spawner_spec.rb +6 -8
  369. data/test/ruby/rails/minimal_spawner_spec.rb +29 -0
  370. data/test/ruby/rails/spawner_error_handling_spec.rb +1 -1
  371. data/test/ruby/rails/spawner_privilege_lowering_spec.rb +3 -3
  372. data/test/ruby/spawn_manager_spec.rb +23 -12
  373. data/test/ruby/utils_spec.rb +36 -2
  374. data/test/ruby/wsgi/application_spawner_spec.rb +47 -0
  375. data/test/stub/apache2/httpd.conf.erb +3 -5
  376. data/test/stub/message_channel.rb +2 -2
  377. data/test/stub/message_channel_2.rb +2 -2
  378. data/test/stub/message_channel_3.rb +3 -3
  379. data/test/stub/minimal-railsapp/README +0 -0
  380. data/test/stub/minimal-railsapp/config/application.rb +0 -0
  381. data/test/stub/minimal-railsapp/config/environment.rb +0 -0
  382. data/test/stub/minimal-railsapp/vendor/rails/actionmailer/lib/action_mailer.rb +0 -0
  383. data/test/stub/minimal-railsapp/vendor/rails/actionpack/lib/action_controller.rb +0 -0
  384. data/test/stub/minimal-railsapp/vendor/rails/actionpack/lib/action_pack.rb +0 -0
  385. data/test/stub/minimal-railsapp/vendor/rails/actionpack/lib/action_view.rb +0 -0
  386. data/test/stub/minimal-railsapp/vendor/rails/activerecord/lib/active_record.rb +0 -0
  387. data/test/stub/minimal-railsapp/vendor/rails/activeresource/lib/active_resource.rb +0 -0
  388. data/test/stub/minimal-railsapp/vendor/rails/activesupport/lib/active_support.rb +0 -0
  389. data/test/stub/minimal-railsapp/vendor/rails/activesupport/lib/active_support/whiny_nil.rb +0 -0
  390. data/test/stub/minimal-railsapp/vendor/rails/railties/lib/dispatcher.rb +0 -0
  391. data/test/stub/minimal-railsapp/vendor/rails/railties/lib/initializer.rb +0 -0
  392. data/test/stub/minimal-railsapp/vendor/rails/railties/lib/ruby_version_check.rb +0 -0
  393. data/test/stub/rails_apps/foobar/app/controllers/foo_controller.rb +8 -0
  394. data/test/stub/rails_apps/foobar/config/environments/development.rb +1 -2
  395. data/test/stub/rails_apps/mycook/app/controllers/welcome_controller.rb +21 -1
  396. data/test/stub/rails_apps/mycook/sites/some.site/public/uploads.html +26 -0
  397. data/test/stub/rails_apps/mycook/sites/some.site/public/welcome/cached.html +26 -0
  398. data/test/stub/railsapp/app/controllers/application.rb +0 -0
  399. data/test/stub/railsapp/app/controllers/bar_controller_1.rb +0 -0
  400. data/test/stub/railsapp/app/controllers/bar_controller_2.rb +1 -1
  401. data/test/stub/railsapp/app/controllers/foo_controller.rb +4 -0
  402. data/test/stub/railsapp/app/helpers/application_helper.rb +0 -0
  403. data/test/stub/railsapp/config/boot.rb +0 -0
  404. data/test/stub/railsapp/config/database.yml +0 -0
  405. data/test/stub/railsapp/config/environment.rb +0 -0
  406. data/test/stub/railsapp/config/environments/development.rb +0 -0
  407. data/test/stub/railsapp/config/environments/production.rb +0 -0
  408. data/test/stub/railsapp/config/initializers/inflections.rb +0 -0
  409. data/test/stub/railsapp/config/initializers/mime_types.rb +0 -0
  410. data/test/stub/railsapp/config/routes.rb +0 -0
  411. data/test/stub/railsapp/public/useless.txt +0 -0
  412. data/test/stub/spawn_server.rb +3 -4
  413. data/test/stub/wsgi/passenger_wsgi.pyc +0 -0
  414. data/test/support/apache2_controller.rb +57 -7
  415. data/test/support/tut.h +15 -0
  416. data/vendor/README +12 -0
  417. data/vendor/README_FOR_PACKAGERS +1 -0
  418. data/vendor/rack-0.9.1/AUTHORS +8 -0
  419. data/vendor/rack-0.9.1/COPYING +18 -0
  420. data/vendor/rack-0.9.1/ChangeLog +1423 -0
  421. data/vendor/rack-0.9.1/KNOWN-ISSUES +18 -0
  422. data/vendor/rack-0.9.1/README +306 -0
  423. data/vendor/rack-0.9.1/Rakefile +188 -0
  424. data/vendor/rack-0.9.1/SPEC +129 -0
  425. data/vendor/rack-0.9.1/lib/rack.rb +86 -0
  426. data/vendor/rack-0.9.1/lib/rack/adapter/camping.rb +22 -0
  427. data/vendor/rack-0.9.1/lib/rack/auth/abstract/handler.rb +28 -0
  428. data/vendor/rack-0.9.1/lib/rack/auth/abstract/request.rb +37 -0
  429. data/vendor/rack-0.9.1/lib/rack/auth/basic.rb +58 -0
  430. data/vendor/rack-0.9.1/lib/rack/auth/digest/md5.rb +124 -0
  431. data/vendor/rack-0.9.1/lib/rack/auth/digest/nonce.rb +51 -0
  432. data/vendor/rack-0.9.1/lib/rack/auth/digest/params.rb +55 -0
  433. data/vendor/rack-0.9.1/lib/rack/auth/digest/request.rb +40 -0
  434. data/vendor/rack-0.9.1/lib/rack/auth/openid.rb +438 -0
  435. data/vendor/rack-0.9.1/lib/rack/builder.rb +67 -0
  436. data/vendor/rack-0.9.1/lib/rack/cascade.rb +36 -0
  437. data/vendor/rack-0.9.1/lib/rack/commonlogger.rb +61 -0
  438. data/vendor/rack-0.9.1/lib/rack/conditionalget.rb +43 -0
  439. data/vendor/rack-0.9.1/lib/rack/content_length.rb +25 -0
  440. data/vendor/rack-0.9.1/lib/rack/deflater.rb +87 -0
  441. data/vendor/rack-0.9.1/lib/rack/directory.rb +150 -0
  442. data/vendor/rack-0.9.1/lib/rack/file.rb +85 -0
  443. data/vendor/rack-0.9.1/lib/rack/handler.rb +48 -0
  444. data/vendor/rack-0.9.1/lib/rack/handler/cgi.rb +57 -0
  445. data/vendor/rack-0.9.1/lib/rack/handler/evented_mongrel.rb +8 -0
  446. data/vendor/rack-0.9.1/lib/rack/handler/fastcgi.rb +86 -0
  447. data/vendor/rack-0.9.1/lib/rack/handler/lsws.rb +52 -0
  448. data/vendor/rack-0.9.1/lib/rack/handler/mongrel.rb +82 -0
  449. data/vendor/rack-0.9.1/lib/rack/handler/scgi.rb +57 -0
  450. data/vendor/rack-0.9.1/lib/rack/handler/swiftiplied_mongrel.rb +8 -0
  451. data/vendor/rack-0.9.1/lib/rack/handler/thin.rb +15 -0
  452. data/vendor/rack-0.9.1/lib/rack/handler/webrick.rb +61 -0
  453. data/vendor/rack-0.9.1/lib/rack/head.rb +19 -0
  454. data/vendor/rack-0.9.1/lib/rack/lint.rb +465 -0
  455. data/vendor/rack-0.9.1/lib/rack/lobster.rb +65 -0
  456. data/vendor/rack-0.9.1/lib/rack/methodoverride.rb +27 -0
  457. data/vendor/rack-0.9.1/lib/rack/mime.rb +204 -0
  458. data/vendor/rack-0.9.1/lib/rack/mock.rb +160 -0
  459. data/vendor/rack-0.9.1/lib/rack/recursive.rb +57 -0
  460. data/vendor/rack-0.9.1/lib/rack/reloader.rb +64 -0
  461. data/vendor/rack-0.9.1/lib/rack/request.rb +218 -0
  462. data/vendor/rack-0.9.1/lib/rack/response.rb +171 -0
  463. data/vendor/rack-0.9.1/lib/rack/session/abstract/id.rb +153 -0
  464. data/vendor/rack-0.9.1/lib/rack/session/cookie.rb +89 -0
  465. data/vendor/rack-0.9.1/lib/rack/session/memcache.rb +97 -0
  466. data/vendor/rack-0.9.1/lib/rack/session/pool.rb +73 -0
  467. data/vendor/rack-0.9.1/lib/rack/showexceptions.rb +348 -0
  468. data/vendor/rack-0.9.1/lib/rack/showstatus.rb +106 -0
  469. data/vendor/rack-0.9.1/lib/rack/static.rb +38 -0
  470. data/vendor/rack-0.9.1/lib/rack/urlmap.rb +48 -0
  471. data/vendor/rack-0.9.1/lib/rack/utils.rb +347 -0
  472. metadata +1197 -1055
  473. data/doc/cxxapi/System_8h-source.html +0 -251
  474. data/doc/cxxapi/classDirectoryMapper-members.html +0 -38
  475. data/doc/cxxapi/classDirectoryMapper.html +0 -203
  476. data/doc/cxxapi/classPassenger_1_1Thread.html +0 -100
  477. data/doc/cxxapi/classboost_1_1this__thread_1_1disable__syscall__interruption.html +0 -46
  478. data/doc/cxxapi/classboost_1_1this__thread_1_1restore__syscall__interruption-members.html +0 -33
  479. data/doc/cxxapi/classboost_1_1this__thread_1_1restore__syscall__interruption.html +0 -44
  480. data/doc/cxxapi/namespacePassenger.html +0 -208
  481. data/doc/cxxapi/namespacePassenger_1_1InterruptableCalls.html +0 -43
  482. data/doc/cxxapi/namespacemembers.html +0 -70
  483. data/doc/cxxapi/namespacemembers_func.html +0 -66
  484. data/doc/cxxapi/namespacemembers_type.html +0 -46
  485. data/doc/cxxapi/namespaces.html +0 -35
  486. data/doc/rdoc/classes/Passenger.html +0 -136
  487. data/doc/rdoc/classes/Passenger/AbstractRequestHandler.html +0 -402
  488. data/doc/rdoc/classes/Passenger/SpawnManager.html +0 -379
  489. data/doc/rdoc/classes/Passenger/Utils.html +0 -578
  490. data/ext/apache2/System.h +0 -228
  491. data/lib/passenger/platform_info.rb +0 -302
  492. data/lib/passenger/templates/app_exited_during_initialization.html.erb +0 -19
  493. data/test/stub/apache2/httpd.conf +0 -75
  494. data/test/stub/rails_apps/foobar/config/environments/test.rb +0 -22
  495. data/test/stub/rails_apps/mycook/config/environments/test.rb +0 -22
  496. data/test/stub/railsapp/config/environments/test.rb +0 -22
  497. data/test/stub/railsapp2/config/environments/test.rb +0 -22
@@ -10,7 +10,6 @@
10
10
  <ul>
11
11
  <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12
12
  <li><a href="modules.html"><span>Modules</span></a></li>
13
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
14
13
  <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
15
14
  <li><a href="files.html"><span>Files</span></a></li>
16
15
  </ul>
@@ -39,8 +38,8 @@
39
38
  <li><a href="#index_f"><span>f</span></a></li>
40
39
  <li><a href="#index_g"><span>g</span></a></li>
41
40
  <li><a href="#index_h"><span>h</span></a></li>
42
- <li><a href="#index_i"><span>i</span></a></li>
43
41
  <li><a href="#index_m"><span>m</span></a></li>
42
+ <li><a href="#index_p"><span>p</span></a></li>
44
43
  <li><a href="#index_r"><span>r</span></a></li>
45
44
  <li><a href="#index_s"><span>s</span></a></li>
46
45
  <li><a href="#index_t"><span>t</span></a></li>
@@ -56,7 +55,7 @@
56
55
  <p>
57
56
  <h3><a class="anchor" name="index_a">- a -</a></h3><ul>
58
57
  <li>Application()
59
- : <a class="el" href="classPassenger_1_1Application.html#163509167eef118470b72661ac8acd5d">Passenger::Application</a>
58
+ : <a class="el" href="classPassenger_1_1Application.html#0ae83471a8c991b8cc8d460b44d237ea">Passenger::Application</a>
60
59
  <li>ApplicationPoolServer()
61
60
  : <a class="el" href="classPassenger_1_1ApplicationPoolServer.html#2203db62a022579d569ceddff8ef6ca9">Passenger::ApplicationPoolServer</a>
62
61
  </ul>
@@ -65,6 +64,8 @@
65
64
  : <a class="el" href="classPassenger_1_1SystemException.html#84fa2ab4f5b7b96704734fcdfdaa0269">Passenger::SystemException</a>
66
65
  </ul>
67
66
  <h3><a class="anchor" name="index_c">- c -</a></h3><ul>
67
+ <li>changed()
68
+ : <a class="el" href="classPassenger_1_1FileChecker.html#832ff27b4b3e5db84a9d986285e7c270">Passenger::FileChecker</a>
68
69
  <li>clear()
69
70
  : <a class="el" href="classPassenger_1_1ApplicationPool.html#74db4d7a693d45b16320b2296a0c0997">Passenger::ApplicationPool</a>
70
71
  , <a class="el" href="classPassenger_1_1StandardApplicationPool.html#bcf8faeb4f431ae07ea0e20270661d08">Passenger::StandardApplicationPool</a>
@@ -77,46 +78,56 @@
77
78
  <li>code()
78
79
  : <a class="el" href="classPassenger_1_1SystemException.html#ee7a6672bf79b72a4c3ee70c57d6a47c">Passenger::SystemException</a>
79
80
  <li>connect()
80
- : <a class="el" href="classPassenger_1_1ApplicationPoolServer.html#18f77057cc28e7924a8f4d1397aa0468">Passenger::ApplicationPoolServer</a>
81
- , <a class="el" href="classPassenger_1_1Application.html#34636f796ff3924ad5ec142aaa581379">Passenger::Application</a>
81
+ : <a class="el" href="classPassenger_1_1Application.html#34636f796ff3924ad5ec142aaa581379">Passenger::Application</a>
82
+ , <a class="el" href="classPassenger_1_1ApplicationPoolServer.html#18f77057cc28e7924a8f4d1397aa0468">Passenger::ApplicationPoolServer</a>
83
+ <li>connected()
84
+ : <a class="el" href="classPassenger_1_1ApplicationPool.html#c811d261345fcf579f049a2377b4b56b">Passenger::ApplicationPool</a>
82
85
  </ul>
83
86
  <h3><a class="anchor" name="index_d">- d -</a></h3><ul>
84
87
  <li>detach()
85
88
  : <a class="el" href="classPassenger_1_1ApplicationPoolServer.html#b13957e32ae8ca36ba85f2e6ffefd5ce">Passenger::ApplicationPoolServer</a>
86
89
  <li>DirectoryMapper()
87
- : <a class="el" href="classDirectoryMapper.html#6e817b7dd49e6598e1d22f6ee8e44407">DirectoryMapper</a>
90
+ : <a class="el" href="classPassenger_1_1DirectoryMapper.html#e2725c3280a5e5d63dbc099fe3c3d82a">Passenger::DirectoryMapper</a>
88
91
  <li>discardStream()
89
92
  : <a class="el" href="classPassenger_1_1Application_1_1Session.html#7f9ad70e75d21130d914d2134061c757">Passenger::Application::Session</a>
90
93
  </ul>
91
94
  <h3><a class="anchor" name="index_f">- f -</a></h3><ul>
95
+ <li>FileChecker()
96
+ : <a class="el" href="classPassenger_1_1FileChecker.html#64556bc7e06a32363dbd87451d459b71">Passenger::FileChecker</a>
92
97
  <li>filename()
93
98
  : <a class="el" href="classPassenger_1_1FileSystemException.html#7eef8fefd84a07efa9fe3a76129a4386">Passenger::FileSystemException</a>
99
+ <li>force()
100
+ : <a class="el" href="classPassenger_1_1SystemTime.html#e15eaa6cdbbf8ab91ff740a0ca8ad57b">Passenger::SystemTime</a>
94
101
  </ul>
95
102
  <h3><a class="anchor" name="index_g">- g -</a></h3><ul>
96
103
  <li>get()
97
- : <a class="el" href="classPassenger_1_1ApplicationPool.html#9f486e1c0a4187f7fdb95d1382a85282">Passenger::ApplicationPool</a>
98
- , <a class="el" href="classPassenger_1_1StandardApplicationPool.html#0dcdd88c39d7f1a1d667e24c3cb9b243">Passenger::StandardApplicationPool</a>
104
+ : <a class="el" href="classPassenger_1_1ApplicationPool.html#0b206eb4eb2869423d75c042a0653c67">Passenger::ApplicationPool</a>
105
+ , <a class="el" href="classPassenger_1_1StandardApplicationPool.html#ffc8f3ef8b1d925d203794d191d7fef4">Passenger::StandardApplicationPool</a>
106
+ , <a class="el" href="classPassenger_1_1SystemTime.html#d643b3e5748ee929e013517e6aca046c">Passenger::SystemTime</a>
107
+ , <a class="el" href="classPassenger_1_1StandardApplicationPool.html#5a33f0766bbcfb2a48e08fc27bd1b684">Passenger::StandardApplicationPool</a>
99
108
  <li>getActive()
100
- : <a class="el" href="classPassenger_1_1StandardApplicationPool.html#7773c4a3dfbd88eac72401d063831788">Passenger::StandardApplicationPool</a>
101
- , <a class="el" href="classPassenger_1_1ApplicationPool.html#06d1eae044d4d761ce77cf09049df8c8">Passenger::ApplicationPool</a>
109
+ : <a class="el" href="classPassenger_1_1ApplicationPool.html#06d1eae044d4d761ce77cf09049df8c8">Passenger::ApplicationPool</a>
110
+ , <a class="el" href="classPassenger_1_1StandardApplicationPool.html#7773c4a3dfbd88eac72401d063831788">Passenger::StandardApplicationPool</a>
102
111
  <li>getApplicationType()
103
- : <a class="el" href="classDirectoryMapper.html#6498662c737db056cd79d7faa0fa71cf">DirectoryMapper</a>
112
+ : <a class="el" href="classPassenger_1_1DirectoryMapper.html#ba438d86ca263972a47540956bf11ec1">Passenger::DirectoryMapper</a>
104
113
  <li>getApplicationTypeString()
105
- : <a class="el" href="classDirectoryMapper.html#a5da2372a06eb92f78e55e5ab2f104ef">DirectoryMapper</a>
114
+ : <a class="el" href="classPassenger_1_1DirectoryMapper.html#c46f0e74ffd05b7fe9924dd99a057cf7">Passenger::DirectoryMapper</a>
106
115
  <li>getAppRoot()
107
116
  : <a class="el" href="classPassenger_1_1Application.html#0a0665852e7ebc8fb8ab0772fa90bc56">Passenger::Application</a>
108
117
  <li>getBaseURI()
109
- : <a class="el" href="classDirectoryMapper.html#920caeb4d562d900b30119a2aae25574">DirectoryMapper</a>
118
+ : <a class="el" href="classPassenger_1_1DirectoryMapper.html#2da887c077fc2460dea204783470e821">Passenger::DirectoryMapper</a>
110
119
  <li>getCount()
111
120
  : <a class="el" href="classPassenger_1_1ApplicationPool.html#93b0277beb510855f85fee5de5c369bb">Passenger::ApplicationPool</a>
112
121
  , <a class="el" href="classPassenger_1_1StandardApplicationPool.html#cdbfe2b9ffacdab4438c879c2411bf02">Passenger::StandardApplicationPool</a>
122
+ <li>getEnvironment()
123
+ : <a class="el" href="classPassenger_1_1DirectoryMapper.html#f5091e3cef3878e160e5d3b2181d82fb">Passenger::DirectoryMapper</a>
113
124
  <li>getErrorPage()
114
125
  : <a class="el" href="classPassenger_1_1SpawnException.html#6f675a37edd7070875d0744e7dd010a1">Passenger::SpawnException</a>
115
126
  <li>getPid()
116
- : <a class="el" href="classPassenger_1_1Application.html#94d2cce1c2c1d3441325f1498a22bf02">Passenger::Application</a>
117
- , <a class="el" href="classPassenger_1_1Application_1_1Session.html#2215bec32917c48d1a9f6386b88d018b">Passenger::Application::Session</a>
127
+ : <a class="el" href="classPassenger_1_1Application_1_1Session.html#2215bec32917c48d1a9f6386b88d018b">Passenger::Application::Session</a>
128
+ , <a class="el" href="classPassenger_1_1Application.html#94d2cce1c2c1d3441325f1498a22bf02">Passenger::Application</a>
118
129
  <li>getPublicDirectory()
119
- : <a class="el" href="classDirectoryMapper.html#b05bbc3bd6ebbe64c00712c6a98f9fb8">DirectoryMapper</a>
130
+ : <a class="el" href="classPassenger_1_1DirectoryMapper.html#ef969f27622fb215990a870076648aa1">Passenger::DirectoryMapper</a>
120
131
  <li>getServerPid()
121
132
  : <a class="el" href="classPassenger_1_1SpawnManager.html#1f77e2e7e6cb464028c13a29f983ad8e">Passenger::SpawnManager</a>
122
133
  <li>getSpawnServerPid()
@@ -129,16 +140,14 @@
129
140
  <li>hasErrorPage()
130
141
  : <a class="el" href="classPassenger_1_1SpawnException.html#e65dc272e183fd9e5637a4091cc6bbf4">Passenger::SpawnException</a>
131
142
  </ul>
132
- <h3><a class="anchor" name="index_i">- i -</a></h3><ul>
133
- <li>interrupt()
134
- : <a class="el" href="classPassenger_1_1Thread.html#2212f1aee683798318ec2bcd57550407">Passenger::Thread</a>
135
- <li>interruptAndJoin()
136
- : <a class="el" href="classPassenger_1_1Thread.html#5bc65d2722d1425e574b3b8a97e60388">Passenger::Thread</a>
137
- </ul>
138
143
  <h3><a class="anchor" name="index_m">- m -</a></h3><ul>
139
144
  <li>MessageChannel()
140
145
  : <a class="el" href="classPassenger_1_1MessageChannel.html#73e7c9a8e421d29558838176aff02ca4">Passenger::MessageChannel</a>
141
146
  </ul>
147
+ <h3><a class="anchor" name="index_p">- p -</a></h3><ul>
148
+ <li>PoolOptions()
149
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#b2b7c72144c108657e3ad4ac9f6e26f4">Passenger::PoolOptions</a>
150
+ </ul>
142
151
  <h3><a class="anchor" name="index_r">- r -</a></h3><ul>
143
152
  <li>read()
144
153
  : <a class="el" href="classPassenger_1_1MessageChannel.html#129659b60d1a663337873d2af944431e">Passenger::MessageChannel</a>
@@ -148,10 +157,16 @@
148
157
  : <a class="el" href="classPassenger_1_1MessageChannel.html#cd1d1bd1cc787784c8b54f5471fff479">Passenger::MessageChannel</a>
149
158
  <li>readScalar()
150
159
  : <a class="el" href="classPassenger_1_1MessageChannel.html#4ce6a0e751b5e3563bee583c231569bc">Passenger::MessageChannel</a>
160
+ <li>release()
161
+ : <a class="el" href="classPassenger_1_1SystemTime.html#aa31ee319abe639741327a535c6d22fd">Passenger::SystemTime</a>
151
162
  <li>reload()
152
163
  : <a class="el" href="classPassenger_1_1SpawnManager.html#2e85c43042b9556ca2fd74b8d28956ce">Passenger::SpawnManager</a>
153
164
  </ul>
154
165
  <h3><a class="anchor" name="index_s">- s -</a></h3><ul>
166
+ <li>saveOriginalFilename()
167
+ : <a class="el" href="classHooks.html#64333270a19c93451c33dcb8fe1666de">Hooks</a>
168
+ <li>saveStateBeforeRewriteRules()
169
+ : <a class="el" href="classHooks.html#404c390fa2529611d1c5a15c0bd9f1c3">Hooks</a>
155
170
  <li>sendBodyBlock()
156
171
  : <a class="el" href="classPassenger_1_1Application_1_1Session.html#2091e4b60dcbe42ab80fa387610fd669">Passenger::Application::Session</a>
157
172
  <li>sendHeaders()
@@ -162,48 +177,61 @@
162
177
  <li>setMaxPerApp()
163
178
  : <a class="el" href="classPassenger_1_1ApplicationPool.html#b0437434c79b5444ac0faf768f1410e8">Passenger::ApplicationPool</a>
164
179
  , <a class="el" href="classPassenger_1_1StandardApplicationPool.html#3bafcda8d880f70561ad8a9da16e26ef">Passenger::StandardApplicationPool</a>
165
- <li>setUseGlobalQueue()
166
- : <a class="el" href="classPassenger_1_1ApplicationPool.html#b5faf64421313e1387c187f80b95d0e7">Passenger::ApplicationPool</a>
167
- , <a class="el" href="classPassenger_1_1StandardApplicationPool.html#e9c699b56f3a755ab10269c7fe585c2d">Passenger::StandardApplicationPool</a>
180
+ <li>setReaderTimeout()
181
+ : <a class="el" href="classPassenger_1_1Application_1_1Session.html#17b4b6e4c47ec8941a099e229d2944f2">Passenger::Application::Session</a>
182
+ <li>setReadTimeout()
183
+ : <a class="el" href="classPassenger_1_1MessageChannel.html#eb69bffbbb148c9bc8662e20b416c4e2">Passenger::MessageChannel</a>
184
+ <li>setWriterTimeout()
185
+ : <a class="el" href="classPassenger_1_1Application_1_1Session.html#4236abbdf69e10ded00c756de24433e9">Passenger::Application::Session</a>
186
+ <li>setWriteTimeout()
187
+ : <a class="el" href="classPassenger_1_1MessageChannel.html#77c5d7c47f387cf43992ebeb14e3c6c7">Passenger::MessageChannel</a>
168
188
  <li>shutdownReader()
169
189
  : <a class="el" href="classPassenger_1_1Application_1_1Session.html#45ad442dc1f4e7b73782bb3395d9e97d">Passenger::Application::Session</a>
170
190
  <li>shutdownWriter()
171
191
  : <a class="el" href="classPassenger_1_1Application_1_1Session.html#dff449398adb872c93a9572ae4b701fb">Passenger::Application::Session</a>
172
192
  <li>spawn()
173
- : <a class="el" href="classPassenger_1_1SpawnManager.html#1bafa97204ea49a88b66272be3377d53">Passenger::SpawnManager</a>
193
+ : <a class="el" href="classPassenger_1_1SpawnManager.html#af035d564cc4e6683508939c9d6dbb64">Passenger::SpawnManager</a>
174
194
  <li>SpawnManager()
175
195
  : <a class="el" href="classPassenger_1_1SpawnManager.html#fdefbbbad39833912ae7f9f106083099">Passenger::SpawnManager</a>
176
196
  <li>StandardApplicationPool()
177
197
  : <a class="el" href="classPassenger_1_1StandardApplicationPool.html#f175704fc477f37ba1d387be09fa2e6b">Passenger::StandardApplicationPool</a>
178
198
  <li>start()
179
199
  : <a class="el" href="classClient.html#c0a8dd9e23393c045064b109355a7daf">Client</a>
200
+ <li>startBlockingModAutoIndex()
201
+ : <a class="el" href="classHooks.html#d6cca64be8a9075b4b92efdb4d9020a5">Hooks</a>
202
+ <li>startBlockingModDir()
203
+ : <a class="el" href="classHooks.html#e3091c57c95b2f8269f566099802f0ec">Hooks</a>
180
204
  <li>sys()
181
205
  : <a class="el" href="classPassenger_1_1SystemException.html#0ef41d755fea2c9b1db2252e7c418dc8">Passenger::SystemException</a>
182
206
  <li>SystemException()
183
- : <a class="el" href="classPassenger_1_1SystemException.html#4ee42f81106408c91726a62287e8471c">Passenger::SystemException</a>
207
+ : <a class="el" href="classPassenger_1_1SystemException.html#1f0f33c63934ee40c5cd9c338c8aa04b">Passenger::SystemException</a>
184
208
  </ul>
185
209
  <h3><a class="anchor" name="index_t">- t -</a></h3><ul>
186
210
  <li>TempFile()
187
- : <a class="el" href="classPassenger_1_1TempFile.html#bbcc818b88393bee71bf0bd8f66c3bd5">Passenger::TempFile</a>
211
+ : <a class="el" href="classPassenger_1_1TempFile.html#64623aebacdfb78b63e43ad1f29673f1">Passenger::TempFile</a>
188
212
  <li>toString()
189
213
  : <a class="el" href="classPassenger_1_1StandardApplicationPool.html#22b4149ca8256c3042fc342e681b0383">Passenger::StandardApplicationPool</a>
214
+ <li>toVector()
215
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#b5e62e9abf7b89b8d3e5cdfb14e9d2af">Passenger::PoolOptions</a>
216
+ <li>toXml()
217
+ : <a class="el" href="classPassenger_1_1StandardApplicationPool.html#d153c41a1d0aca91d17cf36ed6fdda19">Passenger::StandardApplicationPool</a>
190
218
  </ul>
191
219
  <h3><a class="anchor" name="index_w">- w -</a></h3><ul>
192
220
  <li>write()
193
- : <a class="el" href="classPassenger_1_1MessageChannel.html#9ad7a978cf8409e01ab2f0a2b6be5a0a">Passenger::MessageChannel</a>
221
+ : <a class="el" href="classPassenger_1_1MessageChannel.html#150f68bc47e060dcc6ca35bee047914d">Passenger::MessageChannel</a>
194
222
  <li>writeFileDescriptor()
195
223
  : <a class="el" href="classPassenger_1_1MessageChannel.html#73e3f3cda384c085a2af0e820ccd3e98">Passenger::MessageChannel</a>
196
224
  <li>writeRaw()
197
- : <a class="el" href="classPassenger_1_1MessageChannel.html#cfa38f4f0e22ec16350b8cc159e8e364">Passenger::MessageChannel</a>
225
+ : <a class="el" href="classPassenger_1_1MessageChannel.html#069314e4c7e1fe8c8ab36e16d2cc5fef">Passenger::MessageChannel</a>
198
226
  <li>writeScalar()
199
- : <a class="el" href="classPassenger_1_1MessageChannel.html#44e01a783c48abadeea0d915b9893bfb">Passenger::MessageChannel</a>
227
+ : <a class="el" href="classPassenger_1_1MessageChannel.html#80977020ef895f3ea790c5d28a333dda">Passenger::MessageChannel</a>
200
228
  </ul>
201
229
  <h3><a class="anchor" name="index_~">- ~ -</a></h3><ul>
202
230
  <li>~Session()
203
231
  : <a class="el" href="classPassenger_1_1Application_1_1Session.html#4fcaf0670234f7fb2ea6de4b8d8ef38c">Passenger::Application::Session</a>
204
232
  </ul>
205
233
  </div>
206
- <hr size="1"><address style="text-align: right;"><small>Generated on Mon Dec 15 15:27:25 2008 for Passenger by&nbsp;
234
+ <hr size="1"><address style="text-align: right;"><small>Generated on Fri Mar 13 19:24:33 2009 for Passenger by&nbsp;
207
235
  <a href="http://www.doxygen.org/index.html">
208
236
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
209
237
  </body>
@@ -10,7 +10,6 @@
10
10
  <ul>
11
11
  <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12
12
  <li><a href="modules.html"><span>Modules</span></a></li>
13
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
14
13
  <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
15
14
  <li><a href="files.html"><span>Files</span></a></li>
16
15
  </ul>
@@ -39,7 +38,7 @@
39
38
  : <a class="el" href="classPassenger_1_1Application.html#d14f673494991460b16246a527ad8ad9">Passenger::Application</a>
40
39
  </ul>
41
40
  </div>
42
- <hr size="1"><address style="text-align: right;"><small>Generated on Mon Dec 15 15:27:25 2008 for Passenger by&nbsp;
41
+ <hr size="1"><address style="text-align: right;"><small>Generated on Fri Mar 13 19:24:33 2009 for Passenger by&nbsp;
43
42
  <a href="http://www.doxygen.org/index.html">
44
43
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
45
44
  </body>
@@ -10,7 +10,6 @@
10
10
  <ul>
11
11
  <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12
12
  <li><a href="modules.html"><span>Modules</span></a></li>
13
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
14
13
  <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
15
14
  <li><a href="files.html"><span>Files</span></a></li>
16
15
  </ul>
@@ -35,13 +34,39 @@
35
34
  &nbsp;
36
35
  <p>
37
36
  <ul>
37
+ <li>appRoot
38
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#822039d204b48d9ed49184646734acf3">Passenger::PoolOptions</a>
39
+ <li>appSpawnerTimeout
40
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#5a2f27a853e33c22da71430216d798cf">Passenger::PoolOptions</a>
41
+ <li>appType
42
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#5e1c129ae0b8be350c7ed238eec8a8c9">Passenger::PoolOptions</a>
43
+ <li>environment
44
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#4324bb724859905f9991faa9b90aedbc">Passenger::PoolOptions</a>
38
45
  <li>filename
39
46
  : <a class="el" href="classPassenger_1_1TempFile.html#5e3ad620abbd79a289e44057e241de6b">Passenger::TempFile</a>
47
+ <li>frameworkSpawnerTimeout
48
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#cbbea86958b42ffa7989680ed1587c70">Passenger::PoolOptions</a>
40
49
  <li>handle
41
50
  : <a class="el" href="classPassenger_1_1TempFile.html#e78d0a63165ed1e5a083c1947db2ea14">Passenger::TempFile</a>
51
+ <li>lowerPrivilege
52
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#7feed1c0a150ffc9bd003f5535d675db">Passenger::PoolOptions</a>
53
+ <li>lowestUser
54
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#ec92a9f5d0a265a77fbfdb549f39557a">Passenger::PoolOptions</a>
55
+ <li>maxRequests
56
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#70251ed3cb3713cb26a0b166c6b015c0">Passenger::PoolOptions</a>
57
+ <li>memoryLimit
58
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#f61aa527e17a4f2bb5d66260749d17cd">Passenger::PoolOptions</a>
59
+ <li>restartDir
60
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#b0f889f70a3ed22f2423d110ddaf26f5">Passenger::PoolOptions</a>
61
+ <li>spawnMethod
62
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#feb629e3ced79f5a2dbccc1beeeeab9e">Passenger::PoolOptions</a>
63
+ <li>statThrottleRate
64
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#eaf5a998b4a5da2246685c2dfb8a8c6d">Passenger::PoolOptions</a>
65
+ <li>useGlobalQueue
66
+ : <a class="el" href="structPassenger_1_1PoolOptions.html#b610e568a7b5d3bb27460d6e35952b7e">Passenger::PoolOptions</a>
42
67
  </ul>
43
68
  </div>
44
- <hr size="1"><address style="text-align: right;"><small>Generated on Mon Dec 15 15:27:25 2008 for Passenger by&nbsp;
69
+ <hr size="1"><address style="text-align: right;"><small>Generated on Fri Mar 13 19:24:33 2009 for Passenger by&nbsp;
45
70
  <a href="http://www.doxygen.org/index.html">
46
71
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
47
72
  </body>
@@ -10,7 +10,6 @@
10
10
  <ul>
11
11
  <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12
12
  <li><a href="modules.html"><span>Modules</span></a></li>
13
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
14
13
  <li><a href="annotated.html"><span>Classes</span></a></li>
15
14
  <li><a href="files.html"><span>Files</span></a></li>
16
15
  </ul>
@@ -80,7 +79,7 @@ A purple dashed arrow is used if a class is contained or used by another class.
80
79
  A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance. </li>
81
80
  </ul>
82
81
  </div>
83
- <hr size="1"><address style="text-align: right;"><small>Generated on Mon Dec 15 15:27:25 2008 for Passenger by&nbsp;
82
+ <hr size="1"><address style="text-align: right;"><small>Generated on Fri Mar 13 19:24:35 2009 for Passenger by&nbsp;
84
83
  <a href="http://www.doxygen.org/index.html">
85
84
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
86
85
  </body>
Binary file
@@ -10,7 +10,6 @@
10
10
  <ul>
11
11
  <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12
12
  <li><a href="modules.html"><span>Modules</span></a></li>
13
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
14
13
  <li><a href="annotated.html"><span>Classes</span></a></li>
15
14
  <li><a href="files.html"><span>Files</span></a></li>
16
15
  </ul>
@@ -34,7 +33,7 @@ Collaboration diagram for Apache module configuration:</div>
34
33
  <table border="0" cellpadding="0" cellspacing="0">
35
34
  <tr><td></td></tr>
36
35
  <tr><td colspan="2"><br><h2>Defines</h2></td></tr>
37
- <tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Configuration.html#ga19398896775408d6ab7fd8ce2acd992">PASSENGER_VERSION</a>&nbsp;&nbsp;&nbsp;&quot;2.0.6&quot;</td></tr>
36
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Configuration.html#ga19398896775408d6ab7fd8ce2acd992">PASSENGER_VERSION</a>&nbsp;&nbsp;&nbsp;&quot;2.1.2&quot;</td></tr>
38
37
 
39
38
  <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Module version number. <a href="#ga19398896775408d6ab7fd8ce2acd992"></a><br></td></tr>
40
39
  <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
@@ -61,7 +60,7 @@ Collaboration diagram for Apache module configuration:</div>
61
60
  <div class="memproto">
62
61
  <table class="memname">
63
62
  <tr>
64
- <td class="memname">#define PASSENGER_VERSION&nbsp;&nbsp;&nbsp;&quot;2.0.6&quot; </td>
63
+ <td class="memname">#define PASSENGER_VERSION&nbsp;&nbsp;&nbsp;&quot;2.1.2&quot; </td>
65
64
  </tr>
66
65
  </table>
67
66
  </div>
@@ -229,7 +228,7 @@ Apache module commands array.
229
228
  </div>
230
229
  </div><p>
231
230
  </div>
232
- <hr size="1"><address style="text-align: right;"><small>Generated on Mon Dec 15 15:27:24 2008 for Passenger by&nbsp;
231
+ <hr size="1"><address style="text-align: right;"><small>Generated on Fri Mar 13 19:24:33 2009 for Passenger by&nbsp;
233
232
  <a href="http://www.doxygen.org/index.html">
234
233
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
235
234
  </body>
Binary file
@@ -10,7 +10,6 @@
10
10
  <ul>
11
11
  <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12
12
  <li><a href="modules.html"><span>Modules</span></a></li>
13
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
14
13
  <li><a href="annotated.html"><span>Classes</span></a></li>
15
14
  <li><a href="files.html"><span>Files</span></a></li>
16
15
  </ul>
@@ -36,15 +35,15 @@ Collaboration diagram for Core Apache-related classes and functions:</div>
36
35
  <tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Hooks.html">Apache hooks</a></td></tr>
37
36
 
38
37
  <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
39
- <tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectoryMapper.html">DirectoryMapper</a></td></tr>
38
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1DirectoryMapper.html">Passenger::DirectoryMapper</a></td></tr>
40
39
 
41
- <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Utility class for determining URI-to-Rails/Rack directory mappings. <a href="classDirectoryMapper.html#_details">More...</a><br></td></tr>
40
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Utility class for determining URI-to-application directory mappings. <a href="classPassenger_1_1DirectoryMapper.html#_details">More...</a><br></td></tr>
42
41
  <tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classHooks.html">Hooks</a></td></tr>
43
42
 
44
43
  <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Apache hook functions, wrapped in a class. <a href="classHooks.html#_details">More...</a><br></td></tr>
45
44
  </table>
46
45
  </div>
47
- <hr size="1"><address style="text-align: right;"><small>Generated on Mon Dec 15 15:27:24 2008 for Passenger by&nbsp;
46
+ <hr size="1"><address style="text-align: right;"><small>Generated on Fri Mar 13 19:24:33 2009 for Passenger by&nbsp;
48
47
  <a href="http://www.doxygen.org/index.html">
49
48
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
50
49
  </body>
Binary file
@@ -10,7 +10,6 @@
10
10
  <ul>
11
11
  <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12
12
  <li><a href="modules.html"><span>Modules</span></a></li>
13
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
14
13
  <li><a href="annotated.html"><span>Classes</span></a></li>
15
14
  <li><a href="files.html"><span>Files</span></a></li>
16
15
  </ul>
@@ -31,12 +30,15 @@
31
30
  <tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1IOException.html">Passenger::IOException</a></td></tr>
32
31
 
33
32
  <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Represents an error that occured during an I/O operation. <a href="classPassenger_1_1IOException.html#_details">More...</a><br></td></tr>
33
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1RuntimeException.html">Passenger::RuntimeException</a></td></tr>
34
+
35
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A generic runtime exception. <a href="classPassenger_1_1RuntimeException.html#_details">More...</a><br></td></tr>
34
36
  <tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1BusyException.html">Passenger::BusyException</a></td></tr>
35
37
 
36
38
  <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The application pool is too busy and cannot fulfill a get() request. <a href="classPassenger_1_1BusyException.html#_details">More...</a><br></td></tr>
37
39
  </table>
38
40
  </div>
39
- <hr size="1"><address style="text-align: right;"><small>Generated on Mon Dec 15 15:27:24 2008 for Passenger by&nbsp;
41
+ <hr size="1"><address style="text-align: right;"><small>Generated on Fri Mar 13 19:24:33 2009 for Passenger by&nbsp;
40
42
  <a href="http://www.doxygen.org/index.html">
41
43
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
42
44
  </body>
@@ -10,7 +10,6 @@
10
10
  <ul>
11
11
  <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12
12
  <li><a href="modules.html"><span>Modules</span></a></li>
13
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
14
13
  <li><a href="annotated.html"><span>Classes</span></a></li>
15
14
  <li><a href="files.html"><span>Files</span></a></li>
16
15
  </ul>
@@ -33,13 +32,9 @@ Collaboration diagram for Apache hooks:</div>
33
32
  <p>
34
33
  <table border="0" cellpadding="0" cellspacing="0">
35
34
  <tr><td></td></tr>
36
- <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g9d8409a5d1bee7cbe4568fac5a5ae4b3"></a><!-- doxytag: member="Hooks::passenger_register_hooks" ref="g9d8409a5d1bee7cbe4568fac5a5ae4b3" args="(apr_pool_t *p)" -->
37
- void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Hooks.html#g9d8409a5d1bee7cbe4568fac5a5ae4b3">passenger_register_hooks</a> (apr_pool_t *p)</td></tr>
38
-
39
- <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Apache hook registration function. <br></td></tr>
40
35
  </table>
41
36
  </div>
42
- <hr size="1"><address style="text-align: right;"><small>Generated on Mon Dec 15 15:27:25 2008 for Passenger by&nbsp;
37
+ <hr size="1"><address style="text-align: right;"><small>Generated on Fri Mar 13 19:24:33 2009 for Passenger by&nbsp;
43
38
  <a href="http://www.doxygen.org/index.html">
44
39
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
45
40
  </body>
Binary file
@@ -10,7 +10,6 @@
10
10
  <ul>
11
11
  <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12
12
  <li><a href="modules.html"><span>Modules</span></a></li>
13
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
14
13
  <li><a href="annotated.html"><span>Classes</span></a></li>
15
14
  <li><a href="files.html"><span>Files</span></a></li>
16
15
  </ul>
@@ -59,30 +58,46 @@
59
58
  int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g73b17b509ee44938a56bf16cbf82fb48">Passenger::atoi</a> (const string &amp;s)</td></tr>
60
59
 
61
60
  <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Converts the given string to an integer. <br></td></tr>
61
+ <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g7b50461f1bc2b370c956967870da2762"></a><!-- doxytag: member="Support::atol" ref="g7b50461f1bc2b370c956967870da2762" args="(const string &amp;s)" -->
62
+ long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g7b50461f1bc2b370c956967870da2762">Passenger::atol</a> (const string &amp;s)</td></tr>
63
+
64
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Converts the given string to a long integer. <br></td></tr>
62
65
  <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g4b8320aedc6a164a535c920234e3d8bf">Passenger::split</a> (const string &amp;str, char sep, vector&lt; string &gt; &amp;output)</td></tr>
63
66
 
64
67
  <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split the given string using the given separator. <a href="#g4b8320aedc6a164a535c920234e3d8bf"></a><br></td></tr>
65
- <tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g56199e2a907b6791017eee7e0625e449">Passenger::fileExists</a> (const char *filename)</td></tr>
68
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#gb752bfac392b20da99e34847070aaaea">Passenger::fileExists</a> (const char *filename, CachedMultiFileStat *mstat=0, unsigned int throttleRate=0)</td></tr>
69
+
70
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the specified file exists. <a href="#gb752bfac392b20da99e34847070aaaea"></a><br></td></tr>
71
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">FileType&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g818326cfca681596cf6944c1b88ed9f4">Passenger::getFileType</a> (const char *filename, CachedMultiFileStat *mstat=0, unsigned int throttleRate=0)</td></tr>
66
72
 
67
- <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the specified file exists. <a href="#g56199e2a907b6791017eee7e0625e449"></a><br></td></tr>
73
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether 'filename' exists and what kind of file it is. <a href="#g818326cfca681596cf6944c1b88ed9f4"></a><br></td></tr>
68
74
  <tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g37e1a293fa574748b2393b4801e7b23f">Passenger::findSpawnServer</a> (const char *passengerRoot=NULL)</td></tr>
69
75
 
70
- <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find the location of the <a class="el" href="namespacePassenger.html" title="Support for interruption of blocking system calls and C library calls.">Passenger</a> spawn server script. <a href="#g37e1a293fa574748b2393b4801e7b23f"></a><br></td></tr>
76
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find the location of the Passenger spawn server script. <a href="#g37e1a293fa574748b2393b4801e7b23f"></a><br></td></tr>
71
77
  <tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g67c03fa133dbb5a4e0de78f51899568e">Passenger::findApplicationPoolServer</a> (const char *passengerRoot)</td></tr>
72
78
 
73
- <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find the location of the <a class="el" href="namespacePassenger.html" title="Support for interruption of blocking system calls and C library calls.">Passenger</a> <a class="el" href="classPassenger_1_1ApplicationPool.html" title="A persistent pool of Applications.">ApplicationPool</a> server executable. <a href="#g67c03fa133dbb5a4e0de78f51899568e"></a><br></td></tr>
79
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find the location of the Passenger <a class="el" href="classPassenger_1_1ApplicationPool.html" title="A persistent pool of Applications.">ApplicationPool</a> server executable. <a href="#g67c03fa133dbb5a4e0de78f51899568e"></a><br></td></tr>
74
80
  <tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#gf3b0a483f0a252ae08d9de9f8b267d36">Passenger::canonicalizePath</a> (const string &amp;path)</td></tr>
75
81
 
76
82
  <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a canonical version of the specified path. <a href="#gf3b0a483f0a252ae08d9de9f8b267d36"></a><br></td></tr>
77
- <tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g7eac0b3097091d39e348e0c2563630b8">Passenger::verifyRailsDir</a> (const string &amp;dir)</td></tr>
83
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#ge74addedf73782a1eb1f6dd48d6fce06">Passenger::escapeForXml</a> (const string &amp;input)</td></tr>
84
+
85
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Escape the given raw string into an XML value. <a href="#ge74addedf73782a1eb1f6dd48d6fce06"></a><br></td></tr>
86
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#ga073519b32c6dd784125c01fd6588b8e">Passenger::getTempDir</a> ()</td></tr>
78
87
 
79
- <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the specified directory is a valid Ruby on Rails 'public' directory. <a href="#g7eac0b3097091d39e348e0c2563630b8"></a><br></td></tr>
80
- <tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g6c3cf8f963ffa2885081df2da152dfda">Passenger::verifyRackDir</a> (const string &amp;dir)</td></tr>
88
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the path name for the directory in which temporary files are to be stored. <a href="#ga073519b32c6dd784125c01fd6588b8e"></a><br></td></tr>
89
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g5d3a5c5fe2944a898e425e30b53ac0ac">Passenger::getPassengerTempDir</a> (bool bypassCache=false)</td></tr>
81
90
 
82
- <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the specified directory is a valid Rack 'public' directory. <a href="#g6c3cf8f963ffa2885081df2da152dfda"></a><br></td></tr>
83
- <tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g1d5027f3758e2e5893667f5d66443d9d">Passenger::verifyWSGIDir</a> (const string &amp;dir)</td></tr>
91
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the path name for the directory in which Phusion Passenger-specific temporary files are to be stored. <a href="#g5d3a5c5fe2944a898e425e30b53ac0ac"></a><br></td></tr>
92
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g02c80bd02d38cea295f24250ca8e2502">Passenger::verifyRailsDir</a> (const string &amp;dir, CachedMultiFileStat *mstat=0, unsigned int throttleRate=0)</td></tr>
84
93
 
85
- <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the specified directory is a valid WSGI 'public' directory. <a href="#g1d5027f3758e2e5893667f5d66443d9d"></a><br></td></tr>
94
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the specified directory is a valid Ruby on Rails application root directory. <a href="#g02c80bd02d38cea295f24250ca8e2502"></a><br></td></tr>
95
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g7bb22ba786fa3c88dbbd9f84aaaed59a">Passenger::verifyRackDir</a> (const string &amp;dir, CachedMultiFileStat *mstat=0, unsigned int throttleRate=0)</td></tr>
96
+
97
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the specified directory is a valid Rack application root directory. <a href="#g7bb22ba786fa3c88dbbd9f84aaaed59a"></a><br></td></tr>
98
+ <tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g8bfea2692733dfd80703707a120bce86">Passenger::verifyWSGIDir</a> (const string &amp;dir, CachedMultiFileStat *mstat=0, unsigned int throttleRate=0)</td></tr>
99
+
100
+ <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the specified directory is a valid WSGI application root directory. <a href="#g8bfea2692733dfd80703707a120bce86"></a><br></td></tr>
86
101
  </table>
87
102
  <hr><h2>Function Documentation</h2>
88
103
  <a class="anchor" name="gf3b0a483f0a252ae08d9de9f8b267d36"></a><!-- doxytag: member="Passenger::canonicalizePath" ref="gf3b0a483f0a252ae08d9de9f8b267d36" args="(const string &amp;path)" -->
@@ -104,18 +119,24 @@ int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group
104
119
  <p>
105
120
  Returns a canonical version of the specified path.
106
121
  <p>
107
- All symbolic links and relative path elements are resolved. Returns an empty string if something went wrong.
122
+ All symbolic links and relative path elements are resolved.<p>
123
+ <dl compact><dt><b>Exceptions:</b></dt><dd>
124
+ <table border="0" cellspacing="2" cellpadding="0">
125
+ <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1FileSystemException.html" title="A filesystem error, as returned by the operating system.">FileSystemException</a></em>&nbsp;</td><td>Something went wrong. </td></tr>
126
+ </table>
127
+ </dl>
128
+
108
129
  </div>
109
130
  </div><p>
110
- <a class="anchor" name="g56199e2a907b6791017eee7e0625e449"></a><!-- doxytag: member="Passenger::fileExists" ref="g56199e2a907b6791017eee7e0625e449" args="(const char *filename)" -->
131
+ <a class="anchor" name="ge74addedf73782a1eb1f6dd48d6fce06"></a><!-- doxytag: member="Passenger::escapeForXml" ref="ge74addedf73782a1eb1f6dd48d6fce06" args="(const string &amp;input)" -->
111
132
  <div class="memitem">
112
133
  <div class="memproto">
113
134
  <table class="memname">
114
135
  <tr>
115
- <td class="memname">bool Passenger::fileExists </td>
136
+ <td class="memname">string Passenger::escapeForXml </td>
116
137
  <td>(</td>
117
- <td class="paramtype">const char *&nbsp;</td>
118
- <td class="paramname"> <em>filename</em> </td>
138
+ <td class="paramtype">const string &amp;&nbsp;</td>
139
+ <td class="paramname"> <em>input</em> </td>
119
140
  <td>&nbsp;)&nbsp;</td>
120
141
  <td width="100%"></td>
121
142
  </tr>
@@ -123,12 +144,56 @@ All symbolic links and relative path elements are resolved. Returns an empty str
123
144
  </div>
124
145
  <div class="memdoc">
125
146
 
147
+ <p>
148
+ Escape the given raw string into an XML value.
149
+ <p>
150
+ <dl compact><dt><b>Exceptions:</b></dt><dd>
151
+ <table border="0" cellspacing="2" cellpadding="0">
152
+ <tr><td valign="top"></td><td valign="top"><em>std::bad_alloc</em>&nbsp;</td><td>Something went wrong. </td></tr>
153
+ </table>
154
+ </dl>
155
+
156
+ </div>
157
+ </div><p>
158
+ <a class="anchor" name="gb752bfac392b20da99e34847070aaaea"></a><!-- doxytag: member="Passenger::fileExists" ref="gb752bfac392b20da99e34847070aaaea" args="(const char *filename, CachedMultiFileStat *mstat=0, unsigned int throttleRate=0)" -->
159
+ <div class="memitem">
160
+ <div class="memproto">
161
+ <table class="memname">
162
+ <tr>
163
+ <td class="memname">bool Passenger::fileExists </td>
164
+ <td>(</td>
165
+ <td class="paramtype">const char *&nbsp;</td>
166
+ <td class="paramname"> <em>filename</em>, </td>
167
+ </tr>
168
+ <tr>
169
+ <td class="paramkey"></td>
170
+ <td></td>
171
+ <td class="paramtype">CachedMultiFileStat *&nbsp;</td>
172
+ <td class="paramname"> <em>mstat</em> = <code>0</code>, </td>
173
+ </tr>
174
+ <tr>
175
+ <td class="paramkey"></td>
176
+ <td></td>
177
+ <td class="paramtype">unsigned int&nbsp;</td>
178
+ <td class="paramname"> <em>throttleRate</em> = <code>0</code></td><td>&nbsp;</td>
179
+ </tr>
180
+ <tr>
181
+ <td></td>
182
+ <td>)</td>
183
+ <td></td><td></td><td width="100%"></td>
184
+ </tr>
185
+ </table>
186
+ </div>
187
+ <div class="memdoc">
188
+
126
189
  <p>
127
190
  Check whether the specified file exists.
128
191
  <p>
129
192
  <dl compact><dt><b>Parameters:</b></dt><dd>
130
193
  <table border="0" cellspacing="2" cellpadding="0">
131
194
  <tr><td valign="top"></td><td valign="top"><em>filename</em>&nbsp;</td><td>The filename to check. </td></tr>
195
+ <tr><td valign="top"></td><td valign="top"><em>mstat</em>&nbsp;</td><td>A CachedMultiFileStat object, if you want to use cached statting. </td></tr>
196
+ <tr><td valign="top"></td><td valign="top"><em>throttleRate</em>&nbsp;</td><td>A throttle rate for mstat. Only applicable if mstat is not NULL. </td></tr>
132
197
  </table>
133
198
  </dl>
134
199
  <dl class="return" compact><dt><b>Returns:</b></dt><dd>Whether the file exists. </dd></dl>
@@ -157,11 +222,11 @@ Check whether the specified file exists.
157
222
  <div class="memdoc">
158
223
 
159
224
  <p>
160
- Find the location of the <a class="el" href="namespacePassenger.html" title="Support for interruption of blocking system calls and C library calls.">Passenger</a> <a class="el" href="classPassenger_1_1ApplicationPool.html" title="A persistent pool of Applications.">ApplicationPool</a> server executable.
225
+ Find the location of the Passenger <a class="el" href="classPassenger_1_1ApplicationPool.html" title="A persistent pool of Applications.">ApplicationPool</a> server executable.
161
226
  <p>
162
227
  <dl compact><dt><b>Parameters:</b></dt><dd>
163
228
  <table border="0" cellspacing="2" cellpadding="0">
164
- <tr><td valign="top"></td><td valign="top"><em>passengerRoot</em>&nbsp;</td><td>The <a class="el" href="namespacePassenger.html" title="Support for interruption of blocking system calls and C library calls.">Passenger</a> root folder. </td></tr>
229
+ <tr><td valign="top"></td><td valign="top"><em>passengerRoot</em>&nbsp;</td><td>The Passenger root folder. </td></tr>
165
230
  </table>
166
231
  </dl>
167
232
  <dl class="return" compact><dt><b>Returns:</b></dt><dd>An absolute path to the executable. </dd></dl>
@@ -191,12 +256,12 @@ Find the location of the <a class="el" href="namespacePassenger.html" title="Sup
191
256
  <div class="memdoc">
192
257
 
193
258
  <p>
194
- Find the location of the <a class="el" href="namespacePassenger.html" title="Support for interruption of blocking system calls and C library calls.">Passenger</a> spawn server script.
259
+ Find the location of the Passenger spawn server script.
195
260
  <p>
196
261
  If passengerRoot is given, t T<p>
197
262
  <dl compact><dt><b>Parameters:</b></dt><dd>
198
263
  <table border="0" cellspacing="2" cellpadding="0">
199
- <tr><td valign="top"></td><td valign="top"><em>passengerRoot</em>&nbsp;</td><td>The <a class="el" href="namespacePassenger.html" title="Support for interruption of blocking system calls and C library calls.">Passenger</a> root folder. If NULL is given, then the spawn server is found by scanning $PATH. For security reasons, only absolute paths are scanned. </td></tr>
264
+ <tr><td valign="top"></td><td valign="top"><em>passengerRoot</em>&nbsp;</td><td>The Passenger root folder. If NULL is given, then the spawn server is found by scanning $PATH. For security reasons, only absolute paths are scanned. </td></tr>
200
265
  </table>
201
266
  </dl>
202
267
  <dl class="return" compact><dt><b>Returns:</b></dt><dd>An absolute path to the spawn server script, or an empty string on error. </dd></dl>
@@ -206,6 +271,101 @@ If passengerRoot is given, t T<p>
206
271
  </table>
207
272
  </dl>
208
273
 
274
+ </div>
275
+ </div><p>
276
+ <a class="anchor" name="g818326cfca681596cf6944c1b88ed9f4"></a><!-- doxytag: member="Passenger::getFileType" ref="g818326cfca681596cf6944c1b88ed9f4" args="(const char *filename, CachedMultiFileStat *mstat=0, unsigned int throttleRate=0)" -->
277
+ <div class="memitem">
278
+ <div class="memproto">
279
+ <table class="memname">
280
+ <tr>
281
+ <td class="memname">FileType Passenger::getFileType </td>
282
+ <td>(</td>
283
+ <td class="paramtype">const char *&nbsp;</td>
284
+ <td class="paramname"> <em>filename</em>, </td>
285
+ </tr>
286
+ <tr>
287
+ <td class="paramkey"></td>
288
+ <td></td>
289
+ <td class="paramtype">CachedMultiFileStat *&nbsp;</td>
290
+ <td class="paramname"> <em>mstat</em> = <code>0</code>, </td>
291
+ </tr>
292
+ <tr>
293
+ <td class="paramkey"></td>
294
+ <td></td>
295
+ <td class="paramtype">unsigned int&nbsp;</td>
296
+ <td class="paramname"> <em>throttleRate</em> = <code>0</code></td><td>&nbsp;</td>
297
+ </tr>
298
+ <tr>
299
+ <td></td>
300
+ <td>)</td>
301
+ <td></td><td></td><td width="100%"></td>
302
+ </tr>
303
+ </table>
304
+ </div>
305
+ <div class="memdoc">
306
+
307
+ <p>
308
+ Check whether 'filename' exists and what kind of file it is.
309
+ <p>
310
+ <dl compact><dt><b>Parameters:</b></dt><dd>
311
+ <table border="0" cellspacing="2" cellpadding="0">
312
+ <tr><td valign="top"></td><td valign="top"><em>filename</em>&nbsp;</td><td>The filename to check. </td></tr>
313
+ <tr><td valign="top"></td><td valign="top"><em>mstat</em>&nbsp;</td><td>A CachedMultiFileStat object, if you want to use cached statting. </td></tr>
314
+ <tr><td valign="top"></td><td valign="top"><em>throttleRate</em>&nbsp;</td><td>A throttle rate for mstat. Only applicable if mstat is not NULL. </td></tr>
315
+ </table>
316
+ </dl>
317
+ <dl class="return" compact><dt><b>Returns:</b></dt><dd>The file type. </dd></dl>
318
+ <dl compact><dt><b>Exceptions:</b></dt><dd>
319
+ <table border="0" cellspacing="2" cellpadding="0">
320
+ <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1FileSystemException.html" title="A filesystem error, as returned by the operating system.">FileSystemException</a></em>&nbsp;</td><td>Unable to check because of a filesystem error. </td></tr>
321
+ </table>
322
+ </dl>
323
+
324
+ </div>
325
+ </div><p>
326
+ <a class="anchor" name="g5d3a5c5fe2944a898e425e30b53ac0ac"></a><!-- doxytag: member="Passenger::getPassengerTempDir" ref="g5d3a5c5fe2944a898e425e30b53ac0ac" args="(bool bypassCache=false)" -->
327
+ <div class="memitem">
328
+ <div class="memproto">
329
+ <table class="memname">
330
+ <tr>
331
+ <td class="memname">string Passenger::getPassengerTempDir </td>
332
+ <td>(</td>
333
+ <td class="paramtype">bool&nbsp;</td>
334
+ <td class="paramname"> <em>bypassCache</em> = <code>false</code> </td>
335
+ <td>&nbsp;)&nbsp;</td>
336
+ <td width="100%"></td>
337
+ </tr>
338
+ </table>
339
+ </div>
340
+ <div class="memdoc">
341
+
342
+ <p>
343
+ Return the path name for the directory in which Phusion Passenger-specific temporary files are to be stored.
344
+ <p>
345
+ This directory is unique for this instance of the web server in which Phusion Passenger is running.<p>
346
+ The result will be cached into the PHUSION_PASSENGER_TMP environment variable, which will be used for future calls to this function. To bypass this cache, set 'bypassCache' to true.<p>
347
+ !result.empty()
348
+ </div>
349
+ </div><p>
350
+ <a class="anchor" name="ga073519b32c6dd784125c01fd6588b8e"></a><!-- doxytag: member="Passenger::getTempDir" ref="ga073519b32c6dd784125c01fd6588b8e" args="()" -->
351
+ <div class="memitem">
352
+ <div class="memproto">
353
+ <table class="memname">
354
+ <tr>
355
+ <td class="memname">const char * Passenger::getTempDir </td>
356
+ <td>(</td>
357
+ <td class="paramname"> </td>
358
+ <td>&nbsp;)&nbsp;</td>
359
+ <td width="100%"></td>
360
+ </tr>
361
+ </table>
362
+ </div>
363
+ <div class="memdoc">
364
+
365
+ <p>
366
+ Return the path name for the directory in which temporary files are to be stored.
367
+ <p>
368
+ result != NULL
209
369
  </div>
210
370
  </div><p>
211
371
  <a class="anchor" name="g41b6c4a82fed72531a147de0505a8396"></a><!-- doxytag: member="Passenger::ptr" ref="g41b6c4a82fed72531a147de0505a8396" args="(T *pointer)" -->
@@ -317,7 +477,7 @@ Convert anything to a string.
317
477
 
318
478
  </div>
319
479
  </div><p>
320
- <a class="anchor" name="g6c3cf8f963ffa2885081df2da152dfda"></a><!-- doxytag: member="Passenger::verifyRackDir" ref="g6c3cf8f963ffa2885081df2da152dfda" args="(const string &amp;dir)" -->
480
+ <a class="anchor" name="g7bb22ba786fa3c88dbbd9f84aaaed59a"></a><!-- doxytag: member="Passenger::verifyRackDir" ref="g7bb22ba786fa3c88dbbd9f84aaaed59a" args="(const string &amp;dir, CachedMultiFileStat *mstat=0, unsigned int throttleRate=0)" -->
321
481
  <div class="memitem">
322
482
  <div class="memproto">
323
483
  <table class="memname">
@@ -325,17 +485,38 @@ Convert anything to a string.
325
485
  <td class="memname">bool Passenger::verifyRackDir </td>
326
486
  <td>(</td>
327
487
  <td class="paramtype">const string &amp;&nbsp;</td>
328
- <td class="paramname"> <em>dir</em> </td>
329
- <td>&nbsp;)&nbsp;</td>
330
- <td width="100%"></td>
488
+ <td class="paramname"> <em>dir</em>, </td>
489
+ </tr>
490
+ <tr>
491
+ <td class="paramkey"></td>
492
+ <td></td>
493
+ <td class="paramtype">CachedMultiFileStat *&nbsp;</td>
494
+ <td class="paramname"> <em>mstat</em> = <code>0</code>, </td>
495
+ </tr>
496
+ <tr>
497
+ <td class="paramkey"></td>
498
+ <td></td>
499
+ <td class="paramtype">unsigned int&nbsp;</td>
500
+ <td class="paramname"> <em>throttleRate</em> = <code>0</code></td><td>&nbsp;</td>
501
+ </tr>
502
+ <tr>
503
+ <td></td>
504
+ <td>)</td>
505
+ <td></td><td></td><td width="100%"></td>
331
506
  </tr>
332
507
  </table>
333
508
  </div>
334
509
  <div class="memdoc">
335
510
 
336
511
  <p>
337
- Check whether the specified directory is a valid Rack 'public' directory.
512
+ Check whether the specified directory is a valid Rack application root directory.
338
513
  <p>
514
+ <dl compact><dt><b>Parameters:</b></dt><dd>
515
+ <table border="0" cellspacing="2" cellpadding="0">
516
+ <tr><td valign="top"></td><td valign="top"><em>mstat</em>&nbsp;</td><td>A CachedMultiFileStat object, if you want to use cached statting. </td></tr>
517
+ <tr><td valign="top"></td><td valign="top"><em>throttleRate</em>&nbsp;</td><td>A throttle rate for mstat. Only applicable if mstat is not NULL. </td></tr>
518
+ </table>
519
+ </dl>
339
520
  <dl compact><dt><b>Exceptions:</b></dt><dd>
340
521
  <table border="0" cellspacing="2" cellpadding="0">
341
522
  <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1FileSystemException.html" title="A filesystem error, as returned by the operating system.">FileSystemException</a></em>&nbsp;</td><td>Unable to check because of a filesystem error. </td></tr>
@@ -344,7 +525,7 @@ Check whether the specified directory is a valid Rack 'public' directory.
344
525
 
345
526
  </div>
346
527
  </div><p>
347
- <a class="anchor" name="g7eac0b3097091d39e348e0c2563630b8"></a><!-- doxytag: member="Passenger::verifyRailsDir" ref="g7eac0b3097091d39e348e0c2563630b8" args="(const string &amp;dir)" -->
528
+ <a class="anchor" name="g02c80bd02d38cea295f24250ca8e2502"></a><!-- doxytag: member="Passenger::verifyRailsDir" ref="g02c80bd02d38cea295f24250ca8e2502" args="(const string &amp;dir, CachedMultiFileStat *mstat=0, unsigned int throttleRate=0)" -->
348
529
  <div class="memitem">
349
530
  <div class="memproto">
350
531
  <table class="memname">
@@ -352,17 +533,38 @@ Check whether the specified directory is a valid Rack 'public' directory.
352
533
  <td class="memname">bool Passenger::verifyRailsDir </td>
353
534
  <td>(</td>
354
535
  <td class="paramtype">const string &amp;&nbsp;</td>
355
- <td class="paramname"> <em>dir</em> </td>
356
- <td>&nbsp;)&nbsp;</td>
357
- <td width="100%"></td>
536
+ <td class="paramname"> <em>dir</em>, </td>
537
+ </tr>
538
+ <tr>
539
+ <td class="paramkey"></td>
540
+ <td></td>
541
+ <td class="paramtype">CachedMultiFileStat *&nbsp;</td>
542
+ <td class="paramname"> <em>mstat</em> = <code>0</code>, </td>
543
+ </tr>
544
+ <tr>
545
+ <td class="paramkey"></td>
546
+ <td></td>
547
+ <td class="paramtype">unsigned int&nbsp;</td>
548
+ <td class="paramname"> <em>throttleRate</em> = <code>0</code></td><td>&nbsp;</td>
549
+ </tr>
550
+ <tr>
551
+ <td></td>
552
+ <td>)</td>
553
+ <td></td><td></td><td width="100%"></td>
358
554
  </tr>
359
555
  </table>
360
556
  </div>
361
557
  <div class="memdoc">
362
558
 
363
559
  <p>
364
- Check whether the specified directory is a valid Ruby on Rails 'public' directory.
560
+ Check whether the specified directory is a valid Ruby on Rails application root directory.
365
561
  <p>
562
+ <dl compact><dt><b>Parameters:</b></dt><dd>
563
+ <table border="0" cellspacing="2" cellpadding="0">
564
+ <tr><td valign="top"></td><td valign="top"><em>mstat</em>&nbsp;</td><td>A CachedMultiFileStat object, if you want to use cached statting. </td></tr>
565
+ <tr><td valign="top"></td><td valign="top"><em>throttleRate</em>&nbsp;</td><td>A throttle rate for mstat. Only applicable if mstat is not NULL. </td></tr>
566
+ </table>
567
+ </dl>
366
568
  <dl compact><dt><b>Exceptions:</b></dt><dd>
367
569
  <table border="0" cellspacing="2" cellpadding="0">
368
570
  <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1FileSystemException.html" title="A filesystem error, as returned by the operating system.">FileSystemException</a></em>&nbsp;</td><td>Unable to check because of a system error. </td></tr>
@@ -371,7 +573,7 @@ Check whether the specified directory is a valid Ruby on Rails 'public' director
371
573
 
372
574
  </div>
373
575
  </div><p>
374
- <a class="anchor" name="g1d5027f3758e2e5893667f5d66443d9d"></a><!-- doxytag: member="Passenger::verifyWSGIDir" ref="g1d5027f3758e2e5893667f5d66443d9d" args="(const string &amp;dir)" -->
576
+ <a class="anchor" name="g8bfea2692733dfd80703707a120bce86"></a><!-- doxytag: member="Passenger::verifyWSGIDir" ref="g8bfea2692733dfd80703707a120bce86" args="(const string &amp;dir, CachedMultiFileStat *mstat=0, unsigned int throttleRate=0)" -->
375
577
  <div class="memitem">
376
578
  <div class="memproto">
377
579
  <table class="memname">
@@ -379,17 +581,38 @@ Check whether the specified directory is a valid Ruby on Rails 'public' director
379
581
  <td class="memname">bool Passenger::verifyWSGIDir </td>
380
582
  <td>(</td>
381
583
  <td class="paramtype">const string &amp;&nbsp;</td>
382
- <td class="paramname"> <em>dir</em> </td>
383
- <td>&nbsp;)&nbsp;</td>
384
- <td width="100%"></td>
584
+ <td class="paramname"> <em>dir</em>, </td>
585
+ </tr>
586
+ <tr>
587
+ <td class="paramkey"></td>
588
+ <td></td>
589
+ <td class="paramtype">CachedMultiFileStat *&nbsp;</td>
590
+ <td class="paramname"> <em>mstat</em> = <code>0</code>, </td>
591
+ </tr>
592
+ <tr>
593
+ <td class="paramkey"></td>
594
+ <td></td>
595
+ <td class="paramtype">unsigned int&nbsp;</td>
596
+ <td class="paramname"> <em>throttleRate</em> = <code>0</code></td><td>&nbsp;</td>
597
+ </tr>
598
+ <tr>
599
+ <td></td>
600
+ <td>)</td>
601
+ <td></td><td></td><td width="100%"></td>
385
602
  </tr>
386
603
  </table>
387
604
  </div>
388
605
  <div class="memdoc">
389
606
 
390
607
  <p>
391
- Check whether the specified directory is a valid WSGI 'public' directory.
608
+ Check whether the specified directory is a valid WSGI application root directory.
392
609
  <p>
610
+ <dl compact><dt><b>Parameters:</b></dt><dd>
611
+ <table border="0" cellspacing="2" cellpadding="0">
612
+ <tr><td valign="top"></td><td valign="top"><em>mstat</em>&nbsp;</td><td>A CachedMultiFileStat object, if you want to use cached statting. </td></tr>
613
+ <tr><td valign="top"></td><td valign="top"><em>throttleRate</em>&nbsp;</td><td>A throttle rate for mstat. Only applicable if mstat is not NULL. </td></tr>
614
+ </table>
615
+ </dl>
393
616
  <dl compact><dt><b>Exceptions:</b></dt><dd>
394
617
  <table border="0" cellspacing="2" cellpadding="0">
395
618
  <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1FileSystemException.html" title="A filesystem error, as returned by the operating system.">FileSystemException</a></em>&nbsp;</td><td>Unable to check because of a filesystem error. </td></tr>
@@ -399,7 +622,7 @@ Check whether the specified directory is a valid WSGI 'public' directory.
399
622
  </div>
400
623
  </div><p>
401
624
  </div>
402
- <hr size="1"><address style="text-align: right;"><small>Generated on Mon Dec 15 15:27:24 2008 for Passenger by&nbsp;
625
+ <hr size="1"><address style="text-align: right;"><small>Generated on Fri Mar 13 19:24:33 2009 for Passenger by&nbsp;
403
626
  <a href="http://www.doxygen.org/index.html">
404
627
  <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
405
628
  </body>