| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, we limit the number of connections per proxy server to 32 (raised
from 15). Firefox uses 8. A low value keeps from overloading the proxy servers;
at the same time, some users may hit the limit (since we use the same number
for both HTTP and SOCKS proxies). This experiment selects a different number at
browser launch (from the set [8, 16, 32, 64]), and attempts to look at certain
stats to get a clearer picture of how this affects the user.
BUG=44501
r=jar
Review URL: http://codereview.chromium.org/3033045
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54541 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When authenticating to an HTTP proxy to establish a secure tunnel (via CONNECT), the uri should be the hostname of the server and the destination port, such as "www.example.com:443". When authenticating to an HTTP proxy for a non-secure content, the uri should be the path at the server, i.e. "/index.html".
If the site we are trying to connect to previously advertised "Alternate-Protocol: 443:spdy-npn/1" a request to "http://www.example.com" will be attempted on a secure port.
However, the URL passed into the digest authenticator was an unsecure one, and it decided to have a uri in the form "/index.html" rather than the correct "www.example.com:443". This causes persistent failure with the password and many password prompts.
BUG=49865
TEST=Run with --use-spdy=npn, force connection through a digest authenticating proxy, and browse a site which advertises Alternate-Protocol through http URLs.
Review URL: http://codereview.chromium.org/3028021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54528 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
|
|
|
|
|
|
|
|
|
|
| |
string_number_conversions.h
TEST=it compiles
BUG=none
Review URL: http://codereview.chromium.org/3013046
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54454 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
|
|
|
|
|
|
|
|
|
|
|
| |
ClientSocketPool treats all pending SocketParams as interchangeable. Therefore they can not contain any connection specific data. This only affects the Http Proxy tunnel case. The lowest risk change to fix this problem is to create the HttpAuthController in the HttpProxyClientSocket. If we get a 407 and need to restart the Tunnel, the pending HttpProxyClientSocket is returned to the HttpNetworkTransaction in the additional error state of the connection and then complete the auth in a pair of states in the HttpNetworkTransaction. This reintroduces a dependency between tunnel setup and the HttpNetworkTransaction, but that will need to be fixed at a later date.
BUG=49493
TEST=existing unit tests + manually visiting many SSL sites through a kerberized http proxy.
Review URL: http://codereview.chromium.org/3058013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54405 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=none
BUG=44549
Review URL: http://codereview.chromium.org/3053024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54388 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
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove "http1.1" and "spdy" from the NPN advertisement string (the
proper values are "http/1.1" and "spdy/2", which were included redundantly).
BUG=50550
TEST=existing
Review URL: http://codereview.chromium.org/3044034
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54258 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
SpdyHttpStream now implements (a slightly wider) HttpStream interface.
BUG=50268
TEST=none
Review URL: http://codereview.chromium.org/3079002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54154 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3040016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54101 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This covers the cases using GSSAPI for Negotiate to authenticate to a proxy, where:
- The user does not have a TGT (Ticket Generating Ticket), or
- The user is unable to get to the TGS (Ticket Granting Server).
The bug was that the authentication system tried to reuse the Negotiate handler even though it was not possible for it to succeed, leading to infinite retries.
BUG=33033
Test=None
Review URL: http://codereview.chromium.org/3040015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53819 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
R=vandebo
BUG=49862
TEST=none
Review URL: http://codereview.chromium.org/3072003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53794 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
--host-rules seems like a reasonable enough substitute for these two command line flags, and removing them will simplifies the fairly complicated URL rewrite logic in HttpNetworkTransaction.
BUG=None
TEST=built and ran net_unittests
Review URL: http://codereview.chromium.org/3041019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53790 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3032017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53403 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=33033
TEST=None
Review URL: http://codereview.chromium.org/2883031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53207 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
destructors from classes with instance members of type
scoped_ptr_malloc<>
Also remove #include of iostream from remaining header file.
Review URL: http://codereview.chromium.org/2861065
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53190 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
BUG=49396
Review URL: http://codereview.chromium.org/2836060
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53095 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the user has a stale TGT, or is unable to generate a TGS for the server they are trying to communicate to, then generating an authentication token fails.
Rather than fail the entire network transaction in that case, we resend the request with an empty Authenticate (or Proxy-Authenticate) header, and remember that the Negotiate scheme is not a valid option for this particular transaction.
If the server responds back with headers like
WWW-Authenticate: Negotiate
WWW-Authenticate: Digest realm=foo
then the digest scheme is chosen in the next round.
BUG=33033
TEST=None
Review URL: http://codereview.chromium.org/3010010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53002 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
GSSAPI expects SPNs to be in the form HTTP@<server_name> and SSPI expects
SPNs to be in the form HTTP/<server_name>.
BUG=33033
TEST=net_unittests --gtest_filter="*HttpAuthHandlerNegotiate*", go against Kerberized server on Linux or OSX and see that the TGS is retrieved correctly.
Review URL: http://codereview.chromium.org/3055001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52984 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GSSAPI does not provide a mechanism for the user to specify username/password to obtain a TGT. If default credentials are not allowed for an end site, skip negotiate and use a different scheme.
Arguably in this case it may make sense to simply prompt the user whether they want to use their existing Kerberos credentials to authenticate to the server and use the existing TGT, but we'll need UI changes.
BUG=33033
TEST=net_unittests, try to authenticate to a Kerberized server which is not in the whitelist.
Review URL: http://codereview.chromium.org/3013003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52943 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
handlers.
BUG=None
TEST=net_unittests --gtest_filter="*HttpAuthHandlerNegotiate*"
Review URL: http://codereview.chromium.org/3018008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52828 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL helps chrome respect the SETTINGS header
MAX_CONCURRENT_STREAMS. Note that this means that
SpdySession::CreateStream can now return ERR_IO_PENDING, so it
requires a callback. There's a noted TODO that if an
http_network_transaction dissapears betweeen STATE_SPDY_GET_STREAM and
STATE_SPDY_SEND_REQUEST I don't know if we end up with an orphan stream
in our spdy_session.
As well, spdy_test_util.cc had a lot of functions with default arguments;
I didn't fix them all, but the functions I modified no longer take default
arguments and meet the coding standard. I'd like to circle back at some point
and possibly make the tests call SpdyFramer directly: these test utils seem
sometimes more trouble than they're worth if the framer was a bit more
convenient for direct use.
BUG=34750
TEST=net_unittests Spdy.ThreeGets*
Review URL: http://codereview.chromium.org/2919011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52791 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
disk cache fails (now on an async world).
BUG=49216
TEST=net_unittests
Review URL: http://codereview.chromium.org/2812062
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52790 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=47895
TEST=none
Review URL: http://codereview.chromium.org/2996006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52779 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
the backend creation when the cache goes away.
BUG=49193
TEST=net_unittests
Review URL: http://codereview.chromium.org/3016006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52776 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/3040003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52750 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=33033
TEST=None
Review URL: http://codereview.chromium.org/2833049
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52696 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
We also need to push additional error state out of the SSLClientSocketPool on a ERR_SSL_CLIENT_AUTH_CERT_NEEDED error.
BUG=49197
TEST=no crash when visiting https://foafssl.org/srv/idp?authreqissuer=http://foaf.me/index.php
Review URL: http://codereview.chromium.org/2827053
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52693 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
access to an entry to the transaction that has exclusive
access to that entry.
This means that requests that are blocked on the single writer
lock of the http cache will report the load state of the
request that has the lock, and WAITING_FOR_CACHE is reserved
for requests that are actually waiting for the entry to be
created by the cache.
BUG=43582
TEST=net_unittests
Review URL: http://codereview.chromium.org/2892010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52557 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
HttpAuthController should be cleared (the user should only be prompted for username/password on the first round).
BUG=48752
TEST=net_unittests --gtest_filter="*MultiRoundAuth*"
Review URL: http://codereview.chromium.org/2941006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52550 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Disable alternate protocol for npn_http case so browser don't need to fallback to
http (extra overhead) in this case.
Keep default group at 25% so we could use it to compare performance against
alternate protocol with spdy case.
BUG=48967
TEST=none
Review URL: http://codereview.chromium.org/2904012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52537 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
Specifically, we defer asynchronous user callbacks to tasks.
BUG=48861
Review URL: http://codereview.chromium.org/2994003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52509 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously committed as r52349 and r52336. Related commits: r52367, r52364
and r52343.
Rerunning trybots due to previous trybot breakage.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/2965015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52496 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
access to an entry to the transaction that has exclusive
access to that entry.
This means that requests that are blocked on the single writer
lock of the http cache will report the load state of the
request that has the lock, and WAITING_FOR_CACHE is reserved
for requests that are actually waiting for the entry to be
created by the cache.
BUG=43582
TEST=net_unittests
Review URL: http://codereview.chromium.org/2976004
TBR=rvargas@google.com
Review URL: http://codereview.chromium.org/2921010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52405 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/2982009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52367 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(I accidentally committed a previous version of the patch (the fixed version
was in codereview since I had switched to my mac to address this exact compile
failure.)
BUG=none
TEST=none
TBR=evan
Review URL: http://codereview.chromium.org/2937010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52349 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Some cleanup to url_request.h
- Remove task.h from headers that don't need it.
- Remove histogram.h from message_loop.h
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/2986002
TBR=erg@chromium.org
Review URL: http://codereview.chromium.org/2969006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52343 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=33033
TEST=net_unittests
Review URL: http://codereview.chromium.org/2909012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52340 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Some cleanup to url_request.h
- Remove task.h from headers that don't need it.
- Remove histogram.h from message_loop.h
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/2986002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52336 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
access to an entry to the transaction that has exclusive
access to that entry.
This means that requests that are blocked on the single writer
lock of the http cache will report the load state of the
request that has the lock, and WAITING_FOR_CACHE is reserved
for requests that are actually waiting for the entry to be
created by the cache.
BUG=43582
TEST=net_unittests
Review URL: http://codereview.chromium.org/2976004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52334 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
To support SSLClientSocketPool, ClientSocketPoolBase and ClientSocketHandle require a notion of additional error state reported from the pool. Overtime the error handling may get become more integrated, alleviating the need for some of the additional error state.
To support getting Http Proxy credentials from the user, the SSLClientSocketPool will release unauthenticated HttpProxyClientSocket's into the pool as idle. However, it checks their authentication status when receiving one, completing the authentication once the user has provided the credentials.
BUG=30357
TEST=existing unit tests, ClientSocketPoolBaseTest.AdditionalErrorState*, SSLClientSocketPoolTest.*
Review URL: http://codereview.chromium.org/2870030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52275 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
cleanup.
BUG=42795
TEST=existing unit tests
Review URL: http://codereview.chromium.org/2806052
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52214 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add an InFlightBackendIO class that handles posting of
cacheoperations back and forth between the IO thread and
the cachethread.
BUG=26730
TEST=unit tests
Review URL: http://codereview.chromium.org/2945002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52185 0039d316-1c4b-4281-b951-d872f2087c98
|