| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(1) Extract HostResolver to an interface.
The existing concrete implementation is now named HostResolverImpl. This makes it possible to create mocks with more complex behavior (i.e. choose via rules if response will be sync vs async).
(2) Transform HostMapper into HostResolverProc.
Conceptually HostResolverProc maps a hostname to a socket address, whereas HostMapper mapped a hostname to another hostname (so you were still at the mercy of the system's host resolver). With HostResolverProc you can specify the exact AddressList, making it possible to run tests requiring IPv6 socketaddrs on systems (like WinXP) that don't actually support it.
(3) Add a MockHostResolver implementation of HostResolver.
This replaces the [ScopedHostMapper + RuleBasedHostMapper + HostResolver] combo. It is less clunky and a bit more expressive.
BUG=http://crbug.com/16452
R=willchan
TEST=existing
Review URL: http://codereview.chromium.org/149511
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20795 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This way it can be properly shared between the url request contexts, and the dns prefetcher, and dns observer.
BUG=http://crbug.com/14664
TEST=existing unit tests.
Review URL: http://codereview.chromium.org/149053
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19451 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/147242
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19432 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This way it can be properly shared between the url request contexts, and the dns prefetcher, and dns observer.
BUG=http://crbug.com/14664
TEST=existing unit tests.
Review URL: http://codereview.chromium.org/149053
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19425 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
The original code review that this belongs to is: <http://codereview.chromium.org/125171>. (BUG=14138)
The original was backed out because of a valgrind linux error (BUG=14218), so I relanded it in smaller chunks to see at which point problem happens.
This differs from the original, in that I have changed the unit-test to no longer use ScopedMapper + WaitingMapper, which I believe was the source of a race.
Review URL: http://codereview.chromium.org/125232
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18587 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
notification of cancellation during destruction).
The original code review that this belongs to is:<http://codereview.chromium.org/125171>. (BUG=14138)
The original was backed out because of a valgrind linux error (BUG=14218), so I am now re-landing in smaller chunks to identify where the problem resides
Review URL: http://codereview.chromium.org/126254
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18583 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This particular subset should be a no-op: It adds an unused interface method (OnResolutionCancelled), and an unused test (CancelObserver), and lastly renames Cancel --> MarkAsCanceled().
The code in "dns_global.cc" is also unused since it is unreachable.
The original code review that this belongs to is:<http://codereview.chromium.org/125171>. (BUG=14138)
The original was backed out because of a valgrind linux error (BUG=14218), so I am now re-landing in smaller chunks to identify where the problem resides.
Review URL: http://codereview.chromium.org/126253
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18581 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The original code review for this change was:
<http://codereview.chromium.org/125171>
The particular subset is the third bullet point in original description:
* Fix a bug where completion notification wasn't being sent when the response
was cached. (BUG=14188)
Note that the original was rolled-back because something was upsetting valgrind (BUG=14218).
Review URL: http://codereview.chromium.org/125227
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18579 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The original code review for this change was:
<http://codereview.chromium.org/125171>
It is being reverted because it seems to have caused a valgrind on linux regression:
<http://crbug.com14218>
BUG=14218,14138,14188
Review URL: http://codereview.chromium.org/126248
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18574 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
observers can tell when a request has been cancelled.
* Use OnCancelResolution() in DNS prefetcher observer, to avoid leaking entries in the |resolution| table when requests are cancelled. (BUG=14138)
* Fix a bug where completion notification wasn't being sent when the response was cached. (BUG=14188)
BUG=14138,14188
TEST=HostResolverTest.CancellationObserver, HostResolverTest.Observer
Review URL: http://codereview.chromium.org/125171
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18520 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
TEST=this is striclty a refactoring; just needs to compile and pass existing tests.
BUG=14056
Review URL: http://codereview.chromium.org/126110
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18372 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
prefetcher, into HostResolver. This has the advantage that consumers of DNS no longer have to remember to call "DidFinishDnsResolutionWithStatus()" followed by "DidStartDnsResolution()" in order for the prefetcher to observe the resolution. Instead it just happens automatically, and subscribers register via HostResolver::AddObserver() on a particular resolver instance.
* To accomodate the prefetcher's observer, HostResolver::Resolve() needs an additional "referrer" parameter. This is slightly awkward since "referrer" has nothing to do with the actual resolve request. To simplify plumbing through this and other optional parameters, Resolve() was changed to take a "RequestInfo&" parameter in place of say {hostname, port, flags}.
* Added an option to HostResolver::Resolve() for disallowing cached responses (RequestInfo::allow_cached_response). This will be used when you refresh a page, to bypass the host cache. The code to do this has been added to HttpNetworkTransaction, but is commented out pending an appropriate unit-test to verify it.
BUG=14056
Review URL: http://codereview.chromium.org/125107
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18371 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add a 1 minute cache for host resolves.
* Refactor HostResolver to handle multiple requests.
* Make HostResolver a dependency of URLRequestContext. operate the HostResolver
in async mode for proxy resolver (bridging to IO thread).
TEST=unittests
BUG=13163
Review URL: http://codereview.chromium.org/118100
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18236 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- When testing IPv4 addresses, use a pass-through
HostMapper. The previous version wasn't actually testing
anything, because there's a default HostMapper which maps
all unknown inputs to 127.0.0.1
- Make sure bare IPv6 literals can be resolved. This was
going to handle [brackets], but we've decided these should
be stripped at a higher layer.
- Add an empty address test.
The patch is contributed by Paul Marks of Google.
Original review: http://codereview.chromium.org/113026
R=wtc
BUG=N/A
TEST=N/A
Review URL: http://codereview.chromium.org/113066
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15483 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=6661
Review URL: http://codereview.chromium.org/18775
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8872 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/10857
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5406 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/1839
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1896 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
with gcc 4.1, and is consistent with the way EXPECT_EQ uses NULL elsewhere in Chrome.
Review URL: http://codereview.chromium.org/267
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1813 0039d316-1c4b-4281-b951-d872f2087c98
|
|
Review URL: http://codereview.chromium.org/403
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1799 0039d316-1c4b-4281-b951-d872f2087c98
|