bool KVParser::parseKeyValueContent(Cursor& cursor, size_t& available, size_t& length, IOBufQueue& queue) { std::unique_ptr<IOBuf> buf; size_t len = cursor.cloneAtMost(buf, length); queue.append(std::move(buf)); assert(length >= len); length -= len; assert(available >= len); available -= len; return (length == 0); }
void FastCGISession::parseGetValues(Cursor& cursor, size_t& available) { std::unique_ptr<IOBuf> chain; size_t length = cursor.cloneAtMost(chain, m_contentLeft); available -= length; handleGetValues(std::move(chain)); }