Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1027)

Unified Diff: net/socket/socks_client_socket_unittest.cc

Issue 6719035: Remove the fallback from SOCKSv4 to SOCKSv4a. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: address wtc's comments Created 9 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/socket/socks_client_socket.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/socket/socks_client_socket_unittest.cc
===================================================================
--- net/socket/socks_client_socket_unittest.cc (revision 79592)
+++ net/socket/socks_client_socket_unittest.cc (working copy)
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -21,8 +21,6 @@
namespace net {
const char kSOCKSOkRequest[] = { 0x04, 0x01, 0x00, 0x50, 127, 0, 0, 1, 0 };
-const char kSOCKS4aInitialRequest[] =
- { 0x04, 0x01, 0x00, 0x50, 0, 0, 0, 127, 0 };
const char kSOCKSOkReply[] = { 0x00, 0x5A, 0x00, 0x00, 0, 0, 0, 0 };
class SOCKSClientSocketTest : public PlatformTest {
@@ -152,7 +150,6 @@
rv = callback_.WaitForResult();
EXPECT_EQ(OK, rv);
EXPECT_TRUE(user_sock_->IsConnected());
- EXPECT_EQ(SOCKSClientSocket::kSOCKS4, user_sock_->socks_version_);
log.GetEntries(&entries);
EXPECT_TRUE(LogContainsEndEvent(
entries, -1, NetLog::TYPE_SOCKS_CONNECT));
@@ -332,24 +329,17 @@
entries, -1, NetLog::TYPE_SOCKS_CONNECT));
}
-// Tries to connect to an unknown DNS and on failure should revert to SOCKS4A.
-TEST_F(SOCKSClientSocketTest, SOCKS4AFailedDNS) {
+// Tries to connect to an unknown hostname. Should fail rather than
+// falling back to SOCKS4a.
+TEST_F(SOCKSClientSocketTest, FailedDNS) {
const char hostname[] = "unresolved.ipv4.address";
host_resolver_->rules()->AddSimulatedFailure(hostname);
- std::string request(kSOCKS4aInitialRequest,
- arraysize(kSOCKS4aInitialRequest));
- request.append(hostname, arraysize(hostname));
-
- MockWrite data_writes[] = {
- MockWrite(false, request.data(), request.size()) };
- MockRead data_reads[] = {
- MockRead(false, kSOCKSOkReply, arraysize(kSOCKSOkReply)) };
CapturingNetLog log(CapturingNetLog::kUnbounded);
- user_sock_.reset(BuildMockSocket(data_reads, arraysize(data_reads),
- data_writes, arraysize(data_writes),
+ user_sock_.reset(BuildMockSocket(NULL, 0,
+ NULL, 0,
host_resolver_.get(),
hostname, 80,
&log));
@@ -362,54 +352,13 @@
entries, 0, NetLog::TYPE_SOCKS_CONNECT));
rv = callback_.WaitForResult();
- EXPECT_EQ(OK, rv);
- EXPECT_TRUE(user_sock_->IsConnected());
- EXPECT_EQ(SOCKSClientSocket::kSOCKS4a, user_sock_->socks_version_);
+ EXPECT_EQ(ERR_NAME_NOT_RESOLVED, rv);
+ EXPECT_FALSE(user_sock_->IsConnected());
log.GetEntries(&entries);
EXPECT_TRUE(LogContainsEndEvent(
entries, -1, NetLog::TYPE_SOCKS_CONNECT));
}
-// Tries to connect to a domain that resolves to IPv6.
-// Should revert to SOCKS4a.
-TEST_F(SOCKSClientSocketTest, SOCKS4AIfDomainInIPv6) {
- const char hostname[] = "an.ipv6.address";
-
- host_resolver_->rules()->AddIPLiteralRule(hostname,
- "2001:db8:8714:3a90::12", "");
-
- std::string request(kSOCKS4aInitialRequest,
- arraysize(kSOCKS4aInitialRequest));
- request.append(hostname, arraysize(hostname));
-
- MockWrite data_writes[] = {
- MockWrite(false, request.data(), request.size()) };
- MockRead data_reads[] = {
- MockRead(false, kSOCKSOkReply, arraysize(kSOCKSOkReply)) };
- CapturingNetLog log(CapturingNetLog::kUnbounded);
-
- user_sock_.reset(BuildMockSocket(data_reads, arraysize(data_reads),
- data_writes, arraysize(data_writes),
- host_resolver_.get(),
- hostname, 80,
- &log));
-
- int rv = user_sock_->Connect(&callback_);
- EXPECT_EQ(ERR_IO_PENDING, rv);
- net::CapturingNetLog::EntryList entries;
- log.GetEntries(&entries);
- EXPECT_TRUE(LogContainsBeginEvent(
- entries, 0, NetLog::TYPE_SOCKS_CONNECT));
-
- rv = callback_.WaitForResult();
- EXPECT_EQ(OK, rv);
- EXPECT_TRUE(user_sock_->IsConnected());
- EXPECT_EQ(SOCKSClientSocket::kSOCKS4a, user_sock_->socks_version_);
- log.GetEntries(&entries);
- EXPECT_TRUE(LogContainsEndEvent(
- entries, -1, NetLog::TYPE_SOCKS_CONNECT));
-}
-
// Calls Disconnect() while a host resolve is in progress. The outstanding host
// resolve should be cancelled.
TEST_F(SOCKSClientSocketTest, DisconnectWhileHostResolveInProgress) {
« no previous file with comments | « net/socket/socks_client_socket.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698