summaryrefslogtreecommitdiffstats
path: root/net/http
Commit message (Collapse)AuthorAgeFilesLines
* Linux: recognize Heimdal on Gentoo Linux for Kerberos HTTP authentication.phajdan.jr@chromium.org2011-04-061-0/+1
| | | | | | | | | This is upstreaming a Gentoo Linux patch. BUG=none Review URL: http://codereview.chromium.org/6794048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80585 0039d316-1c4b-4281-b951-d872f2087c98
* Move BuildRequestHeaders back to http_network_transaction.cc now that it's ↵abarth@chromium.org2011-04-064-119/+73
| | | | | | | | not needed by SPDY. This reduces the dependencies of http_util.cc and is a partial revert of r63213. Review URL: http://codereview.chromium.org/6794038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80557 0039d316-1c4b-4281-b951-d872f2087c98
* net: remove forced renegotiation checksagl@chromium.org2011-04-052-7/+1
| | | | | | | | | | | | | | | We lost this battle. We had to step back from requirement the renegotiation extension, even on sites which we know support it, because of the number of MITM proxies. Since there doesn't seem to be any way forward, this change removes the code. BUG=55410 TEST=compiles Review URL: http://codereview.chromium.org/6792032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80513 0039d316-1c4b-4281-b951-d872f2087c98
* Fix line endingsabarth@chromium.org2011-04-041-3/+3
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80392 0039d316-1c4b-4281-b951-d872f2087c98
* Http cache: Make sure that the we only transition torvargas@chromium.org2011-04-042-1/+24
| | | | | | | | | | | STATE_NOTIFY_BEFORE_SEND_HEADERS when we have a response. BUG=78105 TEST=net_unittests Review URL: http://codereview.chromium.org/6691016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80290 0039d316-1c4b-4281-b951-d872f2087c98
* Fix crash in layout tests due to my previous network delegate change (r79905).mpcomplete@chromium.org2011-04-011-1/+1
| | | | | | | | | | | AddRef the delegate_callback before any early returns, since it will be Released in DoBuildRequestComplete. BUG=webkit/57539 TEST=no TBR=willchan git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80114 0039d316-1c4b-4281-b951-d872f2087c98
* Add request_id to HttpRequestInfo and pass it to the NetworkDelegate for events.mpcomplete@chromium.org2011-03-306-44/+128
| | | | | | | | | | | | | | This lets us look up the request associated with an http transaction and send event details for the webRequest.onBeforeRequest extension event. I also hooked up the onBeforeRequest event for HTTP network and cache transactions so that they are separate from other requests. This lets us have the request header information. BUG=60101 TEST=no Review URL: http://codereview.chromium.org/6698009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79905 0039d316-1c4b-4281-b951-d872f2087c98
* Disable HTTP auth schemes on permanent errors.asanka@chromium.org2011-03-303-13/+158
| | | | | | | | | | | | | | | | | The underlying implementation for the Negotiate authentication scheme might return error codes that indicate error conditions that we are unlikely to recover from. If we see those, then treat these as permanent errors and disable the auth scheme for the rest of the transaction. We were already doing this partly for cases where there are no default credentials. This patch extends the behavior to additional error codes. BUG=49950 TEST=net_unittests --gtest_filter=HttpAuthControllerTest.PermanentErrors Review URL: http://codereview.chromium.org/6745018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79848 0039d316-1c4b-4281-b951-d872f2087c98
* Add ignore limits flag and use for sync requestkristianm@google.com2011-03-304-5/+11
| | | | | | | | | | | | | Letting sync request ignore the socket and group limits when loading to prevent the WebCore thread from locking up. BUG=45986,58703 TEST=No new tests Review URL: http://codereview.chromium.org/6756004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79817 0039d316-1c4b-4281-b951-d872f2087c98
* Moved the logic to initialize a ClientSocketHandle with the relevant socket ↵sanjeevr@chromium.org2011-03-292-168/+46
| | | | | | | | | | | | pool based on the proxy information to static helpers in ClientSocketPoolManager from HttpStreamFactoryImpl::Job::DoInitConnection. This will allow us to reuse this logic for raw socket connections that need to tunnel through the proxies (for example the XMPP connection made by jingle). BUG=None TEST=net_unittests, Test with proxy servers. R=willchan@chromium.org Review URL: http://codereview.chromium.org/6733042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79641 0039d316-1c4b-4281-b951-d872f2087c98
* Move some files from base to base/memory.levin@chromium.org2011-03-2835-76/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | raw_scoped_refptr_mismatch_checker.h ref_counted.cc ref_counted.h ref_counted_memory.cc ref_counted_memory.h ref_counted_unittest.cc scoped_callback_factory.h scoped_comptr_win.h scoped_handle.h scoped_native_library.cc scoped_native_library.h scoped_native_library_unittest.cc scoped_nsobject.h scoped_open_process.h scoped_ptr.h scoped_ptr_unittest.cc scoped_temp_dir.cc scoped_temp_dir.h scoped_temp_dir_unittest.cc scoped_vector.h singleton.h singleton_objc.h singleton_unittest.cc linked_ptr.h linked_ptr_unittest.cc weak_ptr.cc weak_ptr.h weak_ptr_unittest.cc BUG=None TEST=Compile Review URL: http://codereview.chromium.org/6714032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79524 0039d316-1c4b-4281-b951-d872f2087c98
* Enable IP pooling for SPDY.mbelshe@chromium.org2011-03-252-7/+13
| | | | | | | | | | Added a command-line switch: --enable-ip-pooling BUG=42669 TEST=SpdySessionTest.IPPool* Review URL: http://codereview.chromium.org/6594116 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79372 0039d316-1c4b-4281-b951-d872f2087c98
* Fix flakiness in Alternate-Protocol tests.willchan@chromium.org2011-03-181-55/+21
| | | | | | | | | | | | | They would hit the backup socket timer. This fixes that. I've also removed the test exclusions added to work around the flakiness. BUG=76592 TEST=net_unittests isn't flaky Review URL: http://codereview.chromium.org/6714013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78720 0039d316-1c4b-4281-b951-d872f2087c98
* The SPDY Exclusions were broken; the intent of the exclusion is so that ourmbelshe@chromium.org2011-03-164-19/+20
| | | | | | | | | | | | | benchmark harness can force SPDY, but still report to the benchmark harness itself in non-spdy mode. BUG=none TEST=none Review URL: http://codereview.chromium.org/6674031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78400 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 78061 - Revert 78034 - Removing a TODO and cleaning up code.kristianm@google.com2011-03-151-2/+2
| | | | | | | | | | | | | | | | | | | This is done in preparation of a patch to let some request ignore the max sockets and max sockets to group limits. BUG=none TEST=none Review URL: http://codereview.chromium.org/6679001 TBR=kristianm@google.com Review URL: http://codereview.chromium.org/6685057 TBR=kristianm@google.com Review URL: http://codereview.chromium.org/6696017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78189 0039d316-1c4b-4281-b951-d872f2087c98
* Code cleanup related to allowed_bad_certs.wtc@chromium.org2011-03-141-1/+1
| | | | | | | | | | | | | | | | cert_status is a bitwise-OR of CERT_STATUS_xxx, not ERR_CERT_xxx. Initialize a CertAndStatus structure after checking it is needed. Fix a typo in comments. R=hclam BUG=none TEST=none Review URL: http://codereview.chromium.org/6677022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78123 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 78034 - Removing a TODO and cleaning up code.kristianm@google.com2011-03-141-2/+2
| | | | | | | | | | | | | | | | This is done in preparation of a patch to let some request ignore the max sockets and max sockets to group limits. BUG=none TEST=none Review URL: http://codereview.chromium.org/6679001 TBR=kristianm@google.com Review URL: http://codereview.chromium.org/6685057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78061 0039d316-1c4b-4281-b951-d872f2087c98
* Removing a TODO and cleaning up code.kristianm@google.com2011-03-141-2/+2
| | | | | | | | | | | | | This is done in preparation of a patch to let some request ignore the max sockets and max sockets to group limits. BUG=none TEST=none Review URL: http://codereview.chromium.org/6679001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78034 0039d316-1c4b-4281-b951-d872f2087c98
* Reland rest of r77399.willchan@chromium.org2011-03-1211-360/+595
| | | | | | | | | | | I had temporarily reverted it so I could break it up into 2 commits, so the first could be merged to 696. This is part 2. BUG=none TEST=none Review URL: http://codereview.chromium.org/6684019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77908 0039d316-1c4b-4281-b951-d872f2087c98
* Don't drain response bodies for SpdyHttpStreams.willchan@chromium.org2011-03-115-0/+15
| | | | | | | | | | | | | This should fix the specific instance of crbug.com/75657, although I can't reproduce the bug, so it's possible it may instead push the bug later down the pipeline rather than completely fixing it. I believe it should completely fix it though. This is a partial reland of r77399, which was reverted in order to faciliate this partial reland so I can merge a smaller change into branch 696. BUG=75657 TEST=none Review URL: http://codereview.chromium.org/6680009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77893 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r77399 in preparation for merging a small portion of it to 696.willchan@chromium.org2011-03-1115-610/+360
| | | | | | | | | | | | | | | | | | Reland r77075,r77077. They were reverted due to flaky tests, especially on valgrind. Basically, we kept hitting the backup socket timer (500ms) which would create another socket, which the tests don't expect, so they crash. I disabled the backup socket timer completely for the SPDY tests, because they make it too hard to handle the parallel alternate protocol jobs. I also deleted the HTTP fallback test from SpdyNetworkTransactionTest, because it had a similar problem. Also, it was already being tested in HttpNetworkTransactionTest. BUG=69688,75000 TEST=Try connecting to belshe.com with various proxy configurations. Should work still. Review URL: http://codereview.chromium.org/6635047 TBR=willchan@chromium.org Review URL: http://codereview.chromium.org/6681012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77864 0039d316-1c4b-4281-b951-d872f2087c98
* Reland r77075,r77077.willchan@chromium.org2011-03-0915-360/+610
| | | | | | | | | | | | | They were reverted due to flaky tests, especially on valgrind. Basically, we kept hitting the backup socket timer (500ms) which would create another socket, which the tests don't expect, so they crash. I disabled the backup socket timer completely for the SPDY tests, because they make it too hard to handle the parallel alternate protocol jobs. I also deleted the HTTP fallback test from SpdyNetworkTransactionTest, because it had a similar problem. Also, it was already being tested in HttpNetworkTransactionTest. BUG=69688,75000 TEST=Try connecting to belshe.com with various proxy configurations. Should work still. Review URL: http://codereview.chromium.org/6635047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77399 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 77075 - Don't block on stream requests on Alternate-Protocol.jochen@chromium.org2011-03-0715-610/+360
| | | | | | | | | | | | | | Basically, after we get an HTTP header giving an Alternate-Protocol, we'll end up in a state where we're probably going to issue more HTTP requests. We have the already warm single HTTP connection. We probably don't have a SPDY session open. Previously, once we notice Alternate-Protocol, we'd block on trying to set up the new SPDY session, even though we still have the HTTP connection. Change this so we keep using HTTP until the SPDY session on the Alternate-Protocol becomes available, then we switch over to it. BUG=69688,75000 TEST=Browse to belshe.com. Examine net-internals to make sure it works. Test over a variety of connections (direct / various proxy types). Review URL: http://codereview.chromium.org/6610034 TBR=willchan@chromium.org Review URL: http://codereview.chromium.org/6621040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77117 0039d316-1c4b-4281-b951-d872f2087c98
* Don't block on stream requests on Alternate-Protocol.willchan@chromium.org2011-03-0615-360/+610
| | | | | | | | | | | Basically, after we get an HTTP header giving an Alternate-Protocol, we'll end up in a state where we're probably going to issue more HTTP requests. We have the already warm single HTTP connection. We probably don't have a SPDY session open. Previously, once we notice Alternate-Protocol, we'd block on trying to set up the new SPDY session, even though we still have the HTTP connection. Change this so we keep using HTTP until the SPDY session on the Alternate-Protocol becomes available, then we switch over to it. BUG=69688,75000 TEST=Browse to belshe.com. Examine net-internals to make sure it works. Test over a variety of connections (direct / various proxy types). Review URL: http://codereview.chromium.org/6610034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77075 0039d316-1c4b-4281-b951-d872f2087c98
* Change other usages of .size() to .empty() when applicable.erg@google.com2011-03-041-1/+1
| | | | | | | | | BUG=carnitas TEST=compiles Review URL: http://codereview.chromium.org/6609008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76962 0039d316-1c4b-4281-b951-d872f2087c98
* Add chunked uploads support to SPDYsatish@chromium.org2011-03-042-9/+63
| | | | | | | | | | | | | | | As part of this, I had to move the chunked encoding part from UploadData::Element::SetChunk to HttpStreamParser::DoSendBody as SPDY doesn't have this encoded format and UploadData needs to serve both. BUG=none TEST=net_unittests (2 new tests added) Committed and rolled back: http://src.chromium.org/viewvc/chrome?view=rev&revision=76892 Review URL: http://codereview.chromium.org/6292013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76930 0039d316-1c4b-4281-b951-d872f2087c98
* Mention that HttpAuthCache::Entry::HasEnclosingPath() can return 0 as a path ↵asanka@chromium.org2011-03-041-1/+5
| | | | | | | | | | | | | len and fix typo. (Comment only change. Cleanup for 76539) BUG=none TEST=none Review URL: http://codereview.chromium.org/6612026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76911 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Add chunked uploads support to SPDY"satish@chromium.org2011-03-042-63/+9
| | | | | | | | This reverts commit 8431a6e7be70b1b50b0d5b851bbe728b7fef220f. TBR=satish git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76896 0039d316-1c4b-4281-b951-d872f2087c98
* Add chunked uploads support to SPDYsatish@chromium.org2011-03-042-9/+63
| | | | | | | | | | | | | As part of this, I had to move the chunked encoding part from UploadData::Element::SetChunk to HttpStreamParser::DoSendBody as SPDY doesn't have this encoded format and UploadData needs to serve both. BUG=none TEST=net_unittests (2 new tests added) Review URL: http://codereview.chromium.org/6292013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76892 0039d316-1c4b-4281-b951-d872f2087c98
* Http cache: Fix handling of truncated entries.rvargas@google.com2011-03-024-120/+194
| | | | | | | | | | | | | | | | | | | | | | | | - Always validate a truncated entry. Furthermore, given that a server can say not-modified (304), followed by 200 when actually asked for the final range, now we validate truncated entries by asking for the next byte that we need. - If a server refuses to serve a byte range and instead sends the whole resource, we just cache the response as if nothing was stored before. - If we receive a network error while reading from the net, we don't discard the cached entry right away. Now we wait until the transaction is closed, and attempt to mark the entry as truncated. BUG=48468 TEST=net_unittests Review URL: http://codereview.chromium.org/6588105 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76560 0039d316-1c4b-4281-b951-d872f2087c98
* Pick the closest enclosing path match when looking up HTTP auth cache ↵asanka@chromium.org2011-03-023-17/+50
| | | | | | | | | | | | | | | | | | entries by path If we have two cache entries : < 'example.com', userA, realmA, paths=[ '/' ] > and < 'example.com', userB, realmB, paths=[ '/foo/' ] > Then a LookupByPath() for '/foo/bar/baz' should return the cache entry for userB rather than userA. BUG=73294 TEST=net_unittests --gtest_filter=HttpAuthCacheTest.Basic Review URL: http://codereview.chromium.org/6596076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76539 0039d316-1c4b-4281-b951-d872f2087c98
* Add HttpStreamFactory Job orphaning semantics.willchan@chromium.org2011-03-016-62/+295
| | | | | | | | | BUG=54371,69688 TEST=none Review URL: http://codereview.chromium.org/6591030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76389 0039d316-1c4b-4281-b951-d872f2087c98
* Update NetLog in preparation for late binding of HttpStream jobs to requests.willchan@chromium.org2011-02-285-8/+37
| | | | | | | | | BUG=54371,42669 TEST=Open up about:net-internals#Events and make sure HTTP_STREAM_JOBs appear and are tied together to URL_REQUESTs. Review URL: http://codereview.chromium.org/6592027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76287 0039d316-1c4b-4281-b951-d872f2087c98
* Prepare for late binding of SpdyHttpStreams.willchan@chromium.org2011-02-256-296/+407
| | | | | | | | | | | | | | | | | | * Move HostPortProxyPair to net/proxy/proxy_server.h. * Have the Job assign the spdy_session_key to the Request when it's determined. * Have the Job notify the HttpStreamFactoryImpl when a SpdySession becomes available. Next steps: * When HttpStreamFactoryImpl sees a SpdySession becomes available, service all applicable requests by examining their spdy_session_key. * Introduce a new NetLog::Source for the late bound jobs. * Have HttpStreamFactoryImpl create two Jobs instead of just 1 per Request if Alternate-Protocol is available. BUG=54371,42669 TEST=existing Review URL: http://codereview.chromium.org/6577035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76107 0039d316-1c4b-4281-b951-d872f2087c98
* Fix realm selection when handling Basic authentication.asanka@chromium.org2011-02-244-20/+61
| | | | | | | | | | | | | | | Clarify comments and fix realm selection in HttpAuthHandlerBasic::HandleAnotherChallenge() to match the selection in HttpAuthHandlerBasic::ParseChallenge(). This is cleanup for r75390. BUG=none TEST=net_unittests --gtest_filter=HttpAuthHandlerBasicTest.* Review URL: http://codereview.chromium.org/6574003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75889 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor of NetworkDelegate.willchan@chromium.org2011-02-246-45/+11
| | | | | | | | | | | | | | * Renames HttpNetworkDelegate to NetworkDelegate, moves to net/base/network_delegate.h. NOTE: this is a layering violation. wtc/eroman/willchan have agreed to this exception because the other solutions are less palatable. * Move the virtuals in NetworkDelegate to the private section. Use non-virtual public interface as the network stack's interface for notifying the delegate. Add sanity checking to the implmentation in NetworkDelegate. The private virtual interface is for consumers to receive notifications. * Remove ExtensionIOEventRouter from ChromeURLRequestContext, it is only used by the ChromeNetworkDelegate. Pass it directly to the ChromeNetworkDelegate's constructor. * Introduce a SystemNetworkDelegate. It does nothing right now. BUG=67232 TEST=none Review URL: http://codereview.chromium.org/6580002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75822 0039d316-1c4b-4281-b951-d872f2087c98
* Create a URLRequestContextStorage object to provide storage for ↵willchan@chromium.org2011-02-231-3/+2
| | | | | | | | | | | URLRequestContext objects. BUG=none TEST=none Review URL: http://codereview.chromium.org/6560001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75756 0039d316-1c4b-4281-b951-d872f2087c98
* Send fatal proxy errors to the network delegate.jochen@chromium.org2011-02-231-1/+7
| | | | | | | | | BUG=60099 TEST=browser test Review URL: http://codereview.chromium.org/6541021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75726 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor HttpStreamFactory.willchan@chromium.org2011-02-2321-634/+942
| | | | | | | | | | | | | | | | | | | Rename StreamFactory and StreamRequest to HttpStreamFactory and HttpStreamRequest. Rename HttpStreamFactory to HttpStreamFactoryImpl. Create HttpStreamFactoryImpl::Request (inherits from HttpStreamRequest) and HttpStreamFactoryImpl::Job (most of the old HttpStreamRequest code, other than the interface, moved here). Currently there is still a strong binding within HttpStreamFactoryImpl between requests and jobs. This will be removed in a future changelist. Note that due to the preparation for late binding, information like HttpRequestInfo and SSLConfig and ProxyInfo are just copied. It's possible we can consider refcounting them to reduce copies, but I think it's not worth the effort / ugliness. I also did some minor cleanups like moving SpdySettingsStorage into SpdySessionPool and some CloseIdleConnections() cleanup. BUG=54371,42669 TEST=unit tests Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=75668 Review URL: http://codereview.chromium.org/6543004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75688 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 75668 for breaking ChromeOS build - Refactor HttpStreamFactory.willchan@chromium.org2011-02-2321-942/+634
| | | | | | | | | | | | | | | | | | | Rename StreamFactory and StreamRequest to HttpStreamFactory and HttpStreamRequest. Rename HttpStreamFactory to HttpStreamFactoryImpl. Create HttpStreamFactoryImpl::Request (inherits from HttpStreamRequest) and HttpStreamFactoryImpl::Job (most of the old HttpStreamRequest code, other than the interface, moved here). Currently there is still a strong binding within HttpStreamFactoryImpl between requests and jobs. This will be removed in a future changelist. Note that due to the preparation for late binding, information like HttpRequestInfo and SSLConfig and ProxyInfo are just copied. It's possible we can consider refcounting them to reduce copies, but I think it's not worth the effort / ugliness. I also did some minor cleanups like moving SpdySettingsStorage into SpdySessionPool and some CloseIdleConnections() cleanup. BUG=54371,42669 TEST=unit tests Review URL: http://codereview.chromium.org/6543004 TBR=willchan@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75670 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor HttpStreamFactory.willchan@chromium.org2011-02-2221-634/+942
| | | | | | | | | | | | | | | | | Rename StreamFactory and StreamRequest to HttpStreamFactory and HttpStreamRequest. Rename HttpStreamFactory to HttpStreamFactoryImpl. Create HttpStreamFactoryImpl::Request (inherits from HttpStreamRequest) and HttpStreamFactoryImpl::Job (most of the old HttpStreamRequest code, other than the interface, moved here). Currently there is still a strong binding within HttpStreamFactoryImpl between requests and jobs. This will be removed in a future changelist. Note that due to the preparation for late binding, information like HttpRequestInfo and SSLConfig and ProxyInfo are just copied. It's possible we can consider refcounting them to reduce copies, but I think it's not worth the effort / ugliness. I also did some minor cleanups like moving SpdySettingsStorage into SpdySessionPool and some CloseIdleConnections() cleanup. BUG=54371,42669 TEST=unit tests Review URL: http://codereview.chromium.org/6543004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75668 0039d316-1c4b-4281-b951-d872f2087c98
* Propagate the remote socket address to URLRequest and to ↵bryner@chromium.org2011-02-225-1/+66
| | | | | | | | | | | | | | | | ViewHostMsg_FrameNavigate. This will be used to run pre-classification checks for client-side phishing detection, and will also enable the socket address to be exposed via the webRequest extension API. This is adapted from the original patch by pmarks on http://codereview.chromium.org/6369003/ . BUG=51663 TEST=added socket address checks to various unittests Review URL: http://codereview.chromium.org/6488010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75620 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for testing SPDY with a forced-single-domain mode. This ismbelshe@chromium.org2011-02-222-1/+6
| | | | | | | | | | | | for benchmarking only. BUG=none TEST=none Review URL: http://codereview.chromium.org/6532086 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75597 0039d316-1c4b-4281-b951-d872f2087c98
* Check and invalidate cached credentials if they were used for preemptive ↵asanka@chromium.org2011-02-187-25/+84
| | | | | | | | | | | authentication and were rejected by the server. BUG=72589 TEST=net_unittests --gtest_filter=HttpAuthHandler*.HandleAnotherChallenge Review URL: http://codereview.chromium.org/6525035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75390 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Coverity UNINIT_CTOR defect in the HttpAuthCache::Entrywtc@chromium.org2011-02-111-1/+2
| | | | | | | | | | | | constructor. R=cbentzel CID=8793 BUG=none TEST=none Review URL: http://codereview.chromium.org/6492001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74672 0039d316-1c4b-4281-b951-d872f2087c98
* Continuing with the out-of-lining of test code.erg@google.com2011-02-116-78/+165
| | | | | | | | | BUG=none TEST=compiles Review URL: http://codereview.chromium.org/6485015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74660 0039d316-1c4b-4281-b951-d872f2087c98
* clang: Fix several -Woverloaded-virtual warnings.thakis@chromium.org2011-02-112-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Real bugs: net/http/http_network_transaction_unittest.cc:273:16:error: 'net::CaptureGroupNameSocketPool<net::HttpProxyClientSocketPool>::ReleaseSocket' hides overloaded virtual function [-Woverloaded-virtual] virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_network_transaction_unittest.cc:310:1: note: in instantiation of template class 'net::CaptureGroupNameSocketPool<net::HttpProxyClientSocketPool>' requested here CaptureGroupNameHttpProxySocketPool::CaptureGroupNameSocketPool( ^ In file included from ./net/http/http_network_session_peer.h:10: ./net/http/http_proxy_client_socket_pool.h:200:16: note: hidden overloaded virtual function 'net::HttpProxyClientSocketPool::ReleaseSocket' declared here virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_network_transaction_unittest.cc:273:16:error: 'net::CaptureGroupNameSocketPool<net::SSLClientSocketPool>::ReleaseSocket' hides overloaded virtual function [-Woverloaded-virtual] virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_network_transaction_unittest.cc:316:1: note: in instantiation of template class 'net::CaptureGroupNameSocketPool<net::SSLClientSocketPool>' requested here CaptureGroupNameSSLSocketPool::CaptureGroupNameSocketPool( ^ In file included from ./net/http/http_network_session_peer.h:12: ./net/socket/ssl_client_socket_pool.h:208:16: note: hidden overloaded virtual function 'net::SSLClientSocketPool::ReleaseSocket' declared here virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_network_transaction_unittest.cc:273:16:error: 'net::CaptureGroupNameSocketPool<net::TCPClientSocketPool>::ReleaseSocket' hides overloaded virtual function [-Woverloaded-virtual] virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_network_transaction_unittest.cc:5511:13: note: in instantiation of template class 'net::CaptureGroupNameSocketPool<net::TCPClientSocketPool>' requested here new CaptureGroupNameTCPSocketPool(NULL, NULL); ^ In file included from ./net/socket/socket_test_util.h:34: ./net/socket/tcp_client_socket_pool.h:134:16: note: hidden overloaded virtual function 'net::TCPClientSocketPool::ReleaseSocket' declared here virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_network_transaction_unittest.cc:273:16:error: 'net::CaptureGroupNameSocketPool<net::SOCKSClientSocketPool>::ReleaseSocket' hides overloaded virtual function [-Woverloaded-virtual] virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_network_transaction_unittest.cc:5630:13: note: in instantiation of template class 'net::CaptureGroupNameSocketPool<net::SOCKSClientSocketPool>' requested here new CaptureGroupNameSOCKSSocketPool(NULL, NULL); ^ In file included from ./net/http/http_network_session_peer.h:11: ./net/socket/socks_client_socket_pool.h:133:16: note: hidden overloaded virtual function 'net::SOCKSClientSocketPool::ReleaseSocket' declared here virtual void ReleaseSocket(const std::string& group_name, ^ CXX(target) out/Debug/obj.target/net_unittests/net/http/http_response_body_drainer_unittest.o 4 errors generated. net/http/http_stream_factory_unittest.cc:126:16:error: 'net::<anonymous namespace>::CapturePreconnectsSocketPool<net::HttpProxyClientSocketPool>::ReleaseSocket' hides overloaded virtual function [-Woverloaded-virtual] virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_stream_factory_unittest.cc:170:1: note: in instantiation of template class 'net::<anonymous>::CapturePreconnectsSocketPool<net::HttpProxyClientSocketPool>' requested here CapturePreconnectsHttpProxySocketPool::CapturePreconnectsSocketPool( ^ In file included from ./net/http/http_network_session_peer.h:10: ./net/http/http_proxy_client_socket_pool.h:200:16: note: hidden overloaded virtual function 'net::HttpProxyClientSocketPool::ReleaseSocket' declared here virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_stream_factory_unittest.cc:126:16:error: 'net::<anonymous namespace>::CapturePreconnectsSocketPool<net::SSLClientSocketPool>::ReleaseSocket' hides overloaded virtual function [-Woverloaded-virtual] virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_stream_factory_unittest.cc:176:1: note: in instantiation of template class 'net::<anonymous>::CapturePreconnectsSocketPool<net::SSLClientSocketPool>' requested here CapturePreconnectsSSLSocketPool::CapturePreconnectsSocketPool( ^ In file included from ./net/http/http_network_session_peer.h:12: ./net/socket/ssl_client_socket_pool.h:208:16: note: hidden overloaded virtual function 'net::SSLClientSocketPool::ReleaseSocket' declared here virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_stream_factory_unittest.cc:126:16:error: 'net::<anonymous namespace>::CapturePreconnectsSocketPool<net::TCPClientSocketPool>::ReleaseSocket' hides overloaded virtual function [-Woverloaded-virtual] virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_stream_factory_unittest.cc:188:13: note: in instantiation of template class 'net::<anonymous>::CapturePreconnectsSocketPool<net::TCPClientSocketPool>' requested here new CapturePreconnectsTCPSocketPool( ^ In file included from ./net/socket/socket_test_util.h:34: ./net/socket/tcp_client_socket_pool.h:134:16: note: hidden overloaded virtual function 'net::TCPClientSocketPool::ReleaseSocket' declared here virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_stream_factory_unittest.cc:126:16:error: 'net::<anonymous namespace>::CapturePreconnectsSocketPool<net::SOCKSClientSocketPool>::ReleaseSocket' hides overloaded virtual function [-Woverloaded-virtual] virtual void ReleaseSocket(const std::string& group_name, ^ net/http/http_stream_factory_unittest.cc:237:13: note: in instantiation of template class 'net::<anonymous>::CapturePreconnectsSocketPool<net::SOCKSClientSocketPool>' requested here new CapturePreconnectsSOCKSSocketPool( ^ In file included from net/http/http_stream_factory_unittest.cc:17: In file included from ./net/http/http_network_session_peer.h:11: ./net/socket/socks_client_socket_pool.h:133:16: note: hidden overloaded virtual function 'net::SOCKSClientSocketPool::ReleaseSocket' declared here virtual void ReleaseSocket(const std::string& group_name, ^ CXX(target) out/Debug/obj.target/net_unittests/net/http/http_vary_data_unittest.o 4 errors generated. make: *** [out/Debug/obj.target/net_unittests/net/http/http_stream_factory_unittest.o] Error 1 media/audio/linux/alsa_output_unittest.cc:83:3:error: 'MockAudioManagerLinux::MakeAudioInputStream' hides overloaded virtual function [-Woverloaded-virtual] MOCK_METHOD5(MakeAudioInputStream, AudioInputStream*( ^ In file included from media/audio/linux/alsa_output_unittest.cc:12: In file included from ./testing/gmock/include/gmock/gmock.h:61: testing/gmock/include/gmock/gmock-generated-function-mockers.h:632:28: note: instantiated from: ^ media/audio/linux/alsa_output_unittest.cc:83:3: note: instantiated from: MOCK_METHOD5(MakeAudioInputStream, AudioInputStream*( ^ media/audio/linux/alsa_output_unittest.cc:83:16: note: instantiated from: MOCK_METHOD5(MakeAudioInputStream, AudioInputStream*( ^ In file included from media/audio/linux/alsa_output_unittest.cc:9: ./media/audio/linux/audio_manager_linux.h:30:29: note: hidden overloaded virtual function 'AudioManagerLinux::MakeAudioInputStream' declared here virtual AudioInputStream* MakeAudioInputStream(AudioParameters params); ^ CXX(target) out/Debug/obj.target/media_unittests/media/base/data_buffer_unittest.o CXX(target) out/Debug/obj.target/media_unittests/media/base/djb2_unittest.o 1 error generated. No bug, just confusing: In file included from webkit/plugins/npapi/test/plugin_schedule_timer_test.cc:5: ./webkit/plugins/npapi/test/plugin_schedule_timer_test.h:59:8:error: 'NPAPIClient::ScheduleTimerTest::HandleEvent' hides overloaded virtual function [-Woverloaded-virtual] void HandleEvent(int event_index); ^ In file included from webkit/plugins/npapi/test/plugin_schedule_timer_test.cc:5: In file included from ./webkit/plugins/npapi/test/plugin_schedule_timer_test.h:9: ./webkit/plugins/npapi/test/plugin_test.h:43:19: note: hidden overloaded virtual function 'NPAPIClient::PluginTest::HandleEvent' declared here virtual int16 HandleEvent(void* event); ^ 1 error generated. make: *** [out/Debug/obj.target/npapi_test_plugin/webkit/plugins/npapi/test/plugin_schedule_timer_test.o] Error 1 CXX(target) out/Debug/obj.target/npapi_test_plugin/webkit/plugins/npapi/test/plugin_private_test.o CXX(target) out/Debug/obj.target/npapi_test_plugin/webkit/plugins/npapi/test/plugin_test_factory.o In file included from webkit/plugins/npapi/test/plugin_test_factory.cc:17: ./webkit/plugins/npapi/test/plugin_schedule_timer_test.h:59:8:error: 'NPAPIClient::ScheduleTimerTest::HandleEvent' hides overloaded virtual function [-Woverloaded-virtual] void HandleEvent(int event_index); ^ In file included from webkit/plugins/npapi/test/plugin_test_factory.cc:7: In file included from ./webkit/plugins/npapi/test/plugin_arguments_test.h:8: ./webkit/plugins/npapi/test/plugin_test.h:43:19: note: hidden overloaded virtual function 'NPAPIClient::PluginTest::HandleEvent' declared here virtual int16 HandleEvent(void* event); ^ 1 error generated. BUG=72205 TEST=none Review URL: http://codereview.chromium.org/6503001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74642 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unused HttpResponseHeaders::GetRawHeaders method.adamk@chromium.org2011-02-112-27/+0
| | | | | | Review URL: http://codereview.chromium.org/6469003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74530 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Coverity UNINIT_CTOR defects in constructors.wtc@chromium.org2011-02-112-2/+3
| | | | | | | | | | | R=eroman CID=14767,1304,8594 BUG=none TEST=none Review URL: http://codereview.chromium.org/6493003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74528 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Coverity UNINIT_CTOR defect in thewtc@chromium.org2011-02-112-8/+10
| | | | | | | | | | | | | | DiskCacheBasedSSLHostInfo::CallbackImpl constructor. Fix cpplint nits. R=agl CID=14184 BUG=none TEST=No compilation errors. Review URL: http://codereview.chromium.org/6474009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74527 0039d316-1c4b-4281-b951-d872f2087c98