| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "net/socket/socks5_client_socket.h" | 5 #include "net/socket/socks5_client_socket.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <iterator> | 8 #include <iterator> |
| 9 #include <map> | 9 #include <map> |
| 10 #include <utility> |
| 10 | 11 |
| 11 #include "base/macros.h" | 12 #include "base/macros.h" |
| 12 #include "base/sys_byteorder.h" | 13 #include "base/sys_byteorder.h" |
| 13 #include "net/base/address_list.h" | 14 #include "net/base/address_list.h" |
| 14 #include "net/base/test_completion_callback.h" | 15 #include "net/base/test_completion_callback.h" |
| 15 #include "net/base/winsock_init.h" | 16 #include "net/base/winsock_init.h" |
| 16 #include "net/dns/mock_host_resolver.h" | 17 #include "net/dns/mock_host_resolver.h" |
| 17 #include "net/log/net_log.h" | 18 #include "net/log/net_log.h" |
| 18 #include "net/log/test_net_log.h" | 19 #include "net/log/test_net_log.h" |
| 19 #include "net/log/test_net_log_entry.h" | 20 #include "net/log/test_net_log_entry.h" |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 101 EXPECT_EQ(ERR_IO_PENDING, rv); | 102 EXPECT_EQ(ERR_IO_PENDING, rv); |
| 102 rv = callback.WaitForResult(); | 103 rv = callback.WaitForResult(); |
| 103 EXPECT_EQ(OK, rv); | 104 EXPECT_EQ(OK, rv); |
| 104 EXPECT_TRUE(tcp_sock_->IsConnected()); | 105 EXPECT_TRUE(tcp_sock_->IsConnected()); |
| 105 | 106 |
| 106 scoped_ptr<ClientSocketHandle> connection(new ClientSocketHandle); | 107 scoped_ptr<ClientSocketHandle> connection(new ClientSocketHandle); |
| 107 // |connection| takes ownership of |tcp_sock_|, but keep a | 108 // |connection| takes ownership of |tcp_sock_|, but keep a |
| 108 // non-owning pointer to it. | 109 // non-owning pointer to it. |
| 109 connection->SetSocket(scoped_ptr<StreamSocket>(tcp_sock_)); | 110 connection->SetSocket(scoped_ptr<StreamSocket>(tcp_sock_)); |
| 110 return scoped_ptr<SOCKS5ClientSocket>(new SOCKS5ClientSocket( | 111 return scoped_ptr<SOCKS5ClientSocket>(new SOCKS5ClientSocket( |
| 111 connection.Pass(), | 112 std::move(connection), |
| 112 HostResolver::RequestInfo(HostPortPair(hostname, port)))); | 113 HostResolver::RequestInfo(HostPortPair(hostname, port)))); |
| 113 } | 114 } |
| 114 | 115 |
| 115 // Tests a complete SOCKS5 handshake and the disconnection. | 116 // Tests a complete SOCKS5 handshake and the disconnection. |
| 116 TEST_F(SOCKS5ClientSocketTest, CompleteHandshake) { | 117 TEST_F(SOCKS5ClientSocketTest, CompleteHandshake) { |
| 117 const std::string payload_write = "random data"; | 118 const std::string payload_write = "random data"; |
| 118 const std::string payload_read = "moar random data"; | 119 const std::string payload_read = "moar random data"; |
| 119 | 120 |
| 120 const char kOkRequest[] = { | 121 const char kOkRequest[] = { |
| 121 0x05, // Version | 122 0x05, // Version |
| (...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 373 EXPECT_TRUE(user_sock_->IsConnected()); | 374 EXPECT_TRUE(user_sock_->IsConnected()); |
| 374 net_log_.GetEntries(&net_log_entries); | 375 net_log_.GetEntries(&net_log_entries); |
| 375 EXPECT_TRUE(LogContainsEndEvent(net_log_entries, -1, | 376 EXPECT_TRUE(LogContainsEndEvent(net_log_entries, -1, |
| 376 NetLog::TYPE_SOCKS5_CONNECT)); | 377 NetLog::TYPE_SOCKS5_CONNECT)); |
| 377 } | 378 } |
| 378 } | 379 } |
| 379 | 380 |
| 380 } // namespace | 381 } // namespace |
| 381 | 382 |
| 382 } // namespace net | 383 } // namespace net |
| OLD | NEW |