Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aa92ef7a authored by Andreas Huber's avatar Andreas Huber
Browse files

Many, many developers misread or don't read the http specs and terminate lines...

Many, many developers misread or don't read the http specs and terminate lines with '\n' instead of CRLF '\r\n' as required. Enable the workaround for this by default. Also increase the socket read timeout to 30 secs.

Change-Id: I51df3b8139b3009565b2271611050700a23cf1d7
parent 259b4c86
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -68,7 +68,7 @@ status_t HTTPStream::connect(const char *server, int port) {
        return UNKNOWN_ERROR;
    }

    setReceiveTimeout(5);  // Time out reads after 5 secs by default
    setReceiveTimeout(30);  // Time out reads after 30 secs by default

    mState = CONNECTING;

@@ -158,7 +158,7 @@ status_t HTTPStream::send(const char *data) {
// The workaround accepts both behaviours but could potentially break
// legitimate responses that use a single newline to "fold" headers, which is
// why it's not yet on by default.
#define WORKAROUND_FOR_MISSING_CR       0
#define WORKAROUND_FOR_MISSING_CR       1

status_t HTTPStream::receive_line(char *line, size_t size) {
    if (mState != CONNECTED) {