passenger 2.2.15 → 3.0.0.pre1
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.
- data/DEVELOPERS.TXT +21 -12
- data/LICENSE +1 -1
- data/NEWS +8 -1
- data/PACKAGING.TXT +25 -0
- data/Rakefile +28 -891
- data/bin/passenger +32 -0
- data/bin/passenger-config +5 -5
- data/bin/passenger-install-apache2-module +37 -24
- data/bin/passenger-install-nginx-module +48 -46
- data/bin/passenger-make-enterprisey +8 -9
- data/bin/passenger-memory-stats +20 -150
- data/bin/passenger-status +130 -44
- data/bin/passenger-stress-test +5 -4
- data/build/agents.rb +73 -0
- data/build/apache2.rb +165 -0
- data/build/basics.rb +81 -0
- data/build/common_library.rb +198 -0
- data/build/config.rb +35 -0
- data/{misc/rake/cplusplus.rb → build/cplusplus_support.rb} +1 -1
- data/build/cxx_tests.rb +205 -0
- data/build/documentation.rb +77 -0
- data/{misc/rake → build}/gempackagetask.rb +1 -1
- data/build/integration_tests.rb +57 -0
- data/build/misc.rb +146 -0
- data/build/nginx.rb +64 -0
- data/build/oxt_tests.rb +52 -0
- data/{misc/rake → build}/packagetask.rb +0 -0
- data/build/packaging.rb +189 -0
- data/{misc/rake/extensions.rb → build/rake_extensions.rb} +1 -1
- data/{misc/rake → build}/rdoctask.rb +0 -0
- data/build/ruby_extension.rb +46 -0
- data/build/ruby_tests.rb +42 -0
- data/build/test_basics.rb +31 -0
- data/doc/ApplicationPool algorithm.txt +447 -234
- data/doc/Architectural overview.html +47 -56
- data/doc/Doxyfile +1 -1
- data/doc/Security of user switching support.html +46 -57
- data/doc/Users guide Apache.html +1033 -306
- data/doc/Users guide Apache.txt +419 -99
- data/doc/Users guide Nginx.html +1252 -253
- data/doc/Users guide Nginx.txt +711 -87
- data/doc/Users guide Standalone.html +603 -0
- data/doc/Users guide Standalone.txt +40 -0
- data/doc/cxxapi/AbstractSpawnManager_8h_source.html +141 -0
- data/doc/cxxapi/Account_8h_source.html +206 -0
- data/doc/cxxapi/AccountsDatabase_8h_source.html +161 -0
- data/doc/cxxapi/AgentBase_8h_source.html +70 -0
- data/doc/cxxapi/AgentsStarter_8h_source.html +112 -0
- data/doc/cxxapi/BCrypt_8h_source.html +104 -0
- data/doc/cxxapi/Blowfish_8h_source.html +134 -0
- data/doc/cxxapi/Bucket_8h_source.html +4 -3
- data/doc/cxxapi/Constants_8h_source.html +79 -0
- data/doc/cxxapi/ContentHandler_8h_source.html +95 -0
- data/doc/cxxapi/DirectoryMapper_8h_source.html +9 -8
- data/doc/cxxapi/EventedClient_8h_source.html +629 -0
- data/doc/cxxapi/EventedMessageServer_8h_source.html +358 -0
- data/doc/cxxapi/EventedServer_8h_source.html +326 -0
- data/doc/cxxapi/Exceptions_8h_source.html +366 -0
- data/doc/cxxapi/FileDescriptor_8h_source.html +260 -0
- data/doc/cxxapi/Hooks_8h_source.html +2 -1
- data/doc/cxxapi/HttpStatusExtractor_8h_source.html +382 -0
- data/doc/cxxapi/Logging_8h_source.html +726 -0
- data/doc/cxxapi/MessageChannel_8h_source.html +852 -0
- data/doc/cxxapi/MessageClient_8h_source.html +328 -0
- data/doc/cxxapi/MessageReadersWriters_8h_source.html +539 -0
- data/doc/cxxapi/MessageServer_8h_source.html +606 -0
- data/doc/cxxapi/PoolOptions_8h_source.html +548 -0
- data/doc/cxxapi/Process_8h_source.html +286 -0
- data/doc/cxxapi/RandomGenerator_8h_source.html +191 -0
- data/doc/cxxapi/ResourceLocator_8h_source.html +115 -0
- data/doc/cxxapi/ScgiRequestParser_8h_source.html +406 -0
- data/doc/cxxapi/ServerInstanceDir_8h_source.html +374 -0
- data/doc/cxxapi/Session_8h_source.html +501 -0
- data/doc/cxxapi/SpawnManager_8h_source.html +647 -0
- data/doc/cxxapi/StaticContentHandler_8h_source.html +68 -0
- data/doc/cxxapi/StaticString_8h_source.html +254 -0
- data/doc/cxxapi/StringListCreator_8h_source.html +114 -0
- data/doc/cxxapi/Utils_8h_source.html +442 -0
- data/doc/cxxapi/annotated.html +46 -0
- data/doc/cxxapi/apache2_2Configuration_8h_source.html +82 -0
- data/doc/cxxapi/classAgentWatcher-members.html +30 -26
- data/doc/cxxapi/classAgentWatcher.html +168 -194
- data/doc/cxxapi/classClient-members.html +14 -11
- data/doc/cxxapi/classClient.html +35 -35
- data/doc/cxxapi/classHooks-members.html +2 -0
- data/doc/cxxapi/classHooks.html +2 -0
- data/doc/cxxapi/classPassenger_1_1AbstractSpawnManager-members.html +16 -13
- data/doc/cxxapi/classPassenger_1_1AbstractSpawnManager.html +78 -82
- data/doc/cxxapi/classPassenger_1_1ArgumentException-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1ArgumentException.html +26 -22
- data/doc/cxxapi/classPassenger_1_1ArrayMessage-members.html +37 -0
- data/doc/cxxapi/classPassenger_1_1ArrayMessage.html +113 -0
- data/doc/cxxapi/classPassenger_1_1BufferedUpload-members.html +14 -11
- data/doc/cxxapi/classPassenger_1_1BufferedUpload.html +41 -42
- data/doc/cxxapi/classPassenger_1_1BusyException-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1BusyException.html +24 -20
- data/doc/cxxapi/classPassenger_1_1ConfigurationException-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1ConfigurationException.html +23 -19
- data/doc/cxxapi/classPassenger_1_1DirectoryMapper-members.html +2 -0
- data/doc/cxxapi/classPassenger_1_1DirectoryMapper.html +8 -6
- data/doc/cxxapi/classPassenger_1_1EOFException-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1EOFException.html +27 -23
- data/doc/cxxapi/classPassenger_1_1EventFd-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1EventFd.html +24 -21
- data/doc/cxxapi/classPassenger_1_1EventedClient-members.html +54 -0
- data/doc/cxxapi/classPassenger_1_1EventedClient.html +436 -0
- data/doc/cxxapi/classPassenger_1_1EventedMessageServer-members.html +37 -0
- data/doc/cxxapi/classPassenger_1_1EventedMessageServer.html +59 -0
- data/doc/cxxapi/classPassenger_1_1EventedMessageServer__inherit__graph.map +3 -0
- data/doc/cxxapi/classPassenger_1_1EventedMessageServer__inherit__graph.md5 +1 -0
- data/doc/cxxapi/classPassenger_1_1EventedMessageServer__inherit__graph.png +0 -0
- data/doc/cxxapi/classPassenger_1_1EventedServer-members.html +37 -0
- data/doc/cxxapi/classPassenger_1_1EventedServer.html +93 -0
- data/doc/cxxapi/classPassenger_1_1EventedServer__inherit__graph.map +3 -0
- data/doc/cxxapi/classPassenger_1_1EventedServer__inherit__graph.md5 +1 -0
- data/doc/cxxapi/classPassenger_1_1EventedServer__inherit__graph.png +0 -0
- data/doc/cxxapi/classPassenger_1_1FileDescriptor-members.html +16 -13
- data/doc/cxxapi/classPassenger_1_1FileDescriptor.html +63 -70
- data/doc/cxxapi/classPassenger_1_1FileNotFoundException-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1FileNotFoundException.html +26 -22
- data/doc/cxxapi/classPassenger_1_1FileSystemException-members.html +17 -14
- data/doc/cxxapi/classPassenger_1_1FileSystemException.html +32 -30
- data/doc/cxxapi/classPassenger_1_1HttpStatusExtractor-members.html +15 -12
- data/doc/cxxapi/classPassenger_1_1HttpStatusExtractor.html +59 -59
- data/doc/cxxapi/classPassenger_1_1IOException-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1IOException.html +27 -23
- data/doc/cxxapi/classPassenger_1_1MessageChannel-members.html +36 -33
- data/doc/cxxapi/classPassenger_1_1MessageChannel.html +326 -344
- data/doc/cxxapi/classPassenger_1_1MessageServer-members.html +25 -22
- data/doc/cxxapi/classPassenger_1_1MessageServer.html +160 -191
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1ClientContext-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1ClientContext.html +29 -27
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1ClientContext__inherit__graph.map +3 -1
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1ClientContext__inherit__graph.md5 +1 -1
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1ClientContext__inherit__graph.png +0 -0
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1CommonClientContext-members.html +17 -14
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1CommonClientContext.html +69 -79
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1CommonClientContext__inherit__graph.map +3 -1
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1CommonClientContext__inherit__graph.md5 +1 -1
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1CommonClientContext__inherit__graph.png +0 -0
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1Handler-members.html +15 -12
- data/doc/cxxapi/classPassenger_1_1MessageServer_1_1Handler.html +60 -63
- data/doc/cxxapi/classPassenger_1_1Process-members.html +20 -17
- data/doc/cxxapi/classPassenger_1_1Process.html +88 -95
- data/doc/cxxapi/classPassenger_1_1RandomGenerator-members.html +13 -10
- data/doc/cxxapi/classPassenger_1_1RandomGenerator.html +36 -35
- data/doc/cxxapi/classPassenger_1_1RuntimeException-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1RuntimeException.html +24 -20
- data/doc/cxxapi/classPassenger_1_1ScalarMessage-members.html +37 -0
- data/doc/cxxapi/classPassenger_1_1ScalarMessage.html +76 -0
- data/doc/cxxapi/classPassenger_1_1ScgiRequestParser-members.html +26 -23
- data/doc/cxxapi/classPassenger_1_1ScgiRequestParser.html +121 -138
- data/doc/cxxapi/classPassenger_1_1SecurityException-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1SecurityException.html +26 -22
- data/doc/cxxapi/classPassenger_1_1Session-members.html +29 -26
- data/doc/cxxapi/classPassenger_1_1Session.html +219 -240
- data/doc/cxxapi/classPassenger_1_1SpawnException-members.html +14 -11
- data/doc/cxxapi/classPassenger_1_1SpawnException.html +36 -37
- data/doc/cxxapi/classPassenger_1_1SpawnManager-members.html +18 -15
- data/doc/cxxapi/classPassenger_1_1SpawnManager.html +115 -110
- data/doc/cxxapi/classPassenger_1_1StandardSession-members.html +30 -27
- data/doc/cxxapi/classPassenger_1_1StandardSession.html +163 -184
- data/doc/cxxapi/classPassenger_1_1StaticString-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1StaticString.html +27 -25
- data/doc/cxxapi/classPassenger_1_1SystemException-members.html +16 -13
- data/doc/cxxapi/classPassenger_1_1SystemException.html +65 -67
- data/doc/cxxapi/classPassenger_1_1TimeRetrievalException-members.html +16 -13
- data/doc/cxxapi/classPassenger_1_1TimeRetrievalException.html +27 -23
- data/doc/cxxapi/classPassenger_1_1TimeoutException-members.html +12 -9
- data/doc/cxxapi/classPassenger_1_1TimeoutException.html +24 -20
- data/doc/cxxapi/classPassenger_1_1Uint16Message-members.html +36 -0
- data/doc/cxxapi/classPassenger_1_1Uint16Message.html +51 -0
- data/doc/cxxapi/classPassenger_1_1Uint32Message-members.html +36 -0
- data/doc/cxxapi/classPassenger_1_1Uint32Message.html +51 -0
- data/doc/cxxapi/classServer-members.html +12 -9
- data/doc/cxxapi/classServer.html +23 -20
- data/doc/cxxapi/classServerInstanceDirToucher-members.html +12 -9
- data/doc/cxxapi/classServerInstanceDirToucher.html +21 -17
- data/doc/cxxapi/classes.html +18 -4
- data/doc/cxxapi/definitions_8h_source.html +1 -0
- data/doc/cxxapi/files.html +36 -1
- data/doc/cxxapi/functions.html +53 -21
- data/doc/cxxapi/functions_0x62.html +82 -0
- data/doc/cxxapi/functions_0x63.html +99 -0
- data/doc/cxxapi/functions_0x64.html +95 -0
- data/doc/cxxapi/functions_0x65.html +88 -0
- data/doc/cxxapi/functions_0x66.html +100 -0
- data/doc/cxxapi/functions_0x67.html +170 -0
- data/doc/cxxapi/functions_0x68.html +88 -0
- data/doc/cxxapi/functions_0x69.html +93 -0
- data/doc/cxxapi/functions_0x6b.html +80 -0
- data/doc/cxxapi/functions_0x6c.html +88 -0
- data/doc/cxxapi/functions_0x6d.html +88 -0
- data/doc/cxxapi/functions_0x6e.html +86 -0
- data/doc/cxxapi/functions_0x6f.html +94 -0
- data/doc/cxxapi/functions_0x70.html +94 -0
- data/doc/cxxapi/functions_0x72.html +110 -0
- data/doc/cxxapi/functions_0x73.html +171 -0
- data/doc/cxxapi/functions_0x74.html +85 -0
- data/doc/cxxapi/functions_0x75.html +85 -0
- data/doc/cxxapi/functions_0x77.html +92 -0
- data/doc/cxxapi/functions_0x7e.html +79 -0
- data/doc/cxxapi/functions_enum.html +14 -12
- data/doc/cxxapi/functions_eval.html +22 -16
- data/doc/cxxapi/functions_func.html +460 -1
- data/doc/cxxapi/functions_vars.html +163 -63
- data/doc/cxxapi/graph_legend.html +1 -0
- data/doc/cxxapi/graph_legend.png +0 -0
- data/doc/cxxapi/group__Core.html +2 -2
- data/doc/cxxapi/group__Core.map +1 -2
- data/doc/cxxapi/group__Core.png +0 -0
- data/doc/cxxapi/group__Exceptions.html +32 -40
- data/doc/cxxapi/group__Hooks.html +2 -1
- data/doc/cxxapi/group__Hooks.map +1 -1
- data/doc/cxxapi/group__Hooks.png +0 -0
- data/doc/cxxapi/group__Support.html +509 -0
- data/doc/cxxapi/hierarchy.html +66 -62
- data/doc/cxxapi/inherit__graph__10.map +3 -1
- data/doc/cxxapi/inherit__graph__10.md5 +1 -1
- data/doc/cxxapi/inherit__graph__10.png +0 -0
- data/doc/cxxapi/inherit__graph__11.map +4 -1
- data/doc/cxxapi/inherit__graph__11.md5 +1 -1
- data/doc/cxxapi/inherit__graph__11.png +0 -0
- data/doc/cxxapi/inherit__graph__12.map +3 -1
- data/doc/cxxapi/inherit__graph__12.md5 +1 -1
- data/doc/cxxapi/inherit__graph__12.png +0 -0
- data/doc/cxxapi/inherit__graph__13.map +3 -1
- data/doc/cxxapi/inherit__graph__13.md5 +1 -1
- data/doc/cxxapi/inherit__graph__13.png +0 -0
- data/doc/cxxapi/inherit__graph__14.map +3 -1
- data/doc/cxxapi/inherit__graph__14.md5 +1 -1
- data/doc/cxxapi/inherit__graph__14.png +0 -0
- data/doc/cxxapi/inherit__graph__15.map +5 -1
- data/doc/cxxapi/inherit__graph__15.md5 +1 -1
- data/doc/cxxapi/inherit__graph__15.png +0 -0
- data/doc/cxxapi/inherit__graph__16.map +3 -3
- data/doc/cxxapi/inherit__graph__16.md5 +1 -1
- data/doc/cxxapi/inherit__graph__16.png +0 -0
- data/doc/cxxapi/inherit__graph__17.map +3 -1
- data/doc/cxxapi/inherit__graph__17.md5 +1 -1
- data/doc/cxxapi/inherit__graph__17.png +0 -0
- data/doc/cxxapi/inherit__graph__18.map +4 -1
- data/doc/cxxapi/inherit__graph__18.md5 +1 -1
- data/doc/cxxapi/inherit__graph__18.png +0 -0
- data/doc/cxxapi/inherit__graph__19.map +3 -1
- data/doc/cxxapi/inherit__graph__19.md5 +1 -1
- data/doc/cxxapi/inherit__graph__19.png +0 -0
- data/doc/cxxapi/inherit__graph__20.map +3 -2
- data/doc/cxxapi/inherit__graph__20.md5 +1 -1
- data/doc/cxxapi/inherit__graph__20.png +0 -0
- data/doc/cxxapi/inherit__graph__21.map +3 -1
- data/doc/cxxapi/inherit__graph__21.md5 +1 -1
- data/doc/cxxapi/inherit__graph__21.png +0 -0
- data/doc/cxxapi/inherit__graph__22.map +3 -1
- data/doc/cxxapi/inherit__graph__22.md5 +1 -1
- data/doc/cxxapi/inherit__graph__22.png +0 -0
- data/doc/cxxapi/inherit__graph__23.map +3 -1
- data/doc/cxxapi/inherit__graph__23.md5 +1 -1
- data/doc/cxxapi/inherit__graph__23.png +0 -0
- data/doc/cxxapi/inherit__graph__24.map +3 -1
- data/doc/cxxapi/inherit__graph__24.md5 +1 -1
- data/doc/cxxapi/inherit__graph__24.png +0 -0
- data/doc/cxxapi/inherit__graph__25.map +3 -1
- data/doc/cxxapi/inherit__graph__25.md5 +1 -1
- data/doc/cxxapi/inherit__graph__25.png +0 -0
- data/doc/cxxapi/inherit__graph__26.map +3 -1
- data/doc/cxxapi/inherit__graph__26.md5 +1 -1
- data/doc/cxxapi/inherit__graph__26.png +0 -0
- data/doc/cxxapi/inherit__graph__27.map +3 -1
- data/doc/cxxapi/inherit__graph__27.md5 +1 -1
- data/doc/cxxapi/inherit__graph__27.png +0 -0
- data/doc/cxxapi/inherit__graph__28.map +4 -1
- data/doc/cxxapi/inherit__graph__28.md5 +1 -1
- data/doc/cxxapi/inherit__graph__28.png +0 -0
- data/doc/cxxapi/inherit__graph__29.map +3 -1
- data/doc/cxxapi/inherit__graph__29.md5 +1 -1
- data/doc/cxxapi/inherit__graph__29.png +0 -0
- data/doc/cxxapi/inherit__graph__30.map +3 -2
- data/doc/cxxapi/inherit__graph__30.md5 +1 -1
- data/doc/cxxapi/inherit__graph__30.png +0 -0
- data/doc/cxxapi/inherit__graph__31.map +3 -1
- data/doc/cxxapi/inherit__graph__31.md5 +1 -1
- data/doc/cxxapi/inherit__graph__31.png +0 -0
- data/doc/cxxapi/inherit__graph__32.map +5 -1
- data/doc/cxxapi/inherit__graph__32.md5 +1 -1
- data/doc/cxxapi/inherit__graph__32.png +0 -0
- data/doc/cxxapi/inherit__graph__33.map +3 -1
- data/doc/cxxapi/inherit__graph__33.md5 +1 -1
- data/doc/cxxapi/inherit__graph__33.png +0 -0
- data/doc/cxxapi/inherit__graph__34.map +3 -3
- data/doc/cxxapi/inherit__graph__34.md5 +1 -1
- data/doc/cxxapi/inherit__graph__34.png +0 -0
- data/doc/cxxapi/inherit__graph__35.map +3 -1
- data/doc/cxxapi/inherit__graph__35.md5 +1 -1
- data/doc/cxxapi/inherit__graph__35.png +0 -0
- data/doc/cxxapi/inherit__graph__36.map +3 -1
- data/doc/cxxapi/inherit__graph__36.md5 +1 -1
- data/doc/cxxapi/inherit__graph__36.png +0 -0
- data/doc/cxxapi/inherit__graph__37.map +3 -1
- data/doc/cxxapi/inherit__graph__37.md5 +1 -1
- data/doc/cxxapi/inherit__graph__37.png +0 -0
- data/doc/cxxapi/inherit__graph__4.map +3 -1
- data/doc/cxxapi/inherit__graph__4.md5 +1 -1
- data/doc/cxxapi/inherit__graph__4.png +0 -0
- data/doc/cxxapi/inherit__graph__5.map +3 -1
- data/doc/cxxapi/inherit__graph__5.md5 +1 -1
- data/doc/cxxapi/inherit__graph__5.png +0 -0
- data/doc/cxxapi/inherit__graph__6.map +3 -1
- data/doc/cxxapi/inherit__graph__6.md5 +1 -1
- data/doc/cxxapi/inherit__graph__6.png +0 -0
- data/doc/cxxapi/inherit__graph__7.map +3 -1
- data/doc/cxxapi/inherit__graph__7.md5 +1 -1
- data/doc/cxxapi/inherit__graph__7.png +0 -0
- data/doc/cxxapi/inherit__graph__8.map +3 -1
- data/doc/cxxapi/inherit__graph__8.md5 +1 -1
- data/doc/cxxapi/inherit__graph__8.png +0 -0
- data/doc/cxxapi/inherit__graph__9.map +3 -1
- data/doc/cxxapi/inherit__graph__9.md5 +1 -1
- data/doc/cxxapi/inherit__graph__9.png +0 -0
- data/doc/cxxapi/inherits.html +123 -126
- data/doc/cxxapi/main.html +1 -0
- data/doc/cxxapi/modules.html +2 -1
- data/doc/cxxapi/namespacePassenger.html +263 -492
- data/doc/cxxapi/namespacemembers.html +68 -96
- data/doc/cxxapi/namespacemembers_enum.html +14 -12
- data/doc/cxxapi/namespacemembers_eval.html +20 -15
- data/doc/cxxapi/namespacemembers_func.html +52 -88
- data/doc/cxxapi/namespacemembers_type.html +18 -14
- data/doc/cxxapi/namespaces.html +12 -9
- data/doc/cxxapi/nginx_2Configuration_8h_source.html +125 -0
- data/doc/cxxapi/ngx__http__passenger__module_8h_source.html +94 -0
- data/doc/cxxapi/structPassenger_1_1MessageServer_1_1DisconnectEventBroadcastGuard-members.html +12 -9
- data/doc/cxxapi/structPassenger_1_1MessageServer_1_1DisconnectEventBroadcastGuard.html +24 -22
- data/doc/cxxapi/structPassenger_1_1PoolOptions-members.html +43 -38
- data/doc/cxxapi/structPassenger_1_1PoolOptions.html +275 -325
- data/doc/cxxapi/structPassenger_1_1StaticString_1_1Hash-members.html +12 -9
- data/doc/cxxapi/structPassenger_1_1StaticString_1_1Hash.html +24 -22
- data/doc/cxxapi/tree.html +152 -7
- data/doc/users_guide_snippets/{analysis_and_system_maintenance_tools.txt → analysis_and_system_maintenance.txt} +58 -1
- data/doc/users_guide_snippets/appendix_c_spawning_methods.txt +1 -2
- data/doc/users_guide_snippets/global_queueing_explained.txt +1 -5
- data/doc/users_guide_snippets/{rails_spawn_method.txt → passenger_spawn_method.txt} +9 -8
- data/doc/users_guide_snippets/tips.txt +12 -6
- data/doc/users_guide_snippets/under_the_hood/page_caching_support.txt +22 -0
- data/ext/apache2/Bucket.cpp +4 -4
- data/ext/apache2/Bucket.h +3 -3
- data/ext/apache2/Configuration.cpp +278 -381
- data/ext/apache2/Configuration.h +3 -357
- data/ext/apache2/Configuration.hpp +461 -0
- data/ext/apache2/DirectoryMapper.h +3 -3
- data/ext/apache2/HelperAgent.cpp +359 -0
- data/ext/apache2/Hooks.cpp +339 -226
- data/ext/apache2/Hooks.h +1 -1
- data/ext/apache2/mod_passenger.c +10 -4
- data/ext/boost/algorithm/string/case_conv.hpp +4 -4
- data/ext/boost/algorithm/string/concept.hpp +2 -2
- data/ext/boost/algorithm/string/detail/case_conv.hpp +18 -9
- data/ext/boost/algorithm/string/detail/find_format.hpp +44 -43
- data/ext/boost/algorithm/string/detail/find_format_all.hpp +56 -56
- data/ext/boost/algorithm/string/detail/find_format_store.hpp +7 -0
- data/ext/boost/algorithm/string/detail/finder.hpp +14 -14
- data/ext/boost/algorithm/string/detail/formatter.hpp +2 -2
- data/ext/boost/algorithm/string/detail/replace_storage.hpp +3 -3
- data/ext/boost/algorithm/string/detail/sequence.hpp +3 -3
- data/ext/boost/algorithm/string/erase.hpp +98 -98
- data/ext/boost/algorithm/string/find_format.hpp +56 -38
- data/ext/boost/algorithm/string/finder.hpp +6 -6
- data/ext/boost/algorithm/string/formatter.hpp +1 -1
- data/ext/boost/algorithm/string/replace.hpp +99 -99
- data/ext/boost/bind.hpp +5 -1670
- data/ext/boost/bind/bind.hpp +1751 -0
- data/ext/boost/bind/bind_mf2_cc.hpp +228 -0
- data/ext/boost/bind/mem_fn.hpp +389 -0
- data/ext/boost/bind/mem_fn_template.hpp +54 -27
- data/ext/boost/bind/placeholders.hpp +3 -2
- data/ext/boost/concept_check.hpp +10 -0
- data/ext/boost/config/abi/msvc_prefix.hpp +15 -1
- data/ext/boost/config/abi_prefix.hpp +1 -1
- data/ext/boost/config/abi_suffix.hpp +3 -2
- data/ext/boost/config/auto_link.hpp +6 -1
- data/ext/boost/config/compiler/borland.hpp +75 -17
- data/ext/boost/config/compiler/codegear.hpp +163 -0
- data/ext/boost/config/compiler/common_edg.hpp +35 -0
- data/ext/boost/config/compiler/digitalmars.hpp +26 -0
- data/ext/boost/config/compiler/gcc.hpp +69 -14
- data/ext/boost/config/compiler/hp_acc.hpp +32 -0
- data/ext/boost/config/compiler/intel.hpp +13 -2
- data/ext/boost/config/compiler/kai.hpp +0 -2
- data/ext/boost/config/compiler/metrowerks.hpp +29 -1
- data/ext/boost/config/compiler/mpw.hpp +30 -0
- data/ext/boost/config/compiler/pgi.hpp +37 -0
- data/ext/boost/config/compiler/sgi_mipspro.hpp +1 -0
- data/ext/boost/config/compiler/sunpro_cc.hpp +39 -7
- data/ext/boost/config/compiler/vacpp.hpp +31 -3
- data/ext/boost/config/compiler/visualc.hpp +72 -5
- data/ext/boost/config/no_tr1/cmath.hpp +28 -0
- data/ext/boost/config/platform/bsd.hpp +16 -3
- data/ext/boost/config/platform/hpux.hpp +3 -0
- data/ext/boost/config/platform/macos.hpp +8 -0
- data/ext/boost/config/platform/solaris.hpp +7 -0
- data/ext/boost/config/platform/vxworks.hpp +31 -0
- data/ext/boost/config/select_compiler_config.hpp +4 -0
- data/ext/boost/config/select_platform_config.hpp +6 -2
- data/ext/boost/config/select_stdlib_config.hpp +17 -8
- data/ext/boost/config/stdlib/dinkumware.hpp +34 -2
- data/ext/boost/config/stdlib/libcomo.hpp +25 -0
- data/ext/boost/config/stdlib/libstdcpp3.hpp +56 -2
- data/ext/boost/config/stdlib/modena.hpp +25 -0
- data/ext/boost/config/stdlib/msl.hpp +24 -0
- data/ext/boost/config/stdlib/roguewave.hpp +26 -0
- data/ext/boost/config/stdlib/sgi.hpp +25 -0
- data/ext/boost/config/stdlib/stlport.hpp +36 -1
- data/ext/boost/config/stdlib/vacpp.hpp +25 -0
- data/ext/boost/config/suffix.hpp +67 -32
- data/ext/boost/config/warning_disable.hpp +47 -0
- data/ext/boost/cstdint.hpp +62 -36
- data/ext/boost/date_time/c_time.hpp +28 -12
- data/ext/boost/date_time/compiler_config.hpp +27 -5
- data/ext/boost/date_time/constrained_value.hpp +36 -13
- data/ext/boost/date_time/date.hpp +44 -33
- data/ext/boost/date_time/date_duration.hpp +13 -14
- data/ext/boost/date_time/date_facet.hpp +215 -226
- data/ext/boost/date_time/date_generator_formatter.hpp +22 -20
- data/ext/boost/date_time/date_generator_parser.hpp +52 -51
- data/ext/boost/date_time/date_generators.hpp +16 -16
- data/ext/boost/date_time/date_parsing.hpp +115 -98
- data/ext/boost/date_time/filetime_functions.hpp +133 -41
- data/ext/boost/date_time/format_date_parser.hpp +22 -10
- data/ext/boost/date_time/gregorian/conversion.hpp +32 -39
- data/ext/boost/date_time/gregorian/greg_calendar.hpp +15 -14
- data/ext/boost/date_time/gregorian/greg_date.hpp +19 -18
- data/ext/boost/date_time/gregorian/greg_duration.hpp +106 -10
- data/ext/boost/date_time/gregorian/greg_duration_types.hpp +16 -7
- data/ext/boost/date_time/gregorian/greg_weekday.hpp +2 -2
- data/ext/boost/date_time/gregorian/gregorian_io.hpp +11 -4
- data/ext/boost/date_time/gregorian_calendar.hpp +8 -8
- data/ext/boost/date_time/gregorian_calendar.ipp +30 -30
- data/ext/boost/date_time/int_adapter.hpp +4 -2
- data/ext/boost/date_time/microsec_time_clock.hpp +39 -117
- data/ext/boost/date_time/period_parser.hpp +17 -15
- data/ext/boost/date_time/posix_time/conversion.hpp +28 -29
- data/ext/boost/date_time/posix_time/posix_time_config.hpp +19 -19
- data/ext/boost/date_time/posix_time/posix_time_io.hpp +31 -38
- data/ext/boost/date_time/posix_time/time_formatters.hpp +32 -32
- data/ext/boost/date_time/string_parse_tree.hpp +46 -46
- data/ext/boost/date_time/strings_from_facet.hpp +7 -5
- data/ext/boost/date_time/time.hpp +7 -6
- data/ext/boost/date_time/time_defs.hpp +12 -2
- data/ext/boost/date_time/time_duration.hpp +27 -26
- data/ext/boost/date_time/time_facet.hpp +386 -321
- data/ext/boost/date_time/time_formatting_streams.hpp +8 -5
- data/ext/boost/date_time/time_resolution_traits.hpp +29 -25
- data/ext/boost/date_time/time_system_split.hpp +7 -13
- data/ext/boost/date_time/wrapping_int.hpp +21 -15
- data/ext/boost/detail/call_traits.hpp +1 -1
- data/ext/boost/detail/endian.hpp +4 -4
- data/ext/boost/detail/no_exceptions_support.hpp +87 -0
- data/ext/boost/detail/sp_typeinfo.hpp +50 -4
- data/ext/boost/detail/workaround.hpp +63 -3
- data/ext/boost/enable_shared_from_this.hpp +4 -59
- data/ext/boost/exception/current_exception_cast.hpp +43 -0
- data/ext/boost/exception/detail/attribute_noreturn.hpp +17 -0
- data/ext/boost/exception/detail/error_info_impl.hpp +75 -0
- data/ext/boost/exception/detail/exception_ptr.hpp +490 -0
- data/ext/boost/exception/detail/is_output_streamable.hpp +47 -0
- data/ext/boost/exception/detail/object_hex_dump.hpp +50 -0
- data/ext/boost/exception/detail/type_info.hpp +79 -0
- data/ext/boost/exception/diagnostic_information.hpp +182 -0
- data/ext/boost/exception/exception.hpp +422 -0
- data/ext/boost/exception/get_error_info.hpp +130 -0
- data/ext/boost/exception/info.hpp +167 -0
- data/ext/boost/exception/to_string.hpp +83 -0
- data/ext/boost/exception/to_string_stub.hpp +109 -0
- data/ext/boost/exception_ptr.hpp +11 -0
- data/ext/boost/function/detail/prologue.hpp +2 -1
- data/ext/boost/function/function_base.hpp +270 -128
- data/ext/boost/function/function_fwd.hpp +70 -0
- data/ext/boost/function/function_template.hpp +319 -130
- data/ext/boost/get_pointer.hpp +5 -1
- data/ext/boost/integer.hpp +253 -0
- data/ext/boost/integer_fwd.hpp +174 -0
- data/ext/boost/integer_traits.hpp +26 -1
- data/ext/boost/io/ios_state.hpp +8 -0
- data/ext/boost/iterator/detail/config_def.hpp +4 -2
- data/ext/boost/iterator/iterator_adaptor.hpp +7 -2
- data/ext/boost/iterator/iterator_facade.hpp +1 -2
- data/ext/boost/lexical_cast.hpp +113 -105
- data/ext/boost/limits.hpp +1 -1
- data/ext/boost/mem_fn.hpp +5 -370
- data/ext/boost/memory_order.hpp +53 -0
- data/ext/boost/mpl/always.hpp +3 -3
- data/ext/boost/mpl/and.hpp +3 -3
- data/ext/boost/mpl/apply.hpp +3 -3
- data/ext/boost/mpl/apply_fwd.hpp +3 -3
- data/ext/boost/mpl/apply_wrap.hpp +37 -6
- data/ext/boost/mpl/arg.hpp +3 -3
- data/ext/boost/mpl/arg_fwd.hpp +3 -3
- data/ext/boost/mpl/assert.hpp +6 -6
- data/ext/boost/mpl/aux_/adl_barrier.hpp +3 -3
- data/ext/boost/mpl/aux_/arg_typedef.hpp +3 -3
- data/ext/boost/mpl/aux_/arity.hpp +3 -3
- data/ext/boost/mpl/aux_/arity_spec.hpp +3 -3
- data/ext/boost/mpl/aux_/common_name_wknd.hpp +3 -3
- data/ext/boost/mpl/aux_/config/adl.hpp +4 -4
- data/ext/boost/mpl/aux_/config/arrays.hpp +4 -4
- data/ext/boost/mpl/aux_/config/bcc.hpp +28 -0
- data/ext/boost/mpl/aux_/config/bind.hpp +4 -4
- data/ext/boost/mpl/aux_/config/compiler.hpp +8 -6
- data/ext/boost/mpl/aux_/config/ctps.hpp +3 -3
- data/ext/boost/mpl/aux_/config/dtp.hpp +5 -5
- data/ext/boost/mpl/aux_/config/eti.hpp +3 -3
- data/ext/boost/mpl/aux_/config/gcc.hpp +3 -3
- data/ext/boost/mpl/aux_/config/has_apply.hpp +3 -3
- data/ext/boost/mpl/aux_/config/has_xxx.hpp +3 -3
- data/ext/boost/mpl/aux_/config/integral.hpp +4 -4
- data/ext/boost/mpl/aux_/config/intel.hpp +3 -3
- data/ext/boost/mpl/aux_/config/lambda.hpp +3 -3
- data/ext/boost/mpl/aux_/config/msvc.hpp +3 -3
- data/ext/boost/mpl/aux_/config/msvc_typename.hpp +3 -3
- data/ext/boost/mpl/aux_/config/nttp.hpp +3 -3
- data/ext/boost/mpl/aux_/config/overload_resolution.hpp +3 -3
- data/ext/boost/mpl/aux_/config/pp_counter.hpp +3 -3
- data/ext/boost/mpl/aux_/config/preprocessor.hpp +4 -4
- data/ext/boost/mpl/aux_/config/static_constant.hpp +3 -3
- data/ext/boost/mpl/aux_/config/ttp.hpp +4 -4
- data/ext/boost/mpl/aux_/config/use_preprocessed.hpp +3 -3
- data/ext/boost/mpl/aux_/config/workaround.hpp +3 -3
- data/ext/boost/mpl/aux_/full_lambda.hpp +3 -3
- data/ext/boost/mpl/aux_/has_apply.hpp +3 -3
- data/ext/boost/mpl/aux_/has_type.hpp +3 -3
- data/ext/boost/mpl/aux_/include_preprocessed.hpp +3 -3
- data/ext/boost/mpl/aux_/integral_wrapper.hpp +3 -3
- data/ext/boost/mpl/aux_/lambda_arity_param.hpp +3 -3
- data/ext/boost/mpl/aux_/lambda_support.hpp +4 -4
- data/ext/boost/mpl/aux_/msvc_never_true.hpp +3 -3
- data/ext/boost/mpl/aux_/na.hpp +3 -3
- data/ext/boost/mpl/aux_/na_assert.hpp +3 -3
- data/ext/boost/mpl/aux_/na_fwd.hpp +3 -3
- data/ext/boost/mpl/aux_/na_spec.hpp +3 -3
- data/ext/boost/mpl/aux_/nested_type_wknd.hpp +3 -3
- data/ext/boost/mpl/aux_/nttp_decl.hpp +3 -3
- data/ext/boost/mpl/aux_/preprocessor/def_params_tail.hpp +3 -3
- data/ext/boost/mpl/aux_/preprocessor/enum.hpp +3 -3
- data/ext/boost/mpl/aux_/preprocessor/filter_params.hpp +3 -3
- data/ext/boost/mpl/aux_/preprocessor/params.hpp +3 -3
- data/ext/boost/mpl/aux_/preprocessor/sub.hpp +3 -3
- data/ext/boost/mpl/aux_/static_cast.hpp +3 -3
- data/ext/boost/mpl/aux_/template_arity.hpp +3 -3
- data/ext/boost/mpl/aux_/template_arity_fwd.hpp +3 -3
- data/ext/boost/mpl/aux_/type_wrapper.hpp +3 -3
- data/ext/boost/mpl/aux_/value_wknd.hpp +3 -3
- data/ext/boost/mpl/aux_/yes_no.hpp +3 -3
- data/ext/boost/mpl/bind.hpp +3 -3
- data/ext/boost/mpl/bind_fwd.hpp +3 -3
- data/ext/boost/mpl/bool.hpp +3 -3
- data/ext/boost/mpl/bool_fwd.hpp +3 -3
- data/ext/boost/mpl/eval_if.hpp +3 -3
- data/ext/boost/mpl/has_xxx.hpp +10 -8
- data/ext/boost/mpl/identity.hpp +3 -3
- data/ext/boost/mpl/if.hpp +3 -3
- data/ext/boost/mpl/int.hpp +3 -3
- data/ext/boost/mpl/int_fwd.hpp +3 -3
- data/ext/boost/mpl/integral_c.hpp +3 -3
- data/ext/boost/mpl/integral_c_fwd.hpp +3 -3
- data/ext/boost/mpl/integral_c_tag.hpp +3 -3
- data/ext/boost/mpl/lambda.hpp +3 -3
- data/ext/boost/mpl/lambda_fwd.hpp +3 -3
- data/ext/boost/mpl/limits/arity.hpp +3 -3
- data/ext/boost/mpl/logical.hpp +3 -3
- data/ext/boost/mpl/next.hpp +3 -3
- data/ext/boost/mpl/next_prior.hpp +3 -3
- data/ext/boost/mpl/not.hpp +3 -3
- data/ext/boost/mpl/or.hpp +3 -3
- data/ext/boost/mpl/placeholders.hpp +3 -3
- data/ext/boost/mpl/protect.hpp +3 -3
- data/ext/boost/mpl/quote.hpp +18 -7
- data/ext/boost/mpl/size_t.hpp +3 -3
- data/ext/boost/mpl/size_t_fwd.hpp +3 -3
- data/ext/boost/mpl/void.hpp +3 -3
- data/ext/boost/mpl/void_fwd.hpp +3 -3
- data/ext/boost/non_type.hpp +27 -27
- data/ext/boost/operators.hpp +51 -18
- data/ext/boost/preprocessor/arithmetic/detail/div_base.hpp +61 -0
- data/ext/boost/preprocessor/arithmetic/mod.hpp +39 -0
- data/ext/boost/preprocessor/comparison/less_equal.hpp +39 -0
- data/ext/boost/preprocessor/control/deduce_d.hpp +22 -0
- data/ext/boost/preprocessor/logical/not.hpp +30 -0
- data/ext/boost/preprocessor/seq/cat.hpp +48 -0
- data/ext/boost/preprocessor/seq/fold_left.hpp +1070 -0
- data/ext/boost/preprocessor/seq/transform.hpp +48 -0
- data/ext/boost/range/as_literal.hpp +10 -14
- data/ext/boost/range/begin.hpp +4 -4
- data/ext/boost/range/detail/implementation_help.hpp +4 -0
- data/ext/boost/range/end.hpp +4 -4
- data/ext/boost/range/iterator_range.hpp +31 -15
- data/ext/boost/ref.hpp +12 -1
- data/ext/boost/scoped_array.hpp +16 -0
- data/ext/boost/scoped_ptr.hpp +16 -0
- data/ext/boost/shared_ptr.hpp +2 -602
- data/ext/boost/{detail → smart_ptr}/bad_weak_ptr.hpp +4 -4
- data/ext/boost/{detail → smart_ptr/detail}/atomic_count.hpp +14 -19
- data/ext/boost/{detail → smart_ptr/detail}/atomic_count_gcc.hpp +13 -9
- data/ext/boost/{detail → smart_ptr/detail}/atomic_count_gcc_x86.hpp +5 -12
- data/ext/boost/{detail → smart_ptr/detail}/atomic_count_pthreads.hpp +5 -5
- data/ext/boost/{detail → smart_ptr/detail}/atomic_count_solaris.hpp +3 -3
- data/ext/boost/{detail → smart_ptr/detail}/atomic_count_sync.hpp +9 -5
- data/ext/boost/{detail → smart_ptr/detail}/atomic_count_win32.hpp +3 -3
- data/ext/boost/smart_ptr/detail/operator_bool.hpp +56 -0
- data/ext/boost/{detail → smart_ptr/detail}/shared_count.hpp +86 -17
- data/ext/boost/smart_ptr/detail/sp_convertible.hpp +76 -0
- data/ext/boost/smart_ptr/detail/sp_counted_base.hpp +70 -0
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_acc_ia64.hpp +4 -4
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_cw_ppc.hpp +4 -4
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_cw_x86.hpp +4 -4
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_gcc_ia64.hpp +4 -4
- data/ext/boost/smart_ptr/detail/sp_counted_base_gcc_mips.hpp +172 -0
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_gcc_ppc.hpp +4 -4
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_gcc_sparc.hpp +7 -7
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_gcc_x86.hpp +4 -4
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_nt.hpp +4 -4
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_pt.hpp +4 -4
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_solaris.hpp +4 -4
- data/ext/boost/smart_ptr/detail/sp_counted_base_spin.hpp +131 -0
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_sync.hpp +8 -4
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_base_w32.hpp +4 -4
- data/ext/boost/{detail → smart_ptr/detail}/sp_counted_impl.hpp +5 -5
- data/ext/boost/smart_ptr/detail/sp_has_sync.hpp +49 -0
- data/ext/boost/smart_ptr/detail/spinlock.hpp +53 -0
- data/ext/boost/smart_ptr/detail/spinlock_gcc_arm.hpp +85 -0
- data/ext/boost/smart_ptr/detail/spinlock_nt.hpp +89 -0
- data/ext/boost/smart_ptr/detail/spinlock_pool.hpp +87 -0
- data/ext/boost/smart_ptr/detail/spinlock_pt.hpp +79 -0
- data/ext/boost/smart_ptr/detail/spinlock_sync.hpp +87 -0
- data/ext/boost/smart_ptr/detail/yield_k.hpp +149 -0
- data/ext/boost/smart_ptr/enable_shared_from_this.hpp +79 -0
- data/ext/boost/smart_ptr/scoped_array.hpp +107 -0
- data/ext/boost/smart_ptr/scoped_ptr.hpp +131 -0
- data/ext/boost/smart_ptr/shared_ptr.hpp +701 -0
- data/ext/boost/smart_ptr/weak_ptr.hpp +230 -0
- data/ext/boost/src/pthread/thread.cpp +115 -203
- data/ext/boost/src/tss_null.cpp +1 -1
- data/ext/boost/static_assert.hpp +14 -4
- data/ext/boost/thread.hpp +7 -2
- data/ext/boost/thread/barrier.hpp +63 -0
- data/ext/boost/thread/detail/force_cast.hpp +39 -0
- data/ext/boost/thread/detail/move.hpp +29 -2
- data/ext/boost/thread/detail/platform.hpp +3 -3
- data/ext/boost/thread/detail/singleton.hpp +59 -0
- data/ext/boost/thread/detail/thread.hpp +496 -0
- data/ext/boost/thread/detail/thread_group.hpp +105 -0
- data/ext/boost/thread/detail/thread_heap_alloc.hpp +23 -0
- data/ext/boost/thread/detail/thread_interruption.hpp +35 -0
- data/ext/boost/thread/detail/tss_hooks.hpp +82 -0
- data/ext/boost/thread/exceptions.hpp +174 -60
- data/ext/boost/thread/future.hpp +1364 -0
- data/ext/boost/thread/locks.hpp +899 -32
- data/ext/boost/thread/once.hpp +4 -0
- data/ext/boost/thread/pthread/condition_variable.hpp +16 -21
- data/ext/boost/thread/pthread/condition_variable_fwd.hpp +37 -3
- data/ext/boost/thread/pthread/mutex.hpp +20 -7
- data/ext/boost/thread/pthread/once.hpp +7 -2
- data/ext/boost/thread/pthread/pthread_mutex_scoped_lock.hpp +5 -1
- data/ext/boost/thread/pthread/recursive_mutex.hpp +22 -5
- data/ext/boost/thread/pthread/shared_mutex.hpp +303 -0
- data/ext/boost/thread/pthread/thread_data.hpp +37 -10
- data/ext/boost/thread/pthread/thread_heap_alloc.hpp +242 -0
- data/ext/boost/thread/pthread/timespec.hpp +11 -3
- data/ext/boost/thread/shared_mutex.hpp +21 -0
- data/ext/boost/thread/thread.hpp +8 -3
- data/ext/boost/thread/thread_time.hpp +4 -0
- data/ext/boost/thread/tss.hpp +106 -13
- data/ext/boost/thread/xtime.hpp +6 -2
- data/ext/boost/throw_exception.hpp +36 -7
- data/ext/boost/token_functions.hpp +1 -1
- data/ext/boost/tokenizer.hpp +1 -1
- data/ext/boost/type_traits/add_pointer.hpp +1 -1
- data/ext/boost/type_traits/add_volatile.hpp +47 -0
- data/ext/boost/type_traits/alignment_of.hpp +29 -1
- data/ext/boost/type_traits/config.hpp +1 -1
- data/ext/boost/type_traits/conversion_traits.hpp +1 -1
- data/ext/boost/type_traits/has_trivial_destructor.hpp +42 -0
- data/ext/boost/type_traits/intrinsics.hpp +88 -1
- data/ext/boost/type_traits/is_abstract.hpp +14 -5
- data/ext/boost/type_traits/is_arithmetic.hpp +8 -0
- data/ext/boost/type_traits/is_array.hpp +3 -2
- data/ext/boost/type_traits/is_base_and_derived.hpp +254 -0
- data/ext/boost/type_traits/is_base_of.hpp +51 -0
- data/ext/boost/type_traits/is_class.hpp +12 -0
- data/ext/boost/type_traits/is_const.hpp +6 -2
- data/ext/boost/type_traits/is_convertible.hpp +14 -2
- data/ext/boost/type_traits/is_enum.hpp +10 -1
- data/ext/boost/type_traits/is_function.hpp +11 -3
- data/ext/boost/type_traits/is_fundamental.hpp +45 -0
- data/ext/boost/type_traits/is_integral.hpp +5 -0
- data/ext/boost/type_traits/is_member_function_pointer.hpp +5 -3
- data/ext/boost/type_traits/is_member_pointer.hpp +4 -2
- data/ext/boost/type_traits/is_pointer.hpp +3 -1
- data/ext/boost/type_traits/is_reference.hpp +4 -2
- data/ext/boost/type_traits/is_signed.hpp +135 -0
- data/ext/boost/type_traits/is_unsigned.hpp +130 -0
- data/ext/boost/type_traits/is_void.hpp +5 -0
- data/ext/boost/type_traits/is_volatile.hpp +4 -2
- data/ext/boost/type_traits/make_unsigned.hpp +137 -0
- data/ext/boost/type_traits/remove_reference.hpp +1 -1
- data/ext/boost/type_traits/type_with_alignment.hpp +106 -1
- data/ext/boost/utility.hpp +2 -1
- data/ext/boost/utility/addressof.hpp +61 -17
- data/ext/boost/utility/binary.hpp +708 -0
- data/ext/boost/utility/enable_if.hpp +2 -2
- data/ext/boost/weak_ptr.hpp +4 -174
- data/ext/common/AbstractSpawnManager.h +110 -0
- data/ext/common/Account.h +175 -0
- data/ext/common/AccountsDatabase.cpp +81 -0
- data/ext/common/AccountsDatabase.h +130 -0
- data/ext/common/AgentBase.cpp +323 -0
- data/ext/common/{Version.h → AgentBase.h} +14 -6
- data/ext/common/AgentsStarter.cpp +154 -0
- data/ext/common/AgentsStarter.h +81 -0
- data/ext/common/AgentsStarter.hpp +619 -0
- data/ext/common/ApplicationPool/Client.h +796 -0
- data/ext/common/{ApplicationPool.h → ApplicationPool/Interface.h} +108 -18
- data/ext/common/ApplicationPool/Pool.h +1315 -0
- data/ext/common/ApplicationPool/Server.h +475 -0
- data/ext/common/BCrypt.cpp +343 -0
- data/ext/common/BCrypt.h +73 -0
- data/ext/common/Blowfish.c +685 -0
- data/ext/common/Blowfish.h +103 -0
- data/ext/common/Constants.h +48 -0
- data/ext/common/EventedClient.h +598 -0
- data/ext/common/EventedMessageServer.h +327 -0
- data/ext/common/EventedServer.h +295 -0
- data/ext/common/Exceptions.h +78 -1
- data/ext/common/FileDescriptor.h +229 -0
- data/ext/common/HelperAgent/BacktracesServer.h +59 -0
- data/ext/common/Logging.cpp +8 -9
- data/ext/common/Logging.h +593 -21
- data/ext/common/LoggingAgent/ChangeNotifier.h +63 -0
- data/ext/common/LoggingAgent/DataStoreId.h +177 -0
- data/ext/common/LoggingAgent/LoggingServer.h +1343 -0
- data/ext/common/LoggingAgent/Main.cpp +278 -0
- data/ext/common/LoggingAgent/RemoteSender.h +457 -0
- data/ext/common/MessageChannel.h +196 -34
- data/ext/common/MessageClient.h +297 -0
- data/ext/common/MessageReadersWriters.h +508 -0
- data/ext/common/MessageServer.h +575 -0
- data/ext/common/PoolOptions.h +279 -117
- data/ext/common/Process.h +255 -0
- data/ext/common/RandomGenerator.h +160 -0
- data/ext/common/ResourceLocator.h +84 -0
- data/ext/common/ServerInstanceDir.h +343 -0
- data/ext/common/Session.h +470 -0
- data/ext/common/SpawnManager.h +256 -201
- data/ext/common/StaticString.h +79 -4
- data/ext/common/StringListCreator.h +2 -2
- data/ext/common/Utils.cpp +385 -397
- data/ext/common/Utils.h +79 -165
- data/ext/common/{Base64.cpp → Utils/Base64.cpp} +0 -0
- data/ext/common/{Base64.h → Utils/Base64.h} +27 -1
- data/ext/common/Utils/BlockingQueue.h +136 -0
- data/ext/common/Utils/BlockingScalar.h +50 -0
- data/ext/common/{CachedFileStat.cpp → Utils/CachedFileStat.cpp} +1 -1
- data/ext/common/{CachedFileStat.h → Utils/CachedFileStat.h} +1 -1
- data/ext/common/{CachedFileStat.hpp → Utils/CachedFileStat.hpp} +1 -1
- data/ext/common/{FileChangeChecker.h → Utils/FileChangeChecker.h} +1 -1
- data/ext/common/Utils/FileHandleGuard.h +81 -0
- data/ext/common/Utils/IOUtils.cpp +754 -0
- data/ext/common/Utils/IOUtils.h +253 -0
- data/ext/common/Utils/MD5.cpp +406 -0
- data/ext/common/Utils/MD5.h +98 -0
- data/ext/common/Utils/MemZeroGuard.h +103 -0
- data/ext/common/Utils/ProcessMetricsCollector.h +462 -0
- data/ext/common/Utils/ScopeGuard.h +72 -0
- data/ext/common/Utils/StrIntUtils.cpp +329 -0
- data/ext/common/Utils/StrIntUtils.h +228 -0
- data/ext/common/{SystemTime.cpp → Utils/SystemTime.cpp} +5 -1
- data/ext/common/Utils/SystemTime.h +201 -0
- data/ext/common/{Timer.h → Utils/Timer.h} +58 -18
- data/ext/common/Utils/VariantMap.h +363 -0
- data/ext/common/Utils/foo.cpp +10 -0
- data/ext/common/Watchdog.cpp +1034 -0
- data/ext/google/COPYING +28 -0
- data/ext/google/ChangeLog +167 -0
- data/ext/google/dense_hash_map +310 -0
- data/ext/google/dense_hash_set +287 -0
- data/ext/google/sparse_hash_map +294 -0
- data/ext/google/sparse_hash_set +275 -0
- data/ext/google/sparsehash/densehashtable.h +1062 -0
- data/ext/google/sparsehash/sparseconfig.h +55 -0
- data/ext/google/sparsehash/sparsehashtable.h +1015 -0
- data/ext/google/sparsetable +1468 -0
- data/ext/google/type_traits.h +250 -0
- data/ext/libev/Changes +302 -0
- data/ext/libev/LICENSE +36 -0
- data/ext/libev/Makefile.am +18 -0
- data/ext/libev/Makefile.in +685 -0
- data/ext/libev/README +58 -0
- data/ext/libev/aclocal.m4 +7549 -0
- data/ext/libev/autogen.sh +6 -0
- data/ext/libev/config.guess +1526 -0
- data/ext/libev/config.h +122 -0
- data/ext/libev/config.h.in +121 -0
- data/ext/libev/config.sub +1658 -0
- data/ext/libev/configure +22156 -0
- data/ext/libev/configure.ac +18 -0
- data/ext/libev/ev++.h +800 -0
- data/ext/libev/ev.c +3694 -0
- data/ext/libev/ev.h +705 -0
- data/ext/libev/ev_epoll.c +228 -0
- data/ext/libev/ev_kqueue.c +196 -0
- data/ext/libev/ev_poll.c +144 -0
- data/ext/libev/ev_port.c +165 -0
- data/ext/libev/ev_select.c +308 -0
- data/ext/libev/ev_vars.h +187 -0
- data/ext/libev/ev_win32.c +153 -0
- data/ext/libev/ev_wrap.h +178 -0
- data/ext/libev/event.c +401 -0
- data/ext/libev/event.h +158 -0
- data/ext/libev/install-sh +294 -0
- data/ext/libev/libev.m4 +38 -0
- data/ext/libev/ltmain.sh +6871 -0
- data/ext/libev/missing +336 -0
- data/ext/libev/mkinstalldirs +111 -0
- data/ext/nginx/Configuration.c +532 -182
- data/ext/nginx/Configuration.h +33 -10
- data/ext/nginx/ContentHandler.c +188 -53
- data/ext/nginx/ContentHandler.h +1 -1
- data/ext/nginx/{HelperServer.cpp → HelperAgent.cpp} +433 -299
- data/ext/nginx/HttpStatusExtractor.h +1 -1
- data/ext/nginx/ScgiRequestParser.h +68 -11
- data/ext/nginx/StaticContentHandler.c +4 -1
- data/ext/nginx/StaticContentHandler.h +1 -1
- data/ext/nginx/config +5 -5
- data/ext/nginx/ngx_http_passenger_module.c +315 -469
- data/ext/nginx/ngx_http_passenger_module.h +8 -17
- data/ext/oxt/backtrace.cpp +49 -41
- data/ext/oxt/backtrace.hpp +1 -1
- data/ext/oxt/detail/backtrace_disabled.hpp +1 -1
- data/ext/oxt/detail/backtrace_enabled.hpp +16 -15
- data/ext/oxt/detail/spin_lock_darwin.hpp +69 -0
- data/ext/oxt/detail/spin_lock_gcc_x86.hpp +3 -4
- data/ext/oxt/detail/spin_lock_portable.hpp +1 -1
- data/ext/oxt/detail/spin_lock_pthreads.hpp +1 -1
- data/ext/oxt/detail/tracable_exception_disabled.hpp +1 -1
- data/ext/oxt/detail/tracable_exception_enabled.hpp +1 -1
- data/ext/oxt/dynamic_thread_group.hpp +195 -0
- data/ext/oxt/macros.hpp +1 -1
- data/ext/oxt/spin_lock.hpp +4 -2
- data/ext/oxt/system_calls.cpp +129 -13
- data/ext/oxt/system_calls.hpp +16 -2
- data/ext/oxt/thread.cpp +1 -1
- data/ext/oxt/thread.hpp +49 -14
- data/ext/oxt/tracable_exception.cpp +5 -5
- data/ext/oxt/tracable_exception.hpp +1 -1
- data/ext/phusion_passenger/extconf.rb +7 -2
- data/ext/phusion_passenger/native_support.c +733 -33
- data/{bin → helper-scripts}/passenger-spawn-server +50 -12
- data/helper-scripts/prespawn +63 -0
- data/lib/phusion_passenger.rb +113 -0
- data/lib/phusion_passenger/abstract_installer.rb +50 -12
- data/lib/phusion_passenger/abstract_request_handler.rb +432 -171
- data/lib/phusion_passenger/abstract_server.rb +125 -122
- data/lib/phusion_passenger/abstract_server_collection.rb +51 -22
- data/lib/phusion_passenger/admin_tools.rb +1 -1
- data/lib/phusion_passenger/admin_tools/memory_stats.rb +299 -0
- data/lib/phusion_passenger/admin_tools/server_instance.rb +334 -0
- data/lib/phusion_passenger/analytics_logger.rb +342 -0
- data/lib/phusion_passenger/{application.rb → app_process.rb} +73 -24
- data/lib/phusion_passenger/classic_rails/application_spawner.rb +344 -0
- data/lib/phusion_passenger/{railz → classic_rails}/cgi_fixed.rb +2 -2
- data/lib/phusion_passenger/{railz → classic_rails}/framework_spawner.rb +75 -98
- data/lib/phusion_passenger/{railz → classic_rails}/request_handler.rb +8 -6
- data/lib/phusion_passenger/classic_rails_extensions/analytics_logging/ac_base_extension.rb +65 -0
- data/lib/phusion_passenger/classic_rails_extensions/analytics_logging/ac_benchmarking_extension.rb +48 -0
- data/lib/phusion_passenger/classic_rails_extensions/analytics_logging/ac_rescue_extension.rb +59 -0
- data/lib/phusion_passenger/classic_rails_extensions/analytics_logging/ar_abstract_adapter_extension.rb +54 -0
- data/lib/phusion_passenger/classic_rails_extensions/analytics_logging/as_cache_extension.rb +130 -0
- data/lib/phusion_passenger/classic_rails_extensions/analytics_logging/av_benchmark_helper_extension.rb +47 -0
- data/lib/phusion_passenger/classic_rails_extensions/init.rb +123 -0
- data/lib/phusion_passenger/console_text_template.rb +1 -1
- data/lib/phusion_passenger/constants.rb +9 -5
- data/lib/phusion_passenger/debug_logging.rb +104 -0
- data/lib/phusion_passenger/dependencies.rb +187 -4
- data/lib/phusion_passenger/exceptions.rb +4 -4
- data/lib/phusion_passenger/html_template.rb +6 -8
- data/lib/phusion_passenger/message_channel.rb +137 -21
- data/lib/phusion_passenger/message_client.rb +173 -0
- data/lib/phusion_passenger/native_support.rb +108 -0
- data/lib/phusion_passenger/packaging.rb +82 -13
- data/lib/phusion_passenger/platform_info.rb +84 -475
- data/lib/phusion_passenger/platform_info/apache.rb +329 -0
- data/lib/phusion_passenger/platform_info/binary_compatibility.rb +187 -0
- data/lib/phusion_passenger/platform_info/compiler.rb +154 -0
- data/lib/phusion_passenger/{events.rb → platform_info/curl.rb} +26 -23
- data/lib/phusion_passenger/platform_info/documentation_tools.rb +35 -0
- data/lib/phusion_passenger/platform_info/linux.rb +77 -0
- data/lib/phusion_passenger/platform_info/operating_system.rb +51 -0
- data/lib/phusion_passenger/platform_info/ruby.rb +198 -0
- data/lib/phusion_passenger/platform_info/zlib.rb +38 -0
- data/lib/phusion_passenger/plugin.rb +96 -0
- data/lib/phusion_passenger/public_api.rb +112 -0
- data/lib/phusion_passenger/rack/application_spawner.rb +146 -71
- data/lib/phusion_passenger/rack/request_handler.rb +36 -13
- data/lib/phusion_passenger/rails3_extensions/init.rb +204 -0
- data/lib/phusion_passenger/simple_benchmarking.rb +1 -1
- data/lib/phusion_passenger/spawn_manager.rb +137 -141
- data/lib/phusion_passenger/standalone/app_finder.rb +153 -0
- data/lib/phusion_passenger/standalone/command.rb +237 -0
- data/lib/phusion_passenger/standalone/config_file.rb +119 -0
- data/lib/phusion_passenger/standalone/help_command.rb +57 -0
- data/lib/phusion_passenger/standalone/main.rb +101 -0
- data/lib/phusion_passenger/standalone/package_runtime_command.rb +92 -0
- data/lib/phusion_passenger/standalone/runtime_installer.rb +466 -0
- data/lib/phusion_passenger/standalone/start_command.rb +510 -0
- data/lib/phusion_passenger/standalone/status_command.rb +62 -0
- data/lib/phusion_passenger/standalone/stop_command.rb +74 -0
- data/lib/phusion_passenger/standalone/utils.rb +42 -0
- data/lib/phusion_passenger/standalone/version_command.rb +42 -0
- data/lib/phusion_passenger/templates/framework_init_error.html.erb +1 -1
- data/lib/phusion_passenger/templates/standalone/cannot_write_to_dir.txt.erb +11 -0
- data/lib/phusion_passenger/templates/standalone/config.erb +69 -0
- data/lib/phusion_passenger/templates/standalone/possible_solutions_for_download_and_extraction_problems.txt.erb +17 -0
- data/lib/phusion_passenger/templates/standalone/run_installer_as_root.txt.erb +8 -0
- data/lib/phusion_passenger/templates/standalone/welcome.txt.erb +8 -0
- data/lib/phusion_passenger/templates/standalone_default_root/index.html +1 -0
- data/lib/phusion_passenger/templates/version_not_found.html.erb +2 -2
- data/lib/phusion_passenger/utils.rb +476 -125
- data/lib/phusion_passenger/utils/file_system_watcher.rb +186 -0
- data/lib/phusion_passenger/utils/hosts_file_parser.rb +130 -0
- data/lib/phusion_passenger/utils/tmpdir.rb +70 -0
- data/lib/phusion_passenger/utils/unseekable_socket.rb +196 -0
- data/lib/phusion_passenger/wsgi/application_spawner.rb +24 -20
- data/lib/phusion_passenger/wsgi/request_handler.py +1 -1
- data/misc/copy_boost_headers.rb +36 -9
- data/misc/find_owner_pipe_leaks.rb +1 -1
- data/misc/render_error_pages.rb +1 -1
- data/misc/union_station_gateway.crt +32 -0
- data/test/config.yml.example +24 -13
- data/test/cxx/ApplicationPool_PoolTest.cpp +33 -0
- data/test/cxx/ApplicationPool_PoolTestCases.cpp +1029 -0
- data/test/cxx/ApplicationPool_ServerTest.cpp +308 -0
- data/test/cxx/ApplicationPool_Server_PoolTest.cpp +80 -0
- data/test/{Base64Test.cpp → cxx/Base64Test.cpp} +4 -2
- data/test/{CachedFileStatTest.cpp → cxx/CachedFileStatTest.cpp} +3 -3
- data/test/{CxxTestMain.cpp → cxx/CxxTestMain.cpp} +6 -27
- data/test/cxx/EventedClientTest.cpp +386 -0
- data/test/{FileChangeCheckerTest.cpp → cxx/FileChangeCheckerTest.cpp} +3 -5
- data/test/cxx/FileDescriptorTest.cpp +69 -0
- data/test/{HttpStatusExtractorTest.cpp → cxx/HttpStatusExtractorTest.cpp} +1 -1
- data/test/cxx/IOUtilsTest.cpp +398 -0
- data/test/cxx/LoggingTest.cpp +914 -0
- data/test/cxx/MessageChannelTest.cpp +672 -0
- data/test/cxx/MessageReadersWritersTest.cpp +574 -0
- data/test/cxx/MessageServerTest.cpp +383 -0
- data/test/{PoolOptionsTest.cpp → cxx/PoolOptionsTest.cpp} +2 -3
- data/test/{ScgiRequestParserTest.cpp → cxx/ScgiRequestParserTest.cpp} +53 -1
- data/test/cxx/ServerInstanceDirTest.cpp +186 -0
- data/test/cxx/SpawnManagerTest.cpp +161 -0
- data/test/cxx/StaticStringTest.cpp +86 -0
- data/test/{SystemTimeTest.cpp → cxx/SystemTimeTest.cpp} +2 -2
- data/test/cxx/TestSupport.cpp +166 -0
- data/test/cxx/TestSupport.h +254 -0
- data/test/cxx/UtilsTest.cpp +521 -0
- data/test/cxx/VariantMapTest.cpp +179 -0
- data/test/integration_tests/apache2_tests.rb +198 -127
- data/test/integration_tests/cgi_environment_spec.rb +26 -0
- data/test/integration_tests/mycook_spec.rb +2 -28
- data/test/integration_tests/nginx_tests.rb +125 -16
- data/test/integration_tests/spec_helper.rb +19 -0
- data/test/oxt/backtrace_test.cpp +19 -59
- data/test/oxt/counter.hpp +55 -0
- data/test/oxt/dynamic_thread_group_test.cpp +131 -0
- data/test/oxt/oxt_test_main.cpp +2 -2
- data/test/oxt/spin_lock_test.cpp +59 -0
- data/test/oxt/syscall_interruption_test.cpp +1 -1
- data/test/ruby/abstract_request_handler_spec.rb +346 -25
- data/test/ruby/abstract_server_collection_spec.rb +4 -3
- data/test/ruby/abstract_server_spec.rb +37 -27
- data/test/ruby/admin_tools_spec.rb +362 -0
- data/test/ruby/analytics_logger_spec.rb +253 -0
- data/test/ruby/{application_spec.rb → app_process_spec.rb} +14 -14
- data/test/ruby/classic_rails/application_spawner_spec.rb +89 -0
- data/test/ruby/classic_rails/framework_spawner_spec.rb +92 -0
- data/test/ruby/debug_logging_spec.rb +141 -0
- data/test/ruby/message_channel_spec.rb +51 -25
- data/test/ruby/rack/application_spawner_spec.rb +99 -82
- data/test/ruby/shared/abstract_server_spec.rb +23 -0
- data/test/ruby/shared/rails/analytics_logging_extensions_spec.rb +375 -0
- data/test/ruby/shared/spawners/classic_rails/framework_spawner_spec.rb +38 -0
- data/test/ruby/shared/spawners/classic_rails/lack_of_rails_gem_version_spec.rb +19 -0
- data/test/ruby/shared/spawners/classic_rails/spawner_spec.rb +15 -0
- data/test/ruby/shared/spawners/non_preloading_spawner_spec.rb +27 -0
- data/test/ruby/shared/spawners/preloading_spawner_spec.rb +29 -0
- data/test/ruby/shared/spawners/reload_all_spec.rb +36 -0
- data/test/ruby/shared/spawners/reload_single_spec.rb +52 -0
- data/test/ruby/shared/spawners/spawn_server_spec.rb +28 -0
- data/test/ruby/shared/spawners/spawner_spec.rb +273 -0
- data/test/ruby/shared/utils/pseudo_io_spec.rb +60 -0
- data/test/ruby/spawn_manager_spec.rb +104 -175
- data/test/ruby/spec_helper.rb +104 -0
- data/test/ruby/utils/file_system_watcher_spec.rb +221 -0
- data/test/ruby/utils/hosts_file_parser.rb +258 -0
- data/test/ruby/utils/unseekable_socket_spec.rb +66 -0
- data/test/ruby/utils_spec.rb +410 -59
- data/test/ruby/wsgi/application_spawner_spec.rb +16 -20
- data/test/stub/apache2/httpd.conf.erb +11 -6
- data/test/stub/message_channel.rb +3 -1
- data/test/stub/message_channel_2.rb +3 -1
- data/test/stub/message_channel_3.rb +5 -3
- data/test/stub/nginx/nginx.conf.erb +3 -2
- data/test/stub/rails_apps/1.2/empty/Rakefile +10 -0
- data/test/stub/rails_apps/1.2/empty/app/controllers/application.rb +7 -0
- data/test/stub/rails_apps/{foobar → 1.2/empty}/app/helpers/application_helper.rb +0 -0
- data/test/stub/rails_apps/{mycook → 1.2/empty}/config/boot.rb +3 -3
- data/test/stub/rails_apps/1.2/empty/config/database.yml +31 -0
- data/test/stub/rails_apps/1.2/empty/config/environment.rb +66 -0
- data/test/stub/rails_apps/1.2/empty/config/environments/development.rb +21 -0
- data/test/stub/rails_apps/{foobar → 1.2/empty}/config/environments/production.rb +0 -0
- data/test/stub/rails_apps/1.2/empty/config/environments/staging.rb +18 -0
- data/test/stub/rails_apps/1.2/empty/config/environments/test.rb +19 -0
- data/test/stub/rails_apps/1.2/empty/config/routes.rb +23 -0
- data/test/stub/rails_apps/1.2/empty/doc/README_FOR_APP +2 -0
- data/test/stub/rails_apps/{mycook → 1.2/empty}/public/404.html +0 -0
- data/test/stub/rails_apps/1.2/empty/public/500.html +30 -0
- data/test/stub/rails_apps/1.2/empty/public/dispatch.cgi +10 -0
- data/test/stub/rails_apps/1.2/empty/public/dispatch.fcgi +24 -0
- data/test/stub/rails_apps/1.2/empty/public/dispatch.rb +10 -0
- data/test/stub/rails_apps/{mycook → 1.2/empty}/public/favicon.ico +0 -0
- data/test/stub/rails_apps/{mycook → 1.2/empty}/public/images/rails.png +0 -0
- data/test/stub/rails_apps/1.2/empty/public/robots.txt +1 -0
- data/test/stub/rails_apps/1.2/empty/script/about +3 -0
- data/test/stub/rails_apps/1.2/empty/script/breakpointer +3 -0
- data/test/stub/rails_apps/1.2/empty/script/console +3 -0
- data/test/stub/rails_apps/1.2/empty/script/destroy +3 -0
- data/test/stub/rails_apps/1.2/empty/script/generate +3 -0
- data/test/stub/rails_apps/1.2/empty/script/performance/benchmarker +3 -0
- data/test/stub/rails_apps/1.2/empty/script/performance/profiler +3 -0
- data/test/stub/rails_apps/1.2/empty/script/plugin +3 -0
- data/test/stub/rails_apps/1.2/empty/script/process/inspector +3 -0
- data/test/stub/rails_apps/1.2/empty/script/process/reaper +3 -0
- data/test/stub/rails_apps/1.2/empty/script/process/spawner +3 -0
- data/test/stub/rails_apps/1.2/empty/script/runner +3 -0
- data/test/stub/rails_apps/1.2/empty/script/server +3 -0
- data/test/stub/rails_apps/1.2/empty/test/test_helper.rb +28 -0
- data/test/stub/rails_apps/2.0/empty/Rakefile +10 -0
- data/test/stub/rails_apps/2.0/empty/app/controllers/application.rb +10 -0
- data/test/stub/rails_apps/{mycook → 2.0/empty}/app/helpers/application_helper.rb +0 -0
- data/test/stub/rails_apps/{foobar → 2.0/empty}/config/boot.rb +3 -3
- data/test/stub/rails_apps/2.0/empty/config/database.yml +31 -0
- data/test/stub/rails_apps/2.0/empty/config/environment.rb +59 -0
- data/test/stub/rails_apps/{mycook → 2.0/empty}/config/environments/development.rb +1 -1
- data/test/stub/rails_apps/2.0/empty/config/environments/production.rb +18 -0
- data/test/stub/rails_apps/2.0/empty/config/environments/staging.rb +18 -0
- data/test/stub/rails_apps/2.0/empty/config/environments/test.rb +22 -0
- data/test/stub/rails_apps/{foobar → 2.0/empty}/config/initializers/inflections.rb +0 -0
- data/test/stub/rails_apps/{foobar → 2.0/empty}/config/initializers/mime_types.rb +0 -0
- data/test/stub/rails_apps/{foobar → 2.0/empty}/config/routes.rb +0 -0
- data/test/stub/rails_apps/2.0/empty/doc/README_FOR_APP +2 -0
- data/test/stub/rails_apps/2.0/empty/public/404.html +30 -0
- data/test/stub/rails_apps/{mycook → 2.0/empty}/public/422.html +0 -0
- data/test/stub/rails_apps/{mycook → 2.0/empty}/public/500.html +0 -0
- data/test/stub/rails_apps/2.0/empty/public/dispatch.cgi +10 -0
- data/test/stub/rails_apps/2.0/empty/public/dispatch.fcgi +24 -0
- data/test/stub/rails_apps/2.0/empty/public/dispatch.rb +10 -0
- data/test/stub/rails_apps/2.0/empty/public/favicon.ico +0 -0
- data/test/stub/rails_apps/2.0/empty/public/images/rails.png +0 -0
- data/test/stub/rails_apps/{mycook → 2.0/empty}/public/robots.txt +0 -0
- data/test/stub/rails_apps/2.0/empty/script/about +3 -0
- data/test/stub/rails_apps/2.0/empty/script/console +3 -0
- data/test/stub/rails_apps/2.0/empty/script/destroy +3 -0
- data/test/stub/rails_apps/2.0/empty/script/generate +3 -0
- data/test/stub/rails_apps/2.0/empty/script/performance/benchmarker +3 -0
- data/test/stub/rails_apps/2.0/empty/script/performance/profiler +3 -0
- data/test/stub/rails_apps/2.0/empty/script/performance/request +3 -0
- data/test/stub/rails_apps/2.0/empty/script/plugin +3 -0
- data/test/stub/rails_apps/2.0/empty/script/process/inspector +3 -0
- data/test/stub/rails_apps/2.0/empty/script/process/reaper +3 -0
- data/test/stub/rails_apps/2.0/empty/script/process/spawner +3 -0
- data/test/stub/rails_apps/2.0/empty/script/runner +3 -0
- data/test/stub/rails_apps/2.0/empty/script/server +3 -0
- data/test/stub/rails_apps/2.0/empty/test/test_helper.rb +38 -0
- data/test/stub/rails_apps/2.2/empty/Rakefile +10 -0
- data/test/stub/rails_apps/2.2/empty/app/controllers/application.rb +15 -0
- data/test/stub/rails_apps/2.2/empty/app/helpers/application_helper.rb +3 -0
- data/test/stub/rails_apps/2.2/empty/config/boot.rb +109 -0
- data/test/stub/rails_apps/2.2/empty/config/database.yml +31 -0
- data/test/stub/rails_apps/2.2/empty/config/environment.rb +75 -0
- data/test/stub/rails_apps/{foobar → 2.2/empty}/config/environments/development.rb +0 -0
- data/test/stub/rails_apps/2.2/empty/config/environments/production.rb +24 -0
- data/test/stub/rails_apps/2.2/empty/config/environments/staging.rb +24 -0
- data/test/stub/rails_apps/2.2/empty/config/environments/test.rb +22 -0
- data/test/stub/rails_apps/2.2/empty/config/initializers/inflections.rb +10 -0
- data/test/stub/rails_apps/{mycook → 2.2/empty}/config/initializers/mime_types.rb +0 -0
- data/test/stub/rails_apps/2.2/empty/config/initializers/new_rails_defaults.rb +17 -0
- data/test/stub/rails_apps/2.2/empty/config/locales/en.yml +5 -0
- data/test/stub/rails_apps/2.2/empty/config/routes.rb +43 -0
- data/test/stub/rails_apps/2.2/empty/doc/README_FOR_APP +5 -0
- data/test/stub/rails_apps/2.2/empty/public/404.html +30 -0
- data/test/stub/rails_apps/2.2/empty/public/422.html +30 -0
- data/test/stub/rails_apps/2.2/empty/public/500.html +33 -0
- data/test/stub/rails_apps/2.2/empty/public/dispatch.cgi +10 -0
- data/test/stub/rails_apps/2.2/empty/public/dispatch.fcgi +24 -0
- data/test/stub/rails_apps/2.2/empty/public/dispatch.rb +10 -0
- data/test/stub/rails_apps/2.2/empty/public/favicon.ico +0 -0
- data/test/stub/rails_apps/2.2/empty/public/images/rails.png +0 -0
- data/test/stub/rails_apps/2.2/empty/public/robots.txt +5 -0
- data/test/stub/rails_apps/2.2/empty/script/about +4 -0
- data/test/stub/rails_apps/2.2/empty/script/console +3 -0
- data/test/stub/rails_apps/2.2/empty/script/dbconsole +3 -0
- data/test/stub/rails_apps/2.2/empty/script/destroy +3 -0
- data/test/stub/rails_apps/2.2/empty/script/generate +3 -0
- data/test/stub/rails_apps/2.2/empty/script/performance/benchmarker +3 -0
- data/test/stub/rails_apps/2.2/empty/script/performance/profiler +3 -0
- data/test/stub/rails_apps/2.2/empty/script/performance/request +3 -0
- data/test/stub/rails_apps/2.2/empty/script/plugin +3 -0
- data/test/stub/rails_apps/2.2/empty/script/process/inspector +3 -0
- data/test/stub/rails_apps/2.2/empty/script/process/reaper +3 -0
- data/test/stub/rails_apps/2.2/empty/script/process/spawner +3 -0
- data/test/stub/rails_apps/2.2/empty/script/runner +3 -0
- data/test/stub/rails_apps/2.2/empty/script/server +3 -0
- data/test/stub/rails_apps/2.2/empty/test/performance/browsing_test.rb +9 -0
- data/test/stub/rails_apps/2.2/empty/test/test_helper.rb +38 -0
- data/test/stub/rails_apps/2.3/empty/Rakefile +10 -0
- data/test/stub/rails_apps/2.3/empty/app/controllers/application_controller.rb +10 -0
- data/test/stub/rails_apps/2.3/empty/app/helpers/application_helper.rb +3 -0
- data/test/stub/rails_apps/2.3/empty/config/boot.rb +110 -0
- data/test/stub/rails_apps/2.3/empty/config/database.yml +31 -0
- data/test/stub/rails_apps/2.3/empty/config/environment.rb +41 -0
- data/test/stub/rails_apps/2.3/empty/config/environments/development.rb +17 -0
- data/test/stub/rails_apps/2.3/empty/config/environments/production.rb +28 -0
- data/test/stub/rails_apps/2.3/empty/config/environments/staging.rb +28 -0
- data/test/stub/rails_apps/2.3/empty/config/environments/test.rb +28 -0
- data/test/stub/rails_apps/2.3/empty/config/initializers/backtrace_silencers.rb +7 -0
- data/test/stub/rails_apps/2.3/empty/config/initializers/inflections.rb +10 -0
- data/test/stub/rails_apps/2.3/empty/config/initializers/mime_types.rb +5 -0
- data/test/stub/rails_apps/2.3/empty/config/initializers/new_rails_defaults.rb +21 -0
- data/test/stub/rails_apps/2.3/empty/config/initializers/session_store.rb +15 -0
- data/test/stub/rails_apps/2.3/empty/config/locales/en.yml +5 -0
- data/test/stub/rails_apps/2.3/empty/config/routes.rb +43 -0
- data/test/stub/rails_apps/2.3/empty/db/seeds.rb +7 -0
- data/test/stub/rails_apps/2.3/empty/doc/README_FOR_APP +2 -0
- data/test/stub/rails_apps/2.3/empty/public/404.html +30 -0
- data/test/stub/rails_apps/2.3/empty/public/422.html +30 -0
- data/test/stub/rails_apps/2.3/empty/public/500.html +30 -0
- data/test/stub/rails_apps/2.3/empty/public/favicon.ico +0 -0
- data/test/stub/rails_apps/2.3/empty/public/images/rails.png +0 -0
- data/test/stub/rails_apps/2.3/empty/public/robots.txt +5 -0
- data/test/stub/rails_apps/2.3/empty/script/about +4 -0
- data/test/stub/rails_apps/2.3/empty/script/console +3 -0
- data/test/stub/rails_apps/2.3/empty/script/dbconsole +3 -0
- data/test/stub/rails_apps/2.3/empty/script/destroy +3 -0
- data/test/stub/rails_apps/2.3/empty/script/generate +3 -0
- data/test/stub/rails_apps/2.3/empty/script/performance/benchmarker +3 -0
- data/test/stub/rails_apps/2.3/empty/script/performance/profiler +3 -0
- data/test/stub/rails_apps/2.3/empty/script/plugin +3 -0
- data/test/stub/rails_apps/2.3/empty/script/runner +3 -0
- data/test/stub/rails_apps/2.3/empty/script/server +3 -0
- data/test/stub/rails_apps/2.3/empty/test/performance/browsing_test.rb +9 -0
- data/test/stub/rails_apps/2.3/empty/test/test_helper.rb +38 -0
- data/test/stub/rails_apps/2.3/foobar/Rakefile +10 -0
- data/test/stub/rails_apps/{foobar/app/controllers/application.rb → 2.3/foobar/app/controllers/application_controller.rb} +0 -0
- data/test/stub/rails_apps/{foobar → 2.3/foobar}/app/controllers/bar_controller_1.rb +0 -0
- data/test/stub/rails_apps/{foobar → 2.3/foobar}/app/controllers/bar_controller_2.rb +0 -0
- data/test/stub/rails_apps/{foobar → 2.3/foobar}/app/controllers/foo_controller.rb +0 -0
- data/test/stub/rails_apps/2.3/foobar/app/helpers/application_helper.rb +3 -0
- data/test/stub/rails_apps/2.3/foobar/config/boot.rb +110 -0
- data/test/stub/rails_apps/{foobar → 2.3/foobar}/config/database.yml +0 -0
- data/test/stub/rails_apps/{foobar → 2.3/foobar}/config/environment.rb +1 -1
- data/test/stub/rails_apps/2.3/foobar/config/environments/development.rb +17 -0
- data/test/stub/rails_apps/2.3/foobar/config/environments/production.rb +18 -0
- data/test/stub/rails_apps/2.3/foobar/config/environments/staging.rb +18 -0
- data/test/stub/rails_apps/{mycook → 2.3/foobar}/config/initializers/inflections.rb +0 -0
- data/test/stub/rails_apps/2.3/foobar/config/initializers/mime_types.rb +5 -0
- data/test/stub/rails_apps/2.3/foobar/config/routes.rb +35 -0
- data/test/stub/rails_apps/2.3/foobar/script/about +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/console +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/dbconsole +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/destroy +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/generate +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/performance/benchmarker +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/performance/profiler +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/performance/request +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/plugin +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/process/inspector +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/process/reaper +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/process/spawner +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/runner +3 -0
- data/test/stub/rails_apps/2.3/foobar/script/server +3 -0
- data/test/stub/rails_apps/2.3/mycook/Rakefile +10 -0
- data/test/stub/rails_apps/{mycook/app/controllers/application.rb → 2.3/mycook/app/controllers/application_controller.rb} +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/app/controllers/recipes_controller.rb +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/app/controllers/uploads_controller.rb +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/app/controllers/welcome_controller.rb +0 -0
- data/test/stub/rails_apps/2.3/mycook/app/helpers/application_helper.rb +3 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/app/views/layouts/default.rhtml +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/app/views/recipes/create.rhtml +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/app/views/recipes/index.rhtml +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/app/views/recipes/new.rhtml +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/app/views/uploads/index.rhtml +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/app/views/uploads/new.html.erb +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/app/views/welcome/cached.rhtml +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/app/views/welcome/index.rhtml +0 -0
- data/test/stub/rails_apps/2.3/mycook/config/boot.rb +110 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/config/database.yml +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/config/environment.rb +1 -1
- data/test/stub/rails_apps/2.3/mycook/config/environments/development.rb +18 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/config/environments/production.rb +0 -0
- data/test/stub/rails_apps/2.3/mycook/config/initializers/inflections.rb +10 -0
- data/test/stub/rails_apps/2.3/mycook/config/initializers/mime_types.rb +5 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/config/routes.rb +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/log/useless.txt +0 -0
- data/test/stub/rails_apps/2.3/mycook/public/404.html +30 -0
- data/test/stub/rails_apps/2.3/mycook/public/422.html +30 -0
- data/test/stub/rails_apps/2.3/mycook/public/500.html +30 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/dispatch.cgi +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/dispatch.fcgi +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/dispatch.rb +1 -1
- data/test/stub/rails_apps/2.3/mycook/public/favicon.ico +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/images/angrywizard.gif +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/images/cookbook.gif +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/images/header.png +0 -0
- data/test/stub/rails_apps/2.3/mycook/public/images/rails.png +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/javascripts/application.js +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/javascripts/controls.js +73 -73
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/javascripts/dragdrop.js +166 -165
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/javascripts/effects.js +174 -166
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/javascripts/prototype.js +362 -267
- data/test/stub/rails_apps/2.3/mycook/public/robots.txt +5 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/uploads.html +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/public/welcome/cached.html +0 -0
- data/test/stub/rails_apps/2.3/mycook/script/about +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/console +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/dbconsole +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/destroy +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/generate +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/performance/benchmarker +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/performance/profiler +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/performance/request +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/plugin +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/process/inspector +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/process/reaper +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/process/spawner +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/runner +3 -0
- data/test/stub/rails_apps/2.3/mycook/script/server +3 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/sites/some.site/public/uploads.html +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/sites/some.site/public/welcome/cached.html +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/tmp/cache/useless.txt +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/tmp/pids/useless.txt +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/tmp/sessions/useless.txt +0 -0
- data/test/stub/rails_apps/{mycook → 2.3/mycook}/tmp/sockets/useless.txt +0 -0
- data/test/stub/rails_apps/3.0/empty/Gemfile +22 -0
- data/test/stub/rails_apps/3.0/empty/Rakefile +10 -0
- data/test/stub/rails_apps/3.0/empty/app/controllers/application_controller.rb +4 -0
- data/test/stub/rails_apps/3.0/empty/app/helpers/application_helper.rb +2 -0
- data/test/stub/rails_apps/3.0/empty/app/views/layouts/application.html.erb +14 -0
- data/test/stub/rails_apps/3.0/empty/config.ru +4 -0
- data/test/stub/rails_apps/3.0/empty/config/application.rb +48 -0
- data/test/stub/rails_apps/3.0/empty/config/boot.rb +13 -0
- data/test/stub/rails_apps/3.0/empty/config/database.yml +22 -0
- data/test/stub/rails_apps/3.0/empty/config/environment.rb +5 -0
- data/test/stub/rails_apps/3.0/empty/config/environments/development.rb +19 -0
- data/test/stub/rails_apps/3.0/empty/config/environments/production.rb +48 -0
- data/test/stub/rails_apps/3.0/empty/config/environments/test.rb +32 -0
- data/test/stub/rails_apps/3.0/empty/config/initializers/backtrace_silencers.rb +7 -0
- data/test/stub/rails_apps/3.0/empty/config/initializers/inflections.rb +10 -0
- data/test/stub/rails_apps/3.0/empty/config/initializers/mime_types.rb +5 -0
- data/test/stub/rails_apps/3.0/empty/config/initializers/passenger.rb +1 -0
- data/test/stub/rails_apps/3.0/empty/config/initializers/secret_token.rb +7 -0
- data/test/stub/rails_apps/3.0/empty/config/initializers/session_store.rb +8 -0
- data/test/stub/rails_apps/3.0/empty/config/locales/en.yml +5 -0
- data/test/stub/rails_apps/3.0/empty/config/routes.rb +58 -0
- data/test/stub/rails_apps/3.0/empty/db/seeds.rb +7 -0
- data/test/stub/rails_apps/3.0/empty/doc/README_FOR_APP +2 -0
- data/test/stub/rails_apps/3.0/empty/log/development.log +3 -0
- data/test/stub/rails_apps/3.0/empty/public/404.html +26 -0
- data/test/stub/rails_apps/3.0/empty/public/422.html +26 -0
- data/test/stub/rails_apps/3.0/empty/public/500.html +26 -0
- data/test/stub/rails_apps/3.0/empty/public/favicon.ico +0 -0
- data/test/stub/rails_apps/3.0/empty/public/index.html +279 -0
- data/test/stub/rails_apps/3.0/empty/public/robots.txt +5 -0
- data/test/stub/rails_apps/3.0/empty/script/rails +9 -0
- data/test/stub/rails_apps/3.0/empty/test/performance/browsing_test.rb +9 -0
- data/test/stub/rails_apps/3.0/empty/test/test_helper.rb +13 -0
- data/test/stub/spawn_server.rb +4 -2
- data/test/stub/vendor_rails/minimal/actionpack/lib/action_controller.rb +3 -0
- data/test/stub/vendor_rails/minimal/railties/lib/initializer.rb +7 -2
- data/test/support/apache2_controller.rb +10 -2
- data/test/support/nginx_controller.rb +3 -2
- data/test/support/test_helper.rb +282 -46
- data/test/{support → tut}/tut.h +6 -0
- data/test/{support → tut}/tut_reporter.h +0 -0
- metadata +824 -266
- data/benchmark/ApplicationPool.cpp +0 -52
- data/benchmark/accept_vs_socketpair_vs_named_pipes.rb +0 -126
- data/benchmark/dispatcher.rb +0 -42
- data/benchmark/overhead_of_password_checking.rb +0 -81
- data/benchmark/socket_connections_vs_persistent_pipe.rb +0 -99
- data/benchmark/unix_sockets_vs_pipes.rb +0 -83
- data/ext/boost/LICENSE.TXT +0 -23
- data/ext/boost/VERSION.TXT +0 -1
- data/ext/boost/detail/sp_counted_base.hpp +0 -81
- data/ext/boost/src/pthread/exceptions.cpp +0 -146
- data/ext/boost/src/win32/exceptions.cpp +0 -124
- data/ext/boost/src/win32/thread.cpp +0 -629
- data/ext/boost/src/win32/timeconv.inl +0 -130
- data/ext/boost/src/win32/tss_dll.cpp +0 -72
- data/ext/boost/src/win32/tss_pe.cpp +0 -269
- data/ext/boost/thread/pthread/thread.hpp +0 -339
- data/ext/boost/thread/pthread/tss.hpp +0 -103
- data/ext/common/Application.h +0 -511
- data/ext/common/ApplicationPoolServer.h +0 -794
- data/ext/common/ApplicationPoolServerExecutable.cpp +0 -743
- data/ext/common/ApplicationPoolStatusReporter.h +0 -336
- data/ext/common/DummySpawnManager.h +0 -108
- data/ext/common/StandardApplicationPool.h +0 -821
- data/ext/common/SystemTime.h +0 -88
- data/lib/phusion_passenger/admin_tools/control_process.rb +0 -150
- data/lib/phusion_passenger/railz/application_spawner.rb +0 -463
- data/lib/phusion_passenger/templates/invalid_app_root.html.erb +0 -9
- data/test/ApplicationPoolServerTest.cpp +0 -114
- data/test/ApplicationPoolServer_ApplicationPoolTest.cpp +0 -33
- data/test/ApplicationPoolTest.cpp +0 -599
- data/test/MessageChannelTest.cpp +0 -320
- data/test/SpawnManagerTest.cpp +0 -64
- data/test/StandardApplicationPoolTest.cpp +0 -27
- data/test/StaticStringTest.cpp +0 -51
- data/test/UtilsTest.cpp +0 -257
- data/test/ruby/rails/application_spawner_spec.rb +0 -159
- data/test/ruby/rails/framework_spawner_spec.rb +0 -133
- data/test/ruby/rails/minimal_spawner_spec.rb +0 -93
- data/test/ruby/rails/spawner_error_handling_spec.rb +0 -107
- data/test/ruby/rails/spawner_privilege_lowering_spec.rb +0 -97
- data/test/ruby/spawn_server_spec.rb +0 -26
- data/test/stub/MessageServer.dSYM/Contents/Info.plist +0 -25
- data/test/stub/MessageServer.dSYM/Contents/Resources/DWARF/MessageServer +0 -0
- data/test/support/Support.cpp +0 -84
- data/test/support/Support.h +0 -118
- data/test/support/config.rb +0 -38
- data/test/support/run_rspec_tests.rb +0 -10
@@ -1,10 +1,13 @@
|
|
1
|
-
<!DOCTYPE
|
2
|
-
<html
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
2
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
3
5
|
<title>Passenger: Member List</title>
|
4
|
-
<link href="tabs.css" rel="stylesheet" type="text/css"
|
5
|
-
<link href="doxygen.css" rel="stylesheet" type="text/css"
|
6
|
-
</head
|
7
|
-
|
6
|
+
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
7
|
+
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
<!-- Generated by Doxygen 1.6.2 -->
|
8
11
|
<div class="navigation" id="top">
|
9
12
|
<div class="tabs">
|
10
13
|
<ul>
|
@@ -24,10 +27,10 @@
|
|
24
27
|
</div>
|
25
28
|
</div>
|
26
29
|
<div class="contents">
|
27
|
-
<h1>Passenger::SecurityException Member List</h1>This is the complete list of members for <a class="el" href="classPassenger_1_1SecurityException.html">Passenger::SecurityException</a>, including all inherited members.<
|
30
|
+
<h1>Passenger::SecurityException Member List</h1>This is the complete list of members for <a class="el" href="classPassenger_1_1SecurityException.html">Passenger::SecurityException</a>, including all inherited members.<table>
|
28
31
|
</table></div>
|
29
|
-
<hr size="1"
|
32
|
+
<hr size="1"/><address style="text-align: right;"><small>Generated by
|
30
33
|
<a href="http://www.doxygen.org/index.html">
|
31
|
-
<img src="doxygen.png" alt="doxygen"
|
34
|
+
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2 </small></address>
|
32
35
|
</body>
|
33
36
|
</html>
|
@@ -1,10 +1,13 @@
|
|
1
|
-
<!DOCTYPE
|
2
|
-
<html
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
2
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
3
5
|
<title>Passenger: Passenger::SecurityException Class Reference</title>
|
4
|
-
<link href="tabs.css" rel="stylesheet" type="text/css"
|
5
|
-
<link href="doxygen.css" rel="stylesheet" type="text/css"
|
6
|
-
</head
|
7
|
-
|
6
|
+
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
7
|
+
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
<!-- Generated by Doxygen 1.6.2 -->
|
8
11
|
<div class="navigation" id="top">
|
9
12
|
<div class="tabs">
|
10
13
|
<ul>
|
@@ -26,27 +29,28 @@
|
|
26
29
|
</div>
|
27
30
|
</div>
|
28
31
|
<div class="contents">
|
29
|
-
<h1>Passenger::SecurityException Class Reference<br
|
32
|
+
<h1>Passenger::SecurityException Class Reference<br/>
|
30
33
|
<small>
|
31
34
|
[<a class="el" href="group__Exceptions.html">Exceptions</a>]</small>
|
32
|
-
</h1><!-- doxytag: class="Passenger::SecurityException" -->
|
33
|
-
<
|
34
|
-
<p>
|
35
|
-
<code>#include <<a class="el" href="Exceptions_8h-source.html">Exceptions.h</a>></code>
|
36
|
-
<p>
|
37
|
-
Inherited by Passenger::NonExistentGroupException, and Passenger::NonExistentUserException.
|
38
|
-
<p>
|
35
|
+
</h1><!-- doxytag: class="Passenger::SecurityException" -->
|
36
|
+
<p>Represents some kind of security error.
|
37
|
+
<a href="#_details">More...</a></p>
|
39
38
|
|
40
|
-
<p>
|
41
|
-
|
42
|
-
<
|
39
|
+
<p><code>#include <<a class="el" href="Exceptions_8h_source.html">Exceptions.h</a>></code></p>
|
40
|
+
|
41
|
+
<p>Inherited by Passenger::NonExistentGroupException, and Passenger::NonExistentUserException.</p>
|
42
|
+
|
43
|
+
<p><a href="classPassenger_1_1SecurityException-members.html">List of all members.</a></p>
|
44
|
+
<table border="0" cellpadding="0" cellspacing="0">
|
43
45
|
</table>
|
44
|
-
<hr
|
45
|
-
Represents some kind of security error.
|
46
|
-
<
|
46
|
+
<hr/><a name="_details"></a><h2>Detailed Description</h2>
|
47
|
+
<p>Represents some kind of security error. </p>
|
48
|
+
<hr/>The documentation for this class was generated from the following file:<ul>
|
49
|
+
<li><a class="el" href="Exceptions_8h_source.html">Exceptions.h</a></li>
|
50
|
+
</ul>
|
47
51
|
</div>
|
48
|
-
<hr size="1"
|
52
|
+
<hr size="1"/><address style="text-align: right;"><small>Generated by
|
49
53
|
<a href="http://www.doxygen.org/index.html">
|
50
|
-
<img src="doxygen.png" alt="doxygen"
|
54
|
+
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2 </small></address>
|
51
55
|
</body>
|
52
56
|
</html>
|
@@ -1,10 +1,13 @@
|
|
1
|
-
<!DOCTYPE
|
2
|
-
<html
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
2
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
3
5
|
<title>Passenger: Member List</title>
|
4
|
-
<link href="tabs.css" rel="stylesheet" type="text/css"
|
5
|
-
<link href="doxygen.css" rel="stylesheet" type="text/css"
|
6
|
-
</head
|
7
|
-
|
6
|
+
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
7
|
+
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
<!-- Generated by Doxygen 1.6.2 -->
|
8
11
|
<div class="navigation" id="top">
|
9
12
|
<div class="tabs">
|
10
13
|
<ul>
|
@@ -24,27 +27,27 @@
|
|
24
27
|
</div>
|
25
28
|
</div>
|
26
29
|
<div class="contents">
|
27
|
-
<h1>Passenger::Session Member List</h1>This is the complete list of members for <a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a>, including all inherited members.<
|
28
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
29
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
30
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
31
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
32
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
33
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
34
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
35
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
36
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
37
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
38
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
39
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
40
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
41
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
42
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
43
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
44
|
-
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#
|
30
|
+
<h1>Passenger::Session Member List</h1>This is the complete list of members for <a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a>, including all inherited members.<table>
|
31
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#a7ab85388f15388cb8e65873d1ad310a5">closeStream</a>()=0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
32
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#a75344fdfb3c693323877e32884efaa31">discardStream</a>()=0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
33
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#aeaf4f7097f7b3430dc88e8070cad5899">getConnectPassword</a>() const </td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [inline]</code></td></tr>
|
34
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#a1b58af5493a61bfe4efbd725dcef61a3">getPid</a>() const =0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
35
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#a7b8a632ebde11544a8ab98fde89954bb">getSocketName</a>() const =0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
36
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#ab8f084ab143d44f1a9ef8e8ccc841485">getSocketType</a>() const =0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
37
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#a949c7a46f4bb0c628730ded2041d2489">getStream</a>() const =0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
38
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#abbcfa3eb48d38dead20c0d32cab4850b">initiate</a>()=0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
39
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92">initiated</a>() const =0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
40
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#a2203d81e25fe5066aed351608deecf7b">sendBodyBlock</a>(const char *block, unsigned int size)</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [inline, virtual]</code></td></tr>
|
41
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#a8f8a39f78dd2672b00f1ff01e4d6d671">sendHeaders</a>(const char *headers, unsigned int size)</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [inline, virtual]</code></td></tr>
|
42
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#a8253d81e64adc0dc72b1dc65a5117aba">sendHeaders</a>(const StaticString &headers)</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [inline, virtual]</code></td></tr>
|
43
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#a5accbd8f7cce66d0ef6695481fdaa39c">setReaderTimeout</a>(unsigned int msec)=0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
44
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#a21dd749c0c8d22f65c6a914ec2f97c94">setWriterTimeout</a>(unsigned int msec)=0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
45
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#ac579d233ddc82542c336b2af1f40c4dd">shutdownReader</a>()=0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
46
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#a8263c568a8ac4567b33728d820cbd920">shutdownWriter</a>()=0</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [pure virtual]</code></td></tr>
|
47
|
+
<tr class="memlist"><td><a class="el" href="classPassenger_1_1Session.html#ac982015e84f64dbec70daef8fdbd31d9">~Session</a>()</td><td><a class="el" href="classPassenger_1_1Session.html">Passenger::Session</a></td><td><code> [inline, virtual]</code></td></tr>
|
45
48
|
</table></div>
|
46
|
-
<hr size="1"
|
49
|
+
<hr size="1"/><address style="text-align: right;"><small>Generated by
|
47
50
|
<a href="http://www.doxygen.org/index.html">
|
48
|
-
<img src="doxygen.png" alt="doxygen"
|
51
|
+
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2 </small></address>
|
49
52
|
</body>
|
50
53
|
</html>
|
@@ -1,10 +1,13 @@
|
|
1
|
-
<!DOCTYPE
|
2
|
-
<html
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
2
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
3
5
|
<title>Passenger: Passenger::Session Class Reference</title>
|
4
|
-
<link href="tabs.css" rel="stylesheet" type="text/css"
|
5
|
-
<link href="doxygen.css" rel="stylesheet" type="text/css"
|
6
|
-
</head
|
7
|
-
|
6
|
+
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
7
|
+
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
<!-- Generated by Doxygen 1.6.2 -->
|
8
11
|
<div class="navigation" id="top">
|
9
12
|
<div class="tabs">
|
10
13
|
<ul>
|
@@ -26,96 +29,82 @@
|
|
26
29
|
</div>
|
27
30
|
</div>
|
28
31
|
<div class="contents">
|
29
|
-
<h1>Passenger::Session Class Reference</h1><!-- doxytag: class="Passenger::Session" -->
|
30
|
-
<a
|
31
|
-
<p>
|
32
|
-
|
33
|
-
<p>
|
32
|
+
<h1>Passenger::Session Class Reference</h1><!-- doxytag: class="Passenger::Session" -->
|
33
|
+
<p>Represents a single request/response pair of an application process.
|
34
|
+
<a href="#_details">More...</a></p>
|
35
|
+
|
36
|
+
<p><code>#include <<a class="el" href="Session_8h_source.html">Session.h</a>></code></p>
|
34
37
|
<div class="dynheader">
|
35
38
|
Inheritance diagram for Passenger::Session:</div>
|
36
39
|
<div class="dynsection">
|
37
|
-
<
|
38
|
-
<map name="
|
40
|
+
<div class="center"><img src="classPassenger_1_1Session__inherit__graph.png" border="0" usemap="#Passenger_1_1Session_inherit__map" alt="Inheritance graph"/></div>
|
41
|
+
<map name="Passenger_1_1Session_inherit__map" id="Passenger_1_1Session_inherit__map">
|
39
42
|
<area shape="rect" href="classPassenger_1_1StandardSession.html" title="A "standard" implementation of Session." alt="" coords="5,80,203,107"></map>
|
40
|
-
<center><
|
41
|
-
|
42
|
-
<p>
|
43
|
-
<
|
44
|
-
<tr><td></td></tr>
|
45
|
-
<tr><td
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
50
|
-
<tr><td class="memItemLeft"
|
51
|
-
|
52
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Initiate the session by connecting to the associated process.
|
53
|
-
<tr><td class="memItemLeft"
|
54
|
-
|
55
|
-
|
56
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns
|
57
|
-
<tr><td class="memItemLeft"
|
58
|
-
|
59
|
-
<tr><td class="
|
60
|
-
<tr><td class="
|
61
|
-
|
62
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
63
|
-
<tr><td class="memItemLeft"
|
64
|
-
|
65
|
-
<tr><td class="
|
66
|
-
<tr><td class="
|
67
|
-
|
68
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
69
|
-
<tr><td class="memItemLeft"
|
70
|
-
|
71
|
-
<tr><td class="
|
72
|
-
<tr><td class="
|
73
|
-
|
74
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
75
|
-
<tr><td class="memItemLeft"
|
76
|
-
|
77
|
-
<tr><td class="
|
78
|
-
|
79
|
-
|
80
|
-
<tr><td class="
|
81
|
-
<tr><td class="
|
82
|
-
|
83
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Indicate that we don't want to read data anymore from the I/O channel. <a href="#c579d233ddc82542c336b2af1f40c4dd"></a><br></td></tr>
|
84
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#8263c568a8ac4567b33728d820cbd920">shutdownWriter</a> ()=0</td></tr>
|
85
|
-
|
86
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Indicate that we don't want to write data anymore to the I/O channel. <a href="#8263c568a8ac4567b33728d820cbd920"></a><br></td></tr>
|
87
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#7ab85388f15388cb8e65873d1ad310a5">closeStream</a> ()=0</td></tr>
|
88
|
-
|
89
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Close the I/O stream. <a href="#7ab85388f15388cb8e65873d1ad310a5"></a><br></td></tr>
|
90
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#75344fdfb3c693323877e32884efaa31">discardStream</a> ()=0</td></tr>
|
91
|
-
|
92
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Discard the I/O channel's file descriptor, so that the destructor won't automatically close it. <a href="#75344fdfb3c693323877e32884efaa31"></a><br></td></tr>
|
93
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1b58af5493a61bfe4efbd725dcef61a3"></a><!-- doxytag: member="Passenger::Session::getPid" ref="1b58af5493a61bfe4efbd725dcef61a3" args="() const =0" -->
|
94
|
-
virtual pid_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#1b58af5493a61bfe4efbd725dcef61a3">getPid</a> () const =0</td></tr>
|
95
|
-
|
96
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get the process ID of the application process that this session belongs to. <br></td></tr>
|
97
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">const string </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#eaf4f7097f7b3430dc88e8070cad5899">getConnectPassword</a> () const </td></tr>
|
98
|
-
|
99
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns this session's process's connect password. <a href="#eaf4f7097f7b3430dc88e8070cad5899"></a><br></td></tr>
|
43
|
+
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
|
44
|
+
|
45
|
+
<p><a href="classPassenger_1_1Session-members.html">List of all members.</a></p>
|
46
|
+
<table border="0" cellpadding="0" cellspacing="0">
|
47
|
+
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
|
48
|
+
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac982015e84f64dbec70daef8fdbd31d9"></a><!-- doxytag: member="Passenger::Session::~Session" ref="ac982015e84f64dbec70daef8fdbd31d9" args="()" -->
|
49
|
+
virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#ac982015e84f64dbec70daef8fdbd31d9">~Session</a> ()</td></tr>
|
50
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Concrete classes might throw arbitrary exceptions. <br/></td></tr>
|
51
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#abbcfa3eb48d38dead20c0d32cab4850b">initiate</a> ()=0</td></tr>
|
52
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Initiate the session by connecting to the associated process. <a href="#abbcfa3eb48d38dead20c0d32cab4850b"></a><br/></td></tr>
|
53
|
+
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abf1b6ba182a0fc66c8e617f74afafb92"></a><!-- doxytag: member="Passenger::Session::initiated" ref="abf1b6ba182a0fc66c8e617f74afafb92" args="() const =0" -->
|
54
|
+
virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92">initiated</a> () const =0</td></tr>
|
55
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns whether this session has been initiated (that is, whether <a class="el" href="classPassenger_1_1Session.html#abbcfa3eb48d38dead20c0d32cab4850b" title="Initiate the session by connecting to the associated process.">initiate()</a> had been called in the past). <br/></td></tr>
|
56
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual string </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#ab8f084ab143d44f1a9ef8e8ccc841485">getSocketType</a> () const =0</td></tr>
|
57
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the type of the socket that this session is served from, e.g. <a href="#ab8f084ab143d44f1a9ef8e8ccc841485"></a><br/></td></tr>
|
58
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual string </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#a7b8a632ebde11544a8ab98fde89954bb">getSocketName</a> () const =0</td></tr>
|
59
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the address of the socket that this session is served from. <a href="#a7b8a632ebde11544a8ab98fde89954bb"></a><br/></td></tr>
|
60
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#a8f8a39f78dd2672b00f1ff01e4d6d671">sendHeaders</a> (const char *headers, unsigned int size)</td></tr>
|
61
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Send HTTP request headers to the application. <a href="#a8f8a39f78dd2672b00f1ff01e4d6d671"></a><br/></td></tr>
|
62
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#a8253d81e64adc0dc72b1dc65a5117aba">sendHeaders</a> (const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &headers)</td></tr>
|
63
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenience shortcut for <a class="el" href="classPassenger_1_1Session.html#a8f8a39f78dd2672b00f1ff01e4d6d671" title="Send HTTP request headers to the application.">sendHeaders(const char *, unsigned int)</a>. <a href="#a8253d81e64adc0dc72b1dc65a5117aba"></a><br/></td></tr>
|
64
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#a2203d81e25fe5066aed351608deecf7b">sendBodyBlock</a> (const char *block, unsigned int size)</td></tr>
|
65
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Send a chunk of HTTP request body data to the application. <a href="#a2203d81e25fe5066aed351608deecf7b"></a><br/></td></tr>
|
66
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#a949c7a46f4bb0c628730ded2041d2489">getStream</a> () const =0</td></tr>
|
67
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns this session's channel's file descriptor. <a href="#a949c7a46f4bb0c628730ded2041d2489"></a><br/></td></tr>
|
68
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#a5accbd8f7cce66d0ef6695481fdaa39c">setReaderTimeout</a> (unsigned int msec)=0</td></tr>
|
69
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set the timeout value for reading data from the I/O channel. <a href="#a5accbd8f7cce66d0ef6695481fdaa39c"></a><br/></td></tr>
|
70
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#a21dd749c0c8d22f65c6a914ec2f97c94">setWriterTimeout</a> (unsigned int msec)=0</td></tr>
|
71
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set the timeout value for writing data from the I/O channel. <a href="#a21dd749c0c8d22f65c6a914ec2f97c94"></a><br/></td></tr>
|
72
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#ac579d233ddc82542c336b2af1f40c4dd">shutdownReader</a> ()=0</td></tr>
|
73
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Indicate that we don't want to read data anymore from the I/O channel. <a href="#ac579d233ddc82542c336b2af1f40c4dd"></a><br/></td></tr>
|
74
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#a8263c568a8ac4567b33728d820cbd920">shutdownWriter</a> ()=0</td></tr>
|
75
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Indicate that we don't want to write data anymore to the I/O channel. <a href="#a8263c568a8ac4567b33728d820cbd920"></a><br/></td></tr>
|
76
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#a7ab85388f15388cb8e65873d1ad310a5">closeStream</a> ()=0</td></tr>
|
77
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Close the I/O stream. <a href="#a7ab85388f15388cb8e65873d1ad310a5"></a><br/></td></tr>
|
78
|
+
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#a75344fdfb3c693323877e32884efaa31">discardStream</a> ()=0</td></tr>
|
79
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Discard the I/O channel's file descriptor, so that the destructor won't automatically close it. <a href="#a75344fdfb3c693323877e32884efaa31"></a><br/></td></tr>
|
80
|
+
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b58af5493a61bfe4efbd725dcef61a3"></a><!-- doxytag: member="Passenger::Session::getPid" ref="a1b58af5493a61bfe4efbd725dcef61a3" args="() const =0" -->
|
81
|
+
virtual pid_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#a1b58af5493a61bfe4efbd725dcef61a3">getPid</a> () const =0</td></tr>
|
82
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get the process ID of the application process that this session belongs to. <br/></td></tr>
|
83
|
+
<tr><td class="memItemLeft" align="right" valign="top">const string </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html#aeaf4f7097f7b3430dc88e8070cad5899">getConnectPassword</a> () const </td></tr>
|
84
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns this session's process's connect password. <a href="#aeaf4f7097f7b3430dc88e8070cad5899"></a><br/></td></tr>
|
100
85
|
</table>
|
101
|
-
<hr
|
102
|
-
Represents a single request/response pair of an application process.
|
103
|
-
<p>
|
104
|
-
<
|
105
|
-
<
|
106
|
-
<li>
|
107
|
-
<
|
108
|
-
|
109
|
-
<
|
110
|
-
|
111
|
-
<a class="
|
86
|
+
<hr/><a name="_details"></a><h2>Detailed Description</h2>
|
87
|
+
<p>Represents a single request/response pair of an application process. </p>
|
88
|
+
<p><a class="el" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process.">Session</a> is used to forward a single HTTP request to an application process, and to read back the HTTP response. A <a class="el" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process.">Session</a> object is to be used in the following manner:</p>
|
89
|
+
<ol type="1">
|
90
|
+
<li>Serialize the HTTP request headers into a format as expected by <a class="el" href="classPassenger_1_1Session.html#a8f8a39f78dd2672b00f1ff01e4d6d671" title="Send HTTP request headers to the application.">sendHeaders()</a>, then send that string by calling <a class="el" href="classPassenger_1_1Session.html#a8f8a39f78dd2672b00f1ff01e4d6d671" title="Send HTTP request headers to the application.">sendHeaders()</a>.</li>
|
91
|
+
<li>In case of a POST of PUT request, send the HTTP request body by calling <a class="el" href="classPassenger_1_1Session.html#a2203d81e25fe5066aed351608deecf7b" title="Send a chunk of HTTP request body data to the application.">sendBodyBlock()</a>, possibly multiple times.</li>
|
92
|
+
<li>Shutdown the writer end of the session channel (<a class="el" href="classPassenger_1_1Session.html#a8263c568a8ac4567b33728d820cbd920" title="Indicate that we don't want to write data anymore to the I/O channel.">shutdownWriter()</a>) since you're now done sending data.</li>
|
93
|
+
<li>The HTTP response can now be read through the session channel (<a class="el" href="classPassenger_1_1Session.html#a949c7a46f4bb0c628730ded2041d2489" title="Returns this session's channel's file descriptor.">getStream()</a>).</li>
|
94
|
+
<li>When the HTTP response has been read, the session must be closed. This is done by destroying the <a class="el" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process.">Session</a> object.</li>
|
95
|
+
</ol>
|
96
|
+
<p>A usage example is shown in <a class="el" href="classPassenger_1_1Process.html#a4df3ce126ba64c864c1759d916f25635" title="Request a new session from this application process by connecting to its main server...">Process::newSession()</a>.</p>
|
97
|
+
<p><a class="el" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process.">Session</a> is an abstract base class. Concrete implementations can be found in <a class="el" href="classPassenger_1_1StandardSession.html" title="A "standard" implementation of Session.">StandardSession</a> and ApplicationPool::Client::RemoteSession.</p>
|
98
|
+
<p><a class="el" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process.">Session</a> is not guaranteed to be thread-safe. </p>
|
99
|
+
<hr/><h2>Member Function Documentation</h2>
|
100
|
+
<a class="anchor" id="a7ab85388f15388cb8e65873d1ad310a5"></a><!-- doxytag: member="Passenger::Session::closeStream" ref="a7ab85388f15388cb8e65873d1ad310a5" args="()=0" -->
|
112
101
|
<div class="memitem">
|
113
102
|
<div class="memproto">
|
114
103
|
<table class="memname">
|
115
104
|
<tr>
|
116
|
-
<td class="memname">virtual void Passenger::Session::closeStream
|
105
|
+
<td class="memname">virtual void Passenger::Session::closeStream </td>
|
117
106
|
<td>(</td>
|
118
|
-
<td class="paramname"
|
107
|
+
<td class="paramname"></td>
|
119
108
|
<td> ) </td>
|
120
109
|
<td><code> [pure virtual]</code></td>
|
121
110
|
</tr>
|
@@ -123,30 +112,29 @@ A usage example is shown in <a class="el" href="classPassenger_1_1Process.html#4
|
|
123
112
|
</div>
|
124
113
|
<div class="memdoc">
|
125
114
|
|
126
|
-
<p>
|
127
|
-
|
128
|
-
<p>
|
129
|
-
<dl compact><dt><b>Exceptions:</b></dt><dd>
|
115
|
+
<p>Close the I/O stream. </p>
|
116
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
130
117
|
<table border="0" cellspacing="2" cellpadding="0">
|
131
118
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1SystemException.html" title="Represents an error returned by a system call or a standard library call.">SystemException</a></em> </td><td>Something went wrong. </td></tr>
|
132
119
|
<tr><td valign="top"></td><td valign="top"><em>boost::thread_interrupted</em> </td><td></td></tr>
|
133
120
|
</table>
|
121
|
+
</dd>
|
134
122
|
</dl>
|
135
|
-
<dl class="pre"
|
136
|
-
<dl class="post"
|
123
|
+
<dl class="pre"><dt><b>Precondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
124
|
+
<dl class="post"><dt><b>Postcondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#a949c7a46f4bb0c628730ded2041d2489" title="Returns this session's channel's file descriptor.">getStream()</a> == -1 </dd></dl>
|
137
125
|
|
138
|
-
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#
|
126
|
+
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#af5cdfa78db1fca6303ccd43ac5126b6b">Passenger::StandardSession</a>.</p>
|
139
127
|
|
140
128
|
</div>
|
141
|
-
</div
|
142
|
-
<a class="anchor"
|
129
|
+
</div>
|
130
|
+
<a class="anchor" id="a75344fdfb3c693323877e32884efaa31"></a><!-- doxytag: member="Passenger::Session::discardStream" ref="a75344fdfb3c693323877e32884efaa31" args="()=0" -->
|
143
131
|
<div class="memitem">
|
144
132
|
<div class="memproto">
|
145
133
|
<table class="memname">
|
146
134
|
<tr>
|
147
|
-
<td class="memname">virtual void Passenger::Session::discardStream
|
135
|
+
<td class="memname">virtual void Passenger::Session::discardStream </td>
|
148
136
|
<td>(</td>
|
149
|
-
<td class="paramname"
|
137
|
+
<td class="paramname"></td>
|
150
138
|
<td> ) </td>
|
151
139
|
<td><code> [pure virtual]</code></td>
|
152
140
|
</tr>
|
@@ -154,24 +142,22 @@ Close the I/O stream.
|
|
154
142
|
</div>
|
155
143
|
<div class="memdoc">
|
156
144
|
|
157
|
-
<p>
|
158
|
-
|
159
|
-
<
|
160
|
-
<dl class="pre" compact><dt><b>Precondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#bf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
161
|
-
<dl class="post" compact><dt><b>Postcondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#949c7a46f4bb0c628730ded2041d2489" title="Returns this session's channel's file descriptor.">getStream()</a> == -1 </dd></dl>
|
145
|
+
<p>Discard the I/O channel's file descriptor, so that the destructor won't automatically close it. </p>
|
146
|
+
<dl class="pre"><dt><b>Precondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
147
|
+
<dl class="post"><dt><b>Postcondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#a949c7a46f4bb0c628730ded2041d2489" title="Returns this session's channel's file descriptor.">getStream()</a> == -1 </dd></dl>
|
162
148
|
|
163
|
-
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#
|
149
|
+
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#a3666d401df82696fe945fcbb66804785">Passenger::StandardSession</a>.</p>
|
164
150
|
|
165
151
|
</div>
|
166
|
-
</div
|
167
|
-
<a class="anchor"
|
152
|
+
</div>
|
153
|
+
<a class="anchor" id="aeaf4f7097f7b3430dc88e8070cad5899"></a><!-- doxytag: member="Passenger::Session::getConnectPassword" ref="aeaf4f7097f7b3430dc88e8070cad5899" args="() const " -->
|
168
154
|
<div class="memitem">
|
169
155
|
<div class="memproto">
|
170
156
|
<table class="memname">
|
171
157
|
<tr>
|
172
|
-
<td class="memname">const string Passenger::Session::getConnectPassword
|
158
|
+
<td class="memname">const string Passenger::Session::getConnectPassword </td>
|
173
159
|
<td>(</td>
|
174
|
-
<td class="paramname"
|
160
|
+
<td class="paramname"></td>
|
175
161
|
<td> ) </td>
|
176
162
|
<td> const<code> [inline]</code></td>
|
177
163
|
</tr>
|
@@ -179,20 +165,19 @@ Discard the I/O channel's file descriptor, so that the destructor won't automati
|
|
179
165
|
</div>
|
180
166
|
<div class="memdoc">
|
181
167
|
|
182
|
-
<p>
|
183
|
-
|
184
|
-
|
185
|
-
This password is guaranteed to be valid ASCII.
|
168
|
+
<p>Returns this session's process's connect password. </p>
|
169
|
+
<p>This password is guaranteed to be valid ASCII. </p>
|
170
|
+
|
186
171
|
</div>
|
187
|
-
</div
|
188
|
-
<a class="anchor"
|
172
|
+
</div>
|
173
|
+
<a class="anchor" id="a7b8a632ebde11544a8ab98fde89954bb"></a><!-- doxytag: member="Passenger::Session::getSocketName" ref="a7b8a632ebde11544a8ab98fde89954bb" args="() const =0" -->
|
189
174
|
<div class="memitem">
|
190
175
|
<div class="memproto">
|
191
176
|
<table class="memname">
|
192
177
|
<tr>
|
193
|
-
<td class="memname">virtual string Passenger::Session::getSocketName
|
178
|
+
<td class="memname">virtual string Passenger::Session::getSocketName </td>
|
194
179
|
<td>(</td>
|
195
|
-
<td class="paramname"
|
180
|
+
<td class="paramname"></td>
|
196
181
|
<td> ) </td>
|
197
182
|
<td> const<code> [pure virtual]</code></td>
|
198
183
|
</tr>
|
@@ -200,24 +185,22 @@ This password is guaranteed to be valid ASCII.
|
|
200
185
|
</div>
|
201
186
|
<div class="memdoc">
|
202
187
|
|
203
|
-
<p>
|
204
|
-
|
205
|
-
<
|
206
|
-
This can be a Unix socket filename or a TCP host:port string like "127.0.0.1:1234".<p>
|
207
|
-
<dl class="post" compact><dt><b>Postcondition:</b></dt><dd>!result.empty() </dd></dl>
|
188
|
+
<p>Returns the address of the socket that this session is served from. </p>
|
189
|
+
<p>This can be a Unix socket filename or a TCP host:port string like "127.0.0.1:1234".</p>
|
190
|
+
<dl class="post"><dt><b>Postcondition:</b></dt><dd>!result.empty() </dd></dl>
|
208
191
|
|
209
|
-
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#
|
192
|
+
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#a720e98b8dd246eeca004c8e625c0d4d3">Passenger::StandardSession</a>.</p>
|
210
193
|
|
211
194
|
</div>
|
212
|
-
</div
|
213
|
-
<a class="anchor"
|
195
|
+
</div>
|
196
|
+
<a class="anchor" id="ab8f084ab143d44f1a9ef8e8ccc841485"></a><!-- doxytag: member="Passenger::Session::getSocketType" ref="ab8f084ab143d44f1a9ef8e8ccc841485" args="() const =0" -->
|
214
197
|
<div class="memitem">
|
215
198
|
<div class="memproto">
|
216
199
|
<table class="memname">
|
217
200
|
<tr>
|
218
|
-
<td class="memname">virtual string Passenger::Session::getSocketType
|
201
|
+
<td class="memname">virtual string Passenger::Session::getSocketType </td>
|
219
202
|
<td>(</td>
|
220
|
-
<td class="paramname"
|
203
|
+
<td class="paramname"></td>
|
221
204
|
<td> ) </td>
|
222
205
|
<td> const<code> [pure virtual]</code></td>
|
223
206
|
</tr>
|
@@ -225,24 +208,22 @@ This can be a Unix socket filename or a TCP host:port string like "127.0.0.1:123
|
|
225
208
|
</div>
|
226
209
|
<div class="memdoc">
|
227
210
|
|
228
|
-
<p>
|
229
|
-
|
230
|
-
<
|
231
|
-
"unix" indicating a Unix socket.<p>
|
232
|
-
<dl class="post" compact><dt><b>Postcondition:</b></dt><dd>!result.empty() </dd></dl>
|
211
|
+
<p>Returns the type of the socket that this session is served from, e.g. </p>
|
212
|
+
<p>"unix" indicating a Unix socket.</p>
|
213
|
+
<dl class="post"><dt><b>Postcondition:</b></dt><dd>!result.empty() </dd></dl>
|
233
214
|
|
234
|
-
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#
|
215
|
+
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#a3a59997280d5f7fcaa901716cd8451a2">Passenger::StandardSession</a>.</p>
|
235
216
|
|
236
217
|
</div>
|
237
|
-
</div
|
238
|
-
<a class="anchor"
|
218
|
+
</div>
|
219
|
+
<a class="anchor" id="a949c7a46f4bb0c628730ded2041d2489"></a><!-- doxytag: member="Passenger::Session::getStream" ref="a949c7a46f4bb0c628730ded2041d2489" args="() const =0" -->
|
239
220
|
<div class="memitem">
|
240
221
|
<div class="memproto">
|
241
222
|
<table class="memname">
|
242
223
|
<tr>
|
243
|
-
<td class="memname">virtual int Passenger::Session::getStream
|
224
|
+
<td class="memname">virtual int Passenger::Session::getStream </td>
|
244
225
|
<td>(</td>
|
245
|
-
<td class="paramname"
|
226
|
+
<td class="paramname"></td>
|
246
227
|
<td> ) </td>
|
247
228
|
<td> const<code> [pure virtual]</code></td>
|
248
229
|
</tr>
|
@@ -250,25 +231,23 @@ Returns the type of the socket that this session is served from, e.g.
|
|
250
231
|
</div>
|
251
232
|
<div class="memdoc">
|
252
233
|
|
253
|
-
<p>
|
254
|
-
|
255
|
-
<
|
256
|
-
|
257
|
-
<dl class="pre" compact><dt><b>Precondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#bf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
258
|
-
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The file descriptor, or -1 if the I/O channel has already been closed or discarded. </dd></dl>
|
234
|
+
<p>Returns this session's channel's file descriptor. </p>
|
235
|
+
<p>This stream is full-duplex, and will be automatically closed upon Session's destruction, unless <a class="el" href="classPassenger_1_1Session.html#a75344fdfb3c693323877e32884efaa31" title="Discard the I/O channel's file descriptor, so that the destructor won't automatically...">discardStream()</a> is called.</p>
|
236
|
+
<dl class="pre"><dt><b>Precondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
237
|
+
<dl class="return"><dt><b>Returns:</b></dt><dd>The file descriptor, or -1 if the I/O channel has already been closed or discarded. </dd></dl>
|
259
238
|
|
260
|
-
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#
|
239
|
+
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#aa3491d2151ba3b94c1b19a4f18bade6a">Passenger::StandardSession</a>.</p>
|
261
240
|
|
262
241
|
</div>
|
263
|
-
</div
|
264
|
-
<a class="anchor"
|
242
|
+
</div>
|
243
|
+
<a class="anchor" id="abbcfa3eb48d38dead20c0d32cab4850b"></a><!-- doxytag: member="Passenger::Session::initiate" ref="abbcfa3eb48d38dead20c0d32cab4850b" args="()=0" -->
|
265
244
|
<div class="memitem">
|
266
245
|
<div class="memproto">
|
267
246
|
<table class="memname">
|
268
247
|
<tr>
|
269
|
-
<td class="memname">virtual void Passenger::Session::initiate
|
248
|
+
<td class="memname">virtual void Passenger::Session::initiate </td>
|
270
249
|
<td>(</td>
|
271
|
-
<td class="paramname"
|
250
|
+
<td class="paramname"></td>
|
272
251
|
<td> ) </td>
|
273
252
|
<td><code> [pure virtual]</code></td>
|
274
253
|
</tr>
|
@@ -276,28 +255,27 @@ This stream is full-duplex, and will be automatically closed upon Session's dest
|
|
276
255
|
</div>
|
277
256
|
<div class="memdoc">
|
278
257
|
|
279
|
-
<p>
|
280
|
-
|
281
|
-
<
|
282
|
-
A <a class="el" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process.">Session</a> is not usable until it's initiated.<p>
|
283
|
-
<dl compact><dt><b>Exceptions:</b></dt><dd>
|
258
|
+
<p>Initiate the session by connecting to the associated process. </p>
|
259
|
+
<p>A <a class="el" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process.">Session</a> is not usable until it's initiated.</p>
|
260
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
284
261
|
<table border="0" cellspacing="2" cellpadding="0">
|
285
262
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1SystemException.html" title="Represents an error returned by a system call or a standard library call.">SystemException</a></em> </td><td>Something went wrong. </td></tr>
|
286
263
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1IOException.html" title="Represents an error that occured during an I/O operation.">IOException</a></em> </td><td>Something went wrong. </td></tr>
|
287
264
|
<tr><td valign="top"></td><td valign="top"><em>boost::thread_interrupted</em> </td><td></td></tr>
|
288
265
|
</table>
|
266
|
+
</dd>
|
289
267
|
</dl>
|
290
268
|
|
291
|
-
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#
|
269
|
+
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#ac283db6faf2fcd1827baf3ebac276677">Passenger::StandardSession</a>.</p>
|
292
270
|
|
293
271
|
</div>
|
294
|
-
</div
|
295
|
-
<a class="anchor"
|
272
|
+
</div>
|
273
|
+
<a class="anchor" id="a2203d81e25fe5066aed351608deecf7b"></a><!-- doxytag: member="Passenger::Session::sendBodyBlock" ref="a2203d81e25fe5066aed351608deecf7b" args="(const char *block, unsigned int size)" -->
|
296
274
|
<div class="memitem">
|
297
275
|
<div class="memproto">
|
298
276
|
<table class="memname">
|
299
277
|
<tr>
|
300
|
-
<td class="memname">virtual void Passenger::Session::sendBodyBlock
|
278
|
+
<td class="memname">virtual void Passenger::Session::sendBodyBlock </td>
|
301
279
|
<td>(</td>
|
302
280
|
<td class="paramtype">const char * </td>
|
303
281
|
<td class="paramname"> <em>block</em>, </td>
|
@@ -317,37 +295,37 @@ A <a class="el" href="classPassenger_1_1Session.html" title="Represents a single
|
|
317
295
|
</div>
|
318
296
|
<div class="memdoc">
|
319
297
|
|
320
|
-
<p>
|
321
|
-
|
322
|
-
<p>
|
323
|
-
|
324
|
-
This method must only be called after a <a class="el" href="classPassenger_1_1Session.html#8f8a39f78dd2672b00f1ff01e4d6d671" title="Send HTTP request headers to the application.">sendHeaders()</a>, otherwise strange things may happen.<p>
|
325
|
-
<dl compact><dt><b>Parameters:</b></dt><dd>
|
298
|
+
<p>Send a chunk of HTTP request body data to the application. </p>
|
299
|
+
<p>You can call this method as many times as is required to transfer the entire HTTP request body.</p>
|
300
|
+
<p>This method must only be called after a <a class="el" href="classPassenger_1_1Session.html#a8f8a39f78dd2672b00f1ff01e4d6d671" title="Send HTTP request headers to the application.">sendHeaders()</a>, otherwise strange things may happen.</p>
|
301
|
+
<dl><dt><b>Parameters:</b></dt><dd>
|
326
302
|
<table border="0" cellspacing="2" cellpadding="0">
|
327
303
|
<tr><td valign="top"></td><td valign="top"><em>block</em> </td><td>A block of HTTP request body data to send. </td></tr>
|
328
304
|
<tr><td valign="top"></td><td valign="top"><em>size</em> </td><td>The size, in bytes, of <code>block</code>. </td></tr>
|
329
305
|
</table>
|
306
|
+
</dd>
|
330
307
|
</dl>
|
331
|
-
<dl class="pre"
|
332
|
-
<dl
|
308
|
+
<dl class="pre"><dt><b>Precondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
309
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
333
310
|
<table border="0" cellspacing="2" cellpadding="0">
|
334
311
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1IOException.html" title="Represents an error that occured during an I/O operation.">IOException</a></em> </td><td>The I/O channel has already been closed or discarded. </td></tr>
|
335
312
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1SystemException.html" title="Represents an error returned by a system call or a standard library call.">SystemException</a></em> </td><td>Something went wrong during writing. </td></tr>
|
336
313
|
<tr><td valign="top"></td><td valign="top"><em>boost::thread_interrupted</em> </td><td></td></tr>
|
337
314
|
</table>
|
315
|
+
</dd>
|
338
316
|
</dl>
|
339
317
|
|
340
318
|
</div>
|
341
|
-
</div
|
342
|
-
<a class="anchor"
|
319
|
+
</div>
|
320
|
+
<a class="anchor" id="a8253d81e64adc0dc72b1dc65a5117aba"></a><!-- doxytag: member="Passenger::Session::sendHeaders" ref="a8253d81e64adc0dc72b1dc65a5117aba" args="(const StaticString &headers)" -->
|
343
321
|
<div class="memitem">
|
344
322
|
<div class="memproto">
|
345
323
|
<table class="memname">
|
346
324
|
<tr>
|
347
|
-
<td class="memname">virtual void Passenger::Session::sendHeaders
|
325
|
+
<td class="memname">virtual void Passenger::Session::sendHeaders </td>
|
348
326
|
<td>(</td>
|
349
327
|
<td class="paramtype">const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> & </td>
|
350
|
-
<td class="paramname"> <em>headers</em
|
328
|
+
<td class="paramname"> <em>headers</em></td>
|
351
329
|
<td> ) </td>
|
352
330
|
<td><code> [inline, virtual]</code></td>
|
353
331
|
</tr>
|
@@ -355,31 +333,31 @@ This method must only be called after a <a class="el" href="classPassenger_1_1Se
|
|
355
333
|
</div>
|
356
334
|
<div class="memdoc">
|
357
335
|
|
358
|
-
<p>
|
359
|
-
|
360
|
-
<p>
|
361
|
-
<dl compact><dt><b>Parameters:</b></dt><dd>
|
336
|
+
<p>Convenience shortcut for <a class="el" href="classPassenger_1_1Session.html#a8f8a39f78dd2672b00f1ff01e4d6d671" title="Send HTTP request headers to the application.">sendHeaders(const char *, unsigned int)</a>. </p>
|
337
|
+
<dl><dt><b>Parameters:</b></dt><dd>
|
362
338
|
<table border="0" cellspacing="2" cellpadding="0">
|
363
339
|
<tr><td valign="top"></td><td valign="top"><em>headers</em> </td><td>The headers </td></tr>
|
364
340
|
</table>
|
341
|
+
</dd>
|
365
342
|
</dl>
|
366
|
-
<dl class="pre"
|
367
|
-
<dl
|
343
|
+
<dl class="pre"><dt><b>Precondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
344
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
368
345
|
<table border="0" cellspacing="2" cellpadding="0">
|
369
346
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1IOException.html" title="Represents an error that occured during an I/O operation.">IOException</a></em> </td><td>The I/O channel has already been closed or discarded. </td></tr>
|
370
347
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1SystemException.html" title="Represents an error returned by a system call or a standard library call.">SystemException</a></em> </td><td>Something went wrong during writing. </td></tr>
|
371
348
|
<tr><td valign="top"></td><td valign="top"><em>boost::thread_interrupted</em> </td><td></td></tr>
|
372
349
|
</table>
|
350
|
+
</dd>
|
373
351
|
</dl>
|
374
352
|
|
375
353
|
</div>
|
376
|
-
</div
|
377
|
-
<a class="anchor"
|
354
|
+
</div>
|
355
|
+
<a class="anchor" id="a8f8a39f78dd2672b00f1ff01e4d6d671"></a><!-- doxytag: member="Passenger::Session::sendHeaders" ref="a8f8a39f78dd2672b00f1ff01e4d6d671" args="(const char *headers, unsigned int size)" -->
|
378
356
|
<div class="memitem">
|
379
357
|
<div class="memproto">
|
380
358
|
<table class="memname">
|
381
359
|
<tr>
|
382
|
-
<td class="memname">virtual void Passenger::Session::sendHeaders
|
360
|
+
<td class="memname">virtual void Passenger::Session::sendHeaders </td>
|
383
361
|
<td>(</td>
|
384
362
|
<td class="paramtype">const char * </td>
|
385
363
|
<td class="paramname"> <em>headers</em>, </td>
|
@@ -399,10 +377,8 @@ Convenience shortcut for <a class="el" href="classPassenger_1_1Session.html#8f8a
|
|
399
377
|
</div>
|
400
378
|
<div class="memdoc">
|
401
379
|
|
402
|
-
<p>
|
403
|
-
|
404
|
-
<p>
|
405
|
-
The HTTP headers must be converted into CGI headers, and then encoded into a string that matches this grammar:<p>
|
380
|
+
<p>Send HTTP request headers to the application. </p>
|
381
|
+
<p>The HTTP headers must be converted into CGI headers, and then encoded into a string that matches this grammar:</p>
|
406
382
|
<div class="fragment"><pre class="fragment">
|
407
383
|
headers ::= header*
|
408
384
|
header ::= name NUL value NUL
|
@@ -410,36 +386,38 @@ The HTTP headers must be converted into CGI headers, and then encoded into a str
|
|
410
386
|
value ::= notnull+
|
411
387
|
notnull ::= "\x01" | "\x02" | "\x02" | ... | "\xFF"
|
412
388
|
NUL = "\x00"
|
413
|
-
</pre></div><p>
|
414
|
-
|
415
|
-
|
416
|
-
<dl compact><dt><b>Parameters:</b></dt><dd>
|
389
|
+
</pre></div><p>There must be a header with the name "PASSWORD_CONNECT_PASSWORD", and it must have the same value as the string returned by <a class="el" href="classPassenger_1_1Session.html#aeaf4f7097f7b3430dc88e8070cad5899" title="Returns this session's process's connect password.">getConnectPassword()</a>.</p>
|
390
|
+
<p>This method should be the first one to be called during the lifetime of a <a class="el" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process.">Session</a> object, otherwise strange things may happen.</p>
|
391
|
+
<dl><dt><b>Parameters:</b></dt><dd>
|
417
392
|
<table border="0" cellspacing="2" cellpadding="0">
|
418
393
|
<tr><td valign="top"></td><td valign="top"><em>headers</em> </td><td>The HTTP request headers, converted into CGI headers and encoded as a string, according to the description. </td></tr>
|
419
394
|
<tr><td valign="top"></td><td valign="top"><em>size</em> </td><td>The size, in bytes, of <code>headers</code>. </td></tr>
|
420
395
|
</table>
|
396
|
+
</dd>
|
421
397
|
</dl>
|
422
|
-
<dl class="pre"
|
423
|
-
<
|
424
|
-
<
|
398
|
+
<dl class="pre"><dt><b>Precondition:</b></dt><dd>headers != NULL </dd>
|
399
|
+
<dd>
|
400
|
+
<a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
401
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
425
402
|
<table border="0" cellspacing="2" cellpadding="0">
|
426
403
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1IOException.html" title="Represents an error that occured during an I/O operation.">IOException</a></em> </td><td>The I/O channel has already been closed or discarded. </td></tr>
|
427
404
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1SystemException.html" title="Represents an error returned by a system call or a standard library call.">SystemException</a></em> </td><td>Something went wrong during writing. </td></tr>
|
428
405
|
<tr><td valign="top"></td><td valign="top"><em>boost::thread_interrupted</em> </td><td></td></tr>
|
429
406
|
</table>
|
407
|
+
</dd>
|
430
408
|
</dl>
|
431
409
|
|
432
410
|
</div>
|
433
|
-
</div
|
434
|
-
<a class="anchor"
|
411
|
+
</div>
|
412
|
+
<a class="anchor" id="a5accbd8f7cce66d0ef6695481fdaa39c"></a><!-- doxytag: member="Passenger::Session::setReaderTimeout" ref="a5accbd8f7cce66d0ef6695481fdaa39c" args="(unsigned int msec)=0" -->
|
435
413
|
<div class="memitem">
|
436
414
|
<div class="memproto">
|
437
415
|
<table class="memname">
|
438
416
|
<tr>
|
439
|
-
<td class="memname">virtual void Passenger::Session::setReaderTimeout
|
417
|
+
<td class="memname">virtual void Passenger::Session::setReaderTimeout </td>
|
440
418
|
<td>(</td>
|
441
419
|
<td class="paramtype">unsigned int </td>
|
442
|
-
<td class="paramname"> <em>msec</em
|
420
|
+
<td class="paramname"> <em>msec</em></td>
|
443
421
|
<td> ) </td>
|
444
422
|
<td><code> [pure virtual]</code></td>
|
445
423
|
</tr>
|
@@ -447,36 +425,37 @@ This method should be the first one to be called during the lifetime of a <a cla
|
|
447
425
|
</div>
|
448
426
|
<div class="memdoc">
|
449
427
|
|
450
|
-
<p>
|
451
|
-
|
452
|
-
<
|
453
|
-
|
454
|
-
<
|
455
|
-
<
|
456
|
-
<dl compact><dt><b>Parameters:</b></dt><dd>
|
428
|
+
<p>Set the timeout value for reading data from the I/O channel. </p>
|
429
|
+
<p>If no data can be read within the timeout period, then the read call will fail with error EAGAIN or EWOULDBLOCK.</p>
|
430
|
+
<dl class="pre"><dt><b>Precondition:</b></dt><dd>The I/O channel hasn't been closed or discarded. </dd>
|
431
|
+
<dd>
|
432
|
+
<a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
433
|
+
<dl><dt><b>Parameters:</b></dt><dd>
|
457
434
|
<table border="0" cellspacing="2" cellpadding="0">
|
458
435
|
<tr><td valign="top"></td><td valign="top"><em>msec</em> </td><td>The timeout, in milliseconds. If 0 is given, there will be no timeout. </td></tr>
|
459
436
|
</table>
|
437
|
+
</dd>
|
460
438
|
</dl>
|
461
|
-
<dl
|
439
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
462
440
|
<table border="0" cellspacing="2" cellpadding="0">
|
463
441
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1SystemException.html" title="Represents an error returned by a system call or a standard library call.">SystemException</a></em> </td><td>Cannot set the timeout. </td></tr>
|
464
442
|
</table>
|
443
|
+
</dd>
|
465
444
|
</dl>
|
466
445
|
|
467
|
-
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#
|
446
|
+
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#a960346d8c27ff1ae9017d753e41a159a">Passenger::StandardSession</a>.</p>
|
468
447
|
|
469
448
|
</div>
|
470
|
-
</div
|
471
|
-
<a class="anchor"
|
449
|
+
</div>
|
450
|
+
<a class="anchor" id="a21dd749c0c8d22f65c6a914ec2f97c94"></a><!-- doxytag: member="Passenger::Session::setWriterTimeout" ref="a21dd749c0c8d22f65c6a914ec2f97c94" args="(unsigned int msec)=0" -->
|
472
451
|
<div class="memitem">
|
473
452
|
<div class="memproto">
|
474
453
|
<table class="memname">
|
475
454
|
<tr>
|
476
|
-
<td class="memname">virtual void Passenger::Session::setWriterTimeout
|
455
|
+
<td class="memname">virtual void Passenger::Session::setWriterTimeout </td>
|
477
456
|
<td>(</td>
|
478
457
|
<td class="paramtype">unsigned int </td>
|
479
|
-
<td class="paramname"> <em>msec</em
|
458
|
+
<td class="paramname"> <em>msec</em></td>
|
480
459
|
<td> ) </td>
|
481
460
|
<td><code> [pure virtual]</code></td>
|
482
461
|
</tr>
|
@@ -484,35 +463,36 @@ If no data can be read within the timeout period, then the read call will fail w
|
|
484
463
|
</div>
|
485
464
|
<div class="memdoc">
|
486
465
|
|
487
|
-
<p>
|
488
|
-
|
489
|
-
<
|
490
|
-
|
491
|
-
<
|
492
|
-
<
|
493
|
-
<dl compact><dt><b>Parameters:</b></dt><dd>
|
466
|
+
<p>Set the timeout value for writing data from the I/O channel. </p>
|
467
|
+
<p>If no data can be written within the timeout period, then the write call will fail with error EAGAIN or EWOULDBLOCK.</p>
|
468
|
+
<dl class="pre"><dt><b>Precondition:</b></dt><dd>The I/O channel hasn't been closed or discarded. </dd>
|
469
|
+
<dd>
|
470
|
+
<a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
471
|
+
<dl><dt><b>Parameters:</b></dt><dd>
|
494
472
|
<table border="0" cellspacing="2" cellpadding="0">
|
495
473
|
<tr><td valign="top"></td><td valign="top"><em>msec</em> </td><td>The timeout, in milliseconds. If 0 is given, there will be no timeout. </td></tr>
|
496
474
|
</table>
|
475
|
+
</dd>
|
497
476
|
</dl>
|
498
|
-
<dl
|
477
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
499
478
|
<table border="0" cellspacing="2" cellpadding="0">
|
500
479
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1SystemException.html" title="Represents an error returned by a system call or a standard library call.">SystemException</a></em> </td><td>Cannot set the timeout. </td></tr>
|
501
480
|
</table>
|
481
|
+
</dd>
|
502
482
|
</dl>
|
503
483
|
|
504
|
-
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#
|
484
|
+
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#abb51c323ac0e24011191862f6dec7a75">Passenger::StandardSession</a>.</p>
|
505
485
|
|
506
486
|
</div>
|
507
|
-
</div
|
508
|
-
<a class="anchor"
|
487
|
+
</div>
|
488
|
+
<a class="anchor" id="ac579d233ddc82542c336b2af1f40c4dd"></a><!-- doxytag: member="Passenger::Session::shutdownReader" ref="ac579d233ddc82542c336b2af1f40c4dd" args="()=0" -->
|
509
489
|
<div class="memitem">
|
510
490
|
<div class="memproto">
|
511
491
|
<table class="memname">
|
512
492
|
<tr>
|
513
|
-
<td class="memname">virtual void Passenger::Session::shutdownReader
|
493
|
+
<td class="memname">virtual void Passenger::Session::shutdownReader </td>
|
514
494
|
<td>(</td>
|
515
|
-
<td class="paramname"
|
495
|
+
<td class="paramname"></td>
|
516
496
|
<td> ) </td>
|
517
497
|
<td><code> [pure virtual]</code></td>
|
518
498
|
</tr>
|
@@ -520,30 +500,29 @@ If no data can be written within the timeout period, then the write call will fa
|
|
520
500
|
</div>
|
521
501
|
<div class="memdoc">
|
522
502
|
|
523
|
-
<p>
|
524
|
-
|
525
|
-
<
|
526
|
-
|
527
|
-
<dl class="pre" compact><dt><b>Precondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#bf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
528
|
-
<dl compact><dt><b>Exceptions:</b></dt><dd>
|
503
|
+
<p>Indicate that we don't want to read data anymore from the I/O channel. </p>
|
504
|
+
<p>Calling this method after <a class="el" href="classPassenger_1_1Session.html#a7ab85388f15388cb8e65873d1ad310a5" title="Close the I/O stream.">closeStream()</a>/discardStream() is called will have no effect.</p>
|
505
|
+
<dl class="pre"><dt><b>Precondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
506
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
529
507
|
<table border="0" cellspacing="2" cellpadding="0">
|
530
508
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1SystemException.html" title="Represents an error returned by a system call or a standard library call.">SystemException</a></em> </td><td>Something went wrong. </td></tr>
|
531
509
|
<tr><td valign="top"></td><td valign="top"><em>boost::thread_interrupted</em> </td><td></td></tr>
|
532
510
|
</table>
|
511
|
+
</dd>
|
533
512
|
</dl>
|
534
513
|
|
535
|
-
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#
|
514
|
+
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#ac92d4d081d6145ba8d441c8cf88fae74">Passenger::StandardSession</a>.</p>
|
536
515
|
|
537
516
|
</div>
|
538
|
-
</div
|
539
|
-
<a class="anchor"
|
517
|
+
</div>
|
518
|
+
<a class="anchor" id="a8263c568a8ac4567b33728d820cbd920"></a><!-- doxytag: member="Passenger::Session::shutdownWriter" ref="a8263c568a8ac4567b33728d820cbd920" args="()=0" -->
|
540
519
|
<div class="memitem">
|
541
520
|
<div class="memproto">
|
542
521
|
<table class="memname">
|
543
522
|
<tr>
|
544
|
-
<td class="memname">virtual void Passenger::Session::shutdownWriter
|
523
|
+
<td class="memname">virtual void Passenger::Session::shutdownWriter </td>
|
545
524
|
<td>(</td>
|
546
|
-
<td class="paramname"
|
525
|
+
<td class="paramname"></td>
|
547
526
|
<td> ) </td>
|
548
527
|
<td><code> [pure virtual]</code></td>
|
549
528
|
</tr>
|
@@ -551,27 +530,27 @@ Calling this method after <a class="el" href="classPassenger_1_1Session.html#7ab
|
|
551
530
|
</div>
|
552
531
|
<div class="memdoc">
|
553
532
|
|
554
|
-
<p>
|
555
|
-
|
556
|
-
<
|
557
|
-
|
558
|
-
<dl class="pre" compact><dt><b>Precondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#bf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
559
|
-
<dl compact><dt><b>Exceptions:</b></dt><dd>
|
533
|
+
<p>Indicate that we don't want to write data anymore to the I/O channel. </p>
|
534
|
+
<p>Calling this method after <a class="el" href="classPassenger_1_1Session.html#a7ab85388f15388cb8e65873d1ad310a5" title="Close the I/O stream.">closeStream()</a>/discardStream() is called will have no effect.</p>
|
535
|
+
<dl class="pre"><dt><b>Precondition:</b></dt><dd><a class="el" href="classPassenger_1_1Session.html#abf1b6ba182a0fc66c8e617f74afafb92" title="Returns whether this session has been initiated (that is, whether initiate() had...">initiated()</a> </dd></dl>
|
536
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
560
537
|
<table border="0" cellspacing="2" cellpadding="0">
|
561
538
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1SystemException.html" title="Represents an error returned by a system call or a standard library call.">SystemException</a></em> </td><td>Something went wrong. </td></tr>
|
562
539
|
<tr><td valign="top"></td><td valign="top"><em>boost::thread_interrupted</em> </td><td></td></tr>
|
563
540
|
</table>
|
541
|
+
</dd>
|
564
542
|
</dl>
|
565
543
|
|
566
|
-
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#
|
544
|
+
<p>Implemented in <a class="el" href="classPassenger_1_1StandardSession.html#a045a8f7f849c34086b0832fdba7a2915">Passenger::StandardSession</a>.</p>
|
567
545
|
|
568
546
|
</div>
|
569
|
-
</div><p>
|
570
|
-
<hr>The documentation for this class was generated from the following file:<ul>
|
571
|
-
<li><a class="el" href="Session_8h-source.html">Session.h</a></ul>
|
572
547
|
</div>
|
573
|
-
<hr
|
548
|
+
<hr/>The documentation for this class was generated from the following file:<ul>
|
549
|
+
<li><a class="el" href="Session_8h_source.html">Session.h</a></li>
|
550
|
+
</ul>
|
551
|
+
</div>
|
552
|
+
<hr size="1"/><address style="text-align: right;"><small>Generated by
|
574
553
|
<a href="http://www.doxygen.org/index.html">
|
575
|
-
<img src="doxygen.png" alt="doxygen"
|
554
|
+
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2 </small></address>
|
576
555
|
</body>
|
577
556
|
</html>
|