Index: net/dns/dns_query.cc |
diff --git a/net/dns/dns_query.cc b/net/dns/dns_query.cc |
deleted file mode 100644 |
index 530508a61de1b3f051e5f7139aeef16ca3cce0bd..0000000000000000000000000000000000000000 |
--- a/net/dns/dns_query.cc |
+++ /dev/null |
@@ -1,89 +0,0 @@ |
-// Copyright (c) 2012 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_query.h" |
- |
-#include <limits> |
- |
-#include "base/big_endian.h" |
-#include "base/sys_byteorder.h" |
-#include "net/base/dns_util.h" |
-#include "net/base/io_buffer.h" |
-#include "net/dns/dns_protocol.h" |
- |
-namespace net { |
- |
-// DNS query consists of a 12-byte header followed by a question section. |
-// For details, see RFC 1035 section 4.1.1. This header template sets RD |
-// bit, which directs the name server to pursue query recursively, and sets |
-// the QDCOUNT to 1, meaning the question section has a single entry. |
-DnsQuery::DnsQuery(uint16 id, const base::StringPiece& qname, uint16 qtype) |
- : qname_size_(qname.size()) { |
- DCHECK(!DNSDomainToString(qname).empty()); |
- // QNAME + QTYPE + QCLASS |
- size_t question_size = qname_size_ + sizeof(uint16) + sizeof(uint16); |
- io_buffer_ = new IOBufferWithSize(sizeof(dns_protocol::Header) + |
- question_size); |
- dns_protocol::Header* header = |
- reinterpret_cast<dns_protocol::Header*>(io_buffer_->data()); |
- memset(header, 0, sizeof(dns_protocol::Header)); |
- header->id = base::HostToNet16(id); |
- header->flags = base::HostToNet16(dns_protocol::kFlagRD); |
- header->qdcount = base::HostToNet16(1); |
- |
- // Write question section after the header. |
- base::BigEndianWriter writer(reinterpret_cast<char*>(header + 1), |
- question_size); |
- writer.WriteBytes(qname.data(), qname.size()); |
- writer.WriteU16(qtype); |
- writer.WriteU16(dns_protocol::kClassIN); |
-} |
- |
-DnsQuery::~DnsQuery() { |
-} |
- |
-DnsQuery* DnsQuery::CloneWithNewId(uint16 id) const { |
- return new DnsQuery(*this, id); |
-} |
- |
-uint16 DnsQuery::id() const { |
- const dns_protocol::Header* header = |
- reinterpret_cast<const dns_protocol::Header*>(io_buffer_->data()); |
- return base::NetToHost16(header->id); |
-} |
- |
-base::StringPiece DnsQuery::qname() const { |
- return base::StringPiece(io_buffer_->data() + sizeof(dns_protocol::Header), |
- qname_size_); |
-} |
- |
-uint16 DnsQuery::qtype() const { |
- uint16 type; |
- base::ReadBigEndian<uint16>( |
- io_buffer_->data() + sizeof(dns_protocol::Header) + qname_size_, &type); |
- return type; |
-} |
- |
-base::StringPiece DnsQuery::question() const { |
- return base::StringPiece(io_buffer_->data() + sizeof(dns_protocol::Header), |
- qname_size_ + sizeof(uint16) + sizeof(uint16)); |
-} |
- |
-DnsQuery::DnsQuery(const DnsQuery& orig, uint16 id) { |
- qname_size_ = orig.qname_size_; |
- io_buffer_ = new IOBufferWithSize(orig.io_buffer()->size()); |
- memcpy(io_buffer_.get()->data(), orig.io_buffer()->data(), |
- io_buffer_.get()->size()); |
- dns_protocol::Header* header = |
- reinterpret_cast<dns_protocol::Header*>(io_buffer_->data()); |
- header->id = base::HostToNet16(id); |
-} |
- |
-void DnsQuery::set_flags(uint16 flags) { |
- dns_protocol::Header* header = |
- reinterpret_cast<dns_protocol::Header*>(io_buffer_->data()); |
- header->flags = flags; |
-} |
- |
-} // namespace net |