diff options
Diffstat (limited to 'opentracker.c')
-rw-r--r-- | opentracker.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/opentracker.c b/opentracker.c index 993877a..bce5be0 100644 --- a/opentracker.c +++ b/opentracker.c | |||
@@ -97,9 +97,9 @@ static void handle_dead( const int64 socket ) { | |||
97 | struct http_data* h=io_getcookie( socket ); | 97 | struct http_data* h=io_getcookie( socket ); |
98 | if( h ) { | 98 | if( h ) { |
99 | if( h->flag & STRUCT_HTTP_FLAG_IOB_USED ) | 99 | if( h->flag & STRUCT_HTTP_FLAG_IOB_USED ) |
100 | iob_reset( &h->batch ); | 100 | iob_reset( &h->data.batch ); |
101 | if( h->flag & STRUCT_HTTP_FLAG_ARRAY_USED ) | 101 | if( h->flag & STRUCT_HTTP_FLAG_ARRAY_USED ) |
102 | array_reset( &h->request ); | 102 | array_reset( &h->data.request ); |
103 | if( h->flag & STRUCT_HTTP_FLAG_WAITINGFORTASK ) | 103 | if( h->flag & STRUCT_HTTP_FLAG_WAITINGFORTASK ) |
104 | mutex_workqueue_canceltask( socket ); | 104 | mutex_workqueue_canceltask( socket ); |
105 | free( h ); | 105 | free( h ); |
@@ -117,32 +117,32 @@ static ssize_t handle_read( const int64 clientsocket ) { | |||
117 | } | 117 | } |
118 | 118 | ||
119 | /* If we get the whole request in one packet, handle it without copying */ | 119 | /* If we get the whole request in one packet, handle it without copying */ |
120 | if( !array_start( &h->request ) ) { | 120 | if( !array_start( &h->data.request ) ) { |
121 | if( memchr( static_inbuf, '\n', l ) ) | 121 | if( memchr( static_inbuf, '\n', l ) ) |
122 | return http_handle_request( clientsocket, static_inbuf, l ); | 122 | return http_handle_request( clientsocket, static_inbuf, l ); |
123 | h->flag |= STRUCT_HTTP_FLAG_ARRAY_USED; | 123 | h->flag |= STRUCT_HTTP_FLAG_ARRAY_USED; |
124 | array_catb( &h->request, static_inbuf, l ); | 124 | array_catb( &h->data.request, static_inbuf, l ); |
125 | return 0; | 125 | return 0; |
126 | } | 126 | } |
127 | 127 | ||
128 | h->flag |= STRUCT_HTTP_FLAG_ARRAY_USED; | 128 | h->flag |= STRUCT_HTTP_FLAG_ARRAY_USED; |
129 | array_catb( &h->request, static_inbuf, l ); | 129 | array_catb( &h->data.request, static_inbuf, l ); |
130 | 130 | ||
131 | if( array_failed( &h->request ) ) | 131 | if( array_failed( &h->data.request ) ) |
132 | return http_issue_error( clientsocket, CODE_HTTPERROR_500 ); | 132 | return http_issue_error( clientsocket, CODE_HTTPERROR_500 ); |
133 | 133 | ||
134 | if( array_bytes( &h->request ) > 8192 ) | 134 | if( array_bytes( &h->data.request ) > 8192 ) |
135 | return http_issue_error( clientsocket, CODE_HTTPERROR_500 ); | 135 | return http_issue_error( clientsocket, CODE_HTTPERROR_500 ); |
136 | 136 | ||
137 | if( memchr( array_start( &h->request ), '\n', array_bytes( &h->request ) ) ) | 137 | if( memchr( array_start( &h->data.request ), '\n', array_bytes( &h->data.request ) ) ) |
138 | return http_handle_request( clientsocket, array_start( &h->request ), array_bytes( &h->request ) ); | 138 | return http_handle_request( clientsocket, array_start( &h->data.request ), array_bytes( &h->data.request ) ); |
139 | 139 | ||
140 | return 0; | 140 | return 0; |
141 | } | 141 | } |
142 | 142 | ||
143 | static void handle_write( const int64 clientsocket ) { | 143 | static void handle_write( const int64 clientsocket ) { |
144 | struct http_data* h=io_getcookie( clientsocket ); | 144 | struct http_data* h=io_getcookie( clientsocket ); |
145 | if( !h || ( iob_send( clientsocket, &h->batch ) <= 0 ) ) | 145 | if( !h || ( iob_send( clientsocket, &h->data.batch ) <= 0 ) ) |
146 | handle_dead( clientsocket ); | 146 | handle_dead( clientsocket ); |
147 | } | 147 | } |
148 | 148 | ||