passenger 2.2.7 → 2.2.8

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 (160) hide show
  1. data/NEWS +40 -0
  2. data/Rakefile +1 -1
  3. data/bin/passenger-install-apache2-module +1 -0
  4. data/bin/passenger-install-nginx-module +2 -0
  5. data/doc/Architectural overview.html +173 -138
  6. data/doc/Security of user switching support.html +147 -109
  7. data/doc/Users guide Apache.html +4 -43
  8. data/doc/Users guide Nginx.html +4 -43
  9. data/doc/cxxapi/Bucket_8h-source.html +1 -1
  10. data/doc/cxxapi/Configuration_8h-source.html +1 -1
  11. data/doc/cxxapi/DirectoryMapper_8h-source.html +1 -1
  12. data/doc/cxxapi/Hooks_8h-source.html +1 -1
  13. data/doc/cxxapi/annotated.html +1 -1
  14. data/doc/cxxapi/classHooks-members.html +1 -1
  15. data/doc/cxxapi/classHooks.html +1 -1
  16. data/doc/cxxapi/classPassenger_1_1DirectoryMapper-members.html +1 -1
  17. data/doc/cxxapi/classPassenger_1_1DirectoryMapper.html +1 -1
  18. data/doc/cxxapi/classes.html +1 -1
  19. data/doc/cxxapi/definitions_8h-source.html +1 -1
  20. data/doc/cxxapi/files.html +1 -1
  21. data/doc/cxxapi/functions.html +1 -1
  22. data/doc/cxxapi/functions_func.html +1 -1
  23. data/doc/cxxapi/graph_legend.html +1 -1
  24. data/doc/cxxapi/group__Configuration.html +1 -1
  25. data/doc/cxxapi/group__Core.html +1 -1
  26. data/doc/cxxapi/group__Hooks.html +1 -1
  27. data/doc/cxxapi/group__Support.html +1 -1
  28. data/doc/cxxapi/main.html +1 -1
  29. data/doc/cxxapi/modules.html +1 -1
  30. data/doc/rdoc/classes/GC.html +4 -4
  31. data/doc/rdoc/classes/PhusionPassenger.html +2 -1
  32. data/doc/rdoc/classes/PhusionPassenger/AbstractInstaller.html +8 -8
  33. data/doc/rdoc/classes/PhusionPassenger/AbstractRequestHandler.html +26 -26
  34. data/doc/rdoc/classes/PhusionPassenger/AbstractServer.html +98 -98
  35. data/doc/rdoc/classes/PhusionPassenger/AbstractServerCollection.html +61 -61
  36. data/doc/rdoc/classes/PhusionPassenger/AppInitError.html +4 -4
  37. data/doc/rdoc/classes/PhusionPassenger/Application.html +14 -14
  38. data/doc/rdoc/classes/PhusionPassenger/ConsoleTextTemplate.html +12 -12
  39. data/doc/rdoc/classes/PhusionPassenger/FrameworkInitError.html +4 -4
  40. data/doc/rdoc/classes/PhusionPassenger/HTMLTemplate.html +12 -12
  41. data/doc/rdoc/classes/PhusionPassenger/InitializationError.html +5 -5
  42. data/doc/rdoc/classes/PhusionPassenger/MessageChannel.html +42 -42
  43. data/doc/rdoc/classes/PhusionPassenger/Rack/ApplicationSpawner.html +33 -33
  44. data/doc/rdoc/classes/PhusionPassenger/Rack/RequestHandler.html +59 -59
  45. data/doc/rdoc/classes/PhusionPassenger/Railz/ApplicationSpawner.html +3 -3
  46. data/doc/rdoc/classes/PhusionPassenger/Railz/FrameworkSpawner.html +7 -7
  47. data/doc/rdoc/classes/PhusionPassenger/SpawnManager.html +23 -23
  48. data/doc/rdoc/classes/PhusionPassenger/UnknownError.html +4 -4
  49. data/doc/rdoc/classes/PhusionPassenger/Utils.html +2 -0
  50. data/doc/rdoc/classes/PhusionPassenger/Utils/PseudoIO.html +16 -16
  51. data/doc/rdoc/classes/PhusionPassenger/VersionNotFound.html +4 -4
  52. data/doc/rdoc/classes/PlatformInfo.html +1 -1
  53. data/doc/rdoc/classes/Signal.html +23 -15
  54. data/doc/rdoc/created.rid +1 -1
  55. data/doc/rdoc/files/DEVELOPERS_TXT.html +1 -1
  56. data/doc/rdoc/files/README.html +1 -1
  57. data/doc/rdoc/files/ext/phusion_passenger/native_support_c.html +1 -1
  58. data/doc/rdoc/files/lib/phusion_passenger/abstract_installer_rb.html +1 -1
  59. data/doc/rdoc/files/lib/phusion_passenger/abstract_request_handler_rb.html +1 -1
  60. data/doc/rdoc/files/lib/phusion_passenger/abstract_server_collection_rb.html +1 -1
  61. data/doc/rdoc/files/lib/phusion_passenger/abstract_server_rb.html +1 -1
  62. data/doc/rdoc/files/lib/phusion_passenger/admin_tools/control_process_rb.html +1 -1
  63. data/doc/rdoc/files/lib/phusion_passenger/admin_tools_rb.html +1 -1
  64. data/doc/rdoc/files/lib/phusion_passenger/application_rb.html +1 -1
  65. data/doc/rdoc/files/lib/phusion_passenger/console_text_template_rb.html +1 -1
  66. data/doc/rdoc/files/lib/phusion_passenger/constants_rb.html +1 -1
  67. data/doc/rdoc/files/lib/phusion_passenger/dependencies_rb.html +1 -1
  68. data/doc/rdoc/files/lib/phusion_passenger/events_rb.html +1 -1
  69. data/doc/rdoc/files/lib/phusion_passenger/exceptions_rb.html +1 -1
  70. data/doc/rdoc/files/lib/phusion_passenger/html_template_rb.html +1 -1
  71. data/doc/rdoc/files/lib/phusion_passenger/message_channel_rb.html +1 -1
  72. data/doc/rdoc/files/lib/phusion_passenger/packaging_rb.html +1 -1
  73. data/doc/rdoc/files/lib/phusion_passenger/platform_info_rb.html +1 -1
  74. data/doc/rdoc/files/lib/phusion_passenger/rack/application_spawner_rb.html +2 -2
  75. data/doc/rdoc/files/lib/phusion_passenger/rack/request_handler_rb.html +2 -2
  76. data/doc/rdoc/files/lib/phusion_passenger/railz/application_spawner_rb.html +1 -1
  77. data/doc/rdoc/files/lib/phusion_passenger/railz/cgi_fixed_rb.html +1 -1
  78. data/doc/rdoc/files/lib/phusion_passenger/railz/framework_spawner_rb.html +1 -1
  79. data/doc/rdoc/files/lib/phusion_passenger/railz/request_handler_rb.html +1 -1
  80. data/doc/rdoc/files/lib/phusion_passenger/simple_benchmarking_rb.html +1 -1
  81. data/doc/rdoc/files/lib/phusion_passenger/spawn_manager_rb.html +1 -1
  82. data/doc/rdoc/files/lib/phusion_passenger/utils_rb.html +9 -9
  83. data/doc/rdoc/files/lib/phusion_passenger/wsgi/application_spawner_rb.html +1 -1
  84. data/doc/rdoc/files/misc/rake/extensions_rb.html +1 -1
  85. data/doc/rdoc/fr_class_index.html +2 -0
  86. data/doc/rdoc/fr_file_index.html +1 -0
  87. data/doc/rdoc/fr_method_index.html +79 -72
  88. data/ext/apache2/Hooks.cpp +4 -2
  89. data/ext/common/StandardApplicationPool.h +4 -2
  90. data/ext/common/Version.h +1 -1
  91. data/ext/nginx/Configuration.c +1 -1
  92. data/ext/oxt/system_calls.cpp +11 -0
  93. data/ext/oxt/system_calls.hpp +2 -1
  94. data/ext/oxt/thread.hpp +97 -1
  95. data/lib/phusion_passenger/constants.rb +1 -1
  96. data/lib/phusion_passenger/dependencies.rb +32 -0
  97. data/lib/phusion_passenger/platform_info.rb +1 -1
  98. data/lib/phusion_passenger/rack/application_spawner.rb +4 -4
  99. data/lib/phusion_passenger/rack/request_handler.rb +2 -5
  100. data/lib/phusion_passenger/railz/application_spawner.rb +13 -2
  101. data/lib/phusion_passenger/utils.rb +12 -4
  102. data/{vendor/rack-1.0.0-git/lib/rack → lib/phusion_passenger/utils}/rewindable_input.rb +19 -3
  103. data/test/ApplicationPoolTest.cpp +1 -1
  104. metadata +13 -59
  105. data/vendor/README +0 -13
  106. data/vendor/README_FOR_PACKAGERS +0 -1
  107. data/vendor/rack-1.0.0-git/COPYING +0 -18
  108. data/vendor/rack-1.0.0-git/KNOWN-ISSUES +0 -18
  109. data/vendor/rack-1.0.0-git/README +0 -353
  110. data/vendor/rack-1.0.0-git/Rakefile +0 -164
  111. data/vendor/rack-1.0.0-git/lib/rack.rb +0 -90
  112. data/vendor/rack-1.0.0-git/lib/rack/adapter/camping.rb +0 -22
  113. data/vendor/rack-1.0.0-git/lib/rack/auth/abstract/handler.rb +0 -37
  114. data/vendor/rack-1.0.0-git/lib/rack/auth/abstract/request.rb +0 -37
  115. data/vendor/rack-1.0.0-git/lib/rack/auth/basic.rb +0 -58
  116. data/vendor/rack-1.0.0-git/lib/rack/auth/digest/md5.rb +0 -124
  117. data/vendor/rack-1.0.0-git/lib/rack/auth/digest/nonce.rb +0 -51
  118. data/vendor/rack-1.0.0-git/lib/rack/auth/digest/params.rb +0 -55
  119. data/vendor/rack-1.0.0-git/lib/rack/auth/digest/request.rb +0 -40
  120. data/vendor/rack-1.0.0-git/lib/rack/auth/openid.rb +0 -487
  121. data/vendor/rack-1.0.0-git/lib/rack/builder.rb +0 -63
  122. data/vendor/rack-1.0.0-git/lib/rack/cascade.rb +0 -41
  123. data/vendor/rack-1.0.0-git/lib/rack/chunked.rb +0 -49
  124. data/vendor/rack-1.0.0-git/lib/rack/commonlogger.rb +0 -52
  125. data/vendor/rack-1.0.0-git/lib/rack/conditionalget.rb +0 -47
  126. data/vendor/rack-1.0.0-git/lib/rack/content_length.rb +0 -29
  127. data/vendor/rack-1.0.0-git/lib/rack/content_type.rb +0 -23
  128. data/vendor/rack-1.0.0-git/lib/rack/deflater.rb +0 -96
  129. data/vendor/rack-1.0.0-git/lib/rack/directory.rb +0 -153
  130. data/vendor/rack-1.0.0-git/lib/rack/file.rb +0 -88
  131. data/vendor/rack-1.0.0-git/lib/rack/handler.rb +0 -69
  132. data/vendor/rack-1.0.0-git/lib/rack/handler/cgi.rb +0 -61
  133. data/vendor/rack-1.0.0-git/lib/rack/handler/evented_mongrel.rb +0 -8
  134. data/vendor/rack-1.0.0-git/lib/rack/handler/fastcgi.rb +0 -88
  135. data/vendor/rack-1.0.0-git/lib/rack/handler/lsws.rb +0 -55
  136. data/vendor/rack-1.0.0-git/lib/rack/handler/mongrel.rb +0 -84
  137. data/vendor/rack-1.0.0-git/lib/rack/handler/scgi.rb +0 -59
  138. data/vendor/rack-1.0.0-git/lib/rack/handler/swiftiplied_mongrel.rb +0 -8
  139. data/vendor/rack-1.0.0-git/lib/rack/handler/thin.rb +0 -18
  140. data/vendor/rack-1.0.0-git/lib/rack/handler/webrick.rb +0 -67
  141. data/vendor/rack-1.0.0-git/lib/rack/head.rb +0 -19
  142. data/vendor/rack-1.0.0-git/lib/rack/lint.rb +0 -537
  143. data/vendor/rack-1.0.0-git/lib/rack/lobster.rb +0 -65
  144. data/vendor/rack-1.0.0-git/lib/rack/lock.rb +0 -16
  145. data/vendor/rack-1.0.0-git/lib/rack/methodoverride.rb +0 -27
  146. data/vendor/rack-1.0.0-git/lib/rack/mime.rb +0 -204
  147. data/vendor/rack-1.0.0-git/lib/rack/mock.rb +0 -184
  148. data/vendor/rack-1.0.0-git/lib/rack/recursive.rb +0 -57
  149. data/vendor/rack-1.0.0-git/lib/rack/reloader.rb +0 -106
  150. data/vendor/rack-1.0.0-git/lib/rack/request.rb +0 -248
  151. data/vendor/rack-1.0.0-git/lib/rack/response.rb +0 -183
  152. data/vendor/rack-1.0.0-git/lib/rack/session/abstract/id.rb +0 -142
  153. data/vendor/rack-1.0.0-git/lib/rack/session/cookie.rb +0 -91
  154. data/vendor/rack-1.0.0-git/lib/rack/session/memcache.rb +0 -109
  155. data/vendor/rack-1.0.0-git/lib/rack/session/pool.rb +0 -100
  156. data/vendor/rack-1.0.0-git/lib/rack/showexceptions.rb +0 -349
  157. data/vendor/rack-1.0.0-git/lib/rack/showstatus.rb +0 -106
  158. data/vendor/rack-1.0.0-git/lib/rack/static.rb +0 -38
  159. data/vendor/rack-1.0.0-git/lib/rack/urlmap.rb +0 -55
  160. data/vendor/rack-1.0.0-git/lib/rack/utils.rb +0 -522
@@ -77,29 +77,29 @@ Object
77
77
 
78
78
  <div class="description"><p>
79
79
  An abstract base class for a <a
80
- href="AbstractServer.html#M000130">server</a>, with the following
80
+ href="AbstractServer.html#M000137">server</a>, with the following
81
81
  properties:
82
82
  </p>
83
83
  <ul>
84
- <li>The <a href="AbstractServer.html#M000130">server</a> has exactly one <a
85
- href="AbstractServer.html#M000131">client</a>, and is connected to that <a
86
- href="AbstractServer.html#M000131">client</a> at all times. The <a
87
- href="AbstractServer.html#M000130">server</a> will quit when the connection
84
+ <li>The <a href="AbstractServer.html#M000137">server</a> has exactly one <a
85
+ href="AbstractServer.html#M000138">client</a>, and is connected to that <a
86
+ href="AbstractServer.html#M000138">client</a> at all times. The <a
87
+ href="AbstractServer.html#M000137">server</a> will quit when the connection
88
88
  closes.
89
89
 
90
90
  </li>
91
- <li>The <a href="AbstractServer.html#M000130">server</a>&#8216;s main loop may
91
+ <li>The <a href="AbstractServer.html#M000137">server</a>&#8216;s main loop may
92
92
  be run in a child process (and so is asynchronous from the main process).
93
93
 
94
94
  </li>
95
95
  <li>One can communicate with the <a
96
- href="AbstractServer.html#M000130">server</a> through discrete messages (as
96
+ href="AbstractServer.html#M000137">server</a> through discrete messages (as
97
97
  opposed to byte streams).
98
98
 
99
99
  </li>
100
- <li>The <a href="AbstractServer.html#M000130">server</a> can pass file
100
+ <li>The <a href="AbstractServer.html#M000137">server</a> can pass file
101
101
  descriptors (<a href="../IO.html">IO</a> objects) back to the <a
102
- href="AbstractServer.html#M000131">client</a>.
102
+ href="AbstractServer.html#M000138">client</a>.
103
103
 
104
104
  </li>
105
105
  </ul>
@@ -108,17 +108,17 @@ A message is just an ordered list of strings. The first element in the
108
108
  message is the _message name_.
109
109
  </p>
110
110
  <p>
111
- The <a href="AbstractServer.html#M000130">server</a> will also reset all
111
+ The <a href="AbstractServer.html#M000137">server</a> will also reset all
112
112
  signal handlers (in the child process). That is, it will respond to all
113
113
  signals in the default manner. The only exception is SIGHUP, which is
114
114
  ignored. One may define additional signal handlers using <a
115
- href="AbstractServer.html#M000129">define_signal_handler</a>().
115
+ href="AbstractServer.html#M000136">define_signal_handler</a>().
116
116
  </p>
117
117
  <p>
118
118
  Before an <a href="AbstractServer.html">AbstractServer</a> can be used, it
119
119
  must first be started by calling <a
120
- href="AbstractServer.html#M000120">start</a>(). When it is no longer
121
- needed, <a href="AbstractServer.html#M000122">stop</a>() should be called.
120
+ href="AbstractServer.html#M000127">start</a>(). When it is no longer
121
+ needed, <a href="AbstractServer.html#M000129">stop</a>() should be called.
122
122
  </p>
123
123
  <p>
124
124
  Here&#8216;s an example on using <a
@@ -155,21 +155,21 @@ href="AbstractServer.html">AbstractServer</a>:
155
155
 
156
156
  <div class="sectiontitle">Methods</div>
157
157
  <ul>
158
- <li><a href="#M000125">before_fork</a></li>
159
- <li><a href="#M000131">client</a></li>
160
- <li><a href="#M000128">define_message_handler</a></li>
161
- <li><a href="#M000129">define_signal_handler</a></li>
162
- <li><a href="#M000133">fileno_of</a></li>
163
- <li><a href="#M000127">finalize_server</a></li>
164
- <li><a href="#M000126">initialize_server</a></li>
165
- <li><a href="#M000119">new</a></li>
166
- <li><a href="#M000132">quit_main</a></li>
167
- <li><a href="#M000130">server</a></li>
168
- <li><a href="#M000124">server_pid</a></li>
169
- <li><a href="#M000120">start</a></li>
170
- <li><a href="#M000121">start_synchronously</a></li>
171
- <li><a href="#M000123">started?</a></li>
172
- <li><a href="#M000122">stop</a></li>
158
+ <li><a href="#M000132">before_fork</a></li>
159
+ <li><a href="#M000138">client</a></li>
160
+ <li><a href="#M000135">define_message_handler</a></li>
161
+ <li><a href="#M000136">define_signal_handler</a></li>
162
+ <li><a href="#M000140">fileno_of</a></li>
163
+ <li><a href="#M000134">finalize_server</a></li>
164
+ <li><a href="#M000133">initialize_server</a></li>
165
+ <li><a href="#M000126">new</a></li>
166
+ <li><a href="#M000139">quit_main</a></li>
167
+ <li><a href="#M000137">server</a></li>
168
+ <li><a href="#M000131">server_pid</a></li>
169
+ <li><a href="#M000127">start</a></li>
170
+ <li><a href="#M000128">start_synchronously</a></li>
171
+ <li><a href="#M000130">started?</a></li>
172
+ <li><a href="#M000129">stop</a></li>
173
173
  </ul>
174
174
 
175
175
  <div class="sectiontitle">Included Modules</div>
@@ -239,11 +239,11 @@ be idle cleaned.
239
239
  <div class="sectiontitle">Public Class methods</div>
240
240
  <div class="method">
241
241
  <div class="title">
242
- <a name="M000119"></a><b>new</b>()
242
+ <a name="M000126"></a><b>new</b>()
243
243
  </div>
244
244
  <div class="sourcecode">
245
- <p class="source-link">[ <a href="javascript:toggleSource('M000119_source')" id="l_M000119_source">show source</a> ]</p>
246
- <div id="M000119_source" class="dyn-source">
245
+ <p class="source-link">[ <a href="javascript:toggleSource('M000126_source')" id="l_M000126_source">show source</a> ]</p>
246
+ <div id="M000126_source" class="dyn-source">
247
247
  <pre>
248
248
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 109</span>
249
249
  109: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
@@ -260,18 +260,18 @@ be idle cleaned.
260
260
  <div class="sectiontitle">Public Instance methods</div>
261
261
  <div class="method">
262
262
  <div class="title">
263
- <a name="M000124"></a><b>server_pid</b>()
263
+ <a name="M000131"></a><b>server_pid</b>()
264
264
  </div>
265
265
  <div class="description">
266
266
  <p>
267
267
  Return the PID of the started <a
268
- href="AbstractServer.html#M000130">server</a>. This is only valid if <a
269
- href="AbstractServer.html#M000120">start</a>() has been called.
268
+ href="AbstractServer.html#M000137">server</a>. This is only valid if <a
269
+ href="AbstractServer.html#M000127">start</a>() has been called.
270
270
  </p>
271
271
  </div>
272
272
  <div class="sourcecode">
273
- <p class="source-link">[ <a href="javascript:toggleSource('M000124_source')" id="l_M000124_source">show source</a> ]</p>
274
- <div id="M000124_source" class="dyn-source">
273
+ <p class="source-link">[ <a href="javascript:toggleSource('M000131_source')" id="l_M000131_source">show source</a> ]</p>
274
+ <div id="M000131_source" class="dyn-source">
275
275
  <pre>
276
276
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 244</span>
277
277
  244: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">server_pid</span>
@@ -283,17 +283,17 @@ href="AbstractServer.html#M000120">start</a>() has been called.
283
283
  </div>
284
284
  <div class="method">
285
285
  <div class="title">
286
- <a name="M000120"></a><b>start</b>()
286
+ <a name="M000127"></a><b>start</b>()
287
287
  </div>
288
288
  <div class="description">
289
289
  <p>
290
- Start the <a href="AbstractServer.html#M000130">server</a>. This method
291
- does not block since the <a href="AbstractServer.html#M000130">server</a>
290
+ Start the <a href="AbstractServer.html#M000137">server</a>. This method
291
+ does not block since the <a href="AbstractServer.html#M000137">server</a>
292
292
  runs asynchronously from the current process.
293
293
  </p>
294
294
  <p>
295
295
  You may only call this method if the <a
296
- href="AbstractServer.html#M000130">server</a> is not already started.
296
+ href="AbstractServer.html#M000137">server</a> is not already started.
297
297
  Otherwise, a <a
298
298
  href="AbstractServer/ServerAlreadyStarted.html">ServerAlreadyStarted</a>
299
299
  will be raised.
@@ -303,8 +303,8 @@ Derived classes may raise additional exceptions.
303
303
  </p>
304
304
  </div>
305
305
  <div class="sourcecode">
306
- <p class="source-link">[ <a href="javascript:toggleSource('M000120_source')" id="l_M000120_source">show source</a> ]</p>
307
- <div id="M000120_source" class="dyn-source">
306
+ <p class="source-link">[ <a href="javascript:toggleSource('M000127_source')" id="l_M000127_source">show source</a> ]</p>
307
+ <div id="M000127_source" class="dyn-source">
308
308
  <pre>
309
309
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 124</span>
310
310
  124: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">start</span>
@@ -370,29 +370,29 @@ Derived classes may raise additional exceptions.
370
370
  </div>
371
371
  <div class="method">
372
372
  <div class="title">
373
- <a name="M000121"></a><b>start_synchronously</b>(socket)
373
+ <a name="M000128"></a><b>start_synchronously</b>(socket)
374
374
  </div>
375
375
  <div class="description">
376
376
  <p>
377
- Start the <a href="AbstractServer.html#M000130">server</a>, but in the
377
+ Start the <a href="AbstractServer.html#M000137">server</a>, but in the
378
378
  current process instead of in a child process. This method blocks until the
379
- <a href="AbstractServer.html#M000130">server</a>&#8216;s main loop has
379
+ <a href="AbstractServer.html#M000137">server</a>&#8216;s main loop has
380
380
  ended.
381
381
  </p>
382
382
  <p>
383
383
  <em>socket</em> is the socket that the <a
384
- href="AbstractServer.html#M000130">server</a> should listen on. The <a
385
- href="AbstractServer.html#M000130">server</a> main loop will end if the
384
+ href="AbstractServer.html#M000137">server</a> should listen on. The <a
385
+ href="AbstractServer.html#M000137">server</a> main loop will end if the
386
386
  socket has been closed.
387
387
  </p>
388
388
  <p>
389
389
  All hooks will be called, except <a
390
- href="AbstractServer.html#M000125">before_fork</a>().
390
+ href="AbstractServer.html#M000132">before_fork</a>().
391
391
  </p>
392
392
  </div>
393
393
  <div class="sourcecode">
394
- <p class="source-link">[ <a href="javascript:toggleSource('M000121_source')" id="l_M000121_source">show source</a> ]</p>
395
- <div id="M000121_source" class="dyn-source">
394
+ <p class="source-link">[ <a href="javascript:toggleSource('M000128_source')" id="l_M000128_source">show source</a> ]</p>
395
+ <div id="M000128_source" class="dyn-source">
396
396
  <pre>
397
397
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 189</span>
398
398
  189: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">start_synchronously</span>(<span class="ruby-identifier">socket</span>)
@@ -416,17 +416,17 @@ href="AbstractServer.html#M000125">before_fork</a>().
416
416
  </div>
417
417
  <div class="method">
418
418
  <div class="title">
419
- <a name="M000123"></a><b>started?</b>()
419
+ <a name="M000130"></a><b>started?</b>()
420
420
  </div>
421
421
  <div class="description">
422
422
  <p>
423
- Return whether the <a href="AbstractServer.html#M000130">server</a> has
423
+ Return whether the <a href="AbstractServer.html#M000137">server</a> has
424
424
  been started.
425
425
  </p>
426
426
  </div>
427
427
  <div class="sourcecode">
428
- <p class="source-link">[ <a href="javascript:toggleSource('M000123_source')" id="l_M000123_source">show source</a> ]</p>
429
- <div id="M000123_source" class="dyn-source">
428
+ <p class="source-link">[ <a href="javascript:toggleSource('M000130_source')" id="l_M000130_source">show source</a> ]</p>
429
+ <div id="M000130_source" class="dyn-source">
430
430
  <pre>
431
431
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 239</span>
432
432
  239: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">started?</span>
@@ -438,25 +438,25 @@ been started.
438
438
  </div>
439
439
  <div class="method">
440
440
  <div class="title">
441
- <a name="M000122"></a><b>stop</b>()
441
+ <a name="M000129"></a><b>stop</b>()
442
442
  </div>
443
443
  <div class="description">
444
444
  <p>
445
- Stop the <a href="AbstractServer.html#M000130">server</a>. The <a
446
- href="AbstractServer.html#M000130">server</a> will quit as soon as
445
+ Stop the <a href="AbstractServer.html#M000137">server</a>. The <a
446
+ href="AbstractServer.html#M000137">server</a> will quit as soon as
447
447
  possible. This method waits until the <a
448
- href="AbstractServer.html#M000130">server</a> has been stopped.
448
+ href="AbstractServer.html#M000137">server</a> has been stopped.
449
449
  </p>
450
450
  <p>
451
451
  When calling this method, the <a
452
- href="AbstractServer.html#M000130">server</a> must already be started. If
452
+ href="AbstractServer.html#M000137">server</a> must already be started. If
453
453
  not, a <a href="AbstractServer/ServerNotStarted.html">ServerNotStarted</a>
454
454
  will be raised.
455
455
  </p>
456
456
  </div>
457
457
  <div class="sourcecode">
458
- <p class="source-link">[ <a href="javascript:toggleSource('M000122_source')" id="l_M000122_source">show source</a> ]</p>
459
- <div id="M000122_source" class="dyn-source">
458
+ <p class="source-link">[ <a href="javascript:toggleSource('M000129_source')" id="l_M000129_source">show source</a> ]</p>
459
+ <div id="M000129_source" class="dyn-source">
460
460
  <pre>
461
461
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 210</span>
462
462
  210: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">stop</span>
@@ -493,20 +493,20 @@ will be raised.
493
493
  <div class="sectiontitle">Protected Instance methods</div>
494
494
  <div class="method">
495
495
  <div class="title">
496
- <a name="M000125"></a><b>before_fork</b>()
496
+ <a name="M000132"></a><b>before_fork</b>()
497
497
  </div>
498
498
  <div class="description">
499
499
  <p>
500
500
  A hook which is called when the <a
501
- href="AbstractServer.html#M000130">server</a> is being started, just before
502
- forking a <a href="AbstractServer.html#M000119">new</a> process. The
501
+ href="AbstractServer.html#M000137">server</a> is being started, just before
502
+ forking a <a href="AbstractServer.html#M000126">new</a> process. The
503
503
  default implementation does nothing, this method is supposed to be
504
504
  overrided by child classes.
505
505
  </p>
506
506
  </div>
507
507
  <div class="sourcecode">
508
- <p class="source-link">[ <a href="javascript:toggleSource('M000125_source')" id="l_M000125_source">show source</a> ]</p>
509
- <div id="M000125_source" class="dyn-source">
508
+ <p class="source-link">[ <a href="javascript:toggleSource('M000132_source')" id="l_M000132_source">show source</a> ]</p>
509
+ <div id="M000132_source" class="dyn-source">
510
510
  <pre>
511
511
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 251</span>
512
512
  251: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">before_fork</span>
@@ -517,19 +517,19 @@ overrided by child classes.
517
517
  </div>
518
518
  <div class="method">
519
519
  <div class="title">
520
- <a name="M000131"></a><b>client</b>()
520
+ <a name="M000138"></a><b>client</b>()
521
521
  </div>
522
522
  <div class="description">
523
523
  <p>
524
524
  Return the communication channel with the <a
525
- href="AbstractServer.html#M000131">client</a> (i.e. the parent process that
526
- started the <a href="AbstractServer.html#M000130">server</a>). This is a <a
525
+ href="AbstractServer.html#M000138">client</a> (i.e. the parent process that
526
+ started the <a href="AbstractServer.html#M000137">server</a>). This is a <a
527
527
  href="MessageChannel.html">MessageChannel</a> object.
528
528
  </p>
529
529
  </div>
530
530
  <div class="sourcecode">
531
- <p class="source-link">[ <a href="javascript:toggleSource('M000131_source')" id="l_M000131_source">show source</a> ]</p>
532
- <div id="M000131_source" class="dyn-source">
531
+ <p class="source-link">[ <a href="javascript:toggleSource('M000138_source')" id="l_M000138_source">show source</a> ]</p>
532
+ <div id="M000138_source" class="dyn-source">
533
533
  <pre>
534
534
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 296</span>
535
535
  296: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">client</span>
@@ -541,7 +541,7 @@ href="MessageChannel.html">MessageChannel</a> object.
541
541
  </div>
542
542
  <div class="method">
543
543
  <div class="title">
544
- <a name="M000128"></a><b>define_message_handler</b>(message_name, handler)
544
+ <a name="M000135"></a><b>define_message_handler</b>(message_name, handler)
545
545
  </div>
546
546
  <div class="description">
547
547
  <p>
@@ -556,8 +556,8 @@ the example in the class description.
556
556
  </p>
557
557
  </div>
558
558
  <div class="sourcecode">
559
- <p class="source-link">[ <a href="javascript:toggleSource('M000128_source')" id="l_M000128_source">show source</a> ]</p>
560
- <div id="M000128_source" class="dyn-source">
559
+ <p class="source-link">[ <a href="javascript:toggleSource('M000135_source')" id="l_M000135_source">show source</a> ]</p>
560
+ <div id="M000135_source" class="dyn-source">
561
561
  <pre>
562
562
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 271</span>
563
563
  271: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">define_message_handler</span>(<span class="ruby-identifier">message_name</span>, <span class="ruby-identifier">handler</span>)
@@ -569,7 +569,7 @@ the example in the class description.
569
569
  </div>
570
570
  <div class="method">
571
571
  <div class="title">
572
- <a name="M000129"></a><b>define_signal_handler</b>(signal, handler)
572
+ <a name="M000136"></a><b>define_signal_handler</b>(signal, handler)
573
573
  </div>
574
574
  <div class="description">
575
575
  <p>
@@ -577,8 +577,8 @@ Define a handler for a signal.
577
577
  </p>
578
578
  </div>
579
579
  <div class="sourcecode">
580
- <p class="source-link">[ <a href="javascript:toggleSource('M000129_source')" id="l_M000129_source">show source</a> ]</p>
581
- <div id="M000129_source" class="dyn-source">
580
+ <p class="source-link">[ <a href="javascript:toggleSource('M000136_source')" id="l_M000136_source">show source</a> ]</p>
581
+ <div id="M000136_source" class="dyn-source">
582
582
  <pre>
583
583
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 276</span>
584
584
  276: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">define_signal_handler</span>(<span class="ruby-identifier">signal</span>, <span class="ruby-identifier">handler</span>)
@@ -590,11 +590,11 @@ Define a handler for a signal.
590
590
  </div>
591
591
  <div class="method">
592
592
  <div class="title">
593
- <a name="M000133"></a><b>fileno_of</b>(io)
593
+ <a name="M000140"></a><b>fileno_of</b>(io)
594
594
  </div>
595
595
  <div class="sourcecode">
596
- <p class="source-link">[ <a href="javascript:toggleSource('M000133_source')" id="l_M000133_source">show source</a> ]</p>
597
- <div id="M000133_source" class="dyn-source">
596
+ <p class="source-link">[ <a href="javascript:toggleSource('M000140_source')" id="l_M000140_source">show source</a> ]</p>
597
+ <div id="M000140_source" class="dyn-source">
598
598
  <pre>
599
599
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 305</span>
600
600
  305: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">fileno_of</span>(<span class="ruby-identifier">io</span>)
@@ -608,20 +608,20 @@ Define a handler for a signal.
608
608
  </div>
609
609
  <div class="method">
610
610
  <div class="title">
611
- <a name="M000127"></a><b>finalize_server</b>()
611
+ <a name="M000134"></a><b>finalize_server</b>()
612
612
  </div>
613
613
  <div class="description">
614
614
  <p>
615
615
  A hook which is called when the <a
616
- href="AbstractServer.html#M000130">server</a> is being stopped. This is
616
+ href="AbstractServer.html#M000137">server</a> is being stopped. This is
617
617
  called in the child process, after the main loop has been left. The default
618
618
  implementation does nothing, this method is supposed to be overrided by
619
619
  child classes.
620
620
  </p>
621
621
  </div>
622
622
  <div class="sourcecode">
623
- <p class="source-link">[ <a href="javascript:toggleSource('M000127_source')" id="l_M000127_source">show source</a> ]</p>
624
- <div id="M000127_source" class="dyn-source">
623
+ <p class="source-link">[ <a href="javascript:toggleSource('M000134_source')" id="l_M000134_source">show source</a> ]</p>
624
+ <div id="M000134_source" class="dyn-source">
625
625
  <pre>
626
626
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 263</span>
627
627
  263: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">finalize_server</span>
@@ -632,20 +632,20 @@ child classes.
632
632
  </div>
633
633
  <div class="method">
634
634
  <div class="title">
635
- <a name="M000126"></a><b>initialize_server</b>()
635
+ <a name="M000133"></a><b>initialize_server</b>()
636
636
  </div>
637
637
  <div class="description">
638
638
  <p>
639
639
  A hook which is called when the <a
640
- href="AbstractServer.html#M000130">server</a> is being started. This is
640
+ href="AbstractServer.html#M000137">server</a> is being started. This is
641
641
  called in the child process, before the main loop is entered. The default
642
642
  implementation does nothing, this method is supposed to be overrided by
643
643
  child classes.
644
644
  </p>
645
645
  </div>
646
646
  <div class="sourcecode">
647
- <p class="source-link">[ <a href="javascript:toggleSource('M000126_source')" id="l_M000126_source">show source</a> ]</p>
648
- <div id="M000126_source" class="dyn-source">
647
+ <p class="source-link">[ <a href="javascript:toggleSource('M000133_source')" id="l_M000133_source">show source</a> ]</p>
648
+ <div id="M000133_source" class="dyn-source">
649
649
  <pre>
650
650
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 257</span>
651
651
  257: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize_server</span>
@@ -656,17 +656,17 @@ child classes.
656
656
  </div>
657
657
  <div class="method">
658
658
  <div class="title">
659
- <a name="M000132"></a><b>quit_main</b>()
659
+ <a name="M000139"></a><b>quit_main</b>()
660
660
  </div>
661
661
  <div class="description">
662
662
  <p>
663
- Tell the main loop to <a href="AbstractServer.html#M000122">stop</a> as
663
+ Tell the main loop to <a href="AbstractServer.html#M000129">stop</a> as
664
664
  soon as possible.
665
665
  </p>
666
666
  </div>
667
667
  <div class="sourcecode">
668
- <p class="source-link">[ <a href="javascript:toggleSource('M000132_source')" id="l_M000132_source">show source</a> ]</p>
669
- <div id="M000132_source" class="dyn-source">
668
+ <p class="source-link">[ <a href="javascript:toggleSource('M000139_source')" id="l_M000139_source">show source</a> ]</p>
669
+ <div id="M000139_source" class="dyn-source">
670
670
  <pre>
671
671
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 301</span>
672
672
  301: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">quit_main</span>
@@ -678,27 +678,27 @@ soon as possible.
678
678
  </div>
679
679
  <div class="method">
680
680
  <div class="title">
681
- <a name="M000130"></a><b>server</b>()
681
+ <a name="M000137"></a><b>server</b>()
682
682
  </div>
683
683
  <div class="description">
684
684
  <p>
685
685
  Return the communication channel with the <a
686
- href="AbstractServer.html#M000130">server</a>. This is a <a
686
+ href="AbstractServer.html#M000137">server</a>. This is a <a
687
687
  href="MessageChannel.html">MessageChannel</a> object.
688
688
  </p>
689
689
  <p>
690
690
  Raises <a href="AbstractServer/ServerNotStarted.html">ServerNotStarted</a>
691
- if the <a href="AbstractServer.html#M000130">server</a> hasn&#8216;t been
691
+ if the <a href="AbstractServer.html#M000137">server</a> hasn&#8216;t been
692
692
  started yet.
693
693
  </p>
694
694
  <p>
695
695
  This method may only be called in the parent process, and not in the
696
- started <a href="AbstractServer.html#M000130">server</a> process.
696
+ started <a href="AbstractServer.html#M000137">server</a> process.
697
697
  </p>
698
698
  </div>
699
699
  <div class="sourcecode">
700
- <p class="source-link">[ <a href="javascript:toggleSource('M000130_source')" id="l_M000130_source">show source</a> ]</p>
701
- <div id="M000130_source" class="dyn-source">
700
+ <p class="source-link">[ <a href="javascript:toggleSource('M000137_source')" id="l_M000137_source">show source</a> ]</p>
701
+ <div id="M000137_source" class="dyn-source">
702
702
  <pre>
703
703
  <span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_server.rb, line 287</span>
704
704
  287: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">server</span>