freels-mongrel 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. data/CHANGELOG +12 -0
  2. data/COPYING +55 -0
  3. data/LICENSE +55 -0
  4. data/Manifest +70 -0
  5. data/README +74 -0
  6. data/Rakefile +237 -0
  7. data/TODO +4 -0
  8. data/bin/mongrel_rails +284 -0
  9. data/examples/builder.rb +29 -0
  10. data/examples/camping/README +3 -0
  11. data/examples/camping/blog.rb +294 -0
  12. data/examples/camping/tepee.rb +149 -0
  13. data/examples/httpd.conf +474 -0
  14. data/examples/mime.yaml +3 -0
  15. data/examples/mongrel.conf +9 -0
  16. data/examples/mongrel_simple_ctrl.rb +92 -0
  17. data/examples/mongrel_simple_service.rb +116 -0
  18. data/examples/monitrc +57 -0
  19. data/examples/random_thrash.rb +19 -0
  20. data/examples/simpletest.rb +52 -0
  21. data/examples/webrick_compare.rb +20 -0
  22. data/ext/http11/ext_help.h +15 -0
  23. data/ext/http11/extconf.rb +6 -0
  24. data/ext/http11/http11.c +527 -0
  25. data/ext/http11/http11_parser.c +1216 -0
  26. data/ext/http11/http11_parser.h +49 -0
  27. data/ext/http11/http11_parser.java.rl +171 -0
  28. data/ext/http11/http11_parser.rl +165 -0
  29. data/ext/http11/http11_parser_common.rl +55 -0
  30. data/ext/http11_java/Http11Service.java +13 -0
  31. data/ext/http11_java/org/jruby/mongrel/Http11.java +266 -0
  32. data/ext/http11_java/org/jruby/mongrel/Http11Parser.java +572 -0
  33. data/lib/mongrel.rb +359 -0
  34. data/lib/mongrel/camping.rb +107 -0
  35. data/lib/mongrel/cgi.rb +182 -0
  36. data/lib/mongrel/command.rb +220 -0
  37. data/lib/mongrel/configurator.rb +389 -0
  38. data/lib/mongrel/const.rb +114 -0
  39. data/lib/mongrel/debug.rb +203 -0
  40. data/lib/mongrel/gems.rb +22 -0
  41. data/lib/mongrel/handlers.rb +472 -0
  42. data/lib/mongrel/header_out.rb +28 -0
  43. data/lib/mongrel/http_request.rb +155 -0
  44. data/lib/mongrel/http_response.rb +163 -0
  45. data/lib/mongrel/init.rb +10 -0
  46. data/lib/mongrel/logger.rb +74 -0
  47. data/lib/mongrel/mime_types.yml +616 -0
  48. data/lib/mongrel/rails.rb +185 -0
  49. data/lib/mongrel/stats.rb +89 -0
  50. data/lib/mongrel/tcphack.rb +18 -0
  51. data/lib/mongrel/uri_classifier.rb +76 -0
  52. data/mongrel-public_cert.pem +20 -0
  53. data/mongrel.gemspec +47 -0
  54. data/setup.rb +1585 -0
  55. data/test/mime.yaml +3 -0
  56. data/test/mongrel.conf +1 -0
  57. data/test/test_cgi_wrapper.rb +26 -0
  58. data/test/test_command.rb +86 -0
  59. data/test/test_conditional.rb +107 -0
  60. data/test/test_configurator.rb +88 -0
  61. data/test/test_debug.rb +25 -0
  62. data/test/test_handlers.rb +104 -0
  63. data/test/test_http11.rb +272 -0
  64. data/test/test_redirect_handler.rb +44 -0
  65. data/test/test_request_progress.rb +100 -0
  66. data/test/test_response.rb +127 -0
  67. data/test/test_stats.rb +35 -0
  68. data/test/test_uriclassifier.rb +261 -0
  69. data/test/test_ws.rb +116 -0
  70. data/test/testhelp.rb +74 -0
  71. data/tools/trickletest.rb +45 -0
  72. metadata +202 -0
@@ -0,0 +1,45 @@
1
+ require 'socket'
2
+ require 'stringio'
3
+
4
+ def do_test(st, chunk)
5
+ s = TCPSocket.new('127.0.0.1',ARGV[0].to_i);
6
+ req = StringIO.new(st)
7
+ nout = 0
8
+ randstop = rand(st.length / 10)
9
+ STDERR.puts "stopping after: #{randstop}"
10
+
11
+ begin
12
+ while data = req.read(chunk)
13
+ nout += s.write(data)
14
+ s.flush
15
+ sleep 0.1
16
+ if nout > randstop
17
+ STDERR.puts "BANG! after #{nout} bytes."
18
+ break
19
+ end
20
+ end
21
+ rescue Object => e
22
+ STDERR.puts "ERROR: #{e}"
23
+ ensure
24
+ s.close
25
+ end
26
+ end
27
+
28
+ content = "-" * (1024 * 240)
29
+ st = "GET / HTTP/1.1\r\nHost: www.zedshaw.com\r\nContent-Type: text/plain\r\nContent-Length: #{content.length}\r\n\r\n#{content}"
30
+
31
+ puts "length: #{content.length}"
32
+
33
+ threads = []
34
+ ARGV[1].to_i.times do
35
+ t = Thread.new do
36
+ size = 100
37
+ puts ">>>> #{size} sized chunks"
38
+ do_test(st, size)
39
+ end
40
+
41
+ t.abort_on_exception = true
42
+ threads << t
43
+ end
44
+
45
+ threads.each {|t| t.join}
metadata ADDED
@@ -0,0 +1,202 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: freels-mongrel
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.1.2
5
+ platform: ruby
6
+ authors:
7
+ - Zed A. Shaw
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-08-20 00:00:00 -07:00
13
+ default_executable: mongrel_rails
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: gem_plugin
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 0.2.3
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: daemons
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 1.0.3
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: fastthread
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 1.0.1
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: cgi_multipart_eof_fix
47
+ type: :runtime
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: "2.4"
54
+ version:
55
+ description: A small fast HTTP library and server that runs Rails, Camping, Nitro and Iowa apps.
56
+ email: ""
57
+ executables:
58
+ - mongrel_rails
59
+ extensions:
60
+ - ext/http11/extconf.rb
61
+ extra_rdoc_files:
62
+ - CHANGELOG
63
+ - COPYING
64
+ - lib/mongrel/camping.rb
65
+ - lib/mongrel/cgi.rb
66
+ - lib/mongrel/command.rb
67
+ - lib/mongrel/configurator.rb
68
+ - lib/mongrel/const.rb
69
+ - lib/mongrel/debug.rb
70
+ - lib/mongrel/gems.rb
71
+ - lib/mongrel/handlers.rb
72
+ - lib/mongrel/header_out.rb
73
+ - lib/mongrel/http_request.rb
74
+ - lib/mongrel/http_response.rb
75
+ - lib/mongrel/init.rb
76
+ - lib/mongrel/logger.rb
77
+ - lib/mongrel/rails.rb
78
+ - lib/mongrel/stats.rb
79
+ - lib/mongrel/tcphack.rb
80
+ - lib/mongrel/uri_classifier.rb
81
+ - lib/mongrel.rb
82
+ - LICENSE
83
+ - README
84
+ files:
85
+ - bin/mongrel_rails
86
+ - CHANGELOG
87
+ - COPYING
88
+ - examples/builder.rb
89
+ - examples/camping/blog.rb
90
+ - examples/camping/README
91
+ - examples/camping/tepee.rb
92
+ - examples/httpd.conf
93
+ - examples/mime.yaml
94
+ - examples/mongrel.conf
95
+ - examples/mongrel_simple_ctrl.rb
96
+ - examples/mongrel_simple_service.rb
97
+ - examples/monitrc
98
+ - examples/random_thrash.rb
99
+ - examples/simpletest.rb
100
+ - examples/webrick_compare.rb
101
+ - ext/http11/ext_help.h
102
+ - ext/http11/extconf.rb
103
+ - ext/http11/http11.c
104
+ - ext/http11/http11_parser.c
105
+ - ext/http11/http11_parser.h
106
+ - ext/http11/http11_parser.java.rl
107
+ - ext/http11/http11_parser.rl
108
+ - ext/http11/http11_parser_common.rl
109
+ - ext/http11_java/Http11Service.java
110
+ - ext/http11_java/org/jruby/mongrel/Http11.java
111
+ - ext/http11_java/org/jruby/mongrel/Http11Parser.java
112
+ - lib/mongrel/camping.rb
113
+ - lib/mongrel/cgi.rb
114
+ - lib/mongrel/command.rb
115
+ - lib/mongrel/configurator.rb
116
+ - lib/mongrel/const.rb
117
+ - lib/mongrel/debug.rb
118
+ - lib/mongrel/gems.rb
119
+ - lib/mongrel/handlers.rb
120
+ - lib/mongrel/header_out.rb
121
+ - lib/mongrel/http_request.rb
122
+ - lib/mongrel/http_response.rb
123
+ - lib/mongrel/init.rb
124
+ - lib/mongrel/logger.rb
125
+ - lib/mongrel/mime_types.yml
126
+ - lib/mongrel/rails.rb
127
+ - lib/mongrel/stats.rb
128
+ - lib/mongrel/tcphack.rb
129
+ - lib/mongrel/uri_classifier.rb
130
+ - lib/mongrel.rb
131
+ - LICENSE
132
+ - Manifest
133
+ - mongrel-public_cert.pem
134
+ - mongrel.gemspec
135
+ - README
136
+ - setup.rb
137
+ - test/mime.yaml
138
+ - test/mongrel.conf
139
+ - test/test_cgi_wrapper.rb
140
+ - test/test_command.rb
141
+ - test/test_conditional.rb
142
+ - test/test_configurator.rb
143
+ - test/test_debug.rb
144
+ - test/test_handlers.rb
145
+ - test/test_http11.rb
146
+ - test/test_redirect_handler.rb
147
+ - test/test_request_progress.rb
148
+ - test/test_response.rb
149
+ - test/test_stats.rb
150
+ - test/test_uriclassifier.rb
151
+ - test/test_ws.rb
152
+ - test/testhelp.rb
153
+ - TODO
154
+ - tools/trickletest.rb
155
+ - Rakefile
156
+ has_rdoc: false
157
+ homepage: http://mongrel.rubyforge.org
158
+ licenses:
159
+ post_install_message:
160
+ rdoc_options:
161
+ - --line-numbers
162
+ - --inline-source
163
+ - --title
164
+ - Mongrel
165
+ - --main
166
+ - README
167
+ require_paths:
168
+ - lib
169
+ - ext
170
+ required_ruby_version: !ruby/object:Gem::Requirement
171
+ requirements:
172
+ - - ">="
173
+ - !ruby/object:Gem::Version
174
+ version: 1.8.4
175
+ version:
176
+ required_rubygems_version: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: "1.2"
181
+ version:
182
+ requirements: []
183
+
184
+ rubyforge_project: mongrel
185
+ rubygems_version: 1.3.5
186
+ signing_key:
187
+ specification_version: 3
188
+ summary: A small fast HTTP library and server that runs Rails, Camping, Nitro and Iowa apps.
189
+ test_files:
190
+ - test/test_cgi_wrapper.rb
191
+ - test/test_command.rb
192
+ - test/test_conditional.rb
193
+ - test/test_configurator.rb
194
+ - test/test_debug.rb
195
+ - test/test_handlers.rb
196
+ - test/test_http11.rb
197
+ - test/test_redirect_handler.rb
198
+ - test/test_request_progress.rb
199
+ - test/test_response.rb
200
+ - test/test_stats.rb
201
+ - test/test_uriclassifier.rb
202
+ - test/test_ws.rb