Fix testsuite errors, due to a "Connection: upgrade" seen differently than "Connection: Upgrade"
This commit is contained in:
1 parent
c612a35f06
commit
5c48a114f4
10 files changed
+69
-69
No files matched your search
@@ -179,7 +179,7 @@ int main() {
|
|||||||
//foo.handle_accept(con,true);
|
//foo.handle_accept(con,true);
|
||||||
|
|
||||||
std::stringstream input;
|
std::stringstream input;
|
||||||
input << "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
input << "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
||||||
//input << "GET / HTTP/1.1\r\nHost: www.example.com\r\n\r\n";
|
//input << "GET / HTTP/1.1\r\nHost: www.example.com\r\n\r\n";
|
||||||
input >> *con;
|
input >> *con;
|
||||||
|
|
||||||
|
|||||||
@@ -217,8 +217,8 @@ BOOST_AUTO_TEST_CASE( connection_extensions ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( basic_websocket_request ) {
|
BOOST_AUTO_TEST_CASE( basic_websocket_request ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
||||||
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: ";
|
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: ";
|
||||||
output+=websocketpp::user_agent;
|
output+=websocketpp::user_agent;
|
||||||
output+="\r\nUpgrade: websocket\r\n\r\n";
|
output+="\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
@@ -279,8 +279,8 @@ BOOST_AUTO_TEST_CASE( deferred_http_request ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( request_no_server_header ) {
|
BOOST_AUTO_TEST_CASE( request_no_server_header ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
||||||
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nUpgrade: websocket\r\n\r\n";
|
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
server s;
|
server s;
|
||||||
s.set_user_agent("");
|
s.set_user_agent("");
|
||||||
@@ -290,8 +290,8 @@ BOOST_AUTO_TEST_CASE( request_no_server_header ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( request_no_server_header_override ) {
|
BOOST_AUTO_TEST_CASE( request_no_server_header_override ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
||||||
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: foo\r\nUpgrade: websocket\r\n\r\n";
|
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: foo\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
server s;
|
server s;
|
||||||
s.set_user_agent("");
|
s.set_user_agent("");
|
||||||
@@ -304,7 +304,7 @@ BOOST_AUTO_TEST_CASE( request_no_server_header_override ) {
|
|||||||
BOOST_AUTO_TEST_CASE( basic_client_websocket ) {
|
BOOST_AUTO_TEST_CASE( basic_client_websocket ) {
|
||||||
std::string uri = "ws://localhost";
|
std::string uri = "ws://localhost";
|
||||||
|
|
||||||
//std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: foo\r\nUpgrade: websocket\r\n\r\n";
|
//std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: foo\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
std::string ref = "GET / HTTP/1.1\r\nConnection: Upgrade\r\nFoo: Bar\r\nHost: localhost\r\nSec-WebSocket-Key: AAAAAAAAAAAAAAAAAAAAAA==\r\nSec-WebSocket-Version: 13\r\nUpgrade: websocket\r\nUser-Agent: foo\r\n\r\n";
|
std::string ref = "GET / HTTP/1.1\r\nConnection: Upgrade\r\nFoo: Bar\r\nHost: localhost\r\nSec-WebSocket-Key: AAAAAAAAAAAAAAAAAAAAAA==\r\nSec-WebSocket-Version: 13\r\nUpgrade: websocket\r\nUser-Agent: foo\r\n\r\n";
|
||||||
|
|
||||||
@@ -326,13 +326,13 @@ BOOST_AUTO_TEST_CASE( basic_client_websocket ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( set_max_message_size ) {
|
BOOST_AUTO_TEST_CASE( set_max_message_size ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n\r\n";
|
||||||
|
|
||||||
// After the handshake, add a single frame with a message that is too long.
|
// After the handshake, add a single frame with a message that is too long.
|
||||||
char frame0[10] = {char(0x82), char(0x83), 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01};
|
char frame0[10] = {char(0x82), char(0x83), 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01};
|
||||||
input.append(frame0, 10);
|
input.append(frame0, 10);
|
||||||
|
|
||||||
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: foo\r\nUpgrade: websocket\r\n\r\n";
|
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: foo\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
// After the handshake, add a single frame with a close message with message too big
|
// After the handshake, add a single frame with a close message with message too big
|
||||||
// error code.
|
// error code.
|
||||||
@@ -361,7 +361,7 @@ BOOST_AUTO_TEST_CASE( websocket_fail_parse_error ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( websocket_fail_invalid_version ) {
|
BOOST_AUTO_TEST_CASE( websocket_fail_invalid_version ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: foo\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: foo\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
||||||
|
|
||||||
server s;
|
server s;
|
||||||
websocketpp::lib::error_code ec = make_error_code(websocketpp::error::invalid_version);
|
websocketpp::lib::error_code ec = make_error_code(websocketpp::error::invalid_version);
|
||||||
@@ -373,7 +373,7 @@ BOOST_AUTO_TEST_CASE( websocket_fail_invalid_version ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( websocket_fail_unsupported_version ) {
|
BOOST_AUTO_TEST_CASE( websocket_fail_unsupported_version ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 12\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 12\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
||||||
|
|
||||||
server s;
|
server s;
|
||||||
websocketpp::lib::error_code ec = make_error_code(websocketpp::error::unsupported_version);
|
websocketpp::lib::error_code ec = make_error_code(websocketpp::error::unsupported_version);
|
||||||
@@ -385,7 +385,7 @@ BOOST_AUTO_TEST_CASE( websocket_fail_unsupported_version ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// BOOST_AUTO_TEST_CASE( websocket_fail_invalid_uri ) {
|
// BOOST_AUTO_TEST_CASE( websocket_fail_invalid_uri ) {
|
||||||
// std::string input = "GET http://345.123.123.123/foo HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
// std::string input = "GET http://345.123.123.123/foo HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
||||||
|
|
||||||
// server s;
|
// server s;
|
||||||
// websocketpp::lib::error_code ec = make_error_code(websocketpp::error::unsupported_version);
|
// websocketpp::lib::error_code ec = make_error_code(websocketpp::error::unsupported_version);
|
||||||
@@ -429,14 +429,14 @@ BOOST_AUTO_TEST_CASE( websocket_fail_upgrade_required ) {
|
|||||||
|
|
||||||
|
|
||||||
// BOOST_AUTO_TEST_CASE( user_reject_origin ) {
|
// BOOST_AUTO_TEST_CASE( user_reject_origin ) {
|
||||||
// std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example2.com\r\n\r\n";
|
// std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example2.com\r\n\r\n";
|
||||||
// std::string output = "HTTP/1.1 403 Forbidden\r\nServer: "+websocketpp::USER_AGENT+"\r\n\r\n";
|
// std::string output = "HTTP/1.1 403 Forbidden\r\nServer: "+websocketpp::USER_AGENT+"\r\n\r\n";
|
||||||
|
|
||||||
// BOOST_CHECK(run_server_test(input) == output);
|
// BOOST_CHECK(run_server_test(input) == output);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// BOOST_AUTO_TEST_CASE( basic_text_message ) {
|
// BOOST_AUTO_TEST_CASE( basic_text_message ) {
|
||||||
// std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
// std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
||||||
|
|
||||||
// unsigned char frames[8] = {0x82,0x82,0xFF,0xFF,0xFF,0xFF,0xD5,0xD5};
|
// unsigned char frames[8] = {0x82,0x82,0xFF,0xFF,0xFF,0xFF,0xD5,0xD5};
|
||||||
// input.append(reinterpret_cast<char*>(frames),8);
|
// input.append(reinterpret_cast<char*>(frames),8);
|
||||||
@@ -481,7 +481,7 @@ BOOST_AUTO_TEST_CASE( client_handshake_timeout_race2 ) {
|
|||||||
|
|
||||||
BOOST_CHECK(!ec);
|
BOOST_CHECK(!ec);
|
||||||
|
|
||||||
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: ICX+Yqv66kxgM0FcWaLWlFLwTAI=\r\nServer: foo\r\nUpgrade: websocket\r\n\r\n";
|
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ICX+Yqv66kxgM0FcWaLWlFLwTAI=\r\nServer: foo\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
// This test the case where a handshake times out immediately before the
|
// This test the case where a handshake times out immediately before the
|
||||||
// handler that would have completed it gets invoked. This situation happens
|
// handler that would have completed it gets invoked. This situation happens
|
||||||
@@ -501,7 +501,7 @@ BOOST_AUTO_TEST_CASE( client_handshake_timeout_race2 ) {
|
|||||||
BOOST_AUTO_TEST_CASE( server_handshake_timeout_race1 ) {
|
BOOST_AUTO_TEST_CASE( server_handshake_timeout_race1 ) {
|
||||||
debug_server s;
|
debug_server s;
|
||||||
|
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: AAAAAAAAAAAAAAAAAAAAAA==\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: AAAAAAAAAAAAAAAAAAAAAA==\r\n\r\n";
|
||||||
|
|
||||||
debug_server::connection_ptr con = s.get_connection();
|
debug_server::connection_ptr con = s.get_connection();
|
||||||
con->start();
|
con->start();
|
||||||
@@ -516,7 +516,7 @@ BOOST_AUTO_TEST_CASE( server_handshake_timeout_race1 ) {
|
|||||||
BOOST_AUTO_TEST_CASE( server_handshake_timeout_race2 ) {
|
BOOST_AUTO_TEST_CASE( server_handshake_timeout_race2 ) {
|
||||||
debug_server s;
|
debug_server s;
|
||||||
|
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: AAAAAAAAAAAAAAAAAAAAAA==\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: AAAAAAAAAAAAAAAAAAAAAA==\r\n\r\n";
|
||||||
|
|
||||||
debug_server::connection_ptr con = s.get_connection();
|
debug_server::connection_ptr con = s.get_connection();
|
||||||
con->start();
|
con->start();
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ BOOST_AUTO_TEST_CASE( exact_match ) {
|
|||||||
websocketpp::http::parser::response response;
|
websocketpp::http::parser::response response;
|
||||||
websocketpp::processor::hybi00<websocketpp::http::parser::request,websocketpp::http::parser::response> p(false);
|
websocketpp::processor::hybi00<websocketpp::http::parser::request,websocketpp::http::parser::response> p(false);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nOrigin: http://example.com\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nOrigin: http://example.com\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
r.replace_header("Sec-WebSocket-Key3","WjN}|M(6");
|
r.replace_header("Sec-WebSocket-Key3","WjN}|M(6");
|
||||||
@@ -79,7 +79,7 @@ BOOST_AUTO_TEST_CASE( non_get_method ) {
|
|||||||
websocketpp::http::parser::request r;
|
websocketpp::http::parser::request r;
|
||||||
websocketpp::processor::hybi00<websocketpp::http::parser::request,websocketpp::http::parser::response> p(false);
|
websocketpp::processor::hybi00<websocketpp::http::parser::request,websocketpp::http::parser::response> p(false);
|
||||||
|
|
||||||
std::string handshake = "POST / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
std::string handshake = "POST / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
r.replace_header("Sec-WebSocket-Key3","janelle!");
|
r.replace_header("Sec-WebSocket-Key3","janelle!");
|
||||||
@@ -93,7 +93,7 @@ BOOST_AUTO_TEST_CASE( old_http_version ) {
|
|||||||
websocketpp::http::parser::request r;
|
websocketpp::http::parser::request r;
|
||||||
websocketpp::processor::hybi00<websocketpp::http::parser::request,websocketpp::http::parser::response> p(false);
|
websocketpp::processor::hybi00<websocketpp::http::parser::request,websocketpp::http::parser::response> p(false);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.0\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.0\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
r.replace_header("Sec-WebSocket-Key3","janelle!");
|
r.replace_header("Sec-WebSocket-Key3","janelle!");
|
||||||
@@ -107,7 +107,7 @@ BOOST_AUTO_TEST_CASE( missing_handshake_key1 ) {
|
|||||||
websocketpp::http::parser::request r;
|
websocketpp::http::parser::request r;
|
||||||
websocketpp::processor::hybi00<websocketpp::http::parser::request,websocketpp::http::parser::response> p(false);
|
websocketpp::processor::hybi00<websocketpp::http::parser::request,websocketpp::http::parser::response> p(false);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
r.replace_header("Sec-WebSocket-Key3","janelle!");
|
r.replace_header("Sec-WebSocket-Key3","janelle!");
|
||||||
@@ -121,7 +121,7 @@ BOOST_AUTO_TEST_CASE( missing_handshake_key2 ) {
|
|||||||
websocketpp::http::parser::request r;
|
websocketpp::http::parser::request r;
|
||||||
websocketpp::processor::hybi00<websocketpp::http::parser::request,websocketpp::http::parser::response> p(false);
|
websocketpp::processor::hybi00<websocketpp::http::parser::request,websocketpp::http::parser::response> p(false);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
r.replace_header("Sec-WebSocket-Key3","janelle!");
|
r.replace_header("Sec-WebSocket-Key3","janelle!");
|
||||||
@@ -137,7 +137,7 @@ BOOST_AUTO_TEST_CASE( bad_host ) {
|
|||||||
websocketpp::uri_ptr u;
|
websocketpp::uri_ptr u;
|
||||||
bool exception = false;
|
bool exception = false;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com:70000\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com:70000\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
r.replace_header("Sec-WebSocket-Key3","janelle!");
|
r.replace_header("Sec-WebSocket-Key3","janelle!");
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ typedef stub_config::message_type::ptr message_ptr;
|
|||||||
BOOST_AUTO_TEST_CASE( exact_match ) {
|
BOOST_AUTO_TEST_CASE( exact_match ) {
|
||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nOrigin: http://example.com\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nOrigin: http://example.com\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
env.req.replace_header("Sec-WebSocket-Key3","WjN}|M(6");
|
env.req.replace_header("Sec-WebSocket-Key3","WjN}|M(6");
|
||||||
@@ -98,7 +98,7 @@ BOOST_AUTO_TEST_CASE( exact_match ) {
|
|||||||
BOOST_AUTO_TEST_CASE( non_get_method ) {
|
BOOST_AUTO_TEST_CASE( non_get_method ) {
|
||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
|
|
||||||
std::string handshake = "POST / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
std::string handshake = "POST / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
env.req.replace_header("Sec-WebSocket-Key3","janelle!");
|
env.req.replace_header("Sec-WebSocket-Key3","janelle!");
|
||||||
@@ -111,7 +111,7 @@ BOOST_AUTO_TEST_CASE( non_get_method ) {
|
|||||||
BOOST_AUTO_TEST_CASE( old_http_version ) {
|
BOOST_AUTO_TEST_CASE( old_http_version ) {
|
||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.0\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.0\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
env.req.replace_header("Sec-WebSocket-Key3","janelle!");
|
env.req.replace_header("Sec-WebSocket-Key3","janelle!");
|
||||||
@@ -124,7 +124,7 @@ BOOST_AUTO_TEST_CASE( old_http_version ) {
|
|||||||
BOOST_AUTO_TEST_CASE( missing_handshake_key1 ) {
|
BOOST_AUTO_TEST_CASE( missing_handshake_key1 ) {
|
||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
env.req.replace_header("Sec-WebSocket-Key3","janelle!");
|
env.req.replace_header("Sec-WebSocket-Key3","janelle!");
|
||||||
@@ -137,7 +137,7 @@ BOOST_AUTO_TEST_CASE( missing_handshake_key1 ) {
|
|||||||
BOOST_AUTO_TEST_CASE( missing_handshake_key2 ) {
|
BOOST_AUTO_TEST_CASE( missing_handshake_key2 ) {
|
||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
env.req.replace_header("Sec-WebSocket-Key3","janelle!");
|
env.req.replace_header("Sec-WebSocket-Key3","janelle!");
|
||||||
@@ -151,7 +151,7 @@ BOOST_AUTO_TEST_CASE( bad_host ) {
|
|||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
websocketpp::uri_ptr u;
|
websocketpp::uri_ptr u;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com:70000\r\nConnection: upgrade\r\nUpgrade: websocket\r\nOrigin: http://example.com\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com:70000\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nOrigin: http://example.com\r\nSec-WebSocket-Key1: 3e6b263 4 17 80\r\nSec-WebSocket-Key2: 17 9 G`ZD9 2 2b 7X 3 /r90\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
env.req.replace_header("Sec-WebSocket-Key3","janelle!");
|
env.req.replace_header("Sec-WebSocket-Key3","janelle!");
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ BOOST_AUTO_TEST_CASE( exact_match ) {
|
|||||||
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -95,7 +95,7 @@ BOOST_AUTO_TEST_CASE( exact_match ) {
|
|||||||
|
|
||||||
p.process_handshake(r,"",response);
|
p.process_handshake(r,"",response);
|
||||||
|
|
||||||
BOOST_CHECK_EQUAL(response.get_header("Connection"), "upgrade");
|
BOOST_CHECK_EQUAL(response.get_header("Connection"), "Upgrade");
|
||||||
BOOST_CHECK_EQUAL(response.get_header("Upgrade"), "websocket");
|
BOOST_CHECK_EQUAL(response.get_header("Upgrade"), "websocket");
|
||||||
BOOST_CHECK_EQUAL(response.get_header("Sec-WebSocket-Accept"), "s3pPLMBiTxaQ9kYGzzhZRbK+xOo=");
|
BOOST_CHECK_EQUAL(response.get_header("Sec-WebSocket-Accept"), "s3pPLMBiTxaQ9kYGzzhZRbK+xOo=");
|
||||||
}
|
}
|
||||||
@@ -108,7 +108,7 @@ BOOST_AUTO_TEST_CASE( non_get_method ) {
|
|||||||
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "POST / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
std::string handshake = "POST / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -126,7 +126,7 @@ BOOST_AUTO_TEST_CASE( old_http_version ) {
|
|||||||
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.0\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.0\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -144,7 +144,7 @@ BOOST_AUTO_TEST_CASE( missing_handshake_key1 ) {
|
|||||||
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -162,7 +162,7 @@ BOOST_AUTO_TEST_CASE( missing_handshake_key2 ) {
|
|||||||
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -180,7 +180,7 @@ BOOST_AUTO_TEST_CASE( bad_host ) {
|
|||||||
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
websocketpp::processor::hybi07<stub_config> p(false,true,msg_manager,rng);
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com:70000\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com:70000\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 7\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ BOOST_AUTO_TEST_CASE( exact_match ) {
|
|||||||
websocketpp::processor::hybi08<stub_config> p(false,true,msg_manager,rng);
|
websocketpp::processor::hybi08<stub_config> p(false,true,msg_manager,rng);
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -95,7 +95,7 @@ BOOST_AUTO_TEST_CASE( exact_match ) {
|
|||||||
|
|
||||||
p.process_handshake(r,"",response);
|
p.process_handshake(r,"",response);
|
||||||
|
|
||||||
BOOST_CHECK(response.get_header("Connection") == "upgrade");
|
BOOST_CHECK(response.get_header("Connection") == "Upgrade");
|
||||||
BOOST_CHECK(response.get_header("Upgrade") == "websocket");
|
BOOST_CHECK(response.get_header("Upgrade") == "websocket");
|
||||||
BOOST_CHECK(response.get_header("Sec-WebSocket-Accept") == "s3pPLMBiTxaQ9kYGzzhZRbK+xOo=");
|
BOOST_CHECK(response.get_header("Sec-WebSocket-Accept") == "s3pPLMBiTxaQ9kYGzzhZRbK+xOo=");
|
||||||
}
|
}
|
||||||
@@ -108,7 +108,7 @@ BOOST_AUTO_TEST_CASE( non_get_method ) {
|
|||||||
websocketpp::processor::hybi08<stub_config> p(false,true,msg_manager,rng);
|
websocketpp::processor::hybi08<stub_config> p(false,true,msg_manager,rng);
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "POST / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
std::string handshake = "POST / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -126,7 +126,7 @@ BOOST_AUTO_TEST_CASE( old_http_version ) {
|
|||||||
websocketpp::processor::hybi08<stub_config> p(false,true,msg_manager,rng);
|
websocketpp::processor::hybi08<stub_config> p(false,true,msg_manager,rng);
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.0\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.0\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -144,7 +144,7 @@ BOOST_AUTO_TEST_CASE( missing_handshake_key1 ) {
|
|||||||
websocketpp::processor::hybi08<stub_config> p(false,true,msg_manager,rng);
|
websocketpp::processor::hybi08<stub_config> p(false,true,msg_manager,rng);
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -162,7 +162,7 @@ BOOST_AUTO_TEST_CASE( missing_handshake_key2 ) {
|
|||||||
websocketpp::processor::hybi08<stub_config> p(false,true,msg_manager,rng);
|
websocketpp::processor::hybi08<stub_config> p(false,true,msg_manager,rng);
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -181,7 +181,7 @@ BOOST_AUTO_TEST_CASE( bad_host ) {
|
|||||||
websocketpp::uri_ptr u;
|
websocketpp::uri_ptr u;
|
||||||
websocketpp::lib::error_code ec;
|
websocketpp::lib::error_code ec;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com:70000\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com:70000\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 8\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
|
|||||||
@@ -120,7 +120,7 @@ struct processor_setup_ext {
|
|||||||
BOOST_AUTO_TEST_CASE( exact_match ) {
|
BOOST_AUTO_TEST_CASE( exact_match ) {
|
||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -139,7 +139,7 @@ BOOST_AUTO_TEST_CASE( exact_match ) {
|
|||||||
|
|
||||||
env.p.process_handshake(env.req,"",env.res);
|
env.p.process_handshake(env.req,"",env.res);
|
||||||
|
|
||||||
BOOST_CHECK_EQUAL(env.res.get_header("Connection"), "upgrade");
|
BOOST_CHECK_EQUAL(env.res.get_header("Connection"), "Upgrade");
|
||||||
BOOST_CHECK_EQUAL(env.res.get_header("Upgrade"), "websocket");
|
BOOST_CHECK_EQUAL(env.res.get_header("Upgrade"), "websocket");
|
||||||
BOOST_CHECK_EQUAL(env.res.get_header("Sec-WebSocket-Accept"), "s3pPLMBiTxaQ9kYGzzhZRbK+xOo=");
|
BOOST_CHECK_EQUAL(env.res.get_header("Sec-WebSocket-Accept"), "s3pPLMBiTxaQ9kYGzzhZRbK+xOo=");
|
||||||
}
|
}
|
||||||
@@ -147,7 +147,7 @@ BOOST_AUTO_TEST_CASE( exact_match ) {
|
|||||||
BOOST_AUTO_TEST_CASE( non_get_method ) {
|
BOOST_AUTO_TEST_CASE( non_get_method ) {
|
||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
|
|
||||||
std::string handshake = "POST / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
std::string handshake = "POST / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -159,7 +159,7 @@ BOOST_AUTO_TEST_CASE( non_get_method ) {
|
|||||||
BOOST_AUTO_TEST_CASE( old_http_version ) {
|
BOOST_AUTO_TEST_CASE( old_http_version ) {
|
||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.0\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.0\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -171,7 +171,7 @@ BOOST_AUTO_TEST_CASE( old_http_version ) {
|
|||||||
BOOST_AUTO_TEST_CASE( missing_handshake_key1 ) {
|
BOOST_AUTO_TEST_CASE( missing_handshake_key1 ) {
|
||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -183,7 +183,7 @@ BOOST_AUTO_TEST_CASE( missing_handshake_key1 ) {
|
|||||||
BOOST_AUTO_TEST_CASE( missing_handshake_key2 ) {
|
BOOST_AUTO_TEST_CASE( missing_handshake_key2 ) {
|
||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -195,7 +195,7 @@ BOOST_AUTO_TEST_CASE( missing_handshake_key2 ) {
|
|||||||
BOOST_AUTO_TEST_CASE( bad_host ) {
|
BOOST_AUTO_TEST_CASE( bad_host ) {
|
||||||
processor_setup env(true);
|
processor_setup env(true);
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com:70000\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com:70000\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: foo\r\n\r\n";
|
||||||
|
|
||||||
env.req.consume(handshake.c_str(),handshake.size());
|
env.req.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
BOOST_AUTO_TEST_CASE( exact_match ) {
|
BOOST_AUTO_TEST_CASE( exact_match ) {
|
||||||
websocketpp::http::parser::request r;
|
websocketpp::http::parser::request r;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
@@ -67,7 +67,7 @@ BOOST_AUTO_TEST_CASE( ci_exact_match ) {
|
|||||||
BOOST_AUTO_TEST_CASE( non_exact_match1 ) {
|
BOOST_AUTO_TEST_CASE( non_exact_match1 ) {
|
||||||
websocketpp::http::parser::request r;
|
websocketpp::http::parser::request r;
|
||||||
|
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade,foo\r\nUpgrade: websocket,foo\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade,foo\r\nUpgrade: websocket,foo\r\n\r\n";
|
||||||
|
|
||||||
r.consume(handshake.c_str(),handshake.size());
|
r.consume(handshake.c_str(),handshake.size());
|
||||||
|
|
||||||
|
|||||||
+15
-15
@@ -118,8 +118,8 @@ void open_func_subprotocol(server* s, std::string* out, websocketpp::connection_
|
|||||||
|
|
||||||
/* Tests */
|
/* Tests */
|
||||||
BOOST_AUTO_TEST_CASE( basic_websocket_request ) {
|
BOOST_AUTO_TEST_CASE( basic_websocket_request ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
||||||
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
server s;
|
server s;
|
||||||
s.set_user_agent("test");
|
s.set_user_agent("test");
|
||||||
@@ -128,7 +128,7 @@ BOOST_AUTO_TEST_CASE( basic_websocket_request ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( invalid_websocket_version ) {
|
BOOST_AUTO_TEST_CASE( invalid_websocket_version ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: a\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: a\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
||||||
std::string output = "HTTP/1.1 400 Bad Request\r\nServer: test\r\n\r\n";
|
std::string output = "HTTP/1.1 400 Bad Request\r\nServer: test\r\n\r\n";
|
||||||
|
|
||||||
server s;
|
server s;
|
||||||
@@ -139,7 +139,7 @@ BOOST_AUTO_TEST_CASE( invalid_websocket_version ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( unimplemented_websocket_version ) {
|
BOOST_AUTO_TEST_CASE( unimplemented_websocket_version ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 14\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 14\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\n\r\n";
|
||||||
|
|
||||||
std::string output = "HTTP/1.1 400 Bad Request\r\nSec-WebSocket-Version: 0,7,8,13\r\nServer: test\r\n\r\n";
|
std::string output = "HTTP/1.1 400 Bad Request\r\nSec-WebSocket-Version: 0,7,8,13\r\nServer: test\r\n\r\n";
|
||||||
|
|
||||||
@@ -150,9 +150,9 @@ BOOST_AUTO_TEST_CASE( unimplemented_websocket_version ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( list_subprotocol_empty ) {
|
BOOST_AUTO_TEST_CASE( list_subprotocol_empty ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\nSec-WebSocket-Protocol: foo\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\nSec-WebSocket-Protocol: foo\r\n\r\n";
|
||||||
|
|
||||||
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
std::string subprotocol;
|
std::string subprotocol;
|
||||||
|
|
||||||
@@ -165,9 +165,9 @@ BOOST_AUTO_TEST_CASE( list_subprotocol_empty ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( list_subprotocol_one ) {
|
BOOST_AUTO_TEST_CASE( list_subprotocol_one ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\nSec-WebSocket-Protocol: foo\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\nSec-WebSocket-Protocol: foo\r\n\r\n";
|
||||||
|
|
||||||
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
std::string validate;
|
std::string validate;
|
||||||
std::string open;
|
std::string open;
|
||||||
@@ -183,9 +183,9 @@ BOOST_AUTO_TEST_CASE( list_subprotocol_one ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( accept_subprotocol_one ) {
|
BOOST_AUTO_TEST_CASE( accept_subprotocol_one ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\nSec-WebSocket-Protocol: foo\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\nSec-WebSocket-Protocol: foo\r\n\r\n";
|
||||||
|
|
||||||
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nSec-WebSocket-Protocol: foo\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nSec-WebSocket-Protocol: foo\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
std::string validate;
|
std::string validate;
|
||||||
std::string open;
|
std::string open;
|
||||||
@@ -201,9 +201,9 @@ BOOST_AUTO_TEST_CASE( accept_subprotocol_one ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( accept_subprotocol_invalid ) {
|
BOOST_AUTO_TEST_CASE( accept_subprotocol_invalid ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\nSec-WebSocket-Protocol: foo\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\nSec-WebSocket-Protocol: foo\r\n\r\n";
|
||||||
|
|
||||||
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nSec-WebSocket-Protocol: foo\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nSec-WebSocket-Protocol: foo\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
std::string validate;
|
std::string validate;
|
||||||
std::string open;
|
std::string open;
|
||||||
@@ -219,9 +219,9 @@ BOOST_AUTO_TEST_CASE( accept_subprotocol_invalid ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( accept_subprotocol_two ) {
|
BOOST_AUTO_TEST_CASE( accept_subprotocol_two ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\nSec-WebSocket-Protocol: foo, bar\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example.com\r\nSec-WebSocket-Protocol: foo, bar\r\n\r\n";
|
||||||
|
|
||||||
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nSec-WebSocket-Protocol: bar\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
std::string output = "HTTP/1.1 101 Switching Protocols\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=\r\nSec-WebSocket-Protocol: bar\r\nServer: test\r\nUpgrade: websocket\r\n\r\n";
|
||||||
|
|
||||||
std::string validate;
|
std::string validate;
|
||||||
std::string open;
|
std::string open;
|
||||||
@@ -237,7 +237,7 @@ BOOST_AUTO_TEST_CASE( accept_subprotocol_two ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*BOOST_AUTO_TEST_CASE( user_reject_origin ) {
|
/*BOOST_AUTO_TEST_CASE( user_reject_origin ) {
|
||||||
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example2.com\r\n\r\n";
|
std::string input = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\nOrigin: http://www.example2.com\r\n\r\n";
|
||||||
std::string output = "HTTP/1.1 403 Forbidden\r\nServer: test\r\n\r\n";
|
std::string output = "HTTP/1.1 403 Forbidden\r\nServer: test\r\n\r\n";
|
||||||
|
|
||||||
server s;
|
server s;
|
||||||
|
|||||||
@@ -610,7 +610,7 @@ BOOST_AUTO_TEST_CASE( stop_listening ) {
|
|||||||
|
|
||||||
BOOST_AUTO_TEST_CASE( pause_reading ) {
|
BOOST_AUTO_TEST_CASE( pause_reading ) {
|
||||||
iostream_server s;
|
iostream_server s;
|
||||||
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n\r\n";
|
std::string handshake = "GET / HTTP/1.1\r\nHost: www.example.com\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==\r\n\r\n";
|
||||||
char buffer[2] = { char(0x81), char(0x80) };
|
char buffer[2] = { char(0x81), char(0x80) };
|
||||||
|
|
||||||
// suppress output (it needs a place to go to avoid error but we don't care what it is)
|
// suppress output (it needs a place to go to avoid error but we don't care what it is)
|
||||||
|
|||||||
Reference in new issue
Block a user