summaryrefslogtreecommitdiffstats
path: root/net/socket/socks5_client_socket.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix ClientSocketHandle reuse_type(). Correctly track socket use.willchan@chromium.org2010-09-021-0/+1
| | | | | | | | | | | | | In particular, we used to consider that a socket had been used whenever it got returned to the ClientSocketPool. But, with preconnect, that is no longer true. Luckily, we now have UseHistory in the transport sockets. So, I create a WasEverUsed() method in ClientSocket, plumb this into all sockets, and use that in ClientSocketPoolBaseHelper instead of tracking whether or not the socket had been returned to the client or not. This ultimately will have two implications. We will record the correct values in Net.HttpSocketType histograms and we will use the correct timeout for preconnect sockets in ClientSocketPoolBaseHelper::CleanupIdleSockets(). BUG=none TEST=none Review URL: http://codereview.chromium.org/3353004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58363 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Remove unneeded headers from base/ (part 7)thestig@chromium.org2010-08-271-1/+1
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3176026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57737 0039d316-1c4b-4281-b951-d872f2087c98
* Gather preconnection use vs waste statisticsjar@chromium.org2010-08-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | I now gather statistics only in the transport socket classes TcpClientSocket*. All other socket classes forward significant data (that they are used in a speculation) to their transport class, where this data is stored, and then dumped when the TCP socket is closed. This CL also repaired a slight miscount in bytes read and written on Windows, as error codes were mistakenly accumulated as byte counts. This CL repaired a significant undercounting in linux/mac via StatsCounter (the logging counter appears correct). Libjingle support is minimal (NOTREACHED), but I don't know that there are subresources that will be speculatively preconnected from that class (and it is less obvious how the class uses underlying sockets, if at all). BUG=42694 r=willchan Review URL: http://codereview.chromium.org/3163033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57377 0039d316-1c4b-4281-b951-d872f2087c98
* `#pragma once` for app, base, chrome, gfx, ipc, net, skia, viewsthakis@chromium.org2010-07-261-0/+1
| | | | | | | | | BUG=50273 TEST=everything still builds, build is 10% faster on windows, same speed on mac/linux TBR: erg git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53716 0039d316-1c4b-4281-b951-d872f2087c98
* Add net log entries that summarize transmit and receive byte counts.vandebo@chromium.org2010-04-231-2/+3
| | | | | | | | | | | | | | | | | | | | | Tx/Rx summaries are integrated into the net log at the last point that bytes were transmitted or received. Hopefully this will help resolve http://crbug.com/37729 by showing if we've received bytes over the network when we hit the "Waiting for cache" bug. This change also modernizes the use of NetLog: - ClientSocket now has a net_log() accessor - ClientSocket::Connect no longer takes a NetLog, instead the TCPClientSocket constructor takes one, others use their transport socket's NetLog - TCPClientSocket creates a new source id with source type SOCKET Also updates PassiveLogCollector infrastructure: - The LiveRequestsObserver lets a RequestTracker update a RequestInfo just before it is displayed. This allows ConnectJobs to be associated with URLRequests while connecting and then reassociated if they are late-bound to a different request. BUG=37729 TEST=tx/rx lines show up in chrome://net-internals/ Review URL: http://codereview.chromium.org/1696005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45449 0039d316-1c4b-4281-b951-d872f2087c98
* Implement SOCKSClientSocketPoolvandebo@chromium.org2010-03-221-1/+6
| | | | | | | | | | | | | | This is the first layered pool, so there are several infrastructure changes in this change as well. Add a ConnectionTimeout method to pools so that layered pools can timeout each phase. Add a name method to pools to support per pool UMA histograms. Change SOCKS sockets to take a ClientSocketHandle instead of a ClientSocket BUG=30357 (blocks an SSL Pool) TEST=existing unit tests Review URL: http://codereview.chromium.org/668097 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42231 0039d316-1c4b-4281-b951-d872f2087c98
* Generalize the net module's LoadLog facility from a passive container, to an ↵eroman@chromium.org2010-03-161-3/+4
| | | | | | | | | | | | | | | | event stream (NetLog). This makes it possible to associate a single NetLog with a URLRequestContext, and then attach observers to that log to watch the stream of events. This changelist attempts to do the most direct translation, so there will be subsequent iterations to clean up. The user-visible behavior should remain unchanged. BUG=37421 Review URL: http://codereview.chromium.org/848006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41689 0039d316-1c4b-4281-b951-d872f2087c98
* Really connect to the same server in FTP network transaction.phajdan.jr@chromium.org2010-02-201-1/+1
| | | | | | | | | | | | Also create necessary infrastructure to know the address a client socket is connected to. TEST=Covered by net_unittests. BUG=35670 Review URL: http://codereview.chromium.org/598071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39559 0039d316-1c4b-4281-b951-d872f2087c98
* Re-revert 36595 (restoring 36548); that didn't fix anything.dpranke@chromium.org2010-01-201-2/+0
| | | | | | | | | | BUG=none TEST=none TBR=thomasvl@chromium.org Review URL: http://codereview.chromium.org/548082 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36599 0039d316-1c4b-4281-b951-d872f2087c98
* Try reverting r36548 to see if this causes the webkit linux failures todpranke@chromium.org2010-01-201-0/+2
| | | | | | | | | | | | improve. BUG=none TBR=thomasvl@chromium.org TEST=none Review URL: http://codereview.chromium.org/551076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36595 0039d316-1c4b-4281-b951-d872f2087c98
* Enabled the GetPeerName on all platforms, not just Linux.thomasvl@chromium.org2010-01-191-2/+0
| | | | | | | | BUG=32595 TEST=using a SOCKS5 proxy and a debug build, you don't blow out in a NOTREACHED() any more Review URL: http://codereview.chromium.org/551069 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36548 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup: Remove the support for IPv4 and IPv6 addressing types in the SOCKS5 ↵eroman@chromium.org2009-12-181-35/+6
| | | | | | | | | | | | | implementation. This is no longer used by chrome, and it is unlikely that embedders would want to use this. The default will just use the DOMAIN addressing type. BUG=29914 Review URL: http://codereview.chromium.org/507048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34928 0039d316-1c4b-4281-b951-d872f2087c98
* When talking to a SOCKS v5 proxy, default to sending addresses as raw ↵eroman@chromium.org2009-12-181-2/+19
| | | | | | | | | | | | | | | domains rather than IP addresses. Before, we would default to client-side DNS resolution (sending IP addresses to the proxy) for both v4 and v5. However if you are using a v5 server, it is most likely that you want to do the resolves on the proxy-side. And in fact if you are using a SOCKS 5 proxy to anonymize your browsing, you definitely don't want that as the default policy. Embedders of the network stack can select the alternate policy by passing a non-NULL Host resolver into SOCKS5ClientSocket. BUG=29914 TEST=HttpNetworkTransactionTest.SOCKS5_HTTP_GET, HttpNetworkTransactionTest.SOCKS5_SSL_GET Review URL: http://codereview.chromium.org/507033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34903 0039d316-1c4b-4281-b951-d872f2087c98
* Add LoadLog to ClientSocket::Connect().willchan@chromium.org2009-11-021-2/+5
| | | | | | | | TODO: Use LoadLog in FLIP code. Review URL: http://codereview.chromium.org/344026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30765 0039d316-1c4b-4281-b951-d872f2087c98
* Add methods for setting socket buffers to the Socket mbelshe@google.com2009-09-091-0/+3
| | | | | | | | | | | | class. Also add a few stats counters for TCP read/write stats. BUG=none TEST=none Review URL: http://codereview.chromium.org/199048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25803 0039d316-1c4b-4281-b951-d872f2087c98
* SOCKS v5 implementationarindam@chromium.org2009-07-151-0/+151
| | | | | | | | | | | The implementation is incomplete as it does not support any authentication methods and does not have a UDP layer. BUG=469 TEST=unittests (included) Review URL: http://codereview.chromium.org/150187 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20724 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 20626.arindam@chromium.org2009-07-141-151/+0
| | | | | | | | TBR=eroman Review URL: http://codereview.chromium.org/155505 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20628 0039d316-1c4b-4281-b951-d872f2087c98
* SOCKS v5 implementationarindam@chromium.org2009-07-141-0/+151
The implementation is incomplete as it does not support any authentication methods and does not have a UDP layer. BUG=469 TEST=unittests (included) Review URL: http://codereview.chromium.org/150187 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20626 0039d316-1c4b-4281-b951-d872f2087c98