diff options
author | Matthew Wild <mwild1@gmail.com> | 2014-09-03 18:49:41 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2014-09-03 18:49:41 +0100 |
commit | 5035900778c4e2fa078511c5c38754da5a834ff1 (patch) | |
tree | 6bf3157776667627934fb3902ac8de18ef2df5b4 | |
parent | 3d6dafb89a05a6aad4d102266172e377d9491360 (diff) | |
download | prosody-5035900778c4e2fa078511c5c38754da5a834ff1.tar.gz prosody-5035900778c4e2fa078511c5c38754da5a834ff1.zip |
net.http.parser: Support status code 101 and allow handling of the received data by someone else
-rw-r--r-- | net/http/parser.lua | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/net/http/parser.lua b/net/http/parser.lua index f9e6cea0..d896dff4 100644 --- a/net/http/parser.lua +++ b/net/http/parser.lua @@ -140,7 +140,11 @@ function httpstream.new(success_cb, error_cb, parser_type, options_cb) break; end elseif len and #buf >= len then - packet.body, buf = buf:sub(1, len), buf:sub(len + 1); + if packet.code == 101 then + packet.body, buf = buf, "" + else + packet.body, buf = buf:sub(1, len), buf:sub(len + 1); + end state = nil; success_cb(packet); else break; |