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 +1 @@
|
|
1
|
-
|
1
|
+
f4e847cb129a1a1896a506f463bb7b63
|
Binary file
|
@@ -1 +1,3 @@
|
|
1
|
-
<
|
1
|
+
<map id="G" name="G">
|
2
|
+
<area shape="rect" id="node1" href="$classPassenger_1_1Uint32Message.html" title="For 32-bit big-endian integers." alt="" coords="7,5,201,35"/>
|
3
|
+
</map>
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
c443ee7bdc3e4ed0dd4bb3e420a207e8
|
Binary file
|
@@ -1 +1,3 @@
|
|
1
|
-
<
|
1
|
+
<map id="G" name="G">
|
2
|
+
<area shape="rect" id="node1" href="$classServer.html" title="A representation of the Server responsible for handling Client instances." alt="" coords="5,5,69,35"/>
|
3
|
+
</map>
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
49c26619ea57b6fab68bb69492ab64b3
|
Binary file
|
@@ -1 +1,3 @@
|
|
1
|
-
<
|
1
|
+
<map id="G" name="G">
|
2
|
+
<area shape="rect" id="node1" href="$classServerInstanceDirToucher.html" title="Touch all files in the server instance dir every 6 hours in order to prevent /tmp..." alt="" coords="7,5,191,35"/>
|
3
|
+
</map>
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
895fbb1cabd5da8622d5341648d91bb3
|
Binary file
|
@@ -1 +1,3 @@
|
|
1
|
-
<
|
1
|
+
<map id="G" name="G">
|
2
|
+
<area shape="rect" id="node1" href="$classPassenger_1_1ArgumentException.html" title="Indicates that a specified argument is incorrect or violates a requirement." alt="" coords="7,5,228,35"/>
|
3
|
+
</map>
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
1f09a671d17b2c94737376d2fefc0504
|
Binary file
|
@@ -1 +1,3 @@
|
|
1
|
-
<
|
1
|
+
<map id="G" name="G">
|
2
|
+
<area shape="rect" id="node1" href="$classPassenger_1_1ArrayMessage.html" title="For array messages." alt="" coords="7,5,193,35"/>
|
3
|
+
</map>
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
ca6b0c927df71626dad64248d7e9ed0f
|
Binary file
|
@@ -1 +1,3 @@
|
|
1
|
-
<
|
1
|
+
<map id="G" name="G">
|
2
|
+
<area shape="rect" id="node1" href="$classPassenger_1_1BufferedUpload.html" title="Represents a buffered upload file." alt="" coords="7,5,201,35"/>
|
3
|
+
</map>
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
fc2cecd833dcd5ffcd6b3f26bcdee851
|
Binary file
|
@@ -1 +1,3 @@
|
|
1
|
-
<
|
1
|
+
<map id="G" name="G">
|
2
|
+
<area shape="rect" id="node1" href="$classPassenger_1_1BusyException.html" title="The application pool is too busy and cannot fulfill a get() request." alt="" coords="5,5,195,35"/>
|
3
|
+
</map>
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
33b630dea926c338fbbd6cca62c4f362
|
Binary file
|
@@ -1 +1,3 @@
|
|
1
|
-
<
|
1
|
+
<map id="G" name="G">
|
2
|
+
<area shape="rect" id="node1" href="$classPassenger_1_1ConfigurationException.html" title="Thrown when an invalid configuration is given." alt="" coords="7,5,249,35"/>
|
3
|
+
</map>
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
33f6fef6c88c681d0a4af344429ded81
|
Binary file
|
@@ -1 +1,3 @@
|
|
1
|
-
<
|
1
|
+
<map id="G" name="G">
|
2
|
+
<area shape="rect" id="node1" href="$classPassenger_1_1DirectoryMapper.html" title="Utility class for determining URI-to-application directory mappings." alt="" coords="5,5,208,35"/>
|
3
|
+
</map>
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
6ac22ac2a04b31b0b8785e5076f34c72
|
Binary file
|
data/doc/cxxapi/inherits.html
CHANGED
@@ -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: Graphical Class Hierarchy</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,133 +27,127 @@
|
|
24
27
|
</div>
|
25
28
|
</div>
|
26
29
|
<div class="contents">
|
27
|
-
<h1>Graphical Class Hierarchy</h1
|
28
|
-
<p>
|
30
|
+
<h1>Graphical Class Hierarchy</h1>
|
31
|
+
<p><a href="hierarchy.html">Go to the textual class hierarchy</a></p>
|
29
32
|
<table border="0" cellspacing="10" cellpadding="0">
|
30
|
-
<tr><td><img src="inherit__graph__0.png" border="0" alt="" usemap="#AgentWatcher_map"
|
31
|
-
<map name="AgentWatcher_map">
|
33
|
+
<tr><td><img src="inherit__graph__0.png" border="0" alt="" usemap="#AgentWatcher_map"/>
|
34
|
+
<map name="AgentWatcher_map" id="AgentWatcher">
|
32
35
|
<area shape="rect" href="classAgentWatcher.html" title="Abstract base class for watching agent processes." alt="" coords="5,5,115,32"></map></td></tr>
|
33
|
-
<tr><td><img src="inherit__graph__1.png" border="0" alt="" usemap="#Client_map"
|
34
|
-
<map name="Client_map">
|
36
|
+
<tr><td><img src="inherit__graph__1.png" border="0" alt="" usemap="#Client_map"/>
|
37
|
+
<map name="Client_map" id="Client">
|
35
38
|
<area shape="rect" href="classClient.html" title="A representation of a Client from the Server's point of view." alt="" coords="7,5,63,32"></map></td></tr>
|
36
|
-
<tr><td><img src="inherit__graph__2.png" border="0" alt="" usemap="#Hooks_map"
|
37
|
-
<map name="Hooks_map">
|
39
|
+
<tr><td><img src="inherit__graph__2.png" border="0" alt="" usemap="#Hooks_map"/>
|
40
|
+
<map name="Hooks_map" id="Hooks">
|
38
41
|
<area shape="rect" href="classHooks.html" title="Apache hook functions, wrapped in a class." alt="" coords="7,5,65,32"></map></td></tr>
|
39
|
-
<tr><td><img src="inherit__graph__3.png" border="0" alt="" usemap="#Passenger_1_1AbstractSpawnManager_map"
|
40
|
-
<map name="Passenger_1_1AbstractSpawnManager_map">
|
42
|
+
<tr><td><img src="inherit__graph__3.png" border="0" alt="" usemap="#Passenger_1_1AbstractSpawnManager_map"/>
|
43
|
+
<map name="Passenger_1_1AbstractSpawnManager_map" id="Passenger_1_1AbstractSpawnManager">
|
41
44
|
<area shape="rect" href="classPassenger_1_1AbstractSpawnManager.html" title="Spawning of application processes." alt="" coords="5,5,245,32"><area shape="rect" href="classPassenger_1_1SpawnManager.html" title="An AbstractSpawnManager implementation." alt="" coords="293,5,483,32"></map></td></tr>
|
42
|
-
<tr><td><img src="inherit__graph__4.png" border="0" alt="" usemap="#
|
43
|
-
<map name="
|
44
|
-
<area shape="rect" href="
|
45
|
-
<tr><td><img src="inherit__graph__5.png" border="0" alt="" usemap="#
|
46
|
-
<map name="
|
47
|
-
<area shape="rect" href="
|
48
|
-
<tr><td><img src="inherit__graph__6.png" border="0" alt="" usemap="#
|
49
|
-
<map name="
|
50
|
-
<area shape="rect" href="
|
51
|
-
<tr><td><img src="inherit__graph__7.png" border="0" alt="" usemap="#
|
52
|
-
<map name="
|
53
|
-
<area shape="rect" href="
|
54
|
-
<tr><td><img src="inherit__graph__8.png" border="0" alt="" usemap="#
|
55
|
-
<map name="
|
56
|
-
<area shape="rect" href="
|
57
|
-
<tr><td><img src="inherit__graph__9.png" border="0" alt="" usemap="#
|
58
|
-
<map name="
|
59
|
-
<area shape="rect" href="
|
60
|
-
<tr><td><img src="inherit__graph__10.png" border="0" alt="" usemap="#
|
61
|
-
<map name="
|
62
|
-
<area shape="rect" href="
|
63
|
-
<tr><td><img src="inherit__graph__11.png" border="0" alt="" usemap="#
|
64
|
-
<map name="
|
65
|
-
<area shape="rect" href="
|
66
|
-
<tr><td><img src="inherit__graph__12.png" border="0" alt="" usemap="#
|
67
|
-
<map name="
|
68
|
-
<area shape="rect" href="
|
69
|
-
<tr><td><img src="inherit__graph__13.png" border="0" alt="" usemap="#
|
70
|
-
<map name="
|
71
|
-
<area shape="rect" href="
|
72
|
-
<tr><td><img src="inherit__graph__14.png" border="0" alt="" usemap="#
|
73
|
-
<map name="
|
74
|
-
<area shape="rect" href="
|
75
|
-
<tr><td><img src="inherit__graph__15.png" border="0" alt="" usemap="#
|
76
|
-
<map name="
|
77
|
-
<area shape="rect" href="
|
78
|
-
<tr><td><img src="inherit__graph__16.png" border="0" alt="" usemap="#
|
79
|
-
<map name="
|
80
|
-
<area shape="rect"
|
81
|
-
<tr><td><img src="inherit__graph__17.png" border="0" alt="" usemap="#
|
82
|
-
<map name="
|
83
|
-
<area shape="rect" href="
|
84
|
-
<tr><td><img src="inherit__graph__18.png" border="0" alt="" usemap="#
|
85
|
-
<map name="
|
86
|
-
<area shape="rect" href="
|
87
|
-
<tr><td><img src="inherit__graph__19.png" border="0" alt="" usemap="#
|
88
|
-
<map name="
|
89
|
-
<area shape="rect" href="
|
90
|
-
<tr><td><img src="inherit__graph__20.png" border="0" alt="" usemap="#
|
91
|
-
<map name="
|
92
|
-
<area shape="rect"
|
93
|
-
<tr><td><img src="inherit__graph__21.png" border="0" alt="" usemap="#
|
94
|
-
<map name="
|
95
|
-
<area shape="rect" href="
|
96
|
-
<tr><td><img src="inherit__graph__22.png" border="0" alt="" usemap="#
|
97
|
-
<map name="
|
98
|
-
<area shape="rect" href="
|
99
|
-
<tr><td><img src="inherit__graph__23.png" border="0" alt="" usemap="#
|
100
|
-
<map name="
|
101
|
-
<area shape="rect" href="
|
102
|
-
<tr><td><img src="inherit__graph__24.png" border="0" alt="" usemap="#
|
103
|
-
<map name="
|
104
|
-
<area shape="rect" href="
|
105
|
-
<tr><td><img src="inherit__graph__25.png" border="0" alt="" usemap="#
|
106
|
-
<map name="
|
107
|
-
<area shape="rect" href="
|
108
|
-
<tr><td><img src="inherit__graph__26.png" border="0" alt="" usemap="#
|
109
|
-
<map name="
|
110
|
-
<area shape="rect" href="
|
111
|
-
<tr><td><img src="inherit__graph__27.png" border="0" alt="" usemap="#
|
112
|
-
<map name="
|
113
|
-
<area shape="rect" href="
|
114
|
-
<tr><td><img src="inherit__graph__28.png" border="0" alt="" usemap="#
|
115
|
-
<map name="
|
116
|
-
<area shape="rect" href="
|
117
|
-
<tr><td><img src="inherit__graph__29.png" border="0" alt="" usemap="#
|
118
|
-
<map name="
|
119
|
-
<area shape="rect" href="
|
120
|
-
<tr><td><img src="inherit__graph__30.png" border="0" alt="" usemap="#
|
121
|
-
<map name="
|
122
|
-
<area shape="rect"
|
123
|
-
<tr><td><img src="inherit__graph__31.png" border="0" alt="" usemap="#
|
124
|
-
<map name="
|
125
|
-
<area shape="rect" href="
|
126
|
-
<tr><td><img src="inherit__graph__32.png" border="0" alt="" usemap="#
|
127
|
-
<map name="
|
128
|
-
<area shape="rect" href="
|
129
|
-
<tr><td><img src="inherit__graph__33.png" border="0" alt="" usemap="#
|
130
|
-
<map name="
|
131
|
-
<area shape="rect" href="
|
132
|
-
<tr><td><img src="inherit__graph__34.png" border="0" alt="" usemap="#
|
133
|
-
<map name="
|
134
|
-
<area shape="rect"
|
135
|
-
<tr><td><img src="inherit__graph__35.png" border="0" alt="" usemap="#
|
136
|
-
<map name="
|
137
|
-
<area shape="rect" href="
|
138
|
-
<tr><td><img src="inherit__graph__36.png" border="0" alt="" usemap="#
|
139
|
-
<map name="
|
140
|
-
<area shape="rect" href="
|
141
|
-
<tr><td><img src="inherit__graph__37.png" border="0" alt="" usemap="#
|
142
|
-
<map name="
|
143
|
-
<area shape="rect" href="
|
144
|
-
<tr><td><img src="inherit__graph__38.png" border="0" alt="" usemap="#Server_map">
|
145
|
-
<map name="Server_map">
|
146
|
-
<area shape="rect" href="classServer.html" title="A representation of the Server responsible for handling Client instances." alt="" coords="7,5,68,32"></map></td></tr>
|
147
|
-
<tr><td><img src="inherit__graph__39.png" border="0" alt="" usemap="#ServerInstanceDirToucher_map">
|
148
|
-
<map name="ServerInstanceDirToucher_map">
|
149
|
-
<area shape="rect" href="classServerInstanceDirToucher.html" title="Touch all files in the server instance dir every 6 hours in order to prevent /tmp..." alt="" coords="5,5,187,32"></map></td></tr>
|
45
|
+
<tr><td><img src="inherit__graph__4.png" border="0" alt="" usemap="#Passenger_1_1ArgumentException_map"/>
|
46
|
+
<map name="Passenger_1_1ArgumentException_map" id="Passenger_1_1ArgumentException">
|
47
|
+
<area shape="rect" id="node1" href="classPassenger_1_1ArgumentException.html" title="Indicates that a specified argument is incorrect or violates a requirement." alt="" coords="7,5,228,35"/></map></td></tr>
|
48
|
+
<tr><td><img src="inherit__graph__5.png" border="0" alt="" usemap="#Passenger_1_1ArrayMessage_map"/>
|
49
|
+
<map name="Passenger_1_1ArrayMessage_map" id="Passenger_1_1ArrayMessage">
|
50
|
+
<area shape="rect" id="node1" href="classPassenger_1_1ArrayMessage.html" title="For array messages." alt="" coords="7,5,193,35"/></map></td></tr>
|
51
|
+
<tr><td><img src="inherit__graph__6.png" border="0" alt="" usemap="#Passenger_1_1BufferedUpload_map"/>
|
52
|
+
<map name="Passenger_1_1BufferedUpload_map" id="Passenger_1_1BufferedUpload">
|
53
|
+
<area shape="rect" id="node1" href="classPassenger_1_1BufferedUpload.html" title="Represents a buffered upload file." alt="" coords="7,5,201,35"/></map></td></tr>
|
54
|
+
<tr><td><img src="inherit__graph__7.png" border="0" alt="" usemap="#Passenger_1_1BusyException_map"/>
|
55
|
+
<map name="Passenger_1_1BusyException_map" id="Passenger_1_1BusyException">
|
56
|
+
<area shape="rect" id="node1" href="classPassenger_1_1BusyException.html" title="The application pool is too busy and cannot fulfill a get() request." alt="" coords="5,5,195,35"/></map></td></tr>
|
57
|
+
<tr><td><img src="inherit__graph__8.png" border="0" alt="" usemap="#Passenger_1_1ConfigurationException_map"/>
|
58
|
+
<map name="Passenger_1_1ConfigurationException_map" id="Passenger_1_1ConfigurationException">
|
59
|
+
<area shape="rect" id="node1" href="classPassenger_1_1ConfigurationException.html" title="Thrown when an invalid configuration is given." alt="" coords="7,5,249,35"/></map></td></tr>
|
60
|
+
<tr><td><img src="inherit__graph__9.png" border="0" alt="" usemap="#Passenger_1_1DirectoryMapper_map"/>
|
61
|
+
<map name="Passenger_1_1DirectoryMapper_map" id="Passenger_1_1DirectoryMapper">
|
62
|
+
<area shape="rect" id="node1" href="classPassenger_1_1DirectoryMapper.html" title="Utility class for determining URI-to-application directory mappings." alt="" coords="5,5,208,35"/></map></td></tr>
|
63
|
+
<tr><td><img src="inherit__graph__10.png" border="0" alt="" usemap="#Passenger_1_1EventedClient_map"/>
|
64
|
+
<map name="Passenger_1_1EventedClient_map" id="Passenger_1_1EventedClient">
|
65
|
+
<area shape="rect" id="node1" href="classPassenger_1_1EventedClient.html" title="A utility class for making I/O handling in non-blocking libev evented servers much..." alt="" coords="5,5,189,35"/></map></td></tr>
|
66
|
+
<tr><td><img src="inherit__graph__11.png" border="0" alt="" usemap="#Passenger_1_1EventedServer_map"/>
|
67
|
+
<map name="Passenger_1_1EventedServer_map" id="Passenger_1_1EventedServer">
|
68
|
+
<area shape="rect" id="node1" href="classPassenger_1_1EventedServer.html" title="A base class for writing single-threaded, evented servers that use non-blocking I/O..." alt="" coords="7,5,196,35"/><area shape="rect" id="node3" href="classPassenger_1_1EventedMessageServer.html" title="Note when overriding onNewClient: call the parent method first! It does some initialization..." alt="" coords="245,5,493,35"/></map></td></tr>
|
69
|
+
<tr><td><img src="inherit__graph__12.png" border="0" alt="" usemap="#Passenger_1_1EventFd_map"/>
|
70
|
+
<map name="Passenger_1_1EventFd_map" id="Passenger_1_1EventFd">
|
71
|
+
<area shape="rect" id="node1" href="classPassenger_1_1EventFd.html" title="A synchronization mechanism that's implemented with file descriptors, and as..." alt="" coords="7,5,153,35"/></map></td></tr>
|
72
|
+
<tr><td><img src="inherit__graph__13.png" border="0" alt="" usemap="#Passenger_1_1FileDescriptor_map"/>
|
73
|
+
<map name="Passenger_1_1FileDescriptor_map" id="Passenger_1_1FileDescriptor">
|
74
|
+
<area shape="rect" id="node1" href="classPassenger_1_1FileDescriptor.html" title="Wrapper class around a file descriptor integer, for RAII behavior." alt="" coords="5,5,189,35"/></map></td></tr>
|
75
|
+
<tr><td><img src="inherit__graph__14.png" border="0" alt="" usemap="#Passenger_1_1HttpStatusExtractor_map"/>
|
76
|
+
<map name="Passenger_1_1HttpStatusExtractor_map" id="Passenger_1_1HttpStatusExtractor">
|
77
|
+
<area shape="rect" id="node1" href="classPassenger_1_1HttpStatusExtractor.html" title="Utility class for extracting the HTTP status value from an HTTP response." alt="" coords="5,5,229,35"/></map></td></tr>
|
78
|
+
<tr><td><img src="inherit__graph__15.png" border="0" alt="" usemap="#Passenger_1_1IOException_map"/>
|
79
|
+
<map name="Passenger_1_1IOException_map" id="Passenger_1_1IOException">
|
80
|
+
<area shape="rect" id="node1" href="classPassenger_1_1IOException.html" title="Represents an error that occured during an I/O operation." alt="" coords="7,32,177,61"/><area shape="rect" id="node3" href="classPassenger_1_1EOFException.html" title="An unexpected end-of-file I/O error." alt="" coords="256,5,440,35"/><area shape="rect" id="node5" href="classPassenger_1_1FileNotFoundException.html" title="Thrown when a certain file cannot be found." alt="" coords="228,59,468,88"/></map></td></tr>
|
81
|
+
<tr><td><img src="inherit__graph__16.png" border="0" alt="" usemap="#Passenger_1_1MessageChannel_map"/>
|
82
|
+
<map name="Passenger_1_1MessageChannel_map" id="Passenger_1_1MessageChannel">
|
83
|
+
<area shape="rect" id="node1" href="classPassenger_1_1MessageChannel.html" title="Convenience class for I/O operations on file descriptors." alt="" coords="5,5,211,35"/></map></td></tr>
|
84
|
+
<tr><td><img src="inherit__graph__17.png" border="0" alt="" usemap="#Passenger_1_1MessageServer_map"/>
|
85
|
+
<map name="Passenger_1_1MessageServer_map" id="Passenger_1_1MessageServer">
|
86
|
+
<area shape="rect" id="node1" href="classPassenger_1_1MessageServer.html" title="Simple pluggable request/response messaging server framework." alt="" coords="7,5,201,35"/></map></td></tr>
|
87
|
+
<tr><td><img src="inherit__graph__18.png" border="0" alt="" usemap="#Passenger_1_1MessageServer_1_1ClientContext_map"/>
|
88
|
+
<map name="Passenger_1_1MessageServer_1_1ClientContext_map" id="Passenger_1_1MessageServer_1_1ClientContext">
|
89
|
+
<area shape="rect" id="node1" href="classPassenger_1_1MessageServer_1_1ClientContext.html" title="Interface for client context objects." alt="" coords="7,5,295,35"/><area shape="rect" id="node3" href="classPassenger_1_1MessageServer_1_1CommonClientContext.html" title="A common client context, containing client-specific information used by MessageServer..." alt="" coords="345,5,692,35"/></map></td></tr>
|
90
|
+
<tr><td><img src="inherit__graph__19.png" border="0" alt="" usemap="#Passenger_1_1MessageServer_1_1DisconnectEventBroadcastGuard_map"/>
|
91
|
+
<map name="Passenger_1_1MessageServer_1_1DisconnectEventBroadcastGuard_map" id="Passenger_1_1MessageServer_1_1DisconnectEventBroadcastGuard">
|
92
|
+
<area shape="rect" id="node1" href="structPassenger_1_1MessageServer_1_1DisconnectEventBroadcastGuard.html" title="Calls clientDisconnected() on all handlers when destroyed." alt="" coords="7,5,420,35"/></map></td></tr>
|
93
|
+
<tr><td><img src="inherit__graph__20.png" border="0" alt="" usemap="#Passenger_1_1MessageServer_1_1Handler_map"/>
|
94
|
+
<map name="Passenger_1_1MessageServer_1_1Handler_map" id="Passenger_1_1MessageServer_1_1Handler">
|
95
|
+
<area shape="rect" id="node1" href="classPassenger_1_1MessageServer_1_1Handler.html" title="An abstract message handler class." alt="" coords="5,5,259,35"/></map></td></tr>
|
96
|
+
<tr><td><img src="inherit__graph__21.png" border="0" alt="" usemap="#Passenger_1_1PoolOptions_map"/>
|
97
|
+
<map name="Passenger_1_1PoolOptions_map" id="Passenger_1_1PoolOptions">
|
98
|
+
<area shape="rect" id="node1" href="structPassenger_1_1PoolOptions.html" title="This struct encapsulates information for ApplicationPool::get() and for SpawnManager::spawn()..." alt="" coords="7,5,177,35"/></map></td></tr>
|
99
|
+
<tr><td><img src="inherit__graph__22.png" border="0" alt="" usemap="#Passenger_1_1Process_map"/>
|
100
|
+
<map name="Passenger_1_1Process_map" id="Passenger_1_1Process">
|
101
|
+
<area shape="rect" id="node1" href="classPassenger_1_1Process.html" title="Represents a single application process, as spawned by SpawnManager or by ApplicationPool::Interface..." alt="" coords="5,5,152,35"/></map></td></tr>
|
102
|
+
<tr><td><img src="inherit__graph__23.png" border="0" alt="" usemap="#Passenger_1_1RandomGenerator_map"/>
|
103
|
+
<map name="Passenger_1_1RandomGenerator_map" id="Passenger_1_1RandomGenerator">
|
104
|
+
<area shape="rect" id="node1" href="classPassenger_1_1RandomGenerator.html" title="A random data generator." alt="" coords="7,5,220,35"/></map></td></tr>
|
105
|
+
<tr><td><img src="inherit__graph__24.png" border="0" alt="" usemap="#Passenger_1_1RuntimeException_map"/>
|
106
|
+
<map name="Passenger_1_1RuntimeException_map" id="Passenger_1_1RuntimeException">
|
107
|
+
<area shape="rect" id="node1" href="classPassenger_1_1RuntimeException.html" title="A generic runtime exception." alt="" coords="7,5,217,35"/></map></td></tr>
|
108
|
+
<tr><td><img src="inherit__graph__25.png" border="0" alt="" usemap="#Passenger_1_1ScalarMessage_map"/>
|
109
|
+
<map name="Passenger_1_1ScalarMessage_map" id="Passenger_1_1ScalarMessage">
|
110
|
+
<area shape="rect" id="node1" href="classPassenger_1_1ScalarMessage.html" title="Class for reading a scalar message." alt="" coords="7,5,199,35"/></map></td></tr>
|
111
|
+
<tr><td><img src="inherit__graph__26.png" border="0" alt="" usemap="#Passenger_1_1ScgiRequestParser_map"/>
|
112
|
+
<map name="Passenger_1_1ScgiRequestParser_map" id="Passenger_1_1ScgiRequestParser">
|
113
|
+
<area shape="rect" id="node1" href="classPassenger_1_1ScgiRequestParser.html" title="A parser for SCGI requests." alt="" coords="5,5,221,35"/></map></td></tr>
|
114
|
+
<tr><td><img src="inherit__graph__27.png" border="0" alt="" usemap="#Passenger_1_1SecurityException_map"/>
|
115
|
+
<map name="Passenger_1_1SecurityException_map" id="Passenger_1_1SecurityException">
|
116
|
+
<area shape="rect" id="node1" href="classPassenger_1_1SecurityException.html" title="Represents some kind of security error." alt="" coords="5,5,216,35"/></map></td></tr>
|
117
|
+
<tr><td><img src="inherit__graph__28.png" border="0" alt="" usemap="#Passenger_1_1Session_map"/>
|
118
|
+
<map name="Passenger_1_1Session_map" id="Passenger_1_1Session">
|
119
|
+
<area shape="rect" id="node1" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process." alt="" coords="5,5,152,35"/><area shape="rect" id="node3" href="classPassenger_1_1StandardSession.html" title="A "standard" implementation of Session." alt="" coords="200,5,405,35"/></map></td></tr>
|
120
|
+
<tr><td><img src="inherit__graph__29.png" border="0" alt="" usemap="#Passenger_1_1SpawnException_map"/>
|
121
|
+
<map name="Passenger_1_1SpawnException_map" id="Passenger_1_1SpawnException">
|
122
|
+
<area shape="rect" id="node1" href="classPassenger_1_1SpawnException.html" title="Thrown when SpawnManager or ApplicationPool fails to spawn an application instance..." alt="" coords="5,5,205,35"/></map></td></tr>
|
123
|
+
<tr><td><img src="inherit__graph__30.png" border="0" alt="" usemap="#Passenger_1_1StaticString_map"/>
|
124
|
+
<map name="Passenger_1_1StaticString_map" id="Passenger_1_1StaticString">
|
125
|
+
<area shape="rect" id="node1" href="classPassenger_1_1StaticString.html" title="An immutable, static byte buffer." alt="" coords="7,5,177,35"/></map></td></tr>
|
126
|
+
<tr><td><img src="inherit__graph__31.png" border="0" alt="" usemap="#Passenger_1_1StaticString_1_1Hash_map"/>
|
127
|
+
<map name="Passenger_1_1StaticString_1_1Hash_map" id="Passenger_1_1StaticString_1_1Hash">
|
128
|
+
<area shape="rect" id="node1" href="structPassenger_1_1StaticString_1_1Hash.html" title="A hash function object for StaticString." alt="" coords="7,5,217,35"/></map></td></tr>
|
129
|
+
<tr><td><img src="inherit__graph__32.png" border="0" alt="" usemap="#Passenger_1_1SystemException_map"/>
|
130
|
+
<map name="Passenger_1_1SystemException_map" id="Passenger_1_1SystemException">
|
131
|
+
<area shape="rect" id="node1" href="classPassenger_1_1SystemException.html" title="Represents an error returned by a system call or a standard library call." alt="" coords="5,32,213,61"/><area shape="rect" id="node3" href="classPassenger_1_1FileSystemException.html" title="A filesystem error, as returned by the operating system." alt="" coords="271,5,497,35"/><area shape="rect" id="node5" href="classPassenger_1_1TimeRetrievalException.html" title="Unable to retrieve the system time using time()." alt="" coords="263,59,505,88"/></map></td></tr>
|
132
|
+
<tr><td><img src="inherit__graph__33.png" border="0" alt="" usemap="#Passenger_1_1TimeoutException_map"/>
|
133
|
+
<map name="Passenger_1_1TimeoutException_map" id="Passenger_1_1TimeoutException">
|
134
|
+
<area shape="rect" id="node1" href="classPassenger_1_1TimeoutException.html" title="An exception indicating that some timeout expired." alt="" coords="5,5,216,35"/></map></td></tr>
|
135
|
+
<tr><td><img src="inherit__graph__34.png" border="0" alt="" usemap="#Passenger_1_1Uint16Message_map"/>
|
136
|
+
<map name="Passenger_1_1Uint16Message_map" id="Passenger_1_1Uint16Message">
|
137
|
+
<area shape="rect" id="node1" href="classPassenger_1_1Uint16Message.html" title="For 16-bit big-endian integers." alt="" coords="7,5,201,35"/></map></td></tr>
|
138
|
+
<tr><td><img src="inherit__graph__35.png" border="0" alt="" usemap="#Passenger_1_1Uint32Message_map"/>
|
139
|
+
<map name="Passenger_1_1Uint32Message_map" id="Passenger_1_1Uint32Message">
|
140
|
+
<area shape="rect" id="node1" href="classPassenger_1_1Uint32Message.html" title="For 32-bit big-endian integers." alt="" coords="7,5,201,35"/></map></td></tr>
|
141
|
+
<tr><td><img src="inherit__graph__36.png" border="0" alt="" usemap="#Server_map"/>
|
142
|
+
<map name="Server_map" id="Server">
|
143
|
+
<area shape="rect" id="node1" href="classServer.html" title="A representation of the Server responsible for handling Client instances." alt="" coords="5,5,69,35"/></map></td></tr>
|
144
|
+
<tr><td><img src="inherit__graph__37.png" border="0" alt="" usemap="#ServerInstanceDirToucher_map"/>
|
145
|
+
<map name="ServerInstanceDirToucher_map" id="ServerInstanceDirToucher">
|
146
|
+
<area shape="rect" id="node1" href="classServerInstanceDirToucher.html" title="Touch all files in the server instance dir every 6 hours in order to prevent /tmp..." alt="" coords="7,5,191,35"/></map></td></tr>
|
150
147
|
</table>
|
151
148
|
</div>
|
152
|
-
<hr size="1"
|
149
|
+
<hr size="1"/><address style="text-align: right;"><small>Generated by
|
153
150
|
<a href="http://www.doxygen.org/index.html">
|
154
|
-
<img src="doxygen.png" alt="doxygen"
|
151
|
+
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2 </small></address>
|
155
152
|
</body>
|
156
153
|
</html>
|
data/doc/cxxapi/main.html
CHANGED
@@ -13,6 +13,7 @@
|
|
13
13
|
<ul>
|
14
14
|
<li class="current"><a href="main.html"><span>Main Page</span></a></li>
|
15
15
|
<li><a href="modules.html"><span>Modules</span></a></li>
|
16
|
+
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
16
17
|
<li><a href="annotated.html"><span>Classes</span></a></li>
|
17
18
|
<li><a href="files.html"><span>Files</span></a></li>
|
18
19
|
</ul>
|
data/doc/cxxapi/modules.html
CHANGED
@@ -13,6 +13,7 @@
|
|
13
13
|
<ul>
|
14
14
|
<li><a href="main.html"><span>Main Page</span></a></li>
|
15
15
|
<li class="current"><a href="modules.html"><span>Modules</span></a></li>
|
16
|
+
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
16
17
|
<li><a href="annotated.html"><span>Classes</span></a></li>
|
17
18
|
<li><a href="files.html"><span>Files</span></a></li>
|
18
19
|
</ul>
|
@@ -21,11 +22,11 @@
|
|
21
22
|
<div class="contents">
|
22
23
|
<h1>Modules</h1>Here is a list of all modules:<ul>
|
23
24
|
<li><a class="el" href="group__Core.html">Core Apache-related classes and functions</a><ul>
|
24
|
-
<li><a class="el" href="group__Configuration.html">Apache module configuration</a></li>
|
25
25
|
<li><a class="el" href="group__Hooks.html">Apache hooks</a></li>
|
26
26
|
</ul>
|
27
27
|
</li>
|
28
28
|
<li><a class="el" href="group__Support.html">Apache-independent support classes and function</a></li>
|
29
|
+
<li><a class="el" href="group__Exceptions.html">Exceptions</a></li>
|
29
30
|
</ul>
|
30
31
|
</div>
|
31
32
|
<hr size="1"/><address style="text-align: right;"><small>Generated by
|
@@ -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 Namespace 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>
|
@@ -23,439 +26,268 @@
|
|
23
26
|
</div>
|
24
27
|
</div>
|
25
28
|
<div class="contents">
|
26
|
-
<h1>Passenger Namespace Reference</h1>
|
27
|
-
<
|
28
|
-
<p>
|
29
|
+
<h1>Passenger Namespace Reference</h1>
|
30
|
+
<p>Common code for all agents.
|
31
|
+
<a href="#_details">More...</a></p>
|
29
32
|
<table border="0" cellpadding="0" cellspacing="0">
|
30
|
-
<tr><td></td></tr>
|
31
|
-
<tr><td
|
32
|
-
<tr><td class="
|
33
|
-
|
34
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
35
|
-
<tr><td class="memItemLeft"
|
36
|
-
|
37
|
-
<tr><td class="
|
38
|
-
<tr><td class="
|
39
|
-
|
40
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
41
|
-
<tr><td class="memItemLeft"
|
42
|
-
|
43
|
-
<tr><td class="
|
44
|
-
<tr><td class="
|
45
|
-
|
46
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Unable to retrieve the system time using <code>time()</code>. <a href="classPassenger_1_1TimeRetrievalException.html#_details">More...</a><br
|
47
|
-
<tr><td class="memItemLeft"
|
48
|
-
|
49
|
-
<tr><td class="
|
50
|
-
<tr><td class="
|
51
|
-
|
52
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
53
|
-
<tr><td class="memItemLeft"
|
54
|
-
|
55
|
-
<tr><td class="
|
56
|
-
<tr><td class="
|
57
|
-
|
58
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
59
|
-
<tr><td class="memItemLeft"
|
60
|
-
|
61
|
-
<tr><td class="
|
62
|
-
<tr><td class="
|
63
|
-
|
64
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
65
|
-
<tr><td class="memItemLeft"
|
66
|
-
|
67
|
-
<tr><td class="
|
68
|
-
<tr><td class="
|
69
|
-
|
70
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
71
|
-
<tr><td class="memItemLeft"
|
72
|
-
|
73
|
-
<tr><td class="
|
74
|
-
<tr><td class="
|
75
|
-
|
76
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
77
|
-
<tr><td class="memItemLeft"
|
78
|
-
|
79
|
-
<tr><td class="
|
80
|
-
<tr><td class="
|
81
|
-
|
82
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
83
|
-
<tr><td class="memItemLeft"
|
84
|
-
|
85
|
-
<tr><td class="
|
86
|
-
<tr><td class="
|
87
|
-
|
88
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
89
|
-
<tr><td class="memItemLeft"
|
90
|
-
|
91
|
-
<tr><td class="
|
92
|
-
<tr><td class="
|
93
|
-
|
94
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
95
|
-
<tr><td class="memItemLeft"
|
96
|
-
|
97
|
-
<tr><td class="
|
98
|
-
<tr><td class="
|
99
|
-
|
100
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
101
|
-
<tr><td class="memItemLeft"
|
102
|
-
|
103
|
-
<tr><td
|
104
|
-
<tr><td class="memItemLeft"
|
105
|
-
|
106
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
107
|
-
<tr><td class="memItemLeft"
|
108
|
-
|
109
|
-
<tr><td class="
|
110
|
-
<tr><td class="
|
111
|
-
|
112
|
-
<tr><td class="
|
113
|
-
<
|
114
|
-
|
115
|
-
<
|
116
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1SpawnManager.html">SpawnManager</a></td></tr>
|
117
|
-
|
118
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">An <a class="el" href="classPassenger_1_1AbstractSpawnManager.html" title="Spawning of application processes.">AbstractSpawnManager</a> implementation. <a href="classPassenger_1_1SpawnManager.html#_details">More...</a><br></td></tr>
|
119
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1StaticString.html">StaticString</a></td></tr>
|
120
|
-
|
121
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">An immutable, static byte buffer. <a href="classPassenger_1_1StaticString.html#_details">More...</a><br></td></tr>
|
122
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structPassenger_1_1AnythingToString.html">AnythingToString</a></td></tr>
|
123
|
-
|
124
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Used internally by <a class="el" href="group__Support.html#gf6fab368d70c18fdf16bf5a24f630407" title="Convert anything to a string.">toString()</a>. <a href="structPassenger_1_1AnythingToString.html#_details">More...</a><br></td></tr>
|
125
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structPassenger_1_1AnythingToString_3_01vector_3_01string_01_4_01_4.html">AnythingToString< vector< string > ></a></td></tr>
|
126
|
-
|
127
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Used internally by <a class="el" href="group__Support.html#gf6fab368d70c18fdf16bf5a24f630407" title="Convert anything to a string.">toString()</a>. <a href="structPassenger_1_1AnythingToString_3_01vector_3_01string_01_4_01_4.html#_details">More...</a><br></td></tr>
|
128
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structPassenger_1_1AnythingToString_3_01vector_3_01StaticString_01_4_01_4.html">AnythingToString< vector< StaticString > ></a></td></tr>
|
129
|
-
|
130
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Used internally by <a class="el" href="group__Support.html#gf6fab368d70c18fdf16bf5a24f630407" title="Convert anything to a string.">toString()</a>. <a href="structPassenger_1_1AnythingToString_3_01vector_3_01StaticString_01_4_01_4.html#_details">More...</a><br></td></tr>
|
131
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1BufferedUpload.html">BufferedUpload</a></td></tr>
|
132
|
-
|
133
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Represents a buffered upload file. <a href="classPassenger_1_1BufferedUpload.html#_details">More...</a><br></td></tr>
|
134
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1MemZeroGuard.html">MemZeroGuard</a></td></tr>
|
135
|
-
|
136
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Fills the given memory space or string with zeroes when a MemoryZeroGuard object is destroyed. <a href="classPassenger_1_1MemZeroGuard.html#_details">More...</a><br></td></tr>
|
137
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1HttpStatusExtractor.html">HttpStatusExtractor</a></td></tr>
|
138
|
-
|
139
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Utility class for extracting the HTTP status value from an HTTP response. <a href="classPassenger_1_1HttpStatusExtractor.html#_details">More...</a><br></td></tr>
|
140
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1ScgiRequestParser.html">ScgiRequestParser</a></td></tr>
|
141
|
-
|
142
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">A parser for SCGI requests. <a href="classPassenger_1_1ScgiRequestParser.html#_details">More...</a><br></td></tr>
|
143
|
-
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
|
144
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef shared_ptr<br class="typebreak">
|
145
|
-
< <a class="el" href="classPassenger_1_1AbstractSpawnManager.html">AbstractSpawnManager</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#fd60d942a89fbb7f306e330d75704570">AbstractSpawnManagerPtr</a></td></tr>
|
146
|
-
|
147
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenient alias for <a class="el" href="classPassenger_1_1AbstractSpawnManager.html" title="Spawning of application processes.">AbstractSpawnManager</a> smart pointer. <a href="#fd60d942a89fbb7f306e330d75704570"></a><br></td></tr>
|
148
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef shared_ptr< <a class="el" href="classPassenger_1_1Process.html">Process</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#ced1f248465136b313c6dec5fe6ca492">ProcessPtr</a></td></tr>
|
149
|
-
|
150
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenient alias for <a class="el" href="classPassenger_1_1Process.html" title="Represents a single application process, as spawned by SpawnManager or by ApplicationPool::Interface...">Process</a> smart pointer. <a href="#ced1f248465136b313c6dec5fe6ca492"></a><br></td></tr>
|
151
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef shared_ptr< <a class="el" href="classPassenger_1_1SpawnManager.html">SpawnManager</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#6ab2d566ff87a2676c23d8aa40204587">SpawnManagerPtr</a></td></tr>
|
152
|
-
|
153
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenient alias for <a class="el" href="classPassenger_1_1SpawnManager.html" title="An AbstractSpawnManager implementation.">SpawnManager</a> smart pointer. <a href="#6ab2d566ff87a2676c23d8aa40204587"></a><br></td></tr>
|
154
|
-
<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
|
155
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#14174b712df6046cb823cde43d7ef07d">FileType</a> { <a class="el" href="namespacePassenger.html#14174b712df6046cb823cde43d7ef07d9fc66834fe96c52799397496b8df8486">FT_NONEXISTANT</a>,
|
156
|
-
<a class="el" href="namespacePassenger.html#14174b712df6046cb823cde43d7ef07d1538596a928321d1a282c6bb06e80563">FT_REGULAR</a>,
|
157
|
-
<a class="el" href="namespacePassenger.html#14174b712df6046cb823cde43d7ef07dbb09dbba1071b4770913363db2462eee">FT_DIRECTORY</a>,
|
158
|
-
<a class="el" href="namespacePassenger.html#14174b712df6046cb823cde43d7ef07d3e89b9a7be074975e007d9f7cd77f4ff">FT_OTHER</a>
|
33
|
+
<tr><td colspan="2"><h2>Classes</h2></td></tr>
|
34
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1DirectoryMapper.html">DirectoryMapper</a></td></tr>
|
35
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Utility class for determining URI-to-application directory mappings. <a href="classPassenger_1_1DirectoryMapper.html#_details">More...</a><br/></td></tr>
|
36
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1AbstractSpawnManager.html">AbstractSpawnManager</a></td></tr>
|
37
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Spawning of application processes. <a href="classPassenger_1_1AbstractSpawnManager.html#_details">More...</a><br/></td></tr>
|
38
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1EventedClient.html">EventedClient</a></td></tr>
|
39
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">A utility class for making I/O handling in non-blocking libev evented servers much easier. <a href="classPassenger_1_1EventedClient.html#_details">More...</a><br/></td></tr>
|
40
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1EventedMessageServer.html">EventedMessageServer</a></td></tr>
|
41
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Note when overriding onNewClient: call the parent method first! It does some initialization but might disconnect the client if that initialization fails. <a href="classPassenger_1_1EventedMessageServer.html#_details">More...</a><br/></td></tr>
|
42
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1EventedServer.html">EventedServer</a></td></tr>
|
43
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">A base class for writing single-threaded, evented servers that use non-blocking I/O. <a href="classPassenger_1_1EventedServer.html#_details">More...</a><br/></td></tr>
|
44
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1SystemException.html">SystemException</a></td></tr>
|
45
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Represents an error returned by a system call or a standard library call. <a href="classPassenger_1_1SystemException.html#_details">More...</a><br/></td></tr>
|
46
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1FileSystemException.html">FileSystemException</a></td></tr>
|
47
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">A filesystem error, as returned by the operating system. <a href="classPassenger_1_1FileSystemException.html#_details">More...</a><br/></td></tr>
|
48
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1TimeRetrievalException.html">TimeRetrievalException</a></td></tr>
|
49
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Unable to retrieve the system time using <code>time()</code>. <a href="classPassenger_1_1TimeRetrievalException.html#_details">More...</a><br/></td></tr>
|
50
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1IOException.html">IOException</a></td></tr>
|
51
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Represents an error that occured during an I/O operation. <a href="classPassenger_1_1IOException.html#_details">More...</a><br/></td></tr>
|
52
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1FileNotFoundException.html">FileNotFoundException</a></td></tr>
|
53
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Thrown when a certain file cannot be found. <a href="classPassenger_1_1FileNotFoundException.html#_details">More...</a><br/></td></tr>
|
54
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1EOFException.html">EOFException</a></td></tr>
|
55
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">An unexpected end-of-file I/O error. <a href="classPassenger_1_1EOFException.html#_details">More...</a><br/></td></tr>
|
56
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1ConfigurationException.html">ConfigurationException</a></td></tr>
|
57
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Thrown when an invalid configuration is given. <a href="classPassenger_1_1ConfigurationException.html#_details">More...</a><br/></td></tr>
|
58
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1SpawnException.html">SpawnException</a></td></tr>
|
59
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Thrown when <a class="el" href="classPassenger_1_1SpawnManager.html" title="An AbstractSpawnManager implementation.">SpawnManager</a> or ApplicationPool fails to spawn an application instance. <a href="classPassenger_1_1SpawnException.html#_details">More...</a><br/></td></tr>
|
60
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1ArgumentException.html">ArgumentException</a></td></tr>
|
61
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Indicates that a specified argument is incorrect or violates a requirement. <a href="classPassenger_1_1ArgumentException.html#_details">More...</a><br/></td></tr>
|
62
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1RuntimeException.html">RuntimeException</a></td></tr>
|
63
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">A generic runtime exception. <a href="classPassenger_1_1RuntimeException.html#_details">More...</a><br/></td></tr>
|
64
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1TimeoutException.html">TimeoutException</a></td></tr>
|
65
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">An exception indicating that some timeout expired. <a href="classPassenger_1_1TimeoutException.html#_details">More...</a><br/></td></tr>
|
66
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1SecurityException.html">SecurityException</a></td></tr>
|
67
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Represents some kind of security error. <a href="classPassenger_1_1SecurityException.html#_details">More...</a><br/></td></tr>
|
68
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1BusyException.html">BusyException</a></td></tr>
|
69
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">The application pool is too busy and cannot fulfill a get() request. <a href="classPassenger_1_1BusyException.html#_details">More...</a><br/></td></tr>
|
70
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1FileDescriptor.html">FileDescriptor</a></td></tr>
|
71
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Wrapper class around a file descriptor integer, for RAII behavior. <a href="classPassenger_1_1FileDescriptor.html#_details">More...</a><br/></td></tr>
|
72
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1EventFd.html">EventFd</a></td></tr>
|
73
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">A synchronization mechanism that's implemented with file descriptors, and as such can be used in combination with select() and friends. <a href="classPassenger_1_1EventFd.html#_details">More...</a><br/></td></tr>
|
74
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1MessageChannel.html">MessageChannel</a></td></tr>
|
75
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenience class for I/O operations on file descriptors. <a href="classPassenger_1_1MessageChannel.html#_details">More...</a><br/></td></tr>
|
76
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Uint16Message.html">Uint16Message</a></td></tr>
|
77
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">For 16-bit big-endian integers. <a href="classPassenger_1_1Uint16Message.html#_details">More...</a><br/></td></tr>
|
78
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Uint32Message.html">Uint32Message</a></td></tr>
|
79
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">For 32-bit big-endian integers. <a href="classPassenger_1_1Uint32Message.html#_details">More...</a><br/></td></tr>
|
80
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1ArrayMessage.html">ArrayMessage</a></td></tr>
|
81
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">For array messages. <a href="classPassenger_1_1ArrayMessage.html#_details">More...</a><br/></td></tr>
|
82
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1ScalarMessage.html">ScalarMessage</a></td></tr>
|
83
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Class for reading a scalar message. <a href="classPassenger_1_1ScalarMessage.html#_details">More...</a><br/></td></tr>
|
84
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1MessageServer.html">MessageServer</a></td></tr>
|
85
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Simple pluggable request/response messaging server framework. <a href="classPassenger_1_1MessageServer.html#_details">More...</a><br/></td></tr>
|
86
|
+
<tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structPassenger_1_1PoolOptions.html">PoolOptions</a></td></tr>
|
87
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">This struct encapsulates information for ApplicationPool::get() and for <a class="el" href="classPassenger_1_1SpawnManager.html#a88a94ba4d41dab492cb1dc8a0f998973" title="Spawn a new application process.">SpawnManager::spawn()</a>, such as which application is to be spawned. <a href="structPassenger_1_1PoolOptions.html#_details">More...</a><br/></td></tr>
|
88
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Process.html">Process</a></td></tr>
|
89
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Represents a single application process, as spawned by <a class="el" href="classPassenger_1_1SpawnManager.html" title="An AbstractSpawnManager implementation.">SpawnManager</a> or by ApplicationPool::Interface::get(). <a href="classPassenger_1_1Process.html#_details">More...</a><br/></td></tr>
|
90
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1RandomGenerator.html">RandomGenerator</a></td></tr>
|
91
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">A random data generator. <a href="classPassenger_1_1RandomGenerator.html#_details">More...</a><br/></td></tr>
|
92
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1Session.html">Session</a></td></tr>
|
93
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Represents a single request/response pair of an application process. <a href="classPassenger_1_1Session.html#_details">More...</a><br/></td></tr>
|
94
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1StandardSession.html">StandardSession</a></td></tr>
|
95
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">A "standard" implementation of <a class="el" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process.">Session</a>. <a href="classPassenger_1_1StandardSession.html#_details">More...</a><br/></td></tr>
|
96
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1SpawnManager.html">SpawnManager</a></td></tr>
|
97
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">An <a class="el" href="classPassenger_1_1AbstractSpawnManager.html" title="Spawning of application processes.">AbstractSpawnManager</a> implementation. <a href="classPassenger_1_1SpawnManager.html#_details">More...</a><br/></td></tr>
|
98
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1StaticString.html">StaticString</a></td></tr>
|
99
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">An immutable, static byte buffer. <a href="classPassenger_1_1StaticString.html#_details">More...</a><br/></td></tr>
|
100
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1BufferedUpload.html">BufferedUpload</a></td></tr>
|
101
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Represents a buffered upload file. <a href="classPassenger_1_1BufferedUpload.html#_details">More...</a><br/></td></tr>
|
102
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1HttpStatusExtractor.html">HttpStatusExtractor</a></td></tr>
|
103
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Utility class for extracting the HTTP status value from an HTTP response. <a href="classPassenger_1_1HttpStatusExtractor.html#_details">More...</a><br/></td></tr>
|
104
|
+
<tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classPassenger_1_1ScgiRequestParser.html">ScgiRequestParser</a></td></tr>
|
105
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">A parser for SCGI requests. <a href="classPassenger_1_1ScgiRequestParser.html#_details">More...</a><br/></td></tr>
|
106
|
+
<tr><td colspan="2"><h2>Typedefs</h2></td></tr>
|
107
|
+
<tr><td class="memItemLeft" align="right" valign="top">typedef shared_ptr<br class="typebreak"/>
|
108
|
+
< <a class="el" href="classPassenger_1_1AbstractSpawnManager.html">AbstractSpawnManager</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#afd60d942a89fbb7f306e330d75704570">AbstractSpawnManagerPtr</a></td></tr>
|
109
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenient alias for <a class="el" href="classPassenger_1_1AbstractSpawnManager.html" title="Spawning of application processes.">AbstractSpawnManager</a> smart pointer. <a href="#afd60d942a89fbb7f306e330d75704570"></a><br/></td></tr>
|
110
|
+
<tr><td class="memItemLeft" align="right" valign="top">typedef shared_ptr< <a class="el" href="classPassenger_1_1Process.html">Process</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#aced1f248465136b313c6dec5fe6ca492">ProcessPtr</a></td></tr>
|
111
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenient alias for <a class="el" href="classPassenger_1_1Process.html" title="Represents a single application process, as spawned by SpawnManager or by ApplicationPool::Interface...">Process</a> smart pointer. <a href="#aced1f248465136b313c6dec5fe6ca492"></a><br/></td></tr>
|
112
|
+
<tr><td class="memItemLeft" align="right" valign="top">typedef shared_ptr< <a class="el" href="classPassenger_1_1SpawnManager.html">SpawnManager</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#a6ab2d566ff87a2676c23d8aa40204587">SpawnManagerPtr</a></td></tr>
|
113
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenient alias for <a class="el" href="classPassenger_1_1SpawnManager.html" title="An AbstractSpawnManager implementation.">SpawnManager</a> smart pointer. <a href="#a6ab2d566ff87a2676c23d8aa40204587"></a><br/></td></tr>
|
114
|
+
<tr><td colspan="2"><h2>Enumerations</h2></td></tr>
|
115
|
+
<tr><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#a14174b712df6046cb823cde43d7ef07d">FileType</a> { <a class="el" href="namespacePassenger.html#a14174b712df6046cb823cde43d7ef07da9fc66834fe96c52799397496b8df8486">FT_NONEXISTANT</a>,
|
116
|
+
<a class="el" href="namespacePassenger.html#a14174b712df6046cb823cde43d7ef07da1538596a928321d1a282c6bb06e80563">FT_REGULAR</a>,
|
117
|
+
<a class="el" href="namespacePassenger.html#a14174b712df6046cb823cde43d7ef07dabb09dbba1071b4770913363db2462eee">FT_DIRECTORY</a>,
|
118
|
+
<a class="el" href="namespacePassenger.html#a14174b712df6046cb823cde43d7ef07da3e89b9a7be074975e007d9f7cd77f4ff">FT_OTHER</a>
|
159
119
|
}</td></tr>
|
160
|
-
|
161
|
-
|
162
|
-
<tr><td colspan="2"><
|
163
|
-
<tr><td class="memItemLeft"
|
164
|
-
|
165
|
-
<tr><td class="
|
166
|
-
<tr><td class="
|
167
|
-
|
168
|
-
|
169
|
-
<tr><td class="
|
170
|
-
<tr><td class="
|
171
|
-
|
172
|
-
|
173
|
-
<tr><td class="
|
174
|
-
<tr><td class="
|
175
|
-
|
176
|
-
|
177
|
-
<tr><td class="
|
178
|
-
|
179
|
-
|
180
|
-
<tr><td class="
|
181
|
-
|
182
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
183
|
-
<tr><td class="memItemLeft"
|
184
|
-
|
185
|
-
<tr><td class="
|
186
|
-
<tr><td class="
|
187
|
-
|
188
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">
|
189
|
-
<tr><td class="memItemLeft"
|
190
|
-
|
191
|
-
<tr><td class="
|
192
|
-
<tr><td class="
|
193
|
-
|
194
|
-
|
195
|
-
<tr><td class="
|
196
|
-
<tr><td class="
|
197
|
-
|
198
|
-
|
199
|
-
<tr><td class="
|
200
|
-
<tr><td class="
|
201
|
-
|
202
|
-
|
203
|
-
<tr><td class="
|
204
|
-
|
205
|
-
<tr><td class="
|
206
|
-
<tr><td class="
|
207
|
-
|
208
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the username of the user that the current process is running as. <a href="#de80218e8b836b796f8b960b6225b439"></a><br></td></tr>
|
209
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">mode_t </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#da53f5a9bdcf3d22d4a710e7ea3678e9">parseModeString</a> (const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &mode)</td></tr>
|
210
|
-
|
211
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Converts a mode string into a mode_t value. <a href="#da53f5a9bdcf3d22d4a710e7ea3678e9"></a><br></td></tr>
|
212
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g68f4105c5a8e510520b5ea3eecb66213">getSystemTempDir</a> ()</td></tr>
|
213
|
-
|
214
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the path name for the directory in which the system stores general temporary files. <a href="group__Support.html#g68f4105c5a8e510520b5ea3eecb66213"></a><br></td></tr>
|
215
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#448f25263af0b37b91caee3d294ec4aa">makeDirTree</a> (const string &path, const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &mode="u=rwx,g=,o=", uid_t owner=USER_NOT_GIVEN, gid_t group=GROUP_NOT_GIVEN)</td></tr>
|
216
|
-
|
217
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Create the directory at the given path, creating intermediate directories if necessary. <a href="#448f25263af0b37b91caee3d294ec4aa"></a><br></td></tr>
|
218
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#8422d210cbd2f62d21254415b5a7f747">removeDirTree</a> (const string &path)</td></tr>
|
219
|
-
|
220
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove an entire directory tree recursively. <a href="#8422d210cbd2f62d21254415b5a7f747"></a><br></td></tr>
|
221
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g5e6bc7ff22b7c61238d7913521936f71">verifyRailsDir</a> (const string &dir, CachedFileStat *cstat=0, unsigned int throttleRate=0)</td></tr>
|
222
|
-
|
223
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Check whether the specified directory is a valid Ruby on Rails application root directory. <a href="group__Support.html#g5e6bc7ff22b7c61238d7913521936f71"></a><br></td></tr>
|
224
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g53969f8e3ee68d1d99ffe75af8db9be8">verifyRackDir</a> (const string &dir, CachedFileStat *cstat=0, unsigned int throttleRate=0)</td></tr>
|
225
|
-
|
226
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Check whether the specified directory is a valid Rack application root directory. <a href="group__Support.html#g53969f8e3ee68d1d99ffe75af8db9be8"></a><br></td></tr>
|
227
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#gaec51d2912999d611994c49341f36247">verifyWSGIDir</a> (const string &dir, CachedFileStat *cstat=0, unsigned int throttleRate=0)</td></tr>
|
228
|
-
|
229
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Check whether the specified directory is a valid WSGI application root directory. <a href="group__Support.html#gaec51d2912999d611994c49341f36247"></a><br></td></tr>
|
230
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">string </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#1d0a66b0e207c46dc6124ff3b2f331e6">getHostName</a> ()</td></tr>
|
231
|
-
|
232
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the system's host name. <a href="#1d0a66b0e207c46dc6124ff3b2f331e6"></a><br></td></tr>
|
233
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">string </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#d88884ee6e2184ef8656fc20f0549b0b">fillInMiddle</a> (unsigned int max, const string &prefix, const string &middle, const string &postfix="")</td></tr>
|
234
|
-
|
235
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Given a prefix string, a middle string and a postfix string, try to build a string that looks like <code>prefix + middle + postfix</code>, with as many characters from <code>midle</code> preserved as possible. <a href="#d88884ee6e2184ef8656fc20f0549b0b"></a><br></td></tr>
|
236
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1d4b16a419fe7231bc8b7036266f8131"></a><!-- doxytag: member="Passenger::toHex" ref="1d4b16a419fe7231bc8b7036266f8131" args="(const StaticString &data)" -->
|
237
|
-
string </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#1d4b16a419fe7231bc8b7036266f8131">toHex</a> (const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &data)</td></tr>
|
238
|
-
|
239
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert the given binary data to hexadecimal. <br></td></tr>
|
240
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#8b73dbe534ee6daf755909cf6c321166">toHex</a> (const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &data, char *output)</td></tr>
|
241
|
-
|
242
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert the given binary data to hexadecimal. <a href="#8b73dbe534ee6daf755909cf6c321166"></a><br></td></tr>
|
243
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="979cb43cef743bf261c329b13e712366"></a><!-- doxytag: member="Passenger::getSignalName" ref="979cb43cef743bf261c329b13e712366" args="(int sig)" -->
|
244
|
-
string </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#979cb43cef743bf261c329b13e712366">getSignalName</a> (int sig)</td></tr>
|
245
|
-
|
246
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a signal number to its associated name. <br></td></tr>
|
247
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#g5d3b342a34d81e7506744e90ee2f9b8b">createUnixServer</a> (const char *filename, unsigned int backlogSize=0, bool autoDelete=true)</td></tr>
|
248
|
-
|
249
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Create a new Unix server socket which is bounded to <code>filename</code>. <a href="group__Support.html#g5d3b342a34d81e7506744e90ee2f9b8b"></a><br></td></tr>
|
250
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#gae3993db9dfa0b05c97b67ccefd2b619">connectToUnixServer</a> (const char *filename)</td></tr>
|
251
|
-
|
252
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Connect to a Unix server socket at <code>filename</code>. <a href="group__Support.html#gae3993db9dfa0b05c97b67ccefd2b619"></a><br></td></tr>
|
253
|
-
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#gaf4965fbefc2dfe26c1380c621962e68">connectToTcpServer</a> (const char *hostname, unsigned int port)</td></tr>
|
254
|
-
|
255
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Connect to a TCP server socket at the given host name and port. <a href="group__Support.html#gaf4965fbefc2dfe26c1380c621962e68"></a><br></td></tr>
|
256
|
-
<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr>
|
257
|
-
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">shared_ptr< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__Support.html#g41b6c4a82fed72531a147de0505a8396">ptr</a> (T *pointer)</td></tr>
|
258
|
-
|
259
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenience shortcut for creating a <code>shared_ptr</code>. <a href="group__Support.html#g41b6c4a82fed72531a147de0505a8396"></a><br></td></tr>
|
260
|
-
<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr>
|
261
|
-
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">string </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__Support.html#gf6fab368d70c18fdf16bf5a24f630407">toString</a> (T something)</td></tr>
|
262
|
-
|
263
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert anything to a string. <a href="group__Support.html#gf6fab368d70c18fdf16bf5a24f630407"></a><br></td></tr>
|
264
|
-
<tr><td class="memTemplParams" nowrap colspan="2">template<typename IntType > </td></tr>
|
265
|
-
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">IntType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#6b2bc9d6fa3848e01fd8c164d30737cc">roundUp</a> (IntType number, IntType multiple)</td></tr>
|
266
|
-
|
267
|
-
<tr><td class="mdescLeft"> </td><td class="mdescRight">Round <em>number</em> up to the nearest multiple of <em>multiple</em>. <a href="#6b2bc9d6fa3848e01fd8c164d30737cc"></a><br></td></tr>
|
120
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight"><p>Enumeration which indicates what kind of file a file is. </p>
|
121
|
+
<a href="namespacePassenger.html#a14174b712df6046cb823cde43d7ef07d">More...</a><br/></td></tr>
|
122
|
+
<tr><td colspan="2"><h2>Functions</h2></td></tr>
|
123
|
+
<tr><td class="memItemLeft" align="right" valign="top">apr_bucket * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#a35b11c8ce90e90d01380f182d82f8cac">passenger_bucket_create</a> (SessionPtr session, PassengerBucketStatePtr state, apr_bucket_alloc_t *list)</td></tr>
|
124
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">We used to use an apr_bucket_pipe for forwarding the backend process's response to the HTTP client. <a href="#a35b11c8ce90e90d01380f182d82f8cac"></a><br/></td></tr>
|
125
|
+
<tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#ga2a62e38a72c6c65992e3361f6d80c7ef">fileExists</a> (const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &filename, CachedFileStat *cstat=0, unsigned int throttleRate=0)</td></tr>
|
126
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Check whether the specified file exists. <a href="group__Support.html#ga2a62e38a72c6c65992e3361f6d80c7ef"></a><br/></td></tr>
|
127
|
+
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacePassenger.html#a14174b712df6046cb823cde43d7ef07d">FileType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#ga15298b031377d3ecb80295bd5b1a8180">getFileType</a> (const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &filename, CachedFileStat *cstat=0, unsigned int throttleRate=0)</td></tr>
|
128
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Check whether 'filename' exists and what kind of file it is. <a href="group__Support.html#ga15298b031377d3ecb80295bd5b1a8180"></a><br/></td></tr>
|
129
|
+
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#ga6f414070373465da2e12947463f69953">createFile</a> (const string &filename, const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &contents, mode_t permissions=S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH, uid_t owner=USER_NOT_GIVEN, gid_t group=GROUP_NOT_GIVEN, bool overwrite=true)</td></tr>
|
130
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Create the given file with the given contents, permissions and ownership. <a href="group__Support.html#ga6f414070373465da2e12947463f69953"></a><br/></td></tr>
|
131
|
+
<tr><td class="memItemLeft" align="right" valign="top">string </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#gaf3b0a483f0a252ae08d9de9f8b267d36">canonicalizePath</a> (const string &path)</td></tr>
|
132
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns a canonical version of the specified path. <a href="group__Support.html#gaf3b0a483f0a252ae08d9de9f8b267d36"></a><br/></td></tr>
|
133
|
+
<tr><td class="memItemLeft" align="right" valign="top">string </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#gac3d2b3d608188527d888e63d22c5163c">resolveSymlink</a> (const string &path)</td></tr>
|
134
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">If <em>path</em> refers to a symlink, then this function resolves the symlink for 1 level. <a href="group__Support.html#gac3d2b3d608188527d888e63d22c5163c"></a><br/></td></tr>
|
135
|
+
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae651ece5281f22dc5fc974079f7c9187"></a><!-- doxytag: member="Passenger::extractDirName" ref="gae651ece5281f22dc5fc974079f7c9187" args="(const StaticString &path)" -->
|
136
|
+
string </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#gae651ece5281f22dc5fc974079f7c9187">extractDirName</a> (const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &path)</td></tr>
|
137
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Given a path, extracts its directory name. <br/></td></tr>
|
138
|
+
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaeb750234207485fa57609174ca8d4359"></a><!-- doxytag: member="Passenger::extractBaseName" ref="gaeb750234207485fa57609174ca8d4359" args="(const StaticString &path)" -->
|
139
|
+
string </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#gaeb750234207485fa57609174ca8d4359">extractBaseName</a> (const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &path)</td></tr>
|
140
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Given a path, extracts its base name. <br/></td></tr>
|
141
|
+
<tr><td class="memItemLeft" align="right" valign="top">string </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#gae74addedf73782a1eb1f6dd48d6fce06">escapeForXml</a> (const string &input)</td></tr>
|
142
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Escape the given raw string into an XML value. <a href="group__Support.html#gae74addedf73782a1eb1f6dd48d6fce06"></a><br/></td></tr>
|
143
|
+
<tr><td class="memItemLeft" align="right" valign="top">string </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#ade80218e8b836b796f8b960b6225b439">getProcessUsername</a> ()</td></tr>
|
144
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the username of the user that the current process is running as. <a href="#ade80218e8b836b796f8b960b6225b439"></a><br/></td></tr>
|
145
|
+
<tr><td class="memItemLeft" align="right" valign="top">mode_t </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#ada53f5a9bdcf3d22d4a710e7ea3678e9">parseModeString</a> (const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &mode)</td></tr>
|
146
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Converts a mode string into a mode_t value. <a href="#ada53f5a9bdcf3d22d4a710e7ea3678e9"></a><br/></td></tr>
|
147
|
+
<tr><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#ga68f4105c5a8e510520b5ea3eecb66213">getSystemTempDir</a> ()</td></tr>
|
148
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the path name for the directory in which the system stores general temporary files. <a href="group__Support.html#ga68f4105c5a8e510520b5ea3eecb66213"></a><br/></td></tr>
|
149
|
+
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#a448f25263af0b37b91caee3d294ec4aa">makeDirTree</a> (const string &path, const <a class="el" href="classPassenger_1_1StaticString.html">StaticString</a> &mode="u=rwx,g=,o=", uid_t owner=USER_NOT_GIVEN, gid_t group=GROUP_NOT_GIVEN)</td></tr>
|
150
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Create the directory at the given path, creating intermediate directories if necessary. <a href="#a448f25263af0b37b91caee3d294ec4aa"></a><br/></td></tr>
|
151
|
+
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#a8422d210cbd2f62d21254415b5a7f747">removeDirTree</a> (const string &path)</td></tr>
|
152
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove an entire directory tree recursively. <a href="#a8422d210cbd2f62d21254415b5a7f747"></a><br/></td></tr>
|
153
|
+
<tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#ga5e6bc7ff22b7c61238d7913521936f71">verifyRailsDir</a> (const string &dir, CachedFileStat *cstat=0, unsigned int throttleRate=0)</td></tr>
|
154
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Check whether the specified directory is a valid Ruby on Rails application root directory. <a href="group__Support.html#ga5e6bc7ff22b7c61238d7913521936f71"></a><br/></td></tr>
|
155
|
+
<tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#ga53969f8e3ee68d1d99ffe75af8db9be8">verifyRackDir</a> (const string &dir, CachedFileStat *cstat=0, unsigned int throttleRate=0)</td></tr>
|
156
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Check whether the specified directory is a valid Rack application root directory. <a href="group__Support.html#ga53969f8e3ee68d1d99ffe75af8db9be8"></a><br/></td></tr>
|
157
|
+
<tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__Support.html#gaaec51d2912999d611994c49341f36247">verifyWSGIDir</a> (const string &dir, CachedFileStat *cstat=0, unsigned int throttleRate=0)</td></tr>
|
158
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Check whether the specified directory is a valid WSGI application root directory. <a href="group__Support.html#gaaec51d2912999d611994c49341f36247"></a><br/></td></tr>
|
159
|
+
<tr><td class="memItemLeft" align="right" valign="top">string </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#a1d0a66b0e207c46dc6124ff3b2f331e6">getHostName</a> ()</td></tr>
|
160
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the system's host name. <a href="#a1d0a66b0e207c46dc6124ff3b2f331e6"></a><br/></td></tr>
|
161
|
+
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a979cb43cef743bf261c329b13e712366"></a><!-- doxytag: member="Passenger::getSignalName" ref="a979cb43cef743bf261c329b13e712366" args="(int sig)" -->
|
162
|
+
string </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacePassenger.html#a979cb43cef743bf261c329b13e712366">getSignalName</a> (int sig)</td></tr>
|
163
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a signal number to its associated name. <br/></td></tr>
|
164
|
+
<tr><td class="memTemplParams" colspan="2">template<typename T > </td></tr>
|
165
|
+
<tr><td class="memTemplItemLeft" align="right" valign="top">shared_ptr< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__Support.html#ga41b6c4a82fed72531a147de0505a8396">ptr</a> (T *pointer)</td></tr>
|
166
|
+
<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenience shortcut for creating a <code>shared_ptr</code>. <a href="group__Support.html#ga41b6c4a82fed72531a147de0505a8396"></a><br/></td></tr>
|
268
167
|
</table>
|
269
|
-
<hr
|
270
|
-
|
271
|
-
<p>
|
272
|
-
|
273
|
-
Unlike <a class="el" href="classPassenger_1_1MessageChannel.html" title="Convenience class for I/O operations on file descriptors.">MessageChannel</a>, whose operations take control over the I/O handle and may block, these classes
|
168
|
+
<hr/><a name="_details"></a><h2>Detailed Description</h2>
|
169
|
+
<p>Common code for all agents. </p>
|
170
|
+
<p>A random.</p>
|
171
|
+
<p>This file provides a bunch of classes for reading and writing messages in the <a class="el" href="classPassenger_1_1MessageChannel.html" title="Convenience class for I/O operations on file descriptors.">MessageChannel</a> format.</p>
|
172
|
+
<p>Unlike <a class="el" href="classPassenger_1_1MessageChannel.html" title="Convenience class for I/O operations on file descriptors.">MessageChannel</a>, whose operations take control over the I/O handle and may block, these classes act like parsers and data generators. To read messages one must feed data to them. To write messages one must instruct the classes to generate a bunch of data. These classes will never block, making them ideal for use in evented servers.</p>
|
274
173
|
<h2>Reading messages</h2>
|
275
|
-
<p>
|
276
|
-
|
277
|
-
When
|
278
|
-
|
279
|
-
|
280
|
-
|
174
|
+
<p>To read a single message, one must instantiate a message object and feed network data to it with the feed() method. This method returns the number of bytes actually processed by the message object (i.e. the number of bytes that it has recognized as part of the message).</p>
|
175
|
+
<p>When the message object has either successfully parsed the data or encountered an error, it will indicate so via the done() method. With hasError() one can check whether an error was encountered or whether the reader succeeded, and with errorCode() one can obtain the exact error reason. Not all message objects support hasError() and errorCode() because some of them can never encounter errors and some of them can only fail for a single reason.</p>
|
176
|
+
<p>When successful, the parsed message can be obtained with value(). This method may only be called when done() is true and there is no error, otherwise the return value is undefined.</p>
|
177
|
+
<p>At this point, the message object cannot process any more data and feed() will always return 0. To reuse the object for processing another message, one must reset its state by calling reset().</p>
|
178
|
+
<p>The following example demonstrates how to read a continuous stream of 32-bit integers: </p>
|
179
|
+
<div class="fragment"><pre class="fragment"> Uint32Message intMessage;
|
281
180
|
<span class="keywordflow">while</span> (<span class="keyword">true</span>) {
|
282
181
|
<span class="comment">// Read a bunch of network data...</span>
|
283
182
|
<span class="keywordtype">char</span> buf[1024];
|
284
183
|
ssize_t size = recv(fd, buf, <span class="keyword">sizeof</span>(buf));
|
285
184
|
<span class="keywordtype">size_t</span> consumed = 0;
|
286
185
|
|
287
|
-
<span class="comment">// ...and process it all. We only feed data to the
|
288
|
-
<span class="comment">// hasn
|
186
|
+
<span class="comment">// ...and process it all. We only feed data to the message object</span>
|
187
|
+
<span class="comment">// that hasn't already been fed.</span>
|
289
188
|
<span class="keywordflow">while</span> (consumed < size) {
|
290
189
|
consumed += intReader.feed(buf + consumed, size - consumed);
|
291
|
-
<span class="keywordflow">if</span> (
|
292
|
-
printf(<span class="stringliteral"
|
190
|
+
<span class="keywordflow">if</span> (intMessage.done()) {
|
191
|
+
printf(<span class="stringliteral">"Integer: %d\n"</span>, (<span class="keywordtype">int</span>) intMessage.value());
|
293
192
|
<span class="comment">// The state must be reset before the reader can be reused.</span>
|
294
|
-
|
193
|
+
intMessage.reset();
|
295
194
|
}
|
296
195
|
}
|
297
196
|
}
|
298
|
-
</pre></div><p>
|
299
|
-
Some readers return non-primitive values in their value() methods, such as <a class="el" href="classPassenger_1_1ArrayReader.html" title="Class for reading a an array message.">ArrayReader</a> and <a class="el" href="classPassenger_1_1ScalarReader.html" title="Class for reading a scalar message.">ScalarReader</a> which return <code>const vector<StaticString> &</code> and <code><a class="el" href="classPassenger_1_1StaticString.html" title="An immutable, static byte buffer.">StaticString</a></code>, respectively. These values are only valid until either of the following things occur:<p>
|
197
|
+
</pre></div><p>Some message objects return non-primitive values in their value() methods, such as <a class="el" href="classPassenger_1_1ArrayMessage.html" title="For array messages.">ArrayMessage</a> and <a class="el" href="classPassenger_1_1ScalarMessage.html" title="Class for reading a scalar message.">ScalarMessage</a> which return <code>const vector<StaticString> &</code> and <code><a class="el" href="classPassenger_1_1StaticString.html" title="An immutable, static byte buffer.">StaticString</a></code>, respectively. These values are only valid until either of the following things occur:</p>
|
300
198
|
<ul>
|
301
|
-
<li>The buffer containing last the fed data has been destroyed or modified.</li
|
302
|
-
<
|
303
|
-
|
304
|
-
<p>
|
305
|
-
<hr
|
306
|
-
<a class="anchor"
|
199
|
+
<li>The buffer containing last the fed data has been destroyed or modified.</li>
|
200
|
+
<li>The message object itself has been destroyed.</li>
|
201
|
+
</ul>
|
202
|
+
<p>This is because the message objects try to apply copy-zero optimizations whenever possible. For example, in case of <a class="el" href="classPassenger_1_1ScalarMessage.html" title="Class for reading a scalar message.">ScalarMessage</a>, it'll check whether the data that has been fed in the first feed() call already contains a full scalar message. If so then it'll just return a <a class="el" href="classPassenger_1_1StaticString.html" title="An immutable, static byte buffer.">StaticString</a> that points to the scalar message in the fed data; it will not copy the fed data. In this case it is important that the buffer containing the fed data is not modified or destroyed while the <a class="el" href="classPassenger_1_1StaticString.html" title="An immutable, static byte buffer.">StaticString</a> is in use. If the first feed() call does not supply a full scalar message then it will buffer all fed data until the buffer contains a full scalar message, and the result will point to this buffer. Because the buffer is owned by the message object, the result will be invalidated as soon as the message object is destroyed. </p>
|
203
|
+
<hr/><h2>Typedef Documentation</h2>
|
204
|
+
<a class="anchor" id="afd60d942a89fbb7f306e330d75704570"></a><!-- doxytag: member="Passenger::AbstractSpawnManagerPtr" ref="afd60d942a89fbb7f306e330d75704570" args="" -->
|
307
205
|
<div class="memitem">
|
308
206
|
<div class="memproto">
|
309
207
|
<table class="memname">
|
310
208
|
<tr>
|
311
|
-
<td class="memname">typedef shared_ptr<<a class="el" href="classPassenger_1_1AbstractSpawnManager.html">AbstractSpawnManager</a>> <a class="el" href="namespacePassenger.html#
|
209
|
+
<td class="memname">typedef shared_ptr<<a class="el" href="classPassenger_1_1AbstractSpawnManager.html">AbstractSpawnManager</a>> <a class="el" href="namespacePassenger.html#afd60d942a89fbb7f306e330d75704570">Passenger::AbstractSpawnManagerPtr</a></td>
|
312
210
|
</tr>
|
313
211
|
</table>
|
314
212
|
</div>
|
315
213
|
<div class="memdoc">
|
316
214
|
|
317
|
-
<p>
|
318
|
-
Convenient alias for <a class="el" href="classPassenger_1_1AbstractSpawnManager.html" title="Spawning of application processes.">AbstractSpawnManager</a> smart pointer.
|
319
|
-
<p>
|
215
|
+
<p>Convenient alias for <a class="el" href="classPassenger_1_1AbstractSpawnManager.html" title="Spawning of application processes.">AbstractSpawnManager</a> smart pointer. </p>
|
320
216
|
|
321
217
|
</div>
|
322
|
-
</div
|
323
|
-
<a class="anchor"
|
218
|
+
</div>
|
219
|
+
<a class="anchor" id="aced1f248465136b313c6dec5fe6ca492"></a><!-- doxytag: member="Passenger::ProcessPtr" ref="aced1f248465136b313c6dec5fe6ca492" args="" -->
|
324
220
|
<div class="memitem">
|
325
221
|
<div class="memproto">
|
326
222
|
<table class="memname">
|
327
223
|
<tr>
|
328
|
-
<td class="memname">typedef shared_ptr<<a class="el" href="classPassenger_1_1Process.html">Process</a>> <a class="el" href="namespacePassenger.html#
|
224
|
+
<td class="memname">typedef shared_ptr<<a class="el" href="classPassenger_1_1Process.html">Process</a>> <a class="el" href="namespacePassenger.html#aced1f248465136b313c6dec5fe6ca492">Passenger::ProcessPtr</a></td>
|
329
225
|
</tr>
|
330
226
|
</table>
|
331
227
|
</div>
|
332
228
|
<div class="memdoc">
|
333
229
|
|
334
|
-
<p>
|
335
|
-
Convenient alias for <a class="el" href="classPassenger_1_1Process.html" title="Represents a single application process, as spawned by SpawnManager or by ApplicationPool::Interface...">Process</a> smart pointer.
|
336
|
-
<p>
|
230
|
+
<p>Convenient alias for <a class="el" href="classPassenger_1_1Process.html" title="Represents a single application process, as spawned by SpawnManager or by ApplicationPool::Interface...">Process</a> smart pointer. </p>
|
337
231
|
|
338
232
|
</div>
|
339
|
-
</div
|
340
|
-
<a class="anchor"
|
233
|
+
</div>
|
234
|
+
<a class="anchor" id="a6ab2d566ff87a2676c23d8aa40204587"></a><!-- doxytag: member="Passenger::SpawnManagerPtr" ref="a6ab2d566ff87a2676c23d8aa40204587" args="" -->
|
341
235
|
<div class="memitem">
|
342
236
|
<div class="memproto">
|
343
237
|
<table class="memname">
|
344
238
|
<tr>
|
345
|
-
<td class="memname">typedef shared_ptr<<a class="el" href="classPassenger_1_1SpawnManager.html">SpawnManager</a>> <a class="el" href="namespacePassenger.html#
|
239
|
+
<td class="memname">typedef shared_ptr<<a class="el" href="classPassenger_1_1SpawnManager.html">SpawnManager</a>> <a class="el" href="namespacePassenger.html#a6ab2d566ff87a2676c23d8aa40204587">Passenger::SpawnManagerPtr</a></td>
|
346
240
|
</tr>
|
347
241
|
</table>
|
348
242
|
</div>
|
349
243
|
<div class="memdoc">
|
350
244
|
|
351
|
-
<p>
|
352
|
-
Convenient alias for <a class="el" href="classPassenger_1_1SpawnManager.html" title="An AbstractSpawnManager implementation.">SpawnManager</a> smart pointer.
|
353
|
-
<p>
|
245
|
+
<p>Convenient alias for <a class="el" href="classPassenger_1_1SpawnManager.html" title="An AbstractSpawnManager implementation.">SpawnManager</a> smart pointer. </p>
|
354
246
|
|
355
247
|
</div>
|
356
|
-
</div
|
357
|
-
<hr
|
358
|
-
<a class="anchor"
|
248
|
+
</div>
|
249
|
+
<hr/><h2>Enumeration Type Documentation</h2>
|
250
|
+
<a class="anchor" id="a14174b712df6046cb823cde43d7ef07d"></a><!-- doxytag: member="Passenger::FileType" ref="a14174b712df6046cb823cde43d7ef07d" args="" -->
|
359
251
|
<div class="memitem">
|
360
252
|
<div class="memproto">
|
361
253
|
<table class="memname">
|
362
254
|
<tr>
|
363
|
-
<td class="memname">enum <a class="el" href="namespacePassenger.html#
|
255
|
+
<td class="memname">enum <a class="el" href="namespacePassenger.html#a14174b712df6046cb823cde43d7ef07d">Passenger::FileType</a></td>
|
364
256
|
</tr>
|
365
257
|
</table>
|
366
258
|
</div>
|
367
259
|
<div class="memdoc">
|
368
260
|
|
369
|
-
<p>
|
370
|
-
|
371
|
-
<
|
372
|
-
<
|
373
|
-
|
374
|
-
<tr><td valign="top"><em><a class="anchor"
|
375
|
-
|
376
|
-
<p>
|
261
|
+
<p>Enumeration which indicates what kind of file a file is. </p>
|
262
|
+
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
|
263
|
+
<tr><td valign="top"><em><a class="anchor" id="a14174b712df6046cb823cde43d7ef07da9fc66834fe96c52799397496b8df8486"></a><!-- doxytag: member="FT_NONEXISTANT" ref="a14174b712df6046cb823cde43d7ef07da9fc66834fe96c52799397496b8df8486" args="" -->FT_NONEXISTANT</em> </td><td>
|
264
|
+
<p>The file doesn't exist. </p>
|
265
|
+
</td></tr>
|
266
|
+
<tr><td valign="top"><em><a class="anchor" id="a14174b712df6046cb823cde43d7ef07da1538596a928321d1a282c6bb06e80563"></a><!-- doxytag: member="FT_REGULAR" ref="a14174b712df6046cb823cde43d7ef07da1538596a928321d1a282c6bb06e80563" args="" -->FT_REGULAR</em> </td><td>
|
267
|
+
<p>A regular file or a symlink to a regular file. </p>
|
377
268
|
</td></tr>
|
378
|
-
<tr><td valign="top"><em><a class="anchor"
|
379
|
-
A
|
380
|
-
<p>
|
269
|
+
<tr><td valign="top"><em><a class="anchor" id="a14174b712df6046cb823cde43d7ef07dabb09dbba1071b4770913363db2462eee"></a><!-- doxytag: member="FT_DIRECTORY" ref="a14174b712df6046cb823cde43d7ef07dabb09dbba1071b4770913363db2462eee" args="" -->FT_DIRECTORY</em> </td><td>
|
270
|
+
<p>A directory. </p>
|
381
271
|
</td></tr>
|
382
|
-
<tr><td valign="top"><em><a class="anchor"
|
383
|
-
|
384
|
-
<p>
|
272
|
+
<tr><td valign="top"><em><a class="anchor" id="a14174b712df6046cb823cde43d7ef07da3e89b9a7be074975e007d9f7cd77f4ff"></a><!-- doxytag: member="FT_OTHER" ref="a14174b712df6046cb823cde43d7ef07da3e89b9a7be074975e007d9f7cd77f4ff" args="" -->FT_OTHER</em> </td><td>
|
273
|
+
<p>Something else, e.g. </p>
|
274
|
+
<p>a pipe or a socket. </p>
|
385
275
|
</td></tr>
|
386
|
-
<tr><td valign="top"><em><a class="anchor" name="14174b712df6046cb823cde43d7ef07d3e89b9a7be074975e007d9f7cd77f4ff"></a><!-- doxytag: member="FT_OTHER" ref="14174b712df6046cb823cde43d7ef07d3e89b9a7be074975e007d9f7cd77f4ff" args="" -->FT_OTHER</em> </td><td>
|
387
|
-
Something else, e.g.
|
388
|
-
<p>
|
389
|
-
a pipe or a socket. </td></tr>
|
390
276
|
</table>
|
277
|
+
</dd>
|
391
278
|
</dl>
|
392
279
|
|
393
280
|
</div>
|
394
|
-
</div><p>
|
395
|
-
<hr><h2>Function Documentation</h2>
|
396
|
-
<a class="anchor" name="d88884ee6e2184ef8656fc20f0549b0b"></a><!-- doxytag: member="Passenger::fillInMiddle" ref="d88884ee6e2184ef8656fc20f0549b0b" args="(unsigned int max, const string &prefix, const string &middle, const string &postfix="")" -->
|
397
|
-
<div class="memitem">
|
398
|
-
<div class="memproto">
|
399
|
-
<table class="memname">
|
400
|
-
<tr>
|
401
|
-
<td class="memname">string Passenger::fillInMiddle </td>
|
402
|
-
<td>(</td>
|
403
|
-
<td class="paramtype">unsigned int </td>
|
404
|
-
<td class="paramname"> <em>max</em>, </td>
|
405
|
-
</tr>
|
406
|
-
<tr>
|
407
|
-
<td class="paramkey"></td>
|
408
|
-
<td></td>
|
409
|
-
<td class="paramtype">const string & </td>
|
410
|
-
<td class="paramname"> <em>prefix</em>, </td>
|
411
|
-
</tr>
|
412
|
-
<tr>
|
413
|
-
<td class="paramkey"></td>
|
414
|
-
<td></td>
|
415
|
-
<td class="paramtype">const string & </td>
|
416
|
-
<td class="paramname"> <em>middle</em>, </td>
|
417
|
-
</tr>
|
418
|
-
<tr>
|
419
|
-
<td class="paramkey"></td>
|
420
|
-
<td></td>
|
421
|
-
<td class="paramtype">const string & </td>
|
422
|
-
<td class="paramname"> <em>postfix</em> = <code>""</code></td><td> </td>
|
423
|
-
</tr>
|
424
|
-
<tr>
|
425
|
-
<td></td>
|
426
|
-
<td>)</td>
|
427
|
-
<td></td><td></td><td></td>
|
428
|
-
</tr>
|
429
|
-
</table>
|
430
|
-
</div>
|
431
|
-
<div class="memdoc">
|
432
|
-
|
433
|
-
<p>
|
434
|
-
Given a prefix string, a middle string and a postfix string, try to build a string that looks like <code>prefix + middle + postfix</code>, with as many characters from <code>midle</code> preserved as possible.
|
435
|
-
<p>
|
436
|
-
If <code>prefix + middle + postfix</code> does not fit in <code>max</code> characters, then <code>middle</code> will be truncated so that it fits. If <code>max</code> is too small to contain even 1 character from <code>middle</code>, then an <a class="el" href="classPassenger_1_1ArgumentException.html" title="Indicates that a specified argument is incorrect or violates a requirement.">ArgumentException</a> will be thrown.<p>
|
437
|
-
<div class="fragment"><pre class="fragment"> <a class="code" href="namespacePassenger.html#d88884ee6e2184ef8656fc20f0549b0b" title="Given a prefix string, a middle string and a postfix string, try to build a string...">fillInMiddle</a>(18, <span class="stringliteral">"server."</span>, <span class="stringliteral">"1234"</span>, <span class="stringliteral">".socket"</span>); <span class="comment">// "server.1234.socket"</span>
|
438
|
-
<a class="code" href="namespacePassenger.html#d88884ee6e2184ef8656fc20f0549b0b" title="Given a prefix string, a middle string and a postfix string, try to build a string...">fillInMiddle</a>(16, <span class="stringliteral">"server."</span>, <span class="stringliteral">"1234"</span>, <span class="stringliteral">".socket"</span>); <span class="comment">// "server.12.socket"</span>
|
439
|
-
<a class="code" href="namespacePassenger.html#d88884ee6e2184ef8656fc20f0549b0b" title="Given a prefix string, a middle string and a postfix string, try to build a string...">fillInMiddle</a>(14, <span class="stringliteral">"server."</span>, <span class="stringliteral">"1234"</span>, <span class="stringliteral">".socket"</span>); <span class="comment">// ArgumentException</span>
|
440
|
-
</pre></div><p>
|
441
|
-
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The resulting string, with <code>middle</code> possibly truncated. </dd></dl>
|
442
|
-
<dl compact><dt><b>Exceptions:</b></dt><dd>
|
443
|
-
<table border="0" cellspacing="2" cellpadding="0">
|
444
|
-
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1ArgumentException.html" title="Indicates that a specified argument is incorrect or violates a requirement.">ArgumentException</a></em> </td><td><code>max</code> is too small to contain even 1 character from <code>middle</code>. </td></tr>
|
445
|
-
</table>
|
446
|
-
</dl>
|
447
|
-
<dl class="post" compact><dt><b>Postcondition:</b></dt><dd>result.size() <= max </dd></dl>
|
448
|
-
|
449
281
|
</div>
|
450
|
-
</
|
451
|
-
<a class="anchor"
|
282
|
+
<hr/><h2>Function Documentation</h2>
|
283
|
+
<a class="anchor" id="a1d0a66b0e207c46dc6124ff3b2f331e6"></a><!-- doxytag: member="Passenger::getHostName" ref="a1d0a66b0e207c46dc6124ff3b2f331e6" args="()" -->
|
452
284
|
<div class="memitem">
|
453
285
|
<div class="memproto">
|
454
286
|
<table class="memname">
|
455
287
|
<tr>
|
456
|
-
<td class="memname">string Passenger::getHostName
|
288
|
+
<td class="memname">string Passenger::getHostName </td>
|
457
289
|
<td>(</td>
|
458
|
-
<td class="paramname"
|
290
|
+
<td class="paramname"></td>
|
459
291
|
<td> ) </td>
|
460
292
|
<td></td>
|
461
293
|
</tr>
|
@@ -463,25 +295,24 @@ If <code>prefix + middle + postfix</code> does not fit in <code>max</code> chara
|
|
463
295
|
</div>
|
464
296
|
<div class="memdoc">
|
465
297
|
|
466
|
-
<p>
|
467
|
-
|
468
|
-
<p>
|
469
|
-
<dl compact><dt><b>Exceptions:</b></dt><dd>
|
298
|
+
<p>Returns the system's host name. </p>
|
299
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
470
300
|
<table border="0" cellspacing="2" cellpadding="0">
|
471
301
|
<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>The host name cannot be retrieved. </td></tr>
|
472
302
|
</table>
|
303
|
+
</dd>
|
473
304
|
</dl>
|
474
305
|
|
475
306
|
</div>
|
476
|
-
</div
|
477
|
-
<a class="anchor"
|
307
|
+
</div>
|
308
|
+
<a class="anchor" id="ade80218e8b836b796f8b960b6225b439"></a><!-- doxytag: member="Passenger::getProcessUsername" ref="ade80218e8b836b796f8b960b6225b439" args="()" -->
|
478
309
|
<div class="memitem">
|
479
310
|
<div class="memproto">
|
480
311
|
<table class="memname">
|
481
312
|
<tr>
|
482
|
-
<td class="memname">string Passenger::getProcessUsername
|
313
|
+
<td class="memname">string Passenger::getProcessUsername </td>
|
483
314
|
<td>(</td>
|
484
|
-
<td class="paramname"
|
315
|
+
<td class="paramname"></td>
|
485
316
|
<td> ) </td>
|
486
317
|
<td></td>
|
487
318
|
</tr>
|
@@ -489,18 +320,17 @@ Returns the system's host name.
|
|
489
320
|
</div>
|
490
321
|
<div class="memdoc">
|
491
322
|
|
492
|
-
<p>
|
493
|
-
|
494
|
-
|
495
|
-
If the user has no associated username, then "UID xxxx" is returned, where xxxx is the current UID.
|
323
|
+
<p>Returns the username of the user that the current process is running as. </p>
|
324
|
+
<p>If the user has no associated username, then "UID xxxx" is returned, where xxxx is the current UID. </p>
|
325
|
+
|
496
326
|
</div>
|
497
|
-
</div
|
498
|
-
<a class="anchor"
|
327
|
+
</div>
|
328
|
+
<a class="anchor" id="a448f25263af0b37b91caee3d294ec4aa"></a><!-- doxytag: member="Passenger::makeDirTree" ref="a448f25263af0b37b91caee3d294ec4aa" args="(const string &path, const StaticString &mode="u=rwx,g=,o=", uid_t owner=USER_NOT_GIVEN, gid_t group=GROUP_NOT_GIVEN)" -->
|
499
329
|
<div class="memitem">
|
500
330
|
<div class="memproto">
|
501
331
|
<table class="memname">
|
502
332
|
<tr>
|
503
|
-
<td class="memname">void Passenger::makeDirTree
|
333
|
+
<td class="memname">void Passenger::makeDirTree </td>
|
504
334
|
<td>(</td>
|
505
335
|
<td class="paramtype">const string & </td>
|
506
336
|
<td class="paramname"> <em>path</em>, </td>
|
@@ -532,34 +362,34 @@ If the user has no associated username, then "UID xxxx" is returned, where xxxx
|
|
532
362
|
</div>
|
533
363
|
<div class="memdoc">
|
534
364
|
|
535
|
-
<p>
|
536
|
-
|
537
|
-
<p>
|
538
|
-
|
539
|
-
If 'path' already exists, then nothing will happen.<p>
|
540
|
-
<dl compact><dt><b>Parameters:</b></dt><dd>
|
365
|
+
<p>Create the directory at the given path, creating intermediate directories if necessary. </p>
|
366
|
+
<p>The created directories' permissions are exactly as specified by the 'mode' parameter (i.e. the umask will be ignored). You can specify this directory's owner and group through the 'owner' and 'group' parameters. A value of USER_NOT_GIVEN for 'owner' and/or GROUP_NOT_GIVEN 'group' means that the owner/group should not be changed.</p>
|
367
|
+
<p>If 'path' already exists, then nothing will happen.</p>
|
368
|
+
<dl><dt><b>Parameters:</b></dt><dd>
|
541
369
|
<table border="0" cellspacing="2" cellpadding="0">
|
542
|
-
<tr><td valign="top"></td><td valign="top"><em>mode</em> </td><td>A mode string, as supported by <a class="el" href="namespacePassenger.html#
|
370
|
+
<tr><td valign="top"></td><td valign="top"><em>mode</em> </td><td>A mode string, as supported by <a class="el" href="namespacePassenger.html#ada53f5a9bdcf3d22d4a710e7ea3678e9" title="Converts a mode string into a mode_t value.">parseModeString()</a>. </td></tr>
|
543
371
|
</table>
|
372
|
+
</dd>
|
544
373
|
</dl>
|
545
|
-
<dl
|
374
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
546
375
|
<table border="0" cellspacing="2" cellpadding="0">
|
547
376
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1FileSystemException.html" title="A filesystem error, as returned by the operating system.">FileSystemException</a></em> </td><td>Something went wrong. </td></tr>
|
548
377
|
<tr><td valign="top"></td><td valign="top"><em>InvalidModeStringException</em> </td><td>The mode string cannot be parsed. </td></tr>
|
549
378
|
</table>
|
379
|
+
</dd>
|
550
380
|
</dl>
|
551
381
|
|
552
382
|
</div>
|
553
|
-
</div
|
554
|
-
<a class="anchor"
|
383
|
+
</div>
|
384
|
+
<a class="anchor" id="ada53f5a9bdcf3d22d4a710e7ea3678e9"></a><!-- doxytag: member="Passenger::parseModeString" ref="ada53f5a9bdcf3d22d4a710e7ea3678e9" args="(const StaticString &mode)" -->
|
555
385
|
<div class="memitem">
|
556
386
|
<div class="memproto">
|
557
387
|
<table class="memname">
|
558
388
|
<tr>
|
559
|
-
<td class="memname">mode_t Passenger::parseModeString
|
389
|
+
<td class="memname">mode_t Passenger::parseModeString </td>
|
560
390
|
<td>(</td>
|
561
391
|
<td class="paramtype">const StaticString & </td>
|
562
|
-
<td class="paramname"> <em>mode</em
|
392
|
+
<td class="paramname"> <em>mode</em></td>
|
563
393
|
<td> ) </td>
|
564
394
|
<td></td>
|
565
395
|
</tr>
|
@@ -567,31 +397,33 @@ If 'path' already exists, then nothing will happen.<p>
|
|
567
397
|
</div>
|
568
398
|
<div class="memdoc">
|
569
399
|
|
570
|
-
<p>
|
571
|
-
|
572
|
-
<
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
|
577
|
-
|
578
|
-
|
579
|
-
<li>The
|
580
|
-
<
|
581
|
-
|
400
|
+
<p>Converts a mode string into a mode_t value. </p>
|
401
|
+
<p>At this time only the symbolic mode strings are supported, e.g. something like looks this: "u=rwx,g=w,o=rx". The grammar is as follows: </p>
|
402
|
+
<div class="fragment"><pre class="fragment"> mode ::= (clause (<span class="stringliteral">","</span> clause)*)?
|
403
|
+
clause ::= who <span class="stringliteral">"="</span> permission*
|
404
|
+
who ::= <span class="stringliteral">"u"</span> | <span class="stringliteral">"g"</span> | <span class="stringliteral">"o"</span>
|
405
|
+
permission ::= <span class="stringliteral">"r"</span> | <span class="stringliteral">"w"</span> | <span class="stringliteral">"x"</span> | <span class="stringliteral">"s"</span>
|
406
|
+
</pre></div><p>Notes:</p>
|
407
|
+
<ul>
|
408
|
+
<li>The mode value starts with 0. So if you specify "u=rwx", then the group and world permissions will be empty (set to 0).</li>
|
409
|
+
<li>The "s" permission is only allowed for who == "u" or who == "g".</li>
|
410
|
+
<li>The return value does not depend on the umask.</li>
|
411
|
+
</ul>
|
412
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
582
413
|
<table border="0" cellspacing="2" cellpadding="0">
|
583
414
|
<tr><td valign="top"></td><td valign="top"><em>InvalidModeStringException</em> </td><td>The mode string cannot be parsed. </td></tr>
|
584
415
|
</table>
|
416
|
+
</dd>
|
585
417
|
</dl>
|
586
418
|
|
587
419
|
</div>
|
588
|
-
</div
|
589
|
-
<a class="anchor"
|
420
|
+
</div>
|
421
|
+
<a class="anchor" id="a35b11c8ce90e90d01380f182d82f8cac"></a><!-- doxytag: member="Passenger::passenger_bucket_create" ref="a35b11c8ce90e90d01380f182d82f8cac" args="(SessionPtr session, PassengerBucketStatePtr state, apr_bucket_alloc_t *list)" -->
|
590
422
|
<div class="memitem">
|
591
423
|
<div class="memproto">
|
592
424
|
<table class="memname">
|
593
425
|
<tr>
|
594
|
-
<td class="memname">apr_bucket * Passenger::passenger_bucket_create
|
426
|
+
<td class="memname">apr_bucket * Passenger::passenger_bucket_create </td>
|
595
427
|
<td>(</td>
|
596
428
|
<td class="paramtype">SessionPtr </td>
|
597
429
|
<td class="paramname"> <em>session</em>, </td>
|
@@ -617,26 +449,30 @@ Notes:<ul>
|
|
617
449
|
</div>
|
618
450
|
<div class="memdoc">
|
619
451
|
|
620
|
-
<p>
|
621
|
-
|
622
|
-
<
|
623
|
-
|
624
|
-
<li>It
|
625
|
-
|
626
|
-
PassengerBucket is like apr_bucket_pipe, but
|
627
|
-
<
|
452
|
+
<p>We used to use an apr_bucket_pipe for forwarding the backend process's response to the HTTP client. </p>
|
453
|
+
<p>However, apr_bucket_pipe has a number of issues:</p>
|
454
|
+
<ul>
|
455
|
+
<li>It closes the pipe's file descriptor when it has reached end-of-stream, but not when an error has occurred. This behavior is undesirable because it can easily cause file descriptor leaks.</li>
|
456
|
+
<li>It does weird non-blocking-I/O related things which can cause it to read less data than can actually be read.</li>
|
457
|
+
</ul>
|
458
|
+
<p>PassengerBucket is like apr_bucket_pipe, but:</p>
|
459
|
+
<ul>
|
460
|
+
<li>It also holds a reference to a <a class="el" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process.">Session</a>. When a read error has occured or when end-of-stream has been reached, the <a class="el" href="classPassenger_1_1Session.html" title="Represents a single request/response pair of an application process.">Session</a> will be dereferenced, so that the underlying file descriptor is closed.</li>
|
461
|
+
<li>It ignores the APR_NONBLOCK_READ flag because that's known to cause strange I/O problems.</li>
|
462
|
+
<li>It can store its current state in a PassengerBucketState data structure. </li>
|
463
|
+
</ul>
|
628
464
|
|
629
465
|
</div>
|
630
|
-
</div
|
631
|
-
<a class="anchor"
|
466
|
+
</div>
|
467
|
+
<a class="anchor" id="a8422d210cbd2f62d21254415b5a7f747"></a><!-- doxytag: member="Passenger::removeDirTree" ref="a8422d210cbd2f62d21254415b5a7f747" args="(const string &path)" -->
|
632
468
|
<div class="memitem">
|
633
469
|
<div class="memproto">
|
634
470
|
<table class="memname">
|
635
471
|
<tr>
|
636
|
-
<td class="memname">void Passenger::removeDirTree
|
472
|
+
<td class="memname">void Passenger::removeDirTree </td>
|
637
473
|
<td>(</td>
|
638
474
|
<td class="paramtype">const string & </td>
|
639
|
-
<td class="paramname"> <em>path</em
|
475
|
+
<td class="paramname"> <em>path</em></td>
|
640
476
|
<td> ) </td>
|
641
477
|
<td></td>
|
642
478
|
</tr>
|
@@ -644,85 +480,20 @@ PassengerBucket is like apr_bucket_pipe, but:<ul>
|
|
644
480
|
</div>
|
645
481
|
<div class="memdoc">
|
646
482
|
|
647
|
-
<p>
|
648
|
-
|
649
|
-
<
|
650
|
-
If the directory doesn't exist then this function does nothing.<p>
|
651
|
-
<dl compact><dt><b>Exceptions:</b></dt><dd>
|
483
|
+
<p>Remove an entire directory tree recursively. </p>
|
484
|
+
<p>If the directory doesn't exist then this function does nothing.</p>
|
485
|
+
<dl><dt><b>Exceptions:</b></dt><dd>
|
652
486
|
<table border="0" cellspacing="2" cellpadding="0">
|
653
487
|
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classPassenger_1_1FileSystemException.html" title="A filesystem error, as returned by the operating system.">FileSystemException</a></em> </td><td>Something went wrong. </td></tr>
|
654
488
|
</table>
|
489
|
+
</dd>
|
655
490
|
</dl>
|
656
491
|
|
657
492
|
</div>
|
658
|
-
</div><p>
|
659
|
-
<a class="anchor" name="6b2bc9d6fa3848e01fd8c164d30737cc"></a><!-- doxytag: member="Passenger::roundUp" ref="6b2bc9d6fa3848e01fd8c164d30737cc" args="(IntType number, IntType multiple)" -->
|
660
|
-
<div class="memitem">
|
661
|
-
<div class="memproto">
|
662
|
-
<div class="memtemplate">
|
663
|
-
template<typename IntType > </div>
|
664
|
-
<table class="memname">
|
665
|
-
<tr>
|
666
|
-
<td class="memname">IntType Passenger::roundUp </td>
|
667
|
-
<td>(</td>
|
668
|
-
<td class="paramtype">IntType </td>
|
669
|
-
<td class="paramname"> <em>number</em>, </td>
|
670
|
-
</tr>
|
671
|
-
<tr>
|
672
|
-
<td class="paramkey"></td>
|
673
|
-
<td></td>
|
674
|
-
<td class="paramtype">IntType </td>
|
675
|
-
<td class="paramname"> <em>multiple</em></td><td> </td>
|
676
|
-
</tr>
|
677
|
-
<tr>
|
678
|
-
<td></td>
|
679
|
-
<td>)</td>
|
680
|
-
<td></td><td></td><td><code> [inline]</code></td>
|
681
|
-
</tr>
|
682
|
-
</table>
|
683
|
-
</div>
|
684
|
-
<div class="memdoc">
|
685
|
-
|
686
|
-
<p>
|
687
|
-
Round <em>number</em> up to the nearest multiple of <em>multiple</em>.
|
688
|
-
<p>
|
689
|
-
|
690
|
-
</div>
|
691
|
-
</div><p>
|
692
|
-
<a class="anchor" name="8b73dbe534ee6daf755909cf6c321166"></a><!-- doxytag: member="Passenger::toHex" ref="8b73dbe534ee6daf755909cf6c321166" args="(const StaticString &data, char *output)" -->
|
693
|
-
<div class="memitem">
|
694
|
-
<div class="memproto">
|
695
|
-
<table class="memname">
|
696
|
-
<tr>
|
697
|
-
<td class="memname">void Passenger::toHex </td>
|
698
|
-
<td>(</td>
|
699
|
-
<td class="paramtype">const StaticString & </td>
|
700
|
-
<td class="paramname"> <em>data</em>, </td>
|
701
|
-
</tr>
|
702
|
-
<tr>
|
703
|
-
<td class="paramkey"></td>
|
704
|
-
<td></td>
|
705
|
-
<td class="paramtype">char * </td>
|
706
|
-
<td class="paramname"> <em>output</em></td><td> </td>
|
707
|
-
</tr>
|
708
|
-
<tr>
|
709
|
-
<td></td>
|
710
|
-
<td>)</td>
|
711
|
-
<td></td><td></td><td></td>
|
712
|
-
</tr>
|
713
|
-
</table>
|
714
|
-
</div>
|
715
|
-
<div class="memdoc">
|
716
|
-
|
717
|
-
<p>
|
718
|
-
Convert the given binary data to hexadecimal.
|
719
|
-
<p>
|
720
|
-
This form accepts an output buffer which must be at least data.size() * 2 bytes large.
|
721
493
|
</div>
|
722
|
-
</div><p>
|
723
494
|
</div>
|
724
|
-
<hr size="1"
|
495
|
+
<hr size="1"/><address style="text-align: right;"><small>Generated by
|
725
496
|
<a href="http://www.doxygen.org/index.html">
|
726
|
-
<img src="doxygen.png" alt="doxygen"
|
497
|
+
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2 </small></address>
|
727
498
|
</body>
|
728
499
|
</html>
|