32 LOGD(
"HttpChunkReader: %s",
"open");
39 LOGD(
"HttpChunkReader: %s",
"read");
44 int len_processed = client.
read(str, read_max);
45 if (len_processed == -1) {
63 bool incl_nl =
true) {
64 LOGD(
"HttpChunkReader: %s",
"readln");
68 int len_processed =
readlnInternal(client, str, read_max, incl_nl);
69 if (len_processed == -1) {
70 LOGD(
"HttpChunkReader: readln result -1");
87 LOGD(
"HttpChunkReader: available=>%d", result);
109 LOGD(
"HttpChunkReader: %s",
"removeCRLF");
120 uint32_t timeout =
millis() + 2000;
121 int peeked = client.peek();
122 while (peeked < 0 &&
millis() < timeout) {
124 peeked = client.peek();
126 if (peeked == expected) {
129 LOGW(
"HttpChunkReader: removeCRLF expected '%d' but got '%d'", (
int)expected, peeked);
135 LOGD(
"HttpChunkReader::readChunkLen");
138 LOGD(
"HttpChunkReader::readChunkLen readlnInternal result -1");
152 bool looksLikeHex = len_str[0] != 0;
153 for (uint8_t* p = len_str; *p != 0 && looksLikeHex; ++p) {
154 if (!isxdigit(*p)) looksLikeHex =
false;
157 LOGE(
"HttpChunkReader::readChunkLen: '%s' is not a valid chunk length - connection desynced", len_str);
167 LOGD(
"HttpChunkReader::readChunkLen %s",
"last chunk received");
#define LOGW(...)
Definition AudioLoggerIDF.h:29
#define LOGI(...)
Definition AudioLoggerIDF.h:28
#define LOGD(...)
Definition AudioLoggerIDF.h:27
#define LOGE(...)
Definition AudioLoggerIDF.h:30
virtual int read(uint8_t *buffer, size_t len)
Definition Arduino.h:165