summaryrefslogtreecommitdiffstats
path: root/net/base
Commit message (Collapse)AuthorAgeFilesLines
* Implement a TODO (purge expired cookies in GetAllCookies()) and some small ↵pkasting@chromium.org2008-10-302-85/+111
| | | | | | | | | style fixes (function arguments on one line, remove braces on some single-line loop bodies). Remove some code to count how many cookies we garbage collected, since we never do anything with those numbers. Remove some TODOs that we shouldn't do (per deanm). This is a by-product of my in-progress cookie fixes. Review URL: http://codereview.chromium.org/8683 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4247 0039d316-1c4b-4281-b951-d872f2087c98
* Timeout persistent idle connections after 5 minutes, and increase the socket ↵ericroman@google.com2008-10-292-30/+53
| | | | | | | | | cleanup timer from 5 seconds to 10 seconds. http://code.google.com/p/chromium/issues/detail?id=3574 Review URL: http://codereview.chromium.org/8124 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4112 0039d316-1c4b-4281-b951-d872f2087c98
* Fix "expected, actual" order in cookie monster unittest (which was mostly ↵pkasting@chromium.org2008-10-281-110/+110
| | | | | | | | | "actual, expected"). This is a by-product of my in-progress cookie fixes. Review URL: http://codereview.chromium.org/8852 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4106 0039d316-1c4b-4281-b951-d872f2087c98
* Port a few test_shell_tests. Now it runs 45 of them.evanm@google.com2008-10-271-0/+10
| | | | | | | | | | | | | | | | I removed some files from test_files because scons complains (warns) when a file is both in test_files and input_files. So the files removed from test_files also exist in input_files and at some pointed will be ported anyway. I also made some linking stubs. BUG=3674 Review URL: http://codereview.chromium.org/7974 Patch from Paweł Hajdan jr <phajdan.jr@gmail.com>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4031 0039d316-1c4b-4281-b951-d872f2087c98
* Move Time, TimeDelta and TimeTicks into namespace base.dsh@google.com2008-10-2714-29/+53
| | | | | | Review URL: http://codereview.chromium.org/7995 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4022 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup of DNS prefetch related filesjar@google.com2008-10-271-4/+5
| | | | | | | | | | | I have a separate change list coming to support predictive DNS resolutions, so I pulled out a pile of mechanical changes (with no semantic changes intendend). r=mbelshe Review URL: http://codereview.chromium.org/8624 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4015 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up filter and content encoding handling jar@google.com2008-10-279-251/+345
| | | | | | | | | | | | | | | | Centralize translation functions (text of "Content-Encoding" to enum) in filter.cc Centralize error recovery (for damaged content encoding headers) in filter.cc Error recovery includes a loss of SDCH encoding headers, plus handling of Apache server bug with gzip files are tagged as also being gzip encoded. Centralize and add a pile of unit tests to this filter code. r=openvcdiff,huanr Review URL: http://codereview.chromium.org/8018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4004 0039d316-1c4b-4281-b951-d872f2087c98
* Pull in latest file from Mozilla.pamg@google.com2008-10-241-8/+34
| | | | | | | | BUG=b/1305245 TEST=none Review URL: http://codereview.chromium.org/8132 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3887 0039d316-1c4b-4281-b951-d872f2087c98
* The constructor should initialize callback_ to NULL.wtc@google.com2008-10-241-4/+5
| | | | | | | R=dank Review URL: http://codereview.chromium.org/6372 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3879 0039d316-1c4b-4281-b951-d872f2087c98
* Port:mark@chromium.org2008-10-231-3/+2
| | | | | | | | | | | | | | | | | | | | | | - net/base/dns_resolution_observer.cc - net/http/http_network_transaction.cc - net/url_request/url_request_filter.cc Add to net library the above and: - net/base/dns_resolution_observer.cc - net/base/upload_data_stream.cc - net/http/http_network_layer.cc - net/proxy/proxy_resolver_fixed.cc - net/proxy/proxy_service.cc - net/url_request/url_request_job_manager.cc Add to net_unittests: - net/http/http_network_transaction_unittest.cc - net/http/http_transaction_unittest.cc - net/http/http_util_unittest.cc Patch by Paweł Hajdan jr <phajdan.jr@gmail.com> git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3867 0039d316-1c4b-4281-b951-d872f2087c98
* Bound the maximum buffer size for response headers.ericroman@google.com2008-10-231-0/+3
| | | | | | | | http://code.google.com/p/chromium/issues/detail?id=3654 Review URL: http://codereview.chromium.org/7882 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3827 0039d316-1c4b-4281-b951-d872f2087c98
* Add a net error code for not implemented.ericroman@google.com2008-10-221-0/+3
| | | | | | Review URL: http://codereview.chromium.org/7855 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3758 0039d316-1c4b-4281-b951-d872f2087c98
* Port SSLClientSocket to Linuxdkegel@google.com2008-10-2210-50/+1269
| | | | | | | | | | | | | | | | Passes tests (once you enable them by removing DISABLED_). Probably want to add a mock https server so we can leave those tests enabled when we check in. Had to add full duplex support to TCPClientSocket on Linux to avoid kludgy plumbing issues. Also had to add dummy implementation of X509Certificate::~X509Certificate to prevent link error. Rediffed to current trunk, addressed all review issues. Review URL: http://codereview.chromium.org/4049 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3751 0039d316-1c4b-4281-b951-d872f2087c98
* Remove HttpTransaction::Destroy(), and do automatic memory management with ↵ericroman@google.com2008-10-211-0/+30
| | | | | | | | scoped_ptr<>. Review URL: http://codereview.chromium.org/7532 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3701 0039d316-1c4b-4281-b951-d872f2087c98
* Suppress CERT_STATUS_NO_REVOCATION_MECHANISM to be compatiblewtc@google.com2008-10-211-0/+4
| | | | | | | | | | | | with WinHTTP, which doesn't report this error. We need this temporary workaround because our SSL UI tests aren't expecting this error. R=rvargas BUG=3004 Review URL: http://codereview.chromium.org/8022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3680 0039d316-1c4b-4281-b951-d872f2087c98
* We don't support SSL renegotiation yet. Add thewtc@google.com2008-10-215-40/+204
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ERR_SSL_RENEGOTIATION_REQUESTED error code for when we received a renegotiation request from a server. Support the completion of an SSL handshake after we write something. (This happens in a session resumption handshake.) Use the SSL configuration settings to turn on or turn off various versions of the SSL protocol and server certificate revocation checking. Report all the errors of a certificate and whether revocation checking was done in in the server_cert_status_ bitmask. Create a new scoped_cert_chain_context.h header for the ScopedCertChainContext class that used to be in x509_certificate_win.cc, and use it to fix a leak of chain_context on error paths in SSLClientSocketWin::VerifyServerCert. R=rvargas BUG=3002,3003,3004 Review URL: http://codereview.chromium.org/7505 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3664 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the getinfo call for Macavi@google.com2008-10-202-3/+151
| | | | | | Review URL: http://codereview.chromium.org/7665 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3622 0039d316-1c4b-4281-b951-d872f2087c98
* Remove typo in file name *unitest* vs *unittest*jar@google.com2008-10-201-0/+0
| | | | | | | r=openvcdiff, pinkerton Review URL: http://codereview.chromium.org/7510 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3606 0039d316-1c4b-4281-b951-d872f2087c98
* Fix problem where "text/xml" responses get buffered past 512 bytes, causing ↵ericroman@google.com2008-10-172-1/+16
| | | | | | | | | | the response to be truncated. BUG=3521 Review URL: http://codereview.chromium.org/7610 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3567 0039d316-1c4b-4281-b951-d872f2087c98
* Increase socket buffer size from default (8KB) to 64KB.mbelshe@google.com2008-10-171-0/+45
| | | | | | | | | Using a XMLHttpRequest benchmark to download 3MB files, this change contributed ~30% performance boost. Review URL: http://codereview.chromium.org/7426 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3566 0039d316-1c4b-4281-b951-d872f2087c98
* Initial Mac implementation of SSL. Requires the full-duplex socket ↵avi@google.com2008-10-174-20/+765
| | | | | | | | introduced with the Linux/NSS implementation of SSL. Review URL: http://codereview.chromium.org/7090 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3525 0039d316-1c4b-4281-b951-d872f2087c98
* Don't call the callback in an unexpected case that will never happen anyway.mark@chromium.org2008-10-161-1/+2
| | | | | | Review URL: http://codereview.chromium.org/7449 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3483 0039d316-1c4b-4281-b951-d872f2087c98
* Don't user uninitialized variables. We should at least fail predictably inmark@chromium.org2008-10-161-1/+1
| | | | | | | not-reached cases. Review URL: http://codereview.chromium.org/7362 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3469 0039d316-1c4b-4281-b951-d872f2087c98
* Make zero-byte responses an error, rather than an empty HTTP/0.9 case.ericroman@google.com2008-10-161-0/+3
| | | | | | Review URL: http://codereview.chromium.org/7381 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3446 0039d316-1c4b-4281-b951-d872f2087c98
* Add a lot of robustness to SDCH filter decodingjar@google.com2008-10-1510-262/+718
| | | | | | | | | | | | | | | | | | | | | | a) Do meta-refresh (and partially disable sdch) when we have an sdch decode error early on (due to lack of dictionary). b) Gracefully handle proxy removal of "gzip" in "content-encoding: sdch,gzip". c) Recover from completely stripped content encoding (in response to a request for which we advertised an SDCH dictionary) by using a filter that can optionally decode sdch with an optional gzip as well. Some field tests have shown problems with this protocol's transit across the ether. The general approach we've adopted is to stop using SDCH on the problematic site when we have problems. This will prevent a malicious site from shutting down all use of SDCH. r=kmixter,openvcdiff,huanr Review URL: http://codereview.chromium.org/6433 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3420 0039d316-1c4b-4281-b951-d872f2087c98
* Reset server_cert_ to NULL after freeing it to preventwtc@google.com2008-10-151-1/+3
| | | | | | | | | a double free bug. R=rvargas Review URL: http://codereview.chromium.org/6806 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3397 0039d316-1c4b-4281-b951-d872f2087c98
* Turn SSLClientSocket into an interface.wtc@google.com2008-10-156-217/+244
| | | | | | | | | | | | | | | | | | | | The original ssl_client_socket.{h,cc} are renamed ssl_client_socket_win.{h,cc}. The new ssl_client_socket.h defines the SSLClientSocket interface, which simply extends the ClientSocket interface with a new GetSSLInfo method. ClientSocketFactory::CreateSSLClientSocket returns SSLClientSocket* instead of ClientSocket*. Replace the SSL protocol version mask parameter to the constructor and factory method by a SSLConfig parameter. R=darin Review URL: http://codereview.chromium.org/7304 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3387 0039d316-1c4b-4281-b951-d872f2087c98
* Support servers that request but don't require SSLwtc@google.com2008-10-142-1/+24
| | | | | | | | | | client authentication. R=rvargas BUG=166 Review URL: http://codereview.chromium.org/7291 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3337 0039d316-1c4b-4281-b951-d872f2087c98
* The Schannel considers some cipher suites (e.g., thewtc@google.com2008-10-132-0/+6
| | | | | | | | | | | | | | AES cipher suites) to be TLS only, and won't allow them to be used in SSL 3.0. If an SSL 3.0 server picks such a cipher suite, we need to handle it as if it were TLS intolerant by turning off TLS and retrying. R=darin BUG=3203,3001 Review URL: http://codereview.chromium.org/7242 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3295 0039d316-1c4b-4281-b951-d872f2087c98
* Remove WatchObject calls from FileInputStream.rvargas@google.com2008-10-101-22/+20
| | | | | | Review URL: http://codereview.chromium.org/6030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3258 0039d316-1c4b-4281-b951-d872f2087c98
* Enable AddTrust External CA Root for EV. The patch iswtc@google.com2008-10-101-0/+6
| | | | | | | | | | | contributed by Rob Stradling <rob@comodo.com> of Comodo CA Limited. R=ian BUG=2170 Review URL: http://codereview.chromium.org/3173 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3242 0039d316-1c4b-4281-b951-d872f2087c98
* Optimize the mime sniffer based on UMA data and move closer to the HTML 5 spec.abarth@chromium.org2008-10-092-75/+30
| | | | | | | | | | | | | | Removed over 50% of the heuristics while returning the same result 99.996% of the time. Each heuristic we remove reduces the attack surface that honest sites have to worry about when the serve third-party content. (with typo fix this time) R=darin git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3082 0039d316-1c4b-4281-b951-d872f2087c98
* - Add auth integration tests to http_network_transaction_unitttest.ccericroman@google.com2008-10-081-0/+4
| | | | | | | | - Add unique error code for when origin server returns 407. Review URL: http://codereview.chromium.org/4334 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3067 0039d316-1c4b-4281-b951-d872f2087c98
* Unrollback 3024 (partially rolled back in 3027).ericroman@google.com2008-10-085-73/+3
| | | | | | | | It is fixed in mac build now -- problem was bad format string to StringPrintf, where passed string instead of char*. Review URL: http://codereview.chromium.org/6359 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3064 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 3024, broke mac build.maruel@google.com2008-10-085-3/+73
| | | | | | Review URL: http://codereview.chromium.org/6351 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3027 0039d316-1c4b-4281-b951-d872f2087c98
* Pull in new googleurl@94 which includes GURL::EffectiveIntPort().ericroman@google.com2008-10-085-73/+3
| | | | | | | | Update callers to use this method. Review URL: http://codereview.chromium.org/5641 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3024 0039d316-1c4b-4281-b951-d872f2087c98
* Use the new HTTP stack by default in the net module'swtc@google.com2008-10-081-0/+2
| | | | | | | | | | | | | | | | tests, but continue to use WinHTTP by default in the test shell and chrome. The mapping of CRYPT_E_NO_REVOCATION_CHECK to ERR_CERT_NO_REVOCATION_MECHANISM (a certificate error code) is necessary to make the HTTPSTestServer's start and shutdown GET commands work. (The TestDelegate ignores all certificate errors.) R=darin Review URL: http://codereview.chromium.org/6472 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3022 0039d316-1c4b-4281-b951-d872f2087c98
* Handle TLS-intolerant servers by retrying with TLS 1.0wtc@google.com2008-10-086-15/+54
| | | | | | | | | | turned off. R=darin BUG=3001 Review URL: http://codereview.chromium.org/5617 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3017 0039d316-1c4b-4281-b951-d872f2087c98
* Rever 2997 since it caused UI and unit tests failure.maruel@google.com2008-10-082-30/+75
| | | | | | Review URL: http://codereview.chromium.org/6583 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3007 0039d316-1c4b-4281-b951-d872f2087c98
* Optimize the mime sniffer based on UMA data and move closer to the HTML 5 spec.darin@chromium.org2008-10-082-75/+30
| | | | | | | | | | | | | | Removed over 50% of the heuristics while returning the same result 99.996% of the time. Each heuristic we remove reduces the attack surface that honest sites have to worry about when the serve third-party content. Patch by Adam Barth R=darin git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2997 0039d316-1c4b-4281-b951-d872f2087c98
* - Cleanup usage, EnsureWinsockInit is now the only method of initializing.deanm@chromium.org2008-10-062-42/+35
| | | | | | | - Work around buggy third party hooks that can overwrite LastErrorValue during delay load binding. Review URL: http://codereview.chromium.org/6483 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2877 0039d316-1c4b-4281-b951-d872f2087c98
* Add Posix sync only support to FileInputStream.deanm@chromium.org2008-10-062-18/+106
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2875 0039d316-1c4b-4281-b951-d872f2087c98
* Move all callers to EnsureWinsockInit, and away from using WinsockInit ↵deanm@chromium.org2008-10-061-2/+1
| | | | | | | | instances. Review URL: http://codereview.chromium.org/6486 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2874 0039d316-1c4b-4281-b951-d872f2087c98
* Get open-vcdiff building on Linux and Mac (in SCons) usingsgk@google.com2008-09-301-9/+0
| | | | | | | | | | | | | | | | | captured values for generating a config.h file. Builds base/sdch_{filter,manager}.cc on all platforms and links the 'sdch' library. Add sdch to the SCons configuration loaded on Mac and Linux. Removes platform #ifs in net/base/filter.cc initialization code (reverting r2740). B=2662 Review URL: http://codereview.chromium.org/5204 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2710 0039d316-1c4b-4281-b951-d872f2087c98
* Transition to pulling open-vcdiff rather than using a private snapshot pulljar@google.com2008-09-301-1/+1
| | | | | | | | | | | | | | I can't include all the svn deletions (all of sdch/open_vcdiff/*) in this change list, as it will break reitveld. I'll do them piecemeal after a get an LGTM. Also, by temporarilly leaving in the old subtree, I can support mac until the move to use this new sub-tree. r=nsylvain,sgk Review URL: http://codereview.chromium.org/5402 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2709 0039d316-1c4b-4281-b951-d872f2087c98
* Define FileInputStream and use it to make UpdateDataStream and ↵darin@google.com2008-09-297-73/+622
| | | | | | | | | | | | URLRequestFileJob portable. file_input_stream_posix.cc is not implemented in this CL. That is saved for a follow-up. R=mark Review URL: http://codereview.chromium.org/4101 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2673 0039d316-1c4b-4281-b951-d872f2087c98
* Update unit test to check EV functionality (Windows-only for now).avi@google.com2008-09-291-7/+184
| | | | | | Review URL: http://codereview.chromium.org/4086 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2671 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid using of interlocked increment to facilitate porting.jar@google.com2008-09-281-4/+1
| | | | | | | | | | | | The code did not end up needing the use of interlocked operations. All the initialization is called on one thread (the main thread). bug=1311434 r=deanm Review URL: http://codereview.chromium.org/4076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2665 0039d316-1c4b-4281-b951-d872f2087c98
* Initial stab at http authentication (basic + digest) in new http stack.ericroman@google.com2008-09-273-0/+55
| | | | | | | | | | | | | | | | | | General design: - class HttpAuth -- utility class for http-auth logic. - class HttpAuth::ChallengeTokenizer -- parsing of www-Authenticate headers. - class HttpAuthHandler -- base class for authentication schemes (inspired by nsIHttpAuthenticator) - class HttpAuthHandlerBasic : HttpAuthHandler -- logic for basic auth. - class HttpAuthHandlerDigest : HttpAuthHandler -- logic for digest auth. - The auth integration in HttpNetworkTransaction mimics that of HttpTransactionWinHttp: + HttpNetworkTransaction::ApplyAuth() -- set the authorization headers. + HttpNetworkTransaction::PopulateAuthChallenge() -- process the challenges. BUG=2346 Review URL: http://codereview.chromium.org/4063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2658 0039d316-1c4b-4281-b951-d872f2087c98
* Use open-vcdiff for sdch compression on the Macmark@chromium.org2008-09-263-9/+11
| | | | | | Review URL: http://codereview.chromium.org/4096 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2628 0039d316-1c4b-4281-b951-d872f2087c98