| 3575 | } // namespace detail |
| 3576 | |
| 3577 | inline ssize_t write_headers(Stream &strm, const Headers &headers) { |
| 3578 | ssize_t write_len = 0; |
| 3579 | for (const auto &x : headers) { |
| 3580 | auto len = |
| 3581 | strm.write_format("%s: %s\r\n", x.first.c_str(), x.second.c_str()); |
| 3582 | if (len < 0) { return len; } |
| 3583 | write_len += len; |
| 3584 | } |
| 3585 | auto len = strm.write("\r\n"); |
| 3586 | if (len < 0) { return len; } |
| 3587 | write_len += len; |
| 3588 | return write_len; |
| 3589 | } |
| 3590 | |
| 3591 | inline bool write_data(Stream &strm, const char *d, size_t l) { |
| 3592 | size_t offset = 0; |
no test coverage detected