summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/extension_updater.cc
Commit message (Collapse)AuthorAgeFilesLines
* Load the bookmark manager extension at Chrome startup.aa@chromium.org2010-03-041-0/+7
| | | | | | Review URL: http://codereview.chromium.org/660232 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40683 0039d316-1c4b-4281-b951-d872f2087c98
* Move pref_{member,service} and important_file_writer from chrome/commonphajdan.jr@chromium.org2010-02-191-1/+1
| | | | | | | | | | | | | 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
* Get rid of check that caused redirects to fail extension updates.asargent@chromium.org2010-02-011-5/+1
| | | | | | | | | | | | | | | | | When the extension autoupdater downloads .crx files, we rely on the UrlFetcher class to do it for us. Inside OnCrxFetchComplete I had put a sanity check that the url we finished with was the same one we started with, but of course this breaks the case of redirects and wasn't needed because the API of UrlFetcher is that there's one UrlFetcher per outstanding fetch. BUG=26177 TEST=Extension Autoupdate should keep working normally, and work with redirects such as the example mentioned in the bug. Review URL: http://codereview.chromium.org/549215 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37718 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor extension autoupdater.asargent@chromium.org2010-01-281-147/+192
| | | | | | | | | | | | | | | | | | | | | | | This includes two changes: 1) Stop sending the Omaha UID to the gallery in favor of a "ping" parameter included at most once per day in a update manifest fetch, indicating the number of days since the last time we sent the ping parameter. The calculation of this parameter is based on the offset from now to a value in the *previous* response from the server where it indicated it's notion of when that day had started. 2) Batch update manifest requests for extensions with the same update url. The server and protocol have supported this for a while but this is the first time we've added support in the client. BUG=b/2367191 TEST=Extension updates should still work normally. Review URL: http://codereview.chromium.org/558005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37383 0039d316-1c4b-4281-b951-d872f2087c98
* The search terms are escaped using + or %20 for space depending on whether ↵avayvod@google.com2010-01-151-3/+3
| | | | | | | | | | | | replacement is in query part of the URL or not. Removed duplicate EscapeQueryParamValue functions without |use_plus| argument. BUG=24571 TEST=Verify that space is escaped as stated in description; see bug description for example with search on Wikipedia. Review URL: http://codereview.chromium.org/543077 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36398 0039d316-1c4b-4281-b951-d872f2087c98
* Have the utility process run out of process on Linux again bytony@chromium.org2009-12-091-6/+0
| | | | | | | | | | | | using the /proc/self/exe trick we use for plugins. Since we don't need any resources from .pak files, this should be safe. BUG=22703 TEST=Install a theme, verify that it worked properly. Review URL: http://codereview.chromium.org/464073 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34117 0039d316-1c4b-4281-b951-d872f2087c98
* Remove IsPrefRegistered function from PrefService API and fix the callers totony@chromium.org2009-12-071-2/+2
| | | | | | | | | | | | | | call FindPreference directly. BUG=None TEST=compiles and passes existing tests Original patch by Thiago Farina <thiago.farina@gmail.com> at http://codereview.chromium.org/460117/show Review URL: http://codereview.chromium.org/463044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34010 0039d316-1c4b-4281-b951-d872f2087c98
* Send Keystone ID to Omaha for Extensions Gallery update checks.asargent@chromium.org2009-12-031-0/+16
| | | | | | | | | | | This is the OSX complement to http://src.chromium.org/viewvc/chrome?view=rev&revision=32853 BUG=b/2168147 TEST=extension autoupdate should still work on MacOS Review URL: http://codereview.chromium.org/431033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33731 0039d316-1c4b-4281-b951-d872f2087c98
* Don't ping for extension blacklist when no extensions are installed.pam@chromium.org2009-12-031-1/+1
| | | | | | | | BUG=24168 TEST=covered by unit tests Review URL: http://codereview.chromium.org/466012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33720 0039d316-1c4b-4281-b951-d872f2087c98
* Add regex escaping code to Mac sandbox implementation and re-enable the ↵jeremy@chromium.org2009-12-031-3/+2
| | | | | | | | | | | | | | | utility process on OS X. Other changes: * An error initializing the sandbox on OS X is now treated as fatal. * Improved error reporting for sandbox-related failures. BUG=26492,23837 TEST=Installing extensions and themes should still work on OS X. Review URL: http://codereview.chromium.org/434077 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33682 0039d316-1c4b-4281-b951-d872f2087c98
* Make extension updates use omaha id when talking to omaha.asargent@chromium.org2009-11-231-1/+44
| | | | | | | | | | BUG=b/2168147 TEST=Extensions auto-updates should still work. Review URL: http://codereview.chromium.org/403026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32853 0039d316-1c4b-4281-b951-d872f2087c98
* Forces T*s to scoped_refptr<T> when PostTask()ing to a function expecting ↵jamesr@chromium.org2009-11-201-1/+1
| | | | | | | | scoped_refptr<T> Review URL: http://codereview.chromium.org/418007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32706 0039d316-1c4b-4281-b951-d872f2087c98
* Disabled extensions should be uninstallable. finnur@chromium.org2009-11-101-1/+1
| | | | | | | | | | | | | | | | | | | | | The code to display the dialog looks up an Extension by id but doesn't return disabled ones. So I added that option to the function. I also added a check so that we don't show the Options button enabled when the extension is disabled, since you need the extension to be enabled for the Options page to work. BUG=26910 TEST=Disable an extension that has an Option page, make sure Options is not enabled after disabling, then uninstall it. It should uninstall. Review URL: http://codereview.chromium.org/385014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31612 0039d316-1c4b-4281-b951-d872f2087c98
* Tenth patch in making destructors of refcounted objects private.jam@chromium.org2009-11-071-3/+3
| | | | | | | | BUG=26749 Review URL: http://codereview.chromium.org/376007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31348 0039d316-1c4b-4281-b951-d872f2087c98
* add some histograms to extensionserikkay@chromium.org2009-11-061-1/+45
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/372005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31241 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Revert r31175 r31176 r31187"hclam@chromium.org2009-11-061-0/+5
| | | | | | | | | | | | The bustage seems to be a WebKit change upstream. It is not reverted in WebKit and merger. So bring the innocent change back in. TBR=jam TEST=green tree Review URL: http://codereview.chromium.org/375009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31214 0039d316-1c4b-4281-b951-d872f2087c98
* Rever r31175 r31176 r31187hclam@chromium.org2009-11-061-5/+0
| | | | | | | | | | | XP tests are failing, the guess is r31175 and r31176. TBR=beng TEST=XP tests go green Review URL: http://codereview.chromium.org/376008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31201 0039d316-1c4b-4281-b951-d872f2087c98
* Sixth patch in making destructors of refcounted objects private.jam@chromium.org2009-11-061-0/+5
| | | | | | | | BUG=26749 Review URL: http://codereview.chromium.org/370001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31176 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of MessageLoop* caching in extensions code.jam@chromium.org2009-10-301-58/+41
| | | | | | | BUG=25354 Review URL: http://codereview.chromium.org/345023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30550 0039d316-1c4b-4281-b951-d872f2087c98
* Add a browser test for extensions autoupdate.asargent@chromium.org2009-10-141-4/+6
| | | | | | | | | BUG=17826,19403 TEST=none Review URL: http://codereview.chromium.org/270019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28923 0039d316-1c4b-4281-b951-d872f2087c98
* Do not use the utility process on linux.asargent@chromium.org2009-10-051-2/+10
| | | | | | | | | | | We don't currently use the zygote to spawn the utility process, so after browser updates bad bugs can occur with mismatched subprocesses. See crbug.com/23327 and crbug.com/22703. BUG=23327 TEST=Extensions installation/autoupdate and New Tab Page tip download should still work. Review URL: http://codereview.chromium.org/256036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27997 0039d316-1c4b-4281-b951-d872f2087c98
* Do not send or store cookies for extensions autoupdate http requests.asargent@chromium.org2009-09-121-0/+5
| | | | | | | | | BUG=18641 TEST=none Review URL: http://codereview.chromium.org/196097 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26054 0039d316-1c4b-4281-b951-d872f2087c98
* Add an auto-update now button to chrome://extensions pageasargent@chromium.org2009-09-031-4/+9
| | | | | | | | | | | | BUG=http://crbug.com/17853 TEST=Install an old version of an extension with an available update, then go to chrome://extensions and hit the auto-update now button. The extension should update. Review URL: http://codereview.chromium.org/184005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25293 0039d316-1c4b-4281-b951-d872f2087c98
* Do extensions update manifest XML parsing in a sandboxed process.asargent@chromium.org2009-08-201-229/+109
| | | | | | | | | | | | | | | | This involves moving the xml parsing code from static functions in extension_updater.cc to a UpdateManifest class, and switching from logging any errors directly to collecting them up and passing them across the IPC channel. BUG=http://crbug.com/12677 TEST=extensions auto-update should still work correctly Review URL: http://codereview.chromium.org/164541 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23822 0039d316-1c4b-4281-b951-d872f2087c98
* Renames the function CreateTemporaryFilename to CreateTemporaryFile and ↵erikkay@chromium.org2009-08-181-1/+1
| | | | | | | | | | | | | | track down all callers, also removes the deprecated function that uses std::wstring. BUG=3078 (http://crbug.com/3078) TEST=run base_unittests, installer_util_unittests, net_unittests, setup_unittests, and unit_tests. Review URL: http://codereview.chromium.org/164537 Patch from Thiago Farina. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23631 0039d316-1c4b-4281-b951-d872f2087c98
* The change has the followings:lzheng@chromium.org2009-08-141-22/+101
| | | | | | | | | | | | | | | 1. Auto-updating of extension blacklist. 2. Handle extensions in the blacklist. If an extension is in the blacklist, a. browser will not load the extension at start time; b. browser will unload the extension at running time; c. browser will not install the extension; BUG=12118 TEST=Verify behavior described above works (they should be covered in the unittests in this change). Review URL: http://codereview.chromium.org/165164 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23423 0039d316-1c4b-4281-b951-d872f2087c98
* Switch extension update manifest parse errors to LOG(WARN).asargent@chromium.org2009-08-061-1/+1
| | | | | | | | | | | | | | | | Before this patch they are using ExtensionErrorReporter, but I don't think it's actually useful for users to see them on the chrome://extensions page. BUG=http://crbug.com/18565 TEST=You should no longer see messages like "Extension update manifest parse error: Invalid codebase url"on the chrome://extensions page. Review URL: http://codereview.chromium.org/164008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22662 0039d316-1c4b-4281-b951-d872f2087c98
* Make extensions auto-update schedule persist across browser restarts.asargent@chromium.org2009-08-031-9/+96
| | | | | | | | | | | | | | Instead of starting the timer all over again, we instead persist some information about when we had scheduled it and when it actually fired. We then try to balance keeping clients reasonably up to date with avoiding a thundering herd against servers. BUG=http://crbug.com/12545 TEST=none Review URL: http://codereview.chromium.org/160433 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22286 0039d316-1c4b-4281-b951-d872f2087c98
* Pull CrxInstaller out of ExtensionsService.aa@chromium.org2009-07-301-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | CrxInstaller is a new stateful object that encapsulates a single installation from unpack through notification. It currently contains the UI bits, but I suspect in the next CL (where I will finally implement the install UI) these will come out and CrxInstaller will become SilentCrxInstaller, and only used for updates and external installs. Also in this change, I removed the concept of install callbacks that ExtensionUpdater was using. This was only used to delete the temp crx file as far as I can tell, and we can easily keep state about that in CrxInstaller. With this CL, ExtensionsServiceBackend is almost completely dead, with only a few zombie methods left like LoadAllExtensions(). These should all become little objects like CrxInstaller that hold a reference to ExtensionsService over their lifetime and then kill themselves. I'll get to that eventually. Review URL: http://codereview.chromium.org/160311 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22043 0039d316-1c4b-4281-b951-d872f2087c98
* Make the minimum extensions update frequency allowed on command line be 30 ↵asargent@chromium.org2009-07-281-1/+1
| | | | | | | | | | | | | | | seconds. This is as opposed to the value of 1 hour in release mode, which makes testing difficult for people trying to test out autoupdate. BUG=http://crbug.com/17867 TEST=Run with --enable-extensions --extension-update-frequency=30 will actually update an extension that has updates after 30 seconds. Review URL: http://codereview.chromium.org/159490 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21849 0039d316-1c4b-4281-b951-d872f2087c98
* Fix 2 bugs in extensions autoupdate request parameters.asargent@chromium.org2009-07-241-14/+36
| | | | | | | | | | | | | -Separator that should be between id and version parameters was at the end of version -Missing the "uc" parameter which the gallery server code was expecting as indication of an update check BUG=http://crbug.com/17469 TEST=extensions auto-update should work Review URL: http://codereview.chromium.org/159224 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21582 0039d316-1c4b-4281-b951-d872f2087c98
* Coverity: Pass strings and GURLs by reference.jhawkins@chromium.org2009-07-241-1/+5
| | | | | | | | | CID=5051,5052,5053 BUG=none TEST=none Review URL: http://codereview.chromium.org/159343 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21541 0039d316-1c4b-4281-b951-d872f2087c98
* Fix leaks in ExtensionUpdater unit testsasargent@chromium.org2009-07-101-1/+2
| | | | | | | | | BUG=http://crbug.com/16444 TEST=none Review URL: http://codereview.chromium.org/149479 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20430 0039d316-1c4b-4281-b951-d872f2087c98
* Implementation of Extension Updater.asargent@chromium.org2009-07-101-0/+560
This also contains changes to the ExtensionsService to hook up the ExtensionUpdater. BUG=http://crbug.com/12117 TEST=Extensions still work Review URL: http://codereview.chromium.org/149213 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20379 0039d316-1c4b-4281-b951-d872f2087c98