about summary refs log tree commit homepage
path: root/ext
diff options
context:
space:
mode:
authorzedshaw <zedshaw@19e92222-5c0b-0410-8929-a290d50e31e9>2006-06-30 20:42:12 +0000
committerzedshaw <zedshaw@19e92222-5c0b-0410-8929-a290d50e31e9>2006-06-30 20:42:12 +0000
commitddd5c9a46cfbb471f83a50d0a890a55628c22738 (patch)
treed8fbc0cbca12883202224dec4ded0333b4b291c8 /ext
parent7d0f10c2427f37f2f08366c5d6add01973238f1a (diff)
downloadunicorn-ddd5c9a46cfbb471f83a50d0a890a55628c22738.tar.gz
git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/trunk@267 19e92222-5c0b-0410-8929-a290d50e31e9
Diffstat (limited to 'ext')
-rw-r--r--ext/http11/http11.c4
-rw-r--r--ext/http11/http11_parser.c94
-rw-r--r--ext/http11/http11_parser.h4
-rw-r--r--ext/http11/http11_parser.rl4
4 files changed, 61 insertions, 45 deletions
diff --git a/ext/http11/http11.c b/ext/http11/http11.c
index 80eab8c..f3f688b 100644
--- a/ext/http11/http11.c
+++ b/ext/http11/http11.c
@@ -1,3 +1,7 @@
+/**
+ * Copyright (c) 2005 Zed A. Shaw
+ * You can redistribute it and/or modify it under the same terms as Ruby.
+ */
 #include "ruby.h"
 #include "ext_help.h"
 #include <assert.h>
diff --git a/ext/http11/http11_parser.c b/ext/http11/http11_parser.c
index b69773a..33c6c20 100644
--- a/ext/http11/http11_parser.c
+++ b/ext/http11/http11_parser.c
@@ -1,4 +1,8 @@
 #line 1 "ext/http11/http11_parser.rl"
+/**
+ * Copyright (c) 2005 Zed A. Shaw
+ * You can redistribute it and/or modify it under the same terms as Ruby.
+ */
 #include "http11_parser.h"
 #include <stdio.h>
 #include <assert.h>
@@ -11,28 +15,28 @@
 #define PTR_TO(F) (buffer + parser->F)
 
 /** machine **/
-#line 102 "ext/http11/http11_parser.rl"
+#line 106 "ext/http11/http11_parser.rl"
 
 
 /** Data **/
 
-#line 20 "ext/http11/http11_parser.c"
+#line 24 "ext/http11/http11_parser.c"
 static int http_parser_start = 0;
 
 static int http_parser_first_final = 51;
 
 static int http_parser_error = 1;
 
-#line 106 "ext/http11/http11_parser.rl"
+#line 110 "ext/http11/http11_parser.rl"
 
 int http_parser_init(http_parser *parser)  {
     int cs = 0;
     
-#line 32 "ext/http11/http11_parser.c"
+#line 36 "ext/http11/http11_parser.c"
         {
         cs = http_parser_start;
         }
-#line 110 "ext/http11/http11_parser.rl"
+#line 114 "ext/http11/http11_parser.rl"
     parser->cs = cs;
     parser->body_start = 0;
     parser->content_len = 0;
@@ -60,7 +64,7 @@ size_t http_parser_execute(http_parser *parser, const char *buffer, size_t len,
 
 
     
-#line 64 "ext/http11/http11_parser.c"
+#line 68 "ext/http11/http11_parser.c"
         {
         p -= 1;
         if ( ++p == pe )
@@ -84,14 +88,14 @@ case 0:
 st1:
         goto _out1;
 tr14:
-#line 16 "ext/http11/http11_parser.rl"
+#line 20 "ext/http11/http11_parser.rl"
         {MARK(mark, p); }
         goto st2;
 st2:
         if ( ++p == pe )
                 goto _out2;
 case 2:
-#line 95 "ext/http11/http11_parser.c"
+#line 99 "ext/http11/http11_parser.c"
         switch( (*p) ) {
                 case 32: goto tr18;
                 case 36: goto st32;
@@ -107,7 +111,7 @@ case 2:
                 goto st32;
         goto st1;
 tr18:
-#line 29 "ext/http11/http11_parser.rl"
+#line 33 "ext/http11/http11_parser.rl"
         {
                if(parser->request_method != NULL)
                               parser->request_method(parser->data, PTR_TO(mark), LEN(mark, p));
@@ -117,7 +121,7 @@ st3:
         if ( ++p == pe )
                 goto _out3;
 case 3:
-#line 121 "ext/http11/http11_parser.c"
+#line 125 "ext/http11/http11_parser.c"
         switch( (*p) ) {
                 case 42: goto tr10;
                 case 43: goto tr11;
@@ -134,26 +138,26 @@ case 3:
                 goto tr11;
         goto st1;
 tr10:
-#line 16 "ext/http11/http11_parser.rl"
+#line 20 "ext/http11/http11_parser.rl"
         {MARK(mark, p); }
         goto st4;
 st4:
         if ( ++p == pe )
                 goto _out4;
 case 4:
-#line 145 "ext/http11/http11_parser.c"
+#line 149 "ext/http11/http11_parser.c"
         if ( (*p) == 32 )
                 goto tr20;
         goto st1;
 tr20:
-#line 33 "ext/http11/http11_parser.rl"
+#line 37 "ext/http11/http11_parser.rl"
         {
                if(parser->request_uri != NULL)
                               parser->request_uri(parser->data, PTR_TO(mark), LEN(mark, p));
         }
         goto st5;
 tr32:
-#line 37 "ext/http11/http11_parser.rl"
+#line 41 "ext/http11/http11_parser.rl"
         {
                if(parser->query_string != NULL)
                               parser->query_string(parser->data, PTR_TO(mark), LEN(mark, p));
@@ -163,19 +167,19 @@ st5:
         if ( ++p == pe )
                 goto _out5;
 case 5:
-#line 167 "ext/http11/http11_parser.c"
+#line 171 "ext/http11/http11_parser.c"
         if ( (*p) == 72 )
                 goto tr3;
         goto st1;
 tr3:
-#line 16 "ext/http11/http11_parser.rl"
+#line 20 "ext/http11/http11_parser.rl"
         {MARK(mark, p); }
         goto st6;
 st6:
         if ( ++p == pe )
                 goto _out6;
 case 6:
-#line 179 "ext/http11/http11_parser.c"
+#line 183 "ext/http11/http11_parser.c"
         if ( (*p) == 84 )
                 goto st7;
         goto st1;
@@ -233,14 +237,14 @@ case 13:
                 goto st13;
         goto st1;
 tr23:
-#line 42 "ext/http11/http11_parser.rl"
+#line 46 "ext/http11/http11_parser.rl"
         {        
                if(parser->http_version != NULL)
                               parser->http_version(parser->data, PTR_TO(mark), LEN(mark, p));
         }
         goto st14;
 tr35:
-#line 24 "ext/http11/http11_parser.rl"
+#line 28 "ext/http11/http11_parser.rl"
         {
                if(parser->http_field != NULL) {
                               parser->http_field(parser->data, PTR_TO(field_start), parser->field_len, PTR_TO(mark), LEN(mark, p));
@@ -251,7 +255,7 @@ st14:
         if ( ++p == pe )
                 goto _out14;
 case 14:
-#line 255 "ext/http11/http11_parser.c"
+#line 259 "ext/http11/http11_parser.c"
         if ( (*p) == 10 )
                 goto st15;
         goto st1;
@@ -291,7 +295,7 @@ case 16:
                 goto tr26;
         goto st1;
 tr26:
-#line 47 "ext/http11/http11_parser.rl"
+#line 51 "ext/http11/http11_parser.rl"
         {
                parser->body_start = p - buffer + 1;
                if(parser->header_done != NULL)
@@ -303,17 +307,17 @@ st51:
         if ( ++p == pe )
                 goto _out51;
 case 51:
-#line 307 "ext/http11/http11_parser.c"
+#line 311 "ext/http11/http11_parser.c"
         goto st1;
 tr22:
-#line 18 "ext/http11/http11_parser.rl"
+#line 22 "ext/http11/http11_parser.rl"
         { MARK(field_start, p); }
         goto st17;
 st17:
         if ( ++p == pe )
                 goto _out17;
 case 17:
-#line 317 "ext/http11/http11_parser.c"
+#line 321 "ext/http11/http11_parser.c"
         switch( (*p) ) {
                 case 33: goto st17;
                 case 58: goto tr16;
@@ -339,7 +343,7 @@ case 17:
                 goto st17;
         goto st1;
 tr16:
-#line 19 "ext/http11/http11_parser.rl"
+#line 23 "ext/http11/http11_parser.rl"
         {
                parser->field_len = LEN(field_start, p);
         }
@@ -348,7 +352,7 @@ st18:
         if ( ++p == pe )
                 goto _out18;
 case 18:
-#line 352 "ext/http11/http11_parser.c"
+#line 356 "ext/http11/http11_parser.c"
         if ( (*p) == 32 )
                 goto st19;
         goto st1;
@@ -360,26 +364,26 @@ case 19:
                 goto tr35;
         goto tr38;
 tr38:
-#line 23 "ext/http11/http11_parser.rl"
+#line 27 "ext/http11/http11_parser.rl"
         { MARK(mark, p); }
         goto st20;
 st20:
         if ( ++p == pe )
                 goto _out20;
 case 20:
-#line 371 "ext/http11/http11_parser.c"
+#line 375 "ext/http11/http11_parser.c"
         if ( (*p) == 13 )
                 goto tr35;
         goto st20;
 tr11:
-#line 16 "ext/http11/http11_parser.rl"
+#line 20 "ext/http11/http11_parser.rl"
         {MARK(mark, p); }
         goto st21;
 st21:
         if ( ++p == pe )
                 goto _out21;
 case 21:
-#line 383 "ext/http11/http11_parser.c"
+#line 387 "ext/http11/http11_parser.c"
         switch( (*p) ) {
                 case 43: goto st21;
                 case 58: goto st22;
@@ -397,14 +401,14 @@ case 21:
                 goto st21;
         goto st1;
 tr13:
-#line 16 "ext/http11/http11_parser.rl"
+#line 20 "ext/http11/http11_parser.rl"
         {MARK(mark, p); }
         goto st22;
 st22:
         if ( ++p == pe )
                 goto _out22;
 case 22:
-#line 408 "ext/http11/http11_parser.c"
+#line 412 "ext/http11/http11_parser.c"
         switch( (*p) ) {
                 case 32: goto tr20;
                 case 37: goto st23;
@@ -445,14 +449,14 @@ case 24:
                 goto st22;
         goto st1;
 tr12:
-#line 16 "ext/http11/http11_parser.rl"
+#line 20 "ext/http11/http11_parser.rl"
         {MARK(mark, p); }
         goto st25;
 st25:
         if ( ++p == pe )
                 goto _out25;
 case 25:
-#line 456 "ext/http11/http11_parser.c"
+#line 460 "ext/http11/http11_parser.c"
         switch( (*p) ) {
                 case 32: goto tr20;
                 case 37: goto st26;
@@ -494,7 +498,7 @@ case 27:
                 goto st25;
         goto st1;
 tr30:
-#line 33 "ext/http11/http11_parser.rl"
+#line 37 "ext/http11/http11_parser.rl"
         {
                if(parser->request_uri != NULL)
                               parser->request_uri(parser->data, PTR_TO(mark), LEN(mark, p));
@@ -504,7 +508,7 @@ st28:
         if ( ++p == pe )
                 goto _out28;
 case 28:
-#line 508 "ext/http11/http11_parser.c"
+#line 512 "ext/http11/http11_parser.c"
         switch( (*p) ) {
                 case 32: goto tr32;
                 case 37: goto tr37;
@@ -519,14 +523,14 @@ case 28:
                 goto st1;
         goto tr36;
 tr36:
-#line 16 "ext/http11/http11_parser.rl"
+#line 20 "ext/http11/http11_parser.rl"
         {MARK(mark, p); }
         goto st29;
 st29:
         if ( ++p == pe )
                 goto _out29;
 case 29:
-#line 530 "ext/http11/http11_parser.c"
+#line 534 "ext/http11/http11_parser.c"
         switch( (*p) ) {
                 case 32: goto tr32;
                 case 37: goto st30;
@@ -541,14 +545,14 @@ case 29:
                 goto st1;
         goto st29;
 tr37:
-#line 16 "ext/http11/http11_parser.rl"
+#line 20 "ext/http11/http11_parser.rl"
         {MARK(mark, p); }
         goto st30;
 st30:
         if ( ++p == pe )
                 goto _out30;
 case 30:
-#line 552 "ext/http11/http11_parser.c"
+#line 556 "ext/http11/http11_parser.c"
         if ( (*p) < 65 ) {
                 if ( 48 <= (*p) && (*p) <= 57 )
                         goto st31;
@@ -957,7 +961,7 @@ case 50:
 
         _out: {}
         }
-#line 137 "ext/http11/http11_parser.rl"
+#line 141 "ext/http11/http11_parser.rl"
 
     parser->cs = cs;
     parser->nread += p - (buffer + off);
@@ -972,8 +976,8 @@ case 50:
     if(parser->body_start) {
         /* final \r\n combo encountered so stop right here */
         
-#line 976 "ext/http11/http11_parser.c"
-#line 151 "ext/http11/http11_parser.rl"
+#line 980 "ext/http11/http11_parser.c"
+#line 155 "ext/http11/http11_parser.rl"
         parser->nread++;
     }
 
@@ -985,8 +989,8 @@ int http_parser_finish(http_parser *parser)
         int cs = parser->cs;
 
         
-#line 989 "ext/http11/http11_parser.c"
-#line 162 "ext/http11/http11_parser.rl"
+#line 993 "ext/http11/http11_parser.c"
+#line 166 "ext/http11/http11_parser.rl"
 
         parser->cs = cs;
 
diff --git a/ext/http11/http11_parser.h b/ext/http11/http11_parser.h
index 11c0907..c993738 100644
--- a/ext/http11/http11_parser.h
+++ b/ext/http11/http11_parser.h
@@ -1,3 +1,7 @@
+/**
+ * Copyright (c) 2005 Zed A. Shaw
+ * You can redistribute it and/or modify it under the same terms as Ruby.
+ */
 
 #ifndef http11_parser_h
 #define http11_parser_h
diff --git a/ext/http11/http11_parser.rl b/ext/http11/http11_parser.rl
index 0bc59ef..902d678 100644
--- a/ext/http11/http11_parser.rl
+++ b/ext/http11/http11_parser.rl
@@ -1,3 +1,7 @@
+/**
+ * Copyright (c) 2005 Zed A. Shaw
+ * You can redistribute it and/or modify it under the same terms as Ruby.
+ */
 #include "http11_parser.h"
 #include <stdio.h>
 #include <assert.h>