summaryrefslogtreecommitdiffstats
path: root/chrome/browser/privacy_blacklist
Commit message (Collapse)AuthorAgeFilesLines
* Remove abonded privacy blacklist implementation.jochen@chromium.org2010-07-0211-1262/+0
| | | | | | | | | BUG=16932 TEST=compiles Review URL: http://codereview.chromium.org/2862041 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51525 0039d316-1c4b-4281-b951-d872f2087c98
* Working towards -Wextrathomasvl@chromium.org2010-06-161-1/+1
| | | | | | | | | | | | - Make loops use {} instead of a ';' to make it clear there is no body to the loop. - Remove checks of unsigned values for <0 - coordinates should be CGFloat, not NSUInteger. BUG=34160 TEST=none Review URL: http://codereview.chromium.org/2865003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49939 0039d316-1c4b-4281-b951-d872f2087c98
* Remove a ResourceBundle::GetDataResource and convert people totony@chromium.org2010-06-151-1/+1
| | | | | | | | | | the StringPiece version. In most cases, I didn't bother trying to make the calling code more efficient since nothing seems to be in time sensitive code. Review URL: http://codereview.chromium.org/2827001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49766 0039d316-1c4b-4281-b951-d872f2087c98
* Support multiple PrefStoresmnissler@chromium.org2010-06-071-4/+10
| | | | | | | | | | | | Add interface for multi_pref_store_manager. BUG=40259 TEST=Unittests in pref_service_unittest.cc, pref_value_store_unittest.cc Review URL: http://codereview.chromium.org/1957005 Patch from Markus Heintz <markusheintz@google.com>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49048 0039d316-1c4b-4281-b951-d872f2087c98
* [GTTF] Add FRIEND_TEST_ALL_PREFIXES, a FRIEND_TEST replacementphajdan.jr@chromium.org2010-06-011-2/+4
| | | | | | | | | | | that works with all test prefixes (DISABLED, FLAKY, FAILS). TEST=none BUG=44549 Review URL: http://codereview.chromium.org/2439001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48634 0039d316-1c4b-4281-b951-d872f2087c98
* Removed dependency on ChromeThread from JsonPrefStore and moved ↵sanjeevr@chromium.org2010-05-211-2/+6
| | | | | | | | | | | JsonPrefStore and PrefStore to chrome/common. This is because JsonPrefStore is needed in the service process BUG=None. TEST=Updated unit-tests Review URL: http://codereview.chromium.org/2066015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47915 0039d316-1c4b-4281-b951-d872f2087c98
* Reland "Factor out reading and writing of preferences into |PrefStore|."bauerb@chromium.org2010-04-221-1/+2
| | | | | | | | | | | | | | | | | | | The CL now applies after r45225 (Throw out preferences files that are corrupt rather than keeping them in read-only mode), which means that the changes in that commit moved to JsonPrefStore. I updated JsonPrefStoreTest.InvalidFile to test the new behavior. *** In order to implement platform-specific policies, reading and writing preferences needs to be abstracted from the |PrefService|. The interface for that is now |PrefStore|, with an implementation |JsonPrefStore|, which stores the pref data in a JSON file. There is another implementation, |DummyPrefStore|, which doesn't store any persistent preferences, and is currently used for tests. Most of the changes are for using the new interface, which is |new PrefService(new JsonPrefStore(filename))| instead of |new PrefService(filename)|. BUG=40259 TEST=PrefServiceTest.*:PrefServiceSetValueTest.*:PrefMemberTest.*:JsonPrefStoreTest.* Review URL: http://codereview.chromium.org/1717007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45309 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 45168 - Reland r45028: Factor out reading and writing of preferences ↵erikkay@chromium.org2010-04-211-2/+1
| | | | | | | | | | | | | | | | | | into |PrefStore|. In order to implement platformspecific policies, reading and writing preferences needs to be abstracted from the |PrefService|. The interface for that is now |PrefStore|, with an implementation |JsonPrefStore|, which stores the pref data in a JSON file. There is another implementation, |DummyPrefStore|, which doesn't store any persistent preferences, and is currently used for tests. Most of the changes are for using the new interface, which is |new PrefService(new JsonPrefStore(filename))| instead of |new PrefService(filename)|. BUG=40259 TEST=PrefServiceTest.*:PrefServiceSetValueTest.*:PrefMemberTest.*:JsonPrefStoreTest.* Review URL: http://codereview.chromium.org/1687001 TBR=bauerb@chromium.org Review URL: http://codereview.chromium.org/1688004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45200 0039d316-1c4b-4281-b951-d872f2087c98
* Reland r45028: Factor out reading and writing of preferences into |PrefStore|.bauerb@chromium.org2010-04-211-1/+2
| | | | | | | | | | | | | In order to implement platform-specific policies, reading and writing preferences needs to be abstracted from the |PrefService|. The interface for that is now |PrefStore|, with an implementation |JsonPrefStore|, which stores the pref data in a JSON file. There is another implementation, |DummyPrefStore|, which doesn't store any persistent preferences, and is currently used for tests. Most of the changes are for using the new interface, which is |new PrefService(new JsonPrefStore(filename))| instead of |new PrefService(filename)|. BUG=40259 TEST=PrefServiceTest.*:PrefServiceSetValueTest.*:PrefMemberTest.*:JsonPrefStoreTest.* Review URL: http://codereview.chromium.org/1687001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45168 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 45028 - Factor out reading and writing of preferences into |PrefStore|.thomasvl@chromium.org2010-04-201-2/+1
| | | | | | | | | | | | | | | | In order to implement platformspecific policies, reading and writing preferences needs to be abstracted from the |PrefService|. The interface for that is now |PrefStore|, with an implementation |JsonPrefStore|, which stores the pref data in a JSON file. There is another implementation, |DummyPrefStore|, which doesn't store any persistent preferences, and is currently used for tests. Most of the changes are for using the new interface, which is |new PrefService(new JsonPrefStore(filename))| instead of |new PrefService(filename)|. BUG=40259 TEST=PrefServiceTest.*:PrefServiceSetValueTest.*:PrefMemberTest.*:JsonPrefStoreTest.* Review URL: http://codereview.chromium.org/1523023 TBR=bauerb@chromium.org Review URL: http://codereview.chromium.org/1682001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45038 0039d316-1c4b-4281-b951-d872f2087c98
* Factor out reading and writing of preferences into |PrefStore|.bauerb@chromium.org2010-04-201-1/+2
| | | | | | | | | | | | | In order to implement platform-specific policies, reading and writing preferences needs to be abstracted from the |PrefService|. The interface for that is now |PrefStore|, with an implementation |JsonPrefStore|, which stores the pref data in a JSON file. There is another implementation, |DummyPrefStore|, which doesn't store any persistent preferences, and is currently used for tests. Most of the changes are for using the new interface, which is |new PrefService(new JsonPrefStore(filename))| instead of |new PrefService(filename)|. BUG=40259 TEST=PrefServiceTest.*:PrefServiceSetValueTest.*:PrefMemberTest.*:JsonPrefStoreTest.* Review URL: http://codereview.chromium.org/1523023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45028 0039d316-1c4b-4281-b951-d872f2087c98
* Clobber bots. TBR:bauerbjochen@chromium.org2010-02-221-1/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39595 0039d316-1c4b-4281-b951-d872f2087c98
* Move pref_{member,service} and important_file_writer from chrome/commonphajdan.jr@chromium.org2010-02-192-2/+2
| | | | | | | | | | | | | to chrome/browser. This is a part of an effort to remove bad dependency of chrome/common on chrome/browser. TEST=unit_tests and ui_tests, just moving code BUG=none Review URL: http://codereview.chromium.org/621004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39428 0039d316-1c4b-4281-b951-d872f2087c98
* Wire popup blocking UI to the new machinery and port over the user's old ↵pkasting@chromium.org2010-02-021-57/+6
| | | | | | | | | | | | | | | | whitelist. Notably, this removes the UI entirely for Mac and Linux. We need to rebuild it. This also guts the old system's testing, since most of it disappeared or changed radically. We should test the new stuff. I will file a followup bug for that. There are various tiny edge cases, like if you click the address bar icon really quickly, sometimes you'll get popups without any title yet, which makes them leave gaps in the bubble that appears. We can fix that sort of thing. The critical bit I tried to ensure was that we never try to open a dead popup or use a dead TabContents, no matter what. BUG=33314 TEST=Go visit some sites with popups and play with things Review URL: http://codereview.chromium.org/562013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37819 0039d316-1c4b-4281-b951-d872f2087c98
* Fix silly failure to actually initialize the scoped_refptrs.pkasting@chromium.org2010-01-302-1/+4
| | | | | | | | | TBR=darin BUG=none TEST=none Review URL: http://codereview.chromium.org/553162 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37601 0039d316-1c4b-4281-b951-d872f2087c98
* Didn't realize the RefCountedThreadSafe means "no more stack-allocated objects".pkasting@chromium.org2010-01-303-34/+35
| | | | | | | | | TBR=darin BUG=none TEST=none Review URL: http://codereview.chromium.org/553160 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37600 0039d316-1c4b-4281-b951-d872f2087c98
* Make the Blacklist in the URL request context refcounted, since the Profile ↵pkasting@chromium.org2010-01-301-2/+3
| | | | | | | | | | | | | gets destroyed before the IO thread. Also some other random misc. cleanup. TBR=darin BUG=none TEST=none Review URL: http://codereview.chromium.org/554140 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37596 0039d316-1c4b-4281-b951-d872f2087c98
* Load filter rules from preferences.jochen@chromium.org2010-01-239-648/+125
| | | | | | | | | BUG=32782 TEST=unit_tests Review URL: http://codereview.chromium.org/555033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36962 0039d316-1c4b-4281-b951-d872f2087c98
* Whitespace change to clobber botsjochen@chromium.org2010-01-211-1/+1
| | | | | | | | | | BUG=none TEST=none TBR=thomasvl Review URL: http://codereview.chromium.org/545152 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36748 0039d316-1c4b-4281-b951-d872f2087c98
* Remove support for filtering by MIME-type.jochen@chromium.org2010-01-208-280/+62
| | | | | | | | | | | Also merge kDontSendCookies and kDontStoreCookies to kNoCookies. BUG=16932 TEST=unit_tests Review URL: http://codereview.chromium.org/542056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36628 0039d316-1c4b-4281-b951-d872f2087c98
* Whitespace change to clobber build bots.jochen@chromium.org2010-01-201-1/+1
| | | | | | | | | | BUG=none TEST=none TBR=maruel Review URL: http://codereview.chromium.org/545133 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36627 0039d316-1c4b-4281-b951-d872f2087c98
* Drop the code allowing privacy blacklists to be shipped in extensions.phajdan.jr@chromium.org2010-01-2014-1158/+20
| | | | | | | | | | | The plan is to implement it in a different way. TEST=Covered by unit_tests. BUG=21541 Review URL: http://codereview.chromium.org/552025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36626 0039d316-1c4b-4281-b951-d872f2087c98
* Meassure performance of matching URLs against a sample filter list.jochen@chromium.org2010-01-141-0/+210
| | | | | | | | | BUG=31827 TEST=perf_tests Review URL: http://codereview.chromium.org/524063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36243 0039d316-1c4b-4281-b951-d872f2087c98
* Take filter exceptions into account when matching against resource requests.jochen@chromium.org2010-01-124-13/+83
| | | | | | | | | BUG=16932 TEST=BlacklistTest.Generic Review URL: http://codereview.chromium.org/541025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36015 0039d316-1c4b-4281-b951-d872f2087c98
* Also match against the query string if present.jochen@chromium.org2010-01-128-24/+107
| | | | | | | | | BUG=none TEST=BlacklistTest.QueryStringMatch Review URL: http://codereview.chromium.org/523137 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36013 0039d316-1c4b-4281-b951-d872f2087c98
* Introduce exception filter rules.jochen@chromium.org2010-01-125-8/+41
| | | | | | | | | | | | Allow for patterns to start with a - to mark exceptions. A URL matches a filter, if it matches at least one pattern and no exception. BUG=16932 TEST=covered by unit_tests Review URL: http://codereview.chromium.org/541009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35999 0039d316-1c4b-4281-b951-d872f2087c98
* Add autodetection of "intranet" redirection, for ISPs etc. that send typos ↵pkasting@chromium.org2010-01-081-1/+2
| | | | | | | | | | and nonexistent addresses to custom pages, and plumb it to the code that puts up infobars when users type in a search that appears to be an intranet address, so we don't show these for erroneous cases. BUG=31556 TEST=none Review URL: http://codereview.chromium.org/525079 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35807 0039d316-1c4b-4281-b951-d872f2087c98
* revert 35785. TBR=phajdan.jr@jochen@chromium.org2010-01-082-36/+3
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35787 0039d316-1c4b-4281-b951-d872f2087c98
* Add DCHECK for error_string so future NULL pointers can be caughtjochen@chromium.org2010-01-081-0/+1
| | | | | | Review URL: http://codereview.chromium.org/523138 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35786 0039d316-1c4b-4281-b951-d872f2087c98
* Also match against the query string if present.jochen@chromium.org2010-01-082-3/+36
| | | | | | | BUG=none TEST=BlacklistTest.QueryStringMatch git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35785 0039d316-1c4b-4281-b951-d872f2087c98
* Implement delaying resource requests until privacy blacklists are ready.phajdan.jr@chromium.org2010-01-0519-328/+912
| | | | | | | | | | | | | | | | | | | Associate a BlacklistRequestInfo with each URLRequest started by ResourceDispatcherHost so that in various places we get access to the right BlacklistManager (each Profile has its own), and lazily cache a Blacklist::Match. BlacklistListener controls delaying requests until the privacy blacklist is ready for the request. BlacklistInterceptor handles substituting real response with a blocking page or blocking image. I've temporarily removed support for unblocking things. It was too hacky. This change also removes a large block of blacklist-related code from RDH to more focused classes. Should make it a little more readable. This should also make BlacklistManagerBrowserTest not flaky. TEST=Covered by browser_tests and unit_tests. BUG=21541, 29113 Review URL: http://codereview.chromium.org/501082 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35538 0039d316-1c4b-4281-b951-d872f2087c98
* Mark BlacklistManagerBrowserTest.Basic as flaky.willchan@chromium.org2009-12-011-1/+1
| | | | | | | | BUG=29113 Review URL: http://codereview.chromium.org/458003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33503 0039d316-1c4b-4281-b951-d872f2087c98
* [GTTF] Reduce header dependencies in chrome.phajdan.jr@chromium.org2009-11-301-0/+3
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/454004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33324 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 33301 and 33305 due to unit_tests breakage.maruel@chromium.org2009-11-301-3/+0
| | | | | | | | TBR=pawel Review URL: http://codereview.chromium.org/453007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33309 0039d316-1c4b-4281-b951-d872f2087c98
* [GTTF] Reduce header dependencies in chrome.phajdan.jr@chromium.org2009-11-301-0/+3
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/454004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33301 0039d316-1c4b-4281-b951-d872f2087c98
* Integrate BlacklistManager with Profile.phajdan.jr@chromium.org2009-11-307-155/+236
| | | | | | | | | | | | | Now each Profile has a BlacklistManager that maintains a compiled Blacklist for that Profile. The system does not yet pause user-initiated web requests until the blacklist system is ready. However, the code is not supposed to be ready, and is hidden behind a --enable-privacy-blacklists command-line flag. TEST=Covered by browser_test. BUG=21541 Review URL: http://codereview.chromium.org/371063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33290 0039d316-1c4b-4281-b951-d872f2087c98
* Fix race conditions where an object's constructor uses PostTask on itself. ↵jam@chromium.org2009-11-174-20/+27
| | | | | | | | | This isn't safe since the posted task can execute before the constructor returns, leading to destruction of the object. BUG=27944 Review URL: http://codereview.chromium.org/399016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32213 0039d316-1c4b-4281-b951-d872f2087c98
* Fix intermittent DCHECK failure in BlacklistManagerTest.phajdan.jr@chromium.org2009-11-161-0/+1
| | | | | | | | | | | Ensure correct shutdown of threads. TEST=Covered by unit_tests. BUG=27726 Review URL: http://codereview.chromium.org/384149 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32090 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes almost all of the rest of lint errors in the chrome/ directory (minus ↵erg@google.com2009-11-135-48/+48
| | | | | | | | the really hard ones which will need actual review instead of rubber-stamping.) Review URL: http://codereview.chromium.org/386026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31932 0039d316-1c4b-4281-b951-d872f2087c98
* Fix threading issues in BlacklistManager, using new ChromeThread.phajdan.jr@chromium.org2009-11-074-200/+108
| | | | | | | | | TEST=Covered by unit_tests and browser_tests. BUG=21541 Review URL: http://codereview.chromium.org/361030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31386 0039d316-1c4b-4281-b951-d872f2087c98
* Eighth patch in making destructors of refcounted objects private.jam@chromium.org2009-11-071-2/+6
| | | | | | | BUG=26749 Review URL: http://codereview.chromium.org/378004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31339 0039d316-1c4b-4281-b951-d872f2087c98
* Fix BlacklistManagerBrowserTest.Basic to be more solid.phajdan.jr@chromium.org2009-11-041-5/+13
| | | | | | | | | | | | | | It turns out it was flaky (was waiting for an event that already happened). When running the message loop to wait for extension loading changes, it was executing BlacklistManager tasks as well. TEST=Covered by browser_tests. BUG=21541 TBR=aa Review URL: http://codereview.chromium.org/361003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30954 0039d316-1c4b-4281-b951-d872f2087c98
* Implement loading blacklists from extensions.phajdan.jr@chromium.org2009-11-043-30/+139
| | | | | | | | | | | | It doesn't yet work in full-browser scenario, but allows me to write a simple test. TEST=Covered by browser_tests. BUG=21541 Review URL: http://codereview.chromium.org/341050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30952 0039d316-1c4b-4281-b951-d872f2087c98
* Last patch in removing MessageLoop* caching.jam@chromium.org2009-11-031-6/+5
| | | | | | | BUG=25354 Review URL: http://codereview.chromium.org/353015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30881 0039d316-1c4b-4281-b951-d872f2087c98
* Design changes in browser/privacy_blacklist needed to integratephajdan.jr@chromium.org2009-10-299-526/+490
| | | | | | | | | | | | | | | | | | privacy blacklists with extensions. - change I/O routines interface to be more clear - distinguish between transient and permanent blacklists - remove obsolete code (pbl_tool and blacklist error dialog) BlacklistManager will be responsible for recompiling the persistent blacklists. Errors will be reported via infobars. TEST=Covered by unit_tests. BUG=21541 Review URL: http://codereview.chromium.org/337025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30449 0039d316-1c4b-4281-b951-d872f2087c98
* Fix memory leaks in BlacklistManagerTest.phajdan.jr@chromium.org2009-10-151-17/+38
| | | | | | | | | BUG=21541 TEST=Covered by unit_tests. Review URL: http://codereview.chromium.org/276047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29166 0039d316-1c4b-4281-b951-d872f2087c98
* Create BlacklistManager, which will aggregate individual blacklists into one ↵phajdan.jr@chromium.org2009-10-153-0/+565
| | | | | | | | | | | | | | | | | compiled one and maintain it. This is the first step towards shipping privacy blacklists in extensions. The next step will be to make Profile own a BlacklistManager, and make ExtensionsService a BlacklistPathsProvider. TEST=Covered by unit_tests. BUG=21541 Review URL: http://codereview.chromium.org/164535 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29135 0039d316-1c4b-4281-b951-d872f2087c98
* More style nits.erg@google.com2009-10-142-3/+3
| | | | | | | | (Working on cleaning chrome/ so hopefully we can lint it by default.) Review URL: http://codereview.chromium.org/274040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28971 0039d316-1c4b-4281-b951-d872f2087c98
* Support multiple EOL types in Privacy Blacklistsidanan@google.com2009-10-021-2/+3
| | | | | | | | | | BUG=16932 TEST=none TBR=maruel Review URL: http://codereview.chromium.org/251078 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27884 0039d316-1c4b-4281-b951-d872f2087c98
* Privacy Blacklist Unblockidanan@google.com2009-10-012-12/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary ------- Mostly implemented the unblocking for visual resources for the Privacy Blacklist. Merging now before I leave. Eveything here only has effect if the --privacy-blacklist flag specifies a Privacy Blacklist. Detailed Changes ---------------- [chrome/browser/resources/privacy_blacklist.html] - Replaced the about:blank place-holder with variable to set the unblock link. - Open the Privacy Blacklist provider page in a new tab. This works around an issue where such request for a full-page (rather than a sub-resource) gets blocked indefinitely. [chrome/browser/render_host/resource_dispatcher_host.h] - Added a BlockedResponse member which is now a class rather than a namespace, see below for more information. [chrome/browser/render_host/resource_dispatcher_host.cc] - Generate headers for the blocked response to redirect to the chrome-blocked URL which prevents an enclosing page from reading the URL of the unblock link. This was suggested by Darin to avoid scripted bypassing of blocked contents. - Recover the original URL for blocked content, in order to fetch it during unblocking. - Do not create CrossSiteResourceHandler when an unblocked link is requested. Otherwise the request never resumes as the blocked page never gets closed since it is not a real page. [chrome/browser/privacy_blacklist/blocked_response.cc] - Defined chrome-block and chrome-unblock URL schemes. The block scheme is used to return the blocked response. The unblock scheme is used request a blocked resource's URL without being intercepted by the Privacy Blacklist. - Defined a hash function for a blocked resource as its address in memory. Function to reverse the hash is therefore trivial. - Added a function to return headers for a blocked response. - Added a function to generate a block URL from a requested one. - Added a function to get an unblock URL from a requested one. - Added a function to return the original URL for a blocked one. [chrome/browser/privacy_blacklist/blocked_response.h] - Made the BlockedResponse namespace into a class. - Created a member set to keep all the blocked resources URL. BUG=16932 TEST=none TBR=darin Review URL: http://codereview.chromium.org/252001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27719 0039d316-1c4b-4281-b951-d872f2087c98