summaryrefslogtreecommitdiffstats
path: root/net/dns/dns_session.cc
diff options
context:
space:
mode:
authorcbentzel@chromium.org <cbentzel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-07 13:19:10 +0000
committercbentzel@chromium.org <cbentzel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-07 13:19:10 +0000
commit19bdc0036b036f4b33c8d81536a9848c6a95c9f7 (patch)
treef9803f03723dd6b218ed4a6fe08f3edc12572d5d /net/dns/dns_session.cc
parentccf637be7edd3bdb14dc4157e6370e78c619a8f6 (diff)
downloadchromium_src-19bdc0036b036f4b33c8d81536a9848c6a95c9f7.zip
chromium_src-19bdc0036b036f4b33c8d81536a9848c6a95c9f7.tar.gz
chromium_src-19bdc0036b036f4b33c8d81536a9848c6a95c9f7.tar.bz2
Revert 113282 - Isolates generic DnsClient from AsyncHostResolver.
There were a few memory issues including access of unadressable memory. DnsClient provides a generic DNS client that allows fetching resource records. DnsClient is very lightweight and does not support aggregation, queuing or prioritization of requests. This is the first CL in a series to merge AsyncHostResolver into HostResolverImpl. Also introduces general-purpose BigEndianReader/Writer. BUG=90881 TEST=./net_unittests Review URL: http://codereview.chromium.org/8762001 TBR=szym@chromium.org Review URL: http://codereview.chromium.org/8835011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@113384 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/dns/dns_session.cc')
-rw-r--r--net/dns/dns_session.cc47
1 files changed, 0 insertions, 47 deletions
diff --git a/net/dns/dns_session.cc b/net/dns/dns_session.cc
deleted file mode 100644
index 15cbaa2..0000000
--- a/net/dns/dns_session.cc
+++ /dev/null
@@ -1,47 +0,0 @@
-// 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.
-
-#include "net/dns/dns_session.h"
-
-#include "base/basictypes.h"
-#include "base/bind.h"
-#include "base/time.h"
-#include "net/base/ip_endpoint.h"
-#include "net/dns/dns_config_service.h"
-#include "net/socket/client_socket_factory.h"
-
-namespace net {
-
-DnsSession::DnsSession(const DnsConfig& config,
- ClientSocketFactory* factory,
- const RandIntCallback& rand_int_callback,
- NetLog* net_log)
- : config_(config),
- socket_factory_(factory),
- rand_callback_(base::Bind(rand_int_callback, 0, kuint16max)),
- net_log_(net_log),
- server_index_(0) {
-}
-
-int DnsSession::NextId() const {
- return rand_callback_.Run();
-}
-
-const IPEndPoint& DnsSession::NextServer() {
- // TODO(szym): Rotate servers on failures.
- const IPEndPoint& ipe = config_.nameservers[server_index_];
- if (config_.rotate)
- server_index_ = (server_index_ + 1) % config_.nameservers.size();
- return ipe;
-}
-
-base::TimeDelta DnsSession::NextTimeout(int attempt) {
- // TODO(szym): Adapt timeout to observed RTT.
- return config_.timeout * (attempt + 1);
-}
-
-DnsSession::~DnsSession() {}
-
-} // namespace net
-