summaryrefslogtreecommitdiffstats
path: root/net
Commit message (Collapse)AuthorAgeFilesLines
* net: move socket files from net/base to net/socketphajdan.jr@chromium.org2013-04-0915-42/+42
| | | | | | | | BUG=70818 Review URL: https://codereview.chromium.org/13812005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192982 0039d316-1c4b-4281-b951-d872f2087c98
* [SPDY] Refactor SpdySession's write queueakalin@chromium.org2013-04-0914-469/+762
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is in preparation for replacing the various IOBuffers used for reads/writes with a single SpdyBuffer class. Replace the priority queue of SpdyIOBufferProducers with a SpdyWriteQueue object, which is an an array of FIFO queues binned by priority. The priority queue was looking only at priority and so was not guaranteeing FIFO behavior among producers with the same priority. Remove the frame queue in SpdyStream and instead have it use the session's write queue directly. Remove unused fields from SpdyIOBuffer and clean it up. Propagate and handle errors from SpdyCredentialBuilder::Build. Rename SpdyIOBufferProducer to SpdyFrameProducer, have it return a SpdyFrame, clean up its interface, and move the stream-activating logic out of it. Replace uses of std::list with std::deque. Steamline logic in SpdySession that deals with the write queue. Convert some raw pointers to scoped_ptr<>. BUG=176582 Review URL: https://codereview.chromium.org/13009012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192975 0039d316-1c4b-4281-b951-d872f2087c98
* Change the signature of SpdyFramer::SerializeNameValueBlockWithoutCompressionakalin@chromium.org2013-04-082-18/+19
| | | | | | | | This lands server change 44867738. Review URL: https://codereview.chromium.org/13529032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192945 0039d316-1c4b-4281-b951-d872f2087c98
* Merge QUIC StrikeRegister code to chromium.rtenneti@chromium.org2013-04-084-0/+886
| | | | | | | | R=rch@chromium.org, jar@chromium.org Review URL: https://codereview.chromium.org/13520010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192939 0039d316-1c4b-4281-b951-d872f2087c98
* Fix indentation in spdy_framer_test.ccakalin@chromium.org2013-04-081-2/+1
| | | | | | | | This lands server change 44799980. Review URL: https://codereview.chromium.org/13454035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192933 0039d316-1c4b-4281-b951-d872f2087c98
* Moving net/tools/quic code to net::tools namspace alyssar@google.com2013-04-0838-14/+98
| | | | | | | | | | | This will prevent naming conflicts with similar classes in net/quic BUG= Review URL: https://chromiumcodereview.appspot.com/13741012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192922 0039d316-1c4b-4281-b951-d872f2087c98
* Add SpdyPriorityForest classakalin@chromium.org2013-04-083-0/+811
| | | | | | | | This lands server change 44685956. Review URL: https://codereview.chromium.org/13601029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192910 0039d316-1c4b-4281-b951-d872f2087c98
* Adding disk_cache::Entry implementation.agayev@chromium.org2013-04-088-9/+458
| | | | | | | | | | BUG=157187 TEST=net_unittests --gtest_filter="FlashCacheTest.*" --gtest_repeat=10 --shuffle Review URL: https://chromiumcodereview.appspot.com/12847012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192896 0039d316-1c4b-4281-b951-d872f2087c98
* Add helper function for SPDY 4akalin@chromium.org2013-04-082-0/+10
| | | | | | | | This lands server change 44568667. Review URL: https://codereview.chromium.org/13598037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192885 0039d316-1c4b-4281-b951-d872f2087c98
* Implement FTP auth through proxyphajdan.jr@chromium.org2013-04-085-51/+275
| | | | | | | | BUG=11227 Review URL: https://codereview.chromium.org/12582012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192872 0039d316-1c4b-4281-b951-d872f2087c98
* Implementing EvictedDomainCookieCounter to keep statistics on cookie ↵huangs@chromium.org2013-04-082-2/+2
| | | | | | | | | | eviction and reinstatement. BUG=225765 Review URL: https://chromiumcodereview.appspot.com/12805010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192866 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a load timing bug in which proxy resolution times couldmmenke@chromium.org2013-04-086-22/+421
| | | | | | | | | | | | | | | be before request start in the case of reusing a SPDY session (Or HTTP pipeline, though HTTP pipelining is disabled by default). Also move logic to fix up LoadTimingInfo into net/, to reduce chrome's dependency on internal net/ details. BUG=225935 R=eroman@chromium.org Review URL: https://codereview.chromium.org/13653003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192863 0039d316-1c4b-4281-b951-d872f2087c98
* FTP: Make ICU resource loading fail loadly (CHECK)phajdan.jr@chromium.org2013-04-081-0/+18
| | | | | | | | | | | This way we'll be able to recognize issues like the linked bug faster in the future (user-submitted bug reports are often incomplete, while crash reports are a sure indication of a problem) BUG=177428 Review URL: https://codereview.chromium.org/13743004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192841 0039d316-1c4b-4281-b951-d872f2087c98
* net: Disable CertDatabaseNSSTest.TrustIntermediateCa{2,3} on Linuxhashimoto@chromium.org2013-04-081-2/+16
| | | | | | | | | BUG=224612 TBR=rsleevi@chromium.org Review URL: https://codereview.chromium.org/13768004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192785 0039d316-1c4b-4281-b951-d872f2087c98
* Rewrite scoped_array<T> to scoped_ptr<T[]> in net, Linux edition.dcheng@chromium.org2013-04-0723-38/+38
| | | | | | | | | | This changelist was automatically generated using a clang tool. BUG=171111 Review URL: https://codereview.chromium.org/13612004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192764 0039d316-1c4b-4281-b951-d872f2087c98
* Support the AES GCM encrypter and decrypter for NSS 3.14 and later.rtenneti@chromium.org2013-04-066-47/+499
| | | | | | | | | | | | | | If we are using system NSS libraries, assume PK11_EncryptWithSymKey and PK11_DecryptWithSymKey are unavailable and emulate CKM_AES_GCM using CKM_AES_CTR and our GaloisHash class. R=agl@chromium.org,rsleevi@chromium.org,wtc@chromium.org BUG=none TEST=net_unittests Review URL: https://chromiumcodereview.appspot.com/13193004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192733 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up comments and code for pin validation.palmer@chromium.org2013-04-051-11/+19
| | | | | | | | | | | | | | It should be crystal clear when, and why, pin validation is and is not performed. TEST=net_unittests; with an OFFICIAL_BUILD: can still connect to pinned sites, and https://pinningtest.appspot.com fails with net::ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN. Review URL: https://chromiumcodereview.appspot.com/13466020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192654 0039d316-1c4b-4281-b951-d872f2087c98
* Make csharp@ and maruel@ owners of .isolate filescsharp@chromium.org2013-04-051-0/+3
| | | | | | | | | | | NOTRY=true R=maruel@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/13640006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192635 0039d316-1c4b-4281-b951-d872f2087c98
* Test cache creation retry via public interface only.pasko@google.com2013-04-055-63/+69
| | | | | | | | | | | | | | | | | | | | | | | This is a cleanup after: https://codereview.chromium.org/12794003/ One test for backend force retry is enough, the other test (CreateBackend_MissingFile) is converted to be backend implementation specific. The CreateCacheViaPublicInterface() is called only once, but to eliminate it there is a need to make the cache_thread_ protected. Also, I am sure the name is not ideal, please suggest another. The New Eviction allows not to be very strict about version comparison as stored in the files on disk, this allows creating the BackendImpl with no flags and then being able to pass the common integrity check. BUG=173384 Review URL: https://chromiumcodereview.appspot.com/13517004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192558 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up scoped_array<T> construction from NULL.dcheng@chromium.org2013-04-051-1/+1
| | | | | | | | | | This won't be allowed by unique_ptr<T> or scoped_ptr<T>. BUG=171118 Review URL: https://codereview.chromium.org/13710002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192518 0039d316-1c4b-4281-b951-d872f2087c98
* net: also fix crbug.com/226067 for OpenSSL.agl@chromium.org2013-04-051-1/+1
| | | | | | | | | | The SHA-256 hash was being put into the SHA-1 storage. BUG=226067,226738 Review URL: https://chromiumcodereview.appspot.com/13514006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192462 0039d316-1c4b-4281-b951-d872f2087c98
* Update all .isolate files to the new format.maruel@chromium.org2013-04-041-23/+26
| | | | | | | | | | | | | | | | Autogenerated with: for a in $(git ls-files | grep \\.isolate); do tools/swarm_client/isolate_merge.py $a -o $a; done content/content_browsertests.isolate failed to be converted automatically. NOTRY=true TBR=csharp@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/13654003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192411 0039d316-1c4b-4281-b951-d872f2087c98
* Recover the index from enumerating the entry files on disk.felipeg@chromium.org2013-04-042-10/+31
| | | | | | | | | BUG=173393 Review URL: https://chromiumcodereview.appspot.com/13546002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192337 0039d316-1c4b-4281-b951-d872f2087c98
* net: Replace URLFetcherFileWriter's implementation with FileStreamhashimoto@chromium.org2013-04-043-143/+88
| | | | | | | | | | BUG=126753 TEST=net_unittests Review URL: https://chromiumcodereview.appspot.com/12334118 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192322 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 181390 "SPDY - implement greedy approach to read all the ..."rtenneti@chromium.org2013-04-047-937/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert 181637 "SPDY - Small bug fix for user after free. Will ..." Revert 182012 "SPDY - Added unit tests for use after free of ..." > SPDY - implement greedy approach to read all the data and process it > from the ClientSocket until we block. > > This is more of a first cut at the greedy approach to see if it > improves the performance on the mobile. > > spdy_session_test_util.* files have the common code between > SpdySessionSpd2Test and SpdySessionSpd3Test. Will move other common > code in a separate CL. Created this file to reduce errors and > to avoid duplicating of code. > > R=willchan > BUG=166958 > TEST=network unittests > > Review URL: https://chromiumcodereview.appspot.com/11644088 > SPDY - Small bug fix for user after free. Will revert the > change asap. > > The change adds a scoped_refptr to SpdySession in DoLoop > to clean up the state and to finish pending reads, in case > SpdyFramer receives GOAway and closes all streams. > > DoReadComplete was holding the last reference before and > DoLoop was accessing the object after DoReadComplete deleted > the object at the end of the function. > > R=willchan@chromium.org > BUG=175069 > TEST=network unit tests > Review URL: https://codereview.chromium.org/12212102 > SPDY - Added unit tests for use after free of SpdySession > and unit test to test yielding + async during Read. > > A test that crashes when scoped_refptr to SpdySession deleted > from DoLoop. > > Added the following test per rch to test interactions of > yielding + async during Read. > > Do the following MockReads and verify all the data is consumed > and SpdySession has yielded during Read. > SYNCHRONOUS 8K > SYNCHRONOUS 8K > SYNCHRONOUS 8K > SYNCHRONOUS 2K > ASYNC 8K > SYNCHRONOUS 8K > SYNCHRONOUS 8K > SYNCHRONOUS 8K > SYNCHRONOUS 2K > > R=rch@chromium.org > BUG=175574,166958 > TEST=net unit tests > > Review URL: https://chromiumcodereview.appspot.com/12207122 TBR=rtenneti@chromium.org, rch@chromium.org Review URL: https://chromiumcodereview.appspot.com/13608003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192313 0039d316-1c4b-4281-b951-d872f2087c98
* net: fix SHA-256 hashes on Windows.agl@chromium.org2013-04-043-3/+28
| | | | | | | | | BUG=226067 Review URL: https://chromiumcodereview.appspot.com/13527008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192288 0039d316-1c4b-4281-b951-d872f2087c98
* net: Map EISDIR to ERR_ACCESS_DENIED in net_errors_posix.cchashimoto@chromium.org2013-04-041-2/+2
| | | | | | | | | | | | | | | | base/platform_file_posix.cc maps EISDIR to base::PLATFORM_FILE_ERROR_ACCESS_DENIED, and net_errors.cc maps base::PLATFORM_FILE_ERROR_ACCESS_DENIED to ERR_ACCESS_DENIED. So net_errors_posix.cc should map EISDIR to ERR_ACCESS_DENIED too. Windows implementation also maps the platform error to ERR_ACCESS_DENIED when trying to write data to a path pointing a directory. BUG=None TEST=git try Review URL: https://chromiumcodereview.appspot.com/13434002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192266 0039d316-1c4b-4281-b951-d872f2087c98
* Move version-agnostic functions from spdy_test_util_spdy[23] to _common.ttuttle@chromium.org2013-04-046-508/+258
| | | | | | | | | | | | | There are some functions in net/spdy/spdy_test_util_spdy[23] that are identical across the two files. Move them into net/spdy/spdy_test_util_common and include spdy_test_util_common.h in _spdy[23].h so tests can see them. BUG=226192 Review URL: https://chromiumcodereview.appspot.com/13582002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192262 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 192124 "Disable org.chromium.net.X509UtilTest#testEkusVer..."frankf@chromium.org2013-04-031-7/+1
| | | | | | | | | | | | | | | | | | > Disable org.chromium.net.X509UtilTest#testEkusVerified > > This test is crashing on Clankium ToT, because required the certificates > are not being pushed to the device by the Java tests. > > BUG=226058 > > > Review URL: https://chromiumcodereview.appspot.com/13530004 TBR=aberent@chromium.org BUG=226058 Review URL: https://codereview.chromium.org/13593005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192175 0039d316-1c4b-4281-b951-d872f2087c98
* Disable org.chromium.net.X509UtilTest#testEkusVerifiedaberent@chromium.org2013-04-031-1/+7
| | | | | | | | | | | | This test is crashing on Clankium ToT, because required the certificates are not being pushed to the device by the Java tests. BUG=226058 Review URL: https://chromiumcodereview.appspot.com/13530004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192124 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the simple cache backend enabling.pasko@google.com2013-04-032-2/+10
| | | | | | | | | | | | The simple backend was created but then the pointer to it was overwritten to NULL. BUG=173384 Review URL: https://chromiumcodereview.appspot.com/13539002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192123 0039d316-1c4b-4281-b951-d872f2087c98
* Split the power monitoring feature from SystemMonitorhongbo.min@intel.com2013-04-033-13/+16
| | | | | | | | | | | | | | | | | | The SystemMonitor is a mixed monitor which not only monitors the power state changes but also the devices changes. This patch is to separate the power monitor from SystemMonitor as a new class PowerMonitor which is dedicated to monitor power state. The next step is to seek a opportunity to refactor SystemMonitor as something like DeviceMonitor. BUG=149059 TEST=base_unittests --gtest_filter=PowerMonitorTest.* Review URL: https://chromiumcodereview.appspot.com/10959020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192114 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up SocketStream send operation by utilizing DrainableIOBuffer.tyoshino@chromium.org2013-04-033-88/+170
| | | | | | | | | | | | | | | - Remove unnecessary variables, write_buf_, write_buf_offset_ and write_buf_size_, and utilize the DrainableIOBuffer |current_write_buf_| to do what they were doing. - Use waiting_for_write_completion_ instead of current_write_buf_ to remember whether Write operation is ongoing or not. - Make DidSendData void and return OK outside it. - In SendData(), now max_pending_send_allowed_ check is done even if current_write_buf_ (formerly write_buf_) is NULL - Rewrite comments. TEST=net_unittests --gtest_filter='SocketStreamTest.*' Review URL: https://chromiumcodereview.appspot.com/12742018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192080 0039d316-1c4b-4281-b951-d872f2087c98
* Handle extendedKeyUsage field in end-entity certs.palmer@chromium.org2013-04-038-0/+532
| | | | | | | | | | The equivalent patch in Android is pending, but we would like to patch Chrome as well since Chrome updates faster than the base Android system. BUG=167607 Review URL: https://chromiumcodereview.appspot.com/11778008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191962 0039d316-1c4b-4281-b951-d872f2087c98
* [Android] Fix remaining linker errors for components buildyfriedman@chromium.org2013-04-032-2/+2
| | | | | | | | | | | Miscellaneous missing dependencies and a few more exports. BUG=158821 Review URL: https://chromiumcodereview.appspot.com/12988003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191944 0039d316-1c4b-4281-b951-d872f2087c98
* Add a CRC check to SimpleIndex file.felipeg@chromium.org2013-04-023-11/+122
| | | | | | | | | | This is the first step to be able to detect and recover from index file errors. BUG=173393 Review URL: https://chromiumcodereview.appspot.com/13468003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191934 0039d316-1c4b-4281-b951-d872f2087c98
* Remove bogus logging from crypto_handshake_test.ccrch@chromium.org2013-04-021-2/+0
| | | | | | | | BUG=225671 Review URL: https://chromiumcodereview.appspot.com/13473008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191884 0039d316-1c4b-4281-b951-d872f2087c98
* net: move openssl_client_key_store from net/base to net/sslphajdan.jr@chromium.org2013-04-026-13/+13
| | | | | | | | | | This is a follow-up to https://codereview.chromium.org/13006020/ BUG=70818 Review URL: https://codereview.chromium.org/13351006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191853 0039d316-1c4b-4281-b951-d872f2087c98
* Initialize the simple cache backend at runtime. pasko@google.com2013-04-0213-382/+355
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We will need to choose the backend at runtime for A/B testing. This change is the first step towards backend comparisons: it moves the logic of choosing among cache backends to a single point (cache_creator.cc) and makes it logically separate from BackendImpl. Next step would be to inject performance-analyzer backend into this cache backend choice logic. The analyzer is going to be under a compile-time flag. With this change the Simple Cache Backend operation gets enabled when the "SimpleCacheTrial" experiment is set. Cache Initialization. The Simple Cache Backend now shares the common initialization/cleanup code. So it can delete inconsistent cache, cache of a different version etc asynchronously. It is just a positive side-effect of moving the backend choice to a single point. The CacheCreator with almost no change. To see the difference: shell> out/Debug/chrome --enable-logging=stderr --v=1 \ --user-data-dir=/tmp/unique --use-simple-cache-backend=on \ http://url 2>&1 | grep "Simple Cache" BUG=173390, 173384 TBR=maruel Review URL: https://chromiumcodereview.appspot.com/12794003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191830 0039d316-1c4b-4281-b951-d872f2087c98
* Don't expire certs used as channel IDs.thaidn@google.com2013-04-023-53/+37
| | | | | | | | BUG=224999 Review URL: https://chromiumcodereview.appspot.com/13130004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191775 0039d316-1c4b-4281-b951-d872f2087c98
* Adding preloaded pin and HSTS for Chrome Dev Tools.palmer@chromium.org2013-04-023-1/+3
| | | | | | | | New host that must be pinned and HTTPS: chrome-devtools-frontend.appspot.com. Review URL: https://codereview.chromium.org/13390007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191719 0039d316-1c4b-4281-b951-d872f2087c98
* Chromium style checker cleanuprsleevi@chromium.org2013-04-012-5/+5
| | | | | | | | | | | | Automated clean up of style checker errors that were missed due to the plugin not being executed on implementation files. BUG=115047 Review URL: https://chromiumcodereview.appspot.com/13191010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191697 0039d316-1c4b-4281-b951-d872f2087c98
* Switch the QUIC alternate protocol string from "quic/1" to "quic", since ↵rch@chromium.org2013-04-016-9/+9
| | | | | | | | QUIC can do its own version negotiation. Review URL: https://chromiumcodereview.appspot.com/13190010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191676 0039d316-1c4b-4281-b951-d872f2087c98
* Attempt to fix chromium.chrome linux compile.thakis@chromium.org2013-03-311-2/+2
| | | | | | | | | BUG=none TBR=alyssar@google.com Review URL: https://codereview.chromium.org/13394002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191581 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for P-256 key exchange in crypto handshake.rtenneti@chromium.org2013-03-3179-736/+1662
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge internal change: 44173744 Add default return to avoid crashing when we get an unknown error code from the peer. Merge internal change: 44160057 Fix incorrect DCHECK while serializing version negotiation packet. Merge internal change: 44156166 Reorder the addends in GetPacketHeaderSize to match the order of the public header fields. Merge internal change: 44153020 Changing retransmission and retransmittable data boolean flags to enums. Merge internal change: 44071662 Remove methods from QuicTime for converting to/from microseconds and milliseconds since the epoch for QuicTime is unspecified. (It wraps TimeTicks in Chromium). Merge internal change: 44069965 Change InterArrival feedback message to traffic in delta since the "start" of the connection instead of a delta since the epoch. One step closer to being able to remove QuicTime::To/FromMicroseconds since those methods don't "do the right thing". Merge internal change: 44037996 Changing kForce into an enum. Merge internal change: 44024887 Cleanups from landing P-256 key exchange in Chromium. Merge internal change: 44023801 Fix for std::vector in QuicPacketPublicHeader's memory corruption by memset. Merge internal change: 44022862 Merging cleanup changes from chromium. Merge internal change: 44009665 Plug in the new decrypter and encrypter after the new keys have been derived. This is a first cut, as some details on changing the encryption keys still need to be worked out. Our interim solution is permissive trial decryption, which allows the peer to encrypt with the wrong key, either using the new key too early or using the null key for too long. The latter will leak confidential information, so we err on the side of using the new key too early. WARNING: the interim solution protects against eavesdroppers, but is vulberable to active attackers. Merge internal change: 44006658 Start tracking server and client stream resets and export them via varz. Merge internal change: 43971847 Pull out RstStreamFrame error code from QuicErrorCode so that they don't appear in the tracked ConnectionClose error map. This will also help in tracking RstStream error codes separately. Merge internal change: 43968620 Adding Client/Server logging to all LOGS/DLOGs Not bothering with VLOGs/DVLOGS unless it's requested. Merge internal change: 43948596 crypto: step 5. This change implements source-address tokens at the server and has the client echo them. Source address tokens are opaque (to the client) bytestrings that prove ownership of an IP address. In order to prevent amplification attacks, the server demands that the client have a valid source address token for the IP address that it's claiming to come from and that the token is reasonably recent. Since we already have it implemented, this code uses AES-GCM to encrypt and authenticate the tokens with a fixed, dummy secret (for now). In the future, the secret will be derived from the primary, private key in the same way that SessionTicket keys used to be. The QuicEncrypter/Decrypter code was written to be quite specific to the task of encrypting and decrypting packets and, as part of this, it exposed only 64 bits of the AEAD nonce. Since all GFEs will share the same token secret, and they'll all create tokens with random nonces, that runs an unacceptably high risk of an attacker obtaining two tokens with the same nonce. Thus this change also reworks the QuicEncrypter/Decrypter so that the full nonce is exposed and thus we can use 96-bit nonces. That's still not completely wonderful but, at 10Mpps an attacker would still take a year to obtain a pair of nonces, so it's good enough for a while at least. Merge internal change: 43893806 R=rch@chromium.org Review URL: https://chromiumcodereview.appspot.com/13282004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191569 0039d316-1c4b-4281-b951-d872f2087c98
* Move MessageLoop to base namespace.brettw@chromium.org2013-03-315-17/+19
| | | | | | | | | | This adds a "using" to the header to avoid having to update everything at once. However, all forward declares and the locations that use the forward declares need to be updated (since they don't see the using in message_loop.h). BUG= Review URL: https://codereview.chromium.org/13243003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191566 0039d316-1c4b-4281-b951-d872f2087c98
* PK11_DecryptWithSymKey and PK11_EncryptWithSymKey have beenwtc@chromium.org2013-03-302-21/+16
| | | | | | | | | | | | | | | renamed PK11_Decrypt and PK11_Encrypt. Update NSS to r191424 to pick up the function renaming. The underlying CL is https://codereview.chromium.org/13327005/ R=rsleevi@chromium.org,rtenneti@chromium.org BUG=none TEST=net_unittests Review URL: https://chromiumcodereview.appspot.com/13340002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191554 0039d316-1c4b-4281-b951-d872f2087c98
* Adding an end to end test for QUIC, and fixing the bugs it turned up.alyssar@google.com2013-03-3013-31/+1120
| | | | | | Review URL: https://chromiumcodereview.appspot.com/13004022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191529 0039d316-1c4b-4281-b951-d872f2087c98
* Http cache: disable the infinite cache simulation and perform cleanup of ↵rvargas@chromium.org2013-03-308-1634/+16
| | | | | | | | | | | local data. BUG=147383 TEST=none Review URL: https://chromiumcodereview.appspot.com/13000003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191528 0039d316-1c4b-4281-b951-d872f2087c98
* Recognize new proxy settings format in net-internals.eroman@chromium.org2013-03-303-2/+17
| | | | | | | | | BUG=224294 Review URL: https://chromiumcodereview.appspot.com/12681031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191521 0039d316-1c4b-4281-b951-d872f2087c98