| 3912 | } // namespace detail |
| 3913 | |
| 3914 | inline ssize_t write_headers(Stream &strm, const Headers &headers) { |
| 3915 | ssize_t write_len = 0; |
| 3916 | for (const auto &x : headers) { |
| 3917 | auto len = |
| 3918 | strm.write_format("%s: %s\r\n", x.first.c_str(), x.second.c_str()); |
| 3919 | if (len < 0) { return len; } |
| 3920 | write_len += len; |
| 3921 | } |
| 3922 | auto len = strm.write("\r\n"); |
| 3923 | if (len < 0) { return len; } |
| 3924 | write_len += len; |
| 3925 | return write_len; |
| 3926 | } |
| 3927 | |
| 3928 | inline bool write_data(Stream &strm, const char *d, size_t l) { |
| 3929 | size_t offset = 0; |
no test coverage detected