| 153 | } |
| 154 | |
| 155 | static int on_header_field(http_parser* p, const char* data, size_t length) |
| 156 | { |
| 157 | DataDecoder* decoder = (DataDecoder*) p->data; |
| 158 | CHECK_NOTNULL(decoder->request); |
| 159 | |
| 160 | if (decoder->header != HEADER_FIELD) { |
| 161 | decoder->request->headers[decoder->field] = decoder->value; |
| 162 | decoder->field.clear(); |
| 163 | decoder->value.clear(); |
| 164 | } |
| 165 | |
| 166 | decoder->field.append(data, length); |
| 167 | decoder->header = HEADER_FIELD; |
| 168 | |
| 169 | return http_parsing::SUCCESS; |
| 170 | } |
| 171 | |
| 172 | static int on_header_value(http_parser* p, const char* data, size_t length) |
| 173 | { |