| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
Add command-line override for testers that don't want the throttle.
BUG=60369
TEST=
Review URL: http://codereview.chromium.org/3977007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63709 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
--use-spdy=off
BUG=none
TEST=SpdyNetworkTransactionTest.SpdyOnOffToggle
Review URL: http://codereview.chromium.org/3807008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62870 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=54745
TEST=manual
Review URL: http://codereview.chromium.org/3582007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62627 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
put them in the base namespace.
TEST=it compiles
BUG=none
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62510 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
net-internals tab, with links to the corresponding sources on
the events tab.
Includes a minor cleanup or two relating to unneeded/unused code/headers for the rendering of SocketPools.
BUG=58034
TEST=manual
Review URL: http://codereview.chromium.org/3565015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62329 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
I've added a unit test to exercise the code, but it didn't trigger the crash.
BUG=57331
TEST=none
Review URL: http://codereview.chromium.org/3517012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61880 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SpdySessionPool.
BUG=57343
TEST=none
Review URL: http://codereview.chromium.org/3602001
TBR=willchan@chromium.org
Review URL: http://codereview.chromium.org/3541005
TBR=willchan@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61063 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=57343
TEST=none
Review URL: http://codereview.chromium.org/3602001
TBR=willchan@chromium.org
Review URL: http://codereview.chromium.org/3541005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61018 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=57343
TEST=none
Review URL: http://codereview.chromium.org/3602001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61015 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
I'm trying to make sure all IO objects clean up appropriately when HttpNetworkSession goes away. SpdySession can cause problems since it pointlessly keeps itself alive for another MessageLoop loop even though all references may have gone away. This fixes that.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3547003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60988 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Establishes that HttpNetworkSession owns all the socket pools.
Move out all the socket pools into a ClientSocketPoolManager. This is because
of the dependency tree amongst socket pools, which dictates the order in which
they must be constructed and destructed. In order to better establish it, I
moved them out to their own class. HttpNetworkSession owns the
ClientSocketPoolManager which owns the pools. We pass the pools as raw
pointers everywhere.
Note that ClientSocketPoolManager owns more pools than are publicly accessible via its interface. That's because some of them are wrapped by publicly exposed pools.
Also, ClientSocketPoolHistograms used to be reference counted. That's because it can be shared by multiple ClientSocketPools. But it's effectively a global as well, so I make their lifetimes persist for the length of ClientSocketPoolManager too.
I also removed internal refcounting in ClientSocketPoolBase. I had refcounted
it before I knew about ScopedRunnableMethodFactory back when I first started.
I cleaned up the unit tests a lot. Back when I was a young padawan, I didn't
really know what I was doing, so I copy/pasted a metric asston of code. Turns
out most of it was stupid, so I fixed it. I also stopped the use of
implementation inheritance with ClientSocketPoolTest because it's discouraged
by the style guide and more importantly because it caused the
ClientSocketHandles within the TestSocketRequest vector to be destroyed _after_
the pools themselves were destroyed, which is bad since the handles will call
pool_->Release() which blows up.
BUG=56215,56215
TEST=Existing unit tests
Review URL: http://codereview.chromium.org/3389020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60983 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and replace it with a reference to the SpdySessionPool
and SpdySettingStorage, which are actually required.
Modified SpdySessionPool to take a pointer to
SpdySettingsStorage instead of to HttpNetworkSession
in both GetSpdySessionFromSocket() Get().
Modified HttpStreamRequest (and various unit tests) accordingly
when calling these methods.
Review URL: http://codereview.chromium.org/3400024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60590 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
being called from a handful of unit tests. I modified
those tests to call SpdySession::InitializeWithSocket()
instead. This added a bit of code to these tests.
BUG=56848
TEST=none
Review URL: http://codereview.chromium.org/3435029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60589 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
(Note: This is a TODO in string_util.h)
BUG=None
TEST=trybots
Review URL: http://codereview.chromium.org/3390026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60555 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
a pending create stream.
The problem was that the socket error would arrive on the SpdySession, which
would initiate cleanup of the pendng create streams for that session. In the
callback to the stream, the stream would notify the transaction, which would
delete itself, and that would cause a callback into the SpdySession to
clear that specific pending create stream (via CancelPendingCreateStreams).
BUG=52901,55795
TEST=SpdyNetworkTransactionTest.ThreeGetsWithMaxConcurrentSocketClose
Review URL: http://codereview.chromium.org/3400009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59794 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=49533
TEST=compiles with gcc 4.5 and on trybots.
Review URL: http://codereview.chromium.org/3433005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59396 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
handler some time ago, so this is unnecessary.
I've verified there is no performance difference between these two sizes.
BUG=none
TEST=existing
Review URL: http://codereview.chromium.org/3305014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58704 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I couldn't find a way to make it cleaner that didn't introduce a new race.
BUG=none
TEST=n/a
TBR=cbentzel@chromium.org
Review URL: http://codereview.chromium.org/3322014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58602 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
break out, so we leaked the stream. Also add a netlog entry for the case where
we max out the active stream limit.
BUG=none
TEST=SpdyNetworkTransactionTest.ServerPushDuplicate
Review URL: http://codereview.chromium.org/3310009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58458 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
trying to move to a more consistent model of logging between the SpdySession,
SpdyStream, and HttpNetworkTransaction. Frame-level events belong on the
session, so that we can get a clean view of what happened on the session.
I'll be updating the spdy_stream next.
BUG=53956
TEST=none
Review URL: http://codereview.chromium.org/3212010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58145 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
by PassiveLogCollector.
BUG=53883
TEST=Load a webpage. Now open about:net-internals and verify that the log for that URL does NOT contain the HTTP request/response headers.
Review URL: http://codereview.chromium.org/3274016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58070 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
about:net-internals.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3257004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57882 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3280003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57833 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
wasNpnNegotiated() -> was_npn_negotiated()
setWasNpnNegotiated() -> set_was_npn_negotiated()
wasSpdyNegotiated() -> was_spdy_negotiated()
setWasSpdyNegotiated() -> set_was_spdy_negotiated()
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3229004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57741 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=48100
TEST=net_unittests
Review URL: http://codereview.chromium.org/3137014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57453 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The fix uncovers a few things. Previously, when we had an unclaimed
push stream, we'd leave it as an "active" stream, even if the EOF had
already been received on that stream. I changed it so that the push
stream is removed from the active stream as soon as it is inactive,
but it remains on the unclaimed_pushed_streams list. This seems more
correct.
The hardest part of the test was getting the test to verify the fix.
To verify the fix, I modified the Push tests so that we leave the
session open (e.g. terminate the list of reads with an ERR_IO_PENDING
rather than an EOF so that it sits open), which gives us the opportunity
to check if there are active streams left on the session when we
completed the test. If so, then we'll pop an error.
BUG=52898
TEST=Updated existing tests.
Review URL: http://codereview.chromium.org/3108038
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57023 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This may or may not fix 50265. Regardless, the previous behavior was incorrect.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/3150023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56696 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
HttpStreamFactory. The HttpNetworkTransaction now deals exclusively with
streams rather than connections directly. This cut the size of HTN roughly in
in half.
The HttpNetworkTransaction is still responsible for all proxy and server
authentication functions. This is because the streams may come and go - we
could create a stream, have the server declare auth is needed, and then the
next attempt would be on a different stream. So Auth belongs on the HNT.
The HNT no longer has direct access to the connection itself; instead, it
only knows of an HttpStream.
The StreamRequest, however, is responsible for determining whether the
connection needs to use a proxy, whether AlternateProtocols are available, and
whether the connection should be SPDY or HTTP.
Other changes:
- moved some static configuration methods from HNT to HttpStreamFactory.
- added some methods to the HttpStream.
BUG=none
TEST=all
Review URL: http://codereview.chromium.org/3171002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56646 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=48100
TEST=net_unittests
Review URL: http://codereview.chromium.org/3048058
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56355 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3109001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55506 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Finished migrating last unit tests to use http_network_transaction.
BUG=43330
TEST=net_unittests
Review URL: http://codereview.chromium.org/3091019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55454 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Removed a lot of duplicate/unnecessary logic.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3075023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55308 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
for a stalled stream.
BUG=none
TEST=net_unittests
Review URL: http://codereview.chromium.org/3018019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55125 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=net_unittests
BUG=34761
Review URL: http://codereview.chromium.org/3020032
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55095 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3071012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55034 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
remove cookies from log dumps. Also, SPDY headers are now
displayed (And stored) just like http ones. Cookies are
always shown on the Requests page.
As an added bonus, removes a superfluous </b> from index.html.
Contributed by: mmenke@google.com
BUG= 50668
TEST= Go to about:net-internals, and check for
properly hiding cookies for both HTTP and SPDY,
for both sent and received cookies.
Review URL: http://codereview.chromium.org/3072013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54932 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=net_unittests
BUG=none
Review URL: http://codereview.chromium.org/2806085
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54785 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
settings.
This ensures SpdySessions are not improperly reused.
TEST=net_unittests
BUG=49874
Review URL: http://codereview.chromium.org/3047032
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54577 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixing this involved a couple of minor changes.
* We were not tracking whether a SPDY session should be retried.
The HTTP logic uses "is_socket_idle()" to determine if the socket
was once good and is worth retrying. Because SPDY is not serialized
added methods through the SpdySession and SpdyHttpStream for this.
(See ShouldResendFailedRequest)
* The spdy_http_stream was not notifying the caller when
OnSendHeadersComplete occurred when there is no upload body.
This isn't strictly necessary, but keeps the HttpNetworkTransaction
state more consistent.
BUG=50510
TEST=SpdyNetworkTransactionTest
Review URL: http://codereview.chromium.org/3064021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54464 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
weird that UTF8ToWide is in utf_string_conversions, but ASCIIToWide is in
string_util.h. This should help some dependencies since string_util changes
much more frequently than utf_string_conversions and fewer files will now need
string_utils.
Since this requires a lot of changes, this keeps a forward-declaration in
string_util so I can update the entire project incrementally. This change
updates base and net only.
I removed some includes of string_util from header files in net. In particular,
url_request_context which involved creating a new .cc file to implement a
function (already virtual so there's no speed penalty). It turns out a lot of
files were getting string_util from this include, so I had to update a bunch of
random files to now explicitly include string_util.h
TEST=it compiles
BUG=none
Review URL: http://codereview.chromium.org/3076013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54456 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Hopefully I got them all.
BUG=23581
TEST=net_unittests
Review URL: http://codereview.chromium.org/3013048
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54433 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this CL (see also issue 2910009), chrome will support basic
prefetching. You can optionally deactivate prefetching with the
command line argument --disable-prefetch.
A new RequestPriority was created as well, IDLE, which is lower
than LOWEST. Unfortunately, SPDY has only two bits for priority, so
as a temporary measure (pending SPDY v3 which will have three), we
have a mapping in SPDY that folds net::LOWEST and net::IDLE together.
BUG=13505
TEST=http://gemal.dk/browserspy/prefetch.php
Review URL: http://codereview.chromium.org/3050016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54421 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use the base namespace in the new file. Update callers.
I removed all wstring variants and also the string->number ones that ignore the return value. That encourages people to write code and forget about error handling.
TEST=included unit tests
BUG=none
Review URL: http://codereview.chromium.org/3056029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54355 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also fix tsan failure for spdy_http_stream_unittest.
Attempted to commit in http://codereview.chromium.org/3014030/show, ran into
different tsan failure.
TEST=net_unittests, tsan on windows for SpdyHttpStreamTest.
BUG=46589, 47478, 50198
Review URL: http://codereview.chromium.org/2811072
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53829 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3035032
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53825 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53714 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Also fix spdy_http_stream_test errors.
TEST=net_unittests
BUG=46589, 47478, 50198
Review URL: http://codereview.chromium.org/3014030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53693 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
spdy_network_transaction.
It was previously possible to use spdy_network_transaction using the command line flags:
--use-spdy=no-ssl
--use-spdy=no-compress
This does not affect instances of chrome that are not run with --use-spdy.
Also changed spdy_network_transaction_unittest so that all tests are run with 3 different connection configurations: spdy over npn, spdy over ssl, and spdy without ssl.
TEST=net_unittests
BUG=49082
Review URL: http://codereview.chromium.org/3048003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53548 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
switch, initial support for receive window size.
BUG=48100
TEST=net_unittestss --gtest_filter="SpdyProtocolTest.ControlFrameStructs:SpdyNetworkTransactionTest.WindowUpdate:SpdyNetworkTransactionTest.WindowUpdateOverflow"
Review URL: http://codereview.chromium.org/3052005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53297 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3035010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53146 0039d316-1c4b-4281-b951-d872f2087c98
|