Index: net/dns/dns_session.h |
diff --git a/net/dns/dns_session.h b/net/dns/dns_session.h |
index 5cc1b1b8de190223e04fec43d494c49d706c829d..dc37d34e640b9f9e158d710b18fbe7d271c41789 100644 |
--- a/net/dns/dns_session.h |
+++ b/net/dns/dns_session.h |
@@ -14,12 +14,13 @@ |
#include "net/base/rand_callback.h" |
#include "net/dns/dns_config_service.h" |
#include "net/dns/dns_socket_pool.h" |
-#include "net/udp/datagram_client_socket.h" |
namespace net { |
class ClientSocketFactory; |
+class DatagramClientSocket; |
class NetLog; |
+class StreamSocket; |
// Session parameters and state shared between DNS transactions. |
// Ref-counted so that DnsClient::Request can keep working in absence of |
@@ -36,6 +37,8 @@ class NET_EXPORT_PRIVATE DnsSession |
scoped_ptr<DatagramClientSocket> socket); |
~SocketLease(); |
+ unsigned server_index() const { return server_index_; } |
+ |
DatagramClientSocket* socket() { return socket_.get(); } |
private: |
@@ -68,6 +71,11 @@ class NET_EXPORT_PRIVATE DnsSession |
scoped_ptr<SocketLease> AllocateSocket(unsigned server_index, |
const NetLog::Source& source); |
+ // Creates a StreamSocket from the factory for a transaction over TCP. These |
+ // sockets are not pooled. |
+ scoped_ptr<StreamSocket> CreateTCPSocket(unsigned server_index, |
+ const NetLog::Source& source); |
+ |
private: |
friend class base::RefCounted<DnsSession>; |
~DnsSession(); |