| 114 | } |
| 115 | |
| 116 | bool HttpResponse::ParseStatusCode(StringPiece status) |
| 117 | { |
| 118 | if (status.size() != 3) |
| 119 | return false; |
| 120 | if (!isdigit(status[0]) || !isdigit(status[1]) || !isdigit(status[2])) |
| 121 | return false; |
| 122 | int code = (status[0] - '0') * 100 + (status[1] - '0') * 10 + (status[2] - '0'); |
| 123 | if (code < 100 || code > 999) |
| 124 | return false; |
| 125 | m_status = static_cast<StatusCode>(code); |
| 126 | return true; |
| 127 | } |
| 128 | |
| 129 | void HttpResponse::AppendStartLineToString(std::string* result) const { |
| 130 | StringAppend(result, "HTTP/", Version().Major(), ".", Version().Major(), |