| 357 | } |
| 358 | |
| 359 | int Request::parse_request_line(Parser &p) { |
| 360 | auto verb_str = p.extract_until_char(' '); |
| 361 | m_verb = string_to_verb(m_buf | verb_str); |
| 362 | if (verb() == Verb::UNKNOWN) |
| 363 | LOG_ERROR_RETURN(0, -1, "invalid http method"); |
| 364 | auto target = p.extract_until_char(' '); |
| 365 | m_target = target; |
| 366 | p.skip_string("HTTP/"); |
| 367 | m_version = p.extract_until_char('\r'); |
| 368 | if (m_version.size() >= 6) |
| 369 | LOG_ERROR_RETURN(0, -1, "invalid scheme"); |
| 370 | p.skip_chars('\n'); |
| 371 | return 0; |
| 372 | } |
| 373 | |
| 374 | int Response::parse_status_line(Parser &p) { |
| 375 | p.skip_string("HTTP/"); |
nothing calls this directly
no test coverage detected