summaryrefslogtreecommitdiffstats
path: root/chrome/browser/password_manager
Commit message (Collapse)AuthorAgeFilesLines
* Change GetAllLogins to GetAllBlacklistLogins.stuartmorgan@google.com2009-07-209-67/+78
| | | | | | | | | BUG=none TEST=accessing the list of passwords and password blacklists should still work. Review URL: http://codereview.chromium.org/149778 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21100 0039d316-1c4b-4281-b951-d872f2087c98
* Implement batch deletion in PasswordStoreMac.stuartmorgan@google.com2009-07-164-29/+132
| | | | | | | | | | | Add a new keychain helper search and refactor a bit to support the deletion. BUG=15070 TEST=Deleting passwords in Clear Browsing Data... will now work per the design doc (which means we clear passwords we created, and our metadata, but leave passwords created by other browsers alone). Review URL: http://codereview.chromium.org/149759 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20900 0039d316-1c4b-4281-b951-d872f2087c98
* Implement bulk password lookup API in PasswordStoreMac.stuartmorgan@google.com2009-07-164-76/+241
| | | | | | | | | | | | Refactor password merge to support the new search. Rename the fill-targeted search on the adapter for better clarity about the distinction between it and the new search. BUG=16485 TEST=none yet; UI doesn't exist. Review URL: http://codereview.chromium.org/149708 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20877 0039d316-1c4b-4281-b951-d872f2087c98
* Support individual Keychain item deletion in PasswordStoreMac.stuartmorgan@google.com2009-07-134-58/+163
| | | | | | | | | | | | Rename AddLogin to AddPassword for consistency with other method names. Remove a confusing out param from the form merge check function. BUG=16486 TEST=Once the UI exists, deleting individual passwords should work on the Mac. Review URL: http://codereview.chromium.org/155451 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20573 0039d316-1c4b-4281-b951-d872f2087c98
* Don't store blacklist entries in the keychain.stuartmorgan@google.com2009-07-132-4/+18
| | | | | | | | | BUG=none TEST=none; mac password storage has no UI yet. (Once it does: opting never to remember passwords for a site should not create a Keycahin entry.) Review URL: http://codereview.chromium.org/155389 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20537 0039d316-1c4b-4281-b951-d872f2087c98
* Add the rest of the password manager API to PasswordStore, and move clientsstuartmorgan@chromium.org2009-07-1010-87/+271
| | | | | | | | | | | | off of WebDataService. The methods are unimplemented on the Mac for the moment, and do passthroughs to WDS on Windows as with the rest of the Windows PasswordStore interface. BUG=none TEST=Saving, viewing, and deleting password should still work on Windows. Review URL: http://codereview.chromium.org/155259 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20441 0039d316-1c4b-4281-b951-d872f2087c98
* Add an exact search method to the Keychain adapter, and modify unit tests to ↵stuartmorgan@chromium.org2009-07-063-243/+230
| | | | | | | | | | | | | us that instead of the raw keychain version. Overhaul the single-item-search test to be shorter, clearer, and more complete. Convert more namespaced methods that now have no public callers to private helpers of the Keychain adapter, and refactor the helpers. BUG=none TEST=none; no behavioral changes Review URL: http://codereview.chromium.org/149160 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19964 0039d316-1c4b-4281-b951-d872f2087c98
* Implement Add and Update for PasswordStoreMac.stuartmorgan@chromium.org2009-07-026-11/+59
| | | | | | | | | | | Modify LoginDatabase slightly to give PasswordStoreMac enough information to do the right thing. Add creator code for keychain items we create, and unit tests to make sure. BUG=11745 TEST=Visit a site for which you have a password in the Keychain. Type your username, unfocus the field, and then log in with the filled password. Log out, return to the login page, and the username and password should now autofill without user interaction. Review URL: http://codereview.chromium.org/151176 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19822 0039d316-1c4b-4281-b951-d872f2087c98
* Remove a bunch of low-level keychain helper tests that are now redundant ↵stuartmorgan@chromium.org2009-07-013-426/+252
| | | | | | | | | | | | with tests of the newer higher-level methods. Start collecting the helpers into a cohesive class that serves as a translation layer between keychain items and password forms. BUG=none TEST=Keychain passwords should still fill after a username is typed on the Mac (no change in behavior). Review URL: http://codereview.chromium.org/151164 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19773 0039d316-1c4b-4281-b951-d872f2087c98
* Wire up a LoginDatabase for PasswordStoreMac, and start using it for lookup.stuartmorgan@chromium.org2009-06-302-41/+79
| | | | | | | | | | (Although it will always be empty at this point, since storage isn't implemented yet.) BUG=11745 TEST=none (no user-visible effect yet) Review URL: http://codereview.chromium.org/147044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19685 0039d316-1c4b-4281-b951-d872f2087c98
* Separate the Keychain test data from the Mock itself, and make the mock data ↵stuartmorgan@chromium.org2009-06-241-84/+118
| | | | | | | | | | | | creation table-driven. Replaces the const-ness of helper methods with casting away constness when necessary, so that the new public AddTestItem function isn't const as well. BUG=none TEST=none Review URL: http://codereview.chromium.org/147056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19124 0039d316-1c4b-4281-b951-d872f2087c98
* Move MockKeychain into its own file.stuartmorgan@chromium.org2009-06-231-587/+95
| | | | | | | | | | | | The unit test file has become very unwieldy, and I no longer believe that the Keychain mock is temporary code that should be replaced with GMock (since the dummy implementation makes certain tests much easier). BUG=none TEST=none Review URL: http://codereview.chromium.org/146041 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19041 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the add/update functionality for Keychain that PasswordStoreMac willstuartmorgan@chromium.org2009-06-233-195/+465
| | | | | | | | | | need, and modify MockKeychain slightly to allow unit testing it. BUG=none TEST=none Review URL: http://codereview.chromium.org/146002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19026 0039d316-1c4b-4281-b951-d872f2087c98
* Switch to using FilePath as long as possible for LoginDatabase, and do the ↵stuartmorgan@chromium.org2009-06-223-9/+10
| | | | | | | | | | conversion to std::string correctly for all platforms. BUG=14641 TEST=LoginDatabase unit tests should build and run on Windows Review URL: http://codereview.chromium.org/139005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18928 0039d316-1c4b-4281-b951-d872f2087c98
* Add merging algorithm for keychain and metadata db PasswordForms, and unit ↵stuartmorgan@chromium.org2009-06-193-0/+440
| | | | | | | | | | | | tests for it. Not used quite yet, since the metadata database still needs to be integrated into PasswordStoreMac. BUG=none TEST=none Review URL: http://codereview.chromium.org/131076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18825 0039d316-1c4b-4281-b951-d872f2087c98
* Extract load times from WebDataSource. Move them to NavigationState.darin@chromium.org2009-06-1618-53/+76
| | | | | | | | | | | | Move PasswordForm into the webkit_glue namespace. TEST=none BUG=10041 R=brettw Review URL: http://codereview.chromium.org/126190 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18515 0039d316-1c4b-4281-b951-d872f2087c98
* Add missing headers for Windows and re-enable building of LoginDatabase.stuartmorgan@chromium.org2009-06-151-0/+3
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/125092 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18423 0039d316-1c4b-4281-b951-d872f2087c98
* Extract form related classes from the guts of WebFrameImpl.darin@chromium.org2009-06-151-5/+6
| | | | | | | | | | | | | | | | | | | Instead of having WebFrameImpl generate SearchableFormData, PasswordForm, and AutofillForm classes, allow the embedder (RenderView) to do so. This is done to help minimize the dependencies WebFrameImpl has on other code, which will make it easier to move WebFrame and WebDataSource into the WebKit API. Most significant change: Now, RenderView always sets a NavigationState on WebDataSource instances. We used to only do so for browser initiated navigations. This is done so that we can store things like SearchableFormData and friends on the NavigationState. To facilitate this change, it was necessary to add a way through the WebKit API to refer to a HTMLFormElement. This CL introduces WebForm, which is like a RefPtr<HTMLFormElement>, so you can just copy a WebForm around by value and the right thing happens. Some of the other changes are about moving more things into the webkit_glue namespace. On hindsight, I probably should have done that as a separate CL. BUG=10041 TEST=none R=brettw Review URL: http://codereview.chromium.org/126083 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18395 0039d316-1c4b-4281-b951-d872f2087c98
* Restores an early return that was incorrectly removed in the PasswordStore ↵stuartmorgan@chromium.org2009-06-131-0/+4
| | | | | | | | | | refactoring. BUG=13979 TEST=Save a password on a site with a valid SSL certificate, then visit in when the cert is no longer valid. Review URL: http://codereview.chromium.org/125074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18338 0039d316-1c4b-4281-b951-d872f2087c98
* Copy login-related section of WebDatabase into a new class for use in ↵stuartmorgan@chromium.org2009-06-125-0/+734
| | | | | | | | | | | | | | PasswordStore. The platform-specific inheritence here is because the current Windows implementation of PasswordStore is a temporary shim, and will eventually need to use its own database instead; since we'll need almost all the fields on the Mac for the bag-on-the-side anyway, it makes sense to share as much of this implementation as possible. The code and unit tests are pretty much unchanged from WebDatabase (except for the inheritence stuff); the duplication should be temporary as the WebDatabase copy will be removed once Windows switches (and migrates their passwords). BUG=none TEST=none Review URL: http://codereview.chromium.org/119392 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18330 0039d316-1c4b-4281-b951-d872f2087c98
* Add an exact-match Keychain search, with unit tests; groundwork for a more ↵stuartmorgan@chromium.org2009-06-103-38/+315
| | | | | | | | | | complete Keychain implementation. BUG=none TEST=none Review URL: http://codereview.chromium.org/119377 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18103 0039d316-1c4b-4281-b951-d872f2087c98
* Use EXPLICIT_ACCESS when trying to get the PasswordStore to cancel a login ↵stuartmorgan@chromium.org2009-06-081-1/+1
| | | | | | | | | | query, since that's the mode that was used to start it. BUG=13348 TEST=Cancelling a login query should not fail in off-the-record mode. Review URL: http://codereview.chromium.org/119204 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17873 0039d316-1c4b-4281-b951-d872f2087c98
* Change PasswordStoreDefault to access the WebDataService from the UI thread ↵stuartmorgan@chromium.org2009-06-039-221/+129
| | | | | | | | | | | | only. Enables the PasswordStore refactoring yet again (third time's the charm?). BUG=12479 TEST=Password save/autofill should continue to work on Windows. Review URL: http://codereview.chromium.org/118131 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17545 0039d316-1c4b-4281-b951-d872f2087c98
* Port 2 more unit tests. Just small differences between platforms.tc@google.com2009-06-031-6/+6
| | | | | | | | | | This allows password_form_manager_unittest.cc and search_provider_unittest.cc to run on linux/mac. Review URL: http://codereview.chromium.org/118137 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17497 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 17273 - Fails reliability testsmhm@chromium.org2009-05-305-41/+152
| | | | | | Review URL: http://codereview.chromium.org/118047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17279 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land the password store work from bug 8205, with changes that should fix ↵stuartmorgan@chromium.org2009-05-3015-152/+1257
| | | | | | | | | | bug 12479. The Linux pieces are still disabled, however. BUG=8205 TEST=Password autofill should continue to work on Windows. Review URL: http://codereview.chromium.org/114057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17273 0039d316-1c4b-4281-b951-d872f2087c98
* Revert the password manager refactoring -- it failed reliability tests.evan@chromium.org2009-05-2615-1220/+152
| | | | | | | | | | | (For reference, it was committed with the wrong message: "Patch to make password patch build.") This reverts commit r16708. Review URL: http://codereview.chromium.org/113871 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16939 0039d316-1c4b-4281-b951-d872f2087c98
* First phase of Mac Keychain integration. For the overall plan, see the ↵stuartmorgan@chromium.org2009-05-264-0/+1144
| | | | | | | | | | | | | | design doc linked from the bug. This implements the ability to read existing Keychain passwords, but no storage/updating yet, and no adding of our own metadata as passwords are used; all that will be done in follow-up patches. This also includes a Keychain wrapper for the functionality necessary so far, and a mock Keychain sufficient to unit-test essentially all of the code. This patch deliberately excludes the step of instantiating a PasswordStoreMac and hooking it up to the profile, because a bug in autocomplete itself prevents passwords we load from actually being used, and we don't want to trigger Keychain UI for passwords that will be ignored. So this won't be used in builds yet, but it will be unit tested. BUG=11745 TEST=none (no user-visible effect yet) Review URL: http://codereview.chromium.org/115658 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16897 0039d316-1c4b-4281-b951-d872f2087c98
* Patch to make password patch build.evan@chromium.org2009-05-2215-152/+1220
| | | | | | | Review URL: http://codereview.chromium.org/113710 Patch from John Maguire <johnmaguire@google.com>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16708 0039d316-1c4b-4281-b951-d872f2087c98
* Move l10n_util to app/ben@chromium.org2009-05-051-1/+1
| | | | | | | http://crbug.com/11387 Review URL: http://codereview.chromium.org/109043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15352 0039d316-1c4b-4281-b951-d872f2087c98
* Move scoped_vector.h and stl_util-inl.h to base/ben@chromium.org2009-05-053-3/+4
| | | | | | | | http://crbug.com/11387 Review URL: http://codereview.chromium.org/107001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15272 0039d316-1c4b-4281-b951-d872f2087c98
* Adds toplevel app/ directory and moves ResourceBundle into it.ben@chromium.org2009-05-051-1/+1
| | | | | | | | | | | No changes to resource bundle yet, just the move to keep this CL as compact as possible. Adds new vcproj and gyp file for app dir. http://crbug.com/11387 Review URL: http://codereview.chromium.org/100354 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15264 0039d316-1c4b-4281-b951-d872f2087c98
* Move a bunch of functions from WebContents to TabContents. Change the servicesbrettw@chromium.org2009-04-232-22/+22
| | | | | | | used by the getters I moved to take a TabContents instead of a WebContents. Review URL: http://codereview.chromium.org/96010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14362 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land my change to clean up TabContents/WebContents ownership. Thisbrettw@chromium.org2009-04-201-9/+5
| | | | | | | | | | | | | | | | | | | | | | | | is the same except in tab_strip_model_unittest I fixed a leak by making a WebContents on the stack, I added a factory to the SiteInstance unittest to prevent another leak, and I re-added a NULL set to the external_tab_container. Fix the ownership model of TabContents and NavigationController. Previously the NavigationController owned the TabContents, and there were extra steps required at creation and destruction to clean everything up properly. NavigationController is now a member of TabContents, and there is no setup or tear down necessary other than the constructor and destructor. I could remove the tab contents creation in the NavigationController, as well as all the weird destruction code in WebContents which got moved to the destructor. I made the controller getter return a reference since the ownership is clear and there is no possibility of NULL. This required changing a lot of tiles, but many of them were simplified since they no longer have to NULL check. Previous review URL: http://codereview.chromium.org/69043 Review URL: http://codereview.chromium.org/67294 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14053 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 14005.brettw@chromium.org2009-04-181-5/+9
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14006 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the ownership model of TabContents and NavigationController. Previously thebrettw@chromium.org2009-04-181-9/+5
| | | | | | | | | | | | | | | | | NavigationController owned the TabContents, and there were extra steps required at creation and destruction to clean everything up properly. NavigationController is now a member of TabContents, and there is no setup or tear down necessary other than the constructor and destructor. I could remove the tab contents creation in the NavigationController, as well as all the weird destruction code in WebContents which got moved to the destructor. I made the controller getter return a reference since the ownership is clear and there is no possibility of NULL. This required changing a lot of tiles, but many of them were simplified since they no longer have to NULL check. Review URL: http://codereview.chromium.org/69043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14005 0039d316-1c4b-4281-b951-d872f2087c98
* Add dummy encryptor implementations for mac and linux.thestig@chromium.org2009-04-093-2/+88
| | | | | | Review URL: http://codereview.chromium.org/43095 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13435 0039d316-1c4b-4281-b951-d872f2087c98
* NO CODE CHANGEdeanm@chromium.org2009-03-108-8/+0
| | | | | | | | | Normalize end of file newlines in chrome/. All files end in a single newline. Review URL: http://codereview.chromium.org/42015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11331 0039d316-1c4b-4281-b951-d872f2087c98
* NO CODE CHANGE.maruel@google.com2009-03-051-4/+6
| | | | | | | Split the lines >80 cols. (Part 1) Review URL: http://codereview.chromium.org/39206 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11032 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes CRLF and trailing white spaces.maruel@chromium.org2009-03-052-6/+6
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10982 0039d316-1c4b-4281-b951-d872f2087c98
* Convert encryptor.cc and friends to string16.thestig@chromium.org2009-03-023-42/+42
| | | | | | Review URL: http://codereview.chromium.org/28292 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10740 0039d316-1c4b-4281-b951-d872f2087c98
* Update include paths for grit files. Go ahead and resorttc@google.com2009-02-221-4/+3
| | | | | | | | the headers too. Review URL: http://codereview.chromium.org/21472 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10167 0039d316-1c4b-4281-b951-d872f2087c98
* Make password_manager.cc compile on Posix.jhawkins@chromium.org2009-02-152-10/+4
| | | | | | Review URL: http://codereview.chromium.org/20383 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9833 0039d316-1c4b-4281-b951-d872f2087c98
* Lots of small nits to help to split off webkit.dll.maruel@chromium.org2009-02-121-5/+6
| | | | | | | | | - Stop directly referencing WebPluginDelegateImpl. - Make the password manager to not allocation the data on heap. - Remove some unneeded includes. Review URL: http://codereview.chromium.org/20208 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9692 0039d316-1c4b-4281-b951-d872f2087c98
* Second try of landing chrome_resources project. Changes from last time:tc@google.com2009-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | - fix scons dependencies by adding a target for grit/theme_resources.h - fix mac build by adding grit to unittest include path - fix check deps by adding rules for /grit dir. Create a chrome_resources.vcproj that holds grd files that hold non-string resources. Put browser_resources.grd into this vcproj. Port theme_resources.rc/theme_resources.h to theme_resources.grd and put it in the vcproj too. I did a find/replace on the theme_resources include line. Modify grit so header files go in grit_generated_resources/grit/ so the include path can be cleaner. I'll migrate the others in follow up patches. theme_resources.rc had a conditional include of distribution_resources.rc so I had to add support for preprocessor defines to visual studio. Review URL: http://codereview.chromium.org/24011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9664 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Create a chrome_resources.vcproj that holds grd files that hold"tc@google.com2009-02-121-1/+1
| | | | | | | | | | This reverts commit r9631. TBR=deanm Review URL: http://codereview.chromium.org/23023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9634 0039d316-1c4b-4281-b951-d872f2087c98
* Create a chrome_resources.vcproj that holds grd files that holdtc@google.com2009-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | non-string resources. Put browser_resources.grd into this vcproj. Port theme_resources.rc/theme_resources.h to theme_resources.grd and put it in the vcproj too. I did a find/replace on the theme_resources include line. Modify grit so header files go in grit_generated_resources/grit/ so the include path can be cleaner. I'll migrate the others in follow up patches. theme_resources.rc had a conditional include of distribution_resources.rc so I had to add support for preprocessor defines to visual studio. Review URL: http://codereview.chromium.org/20247 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9631 0039d316-1c4b-4281-b951-d872f2087c98
* Remove final traces of IE from cross-platform password manager.evan@chromium.org2009-02-112-0/+9
| | | | | | | | | (It's still there for Windows, but not on other platforms.) Review URL: http://codereview.chromium.org/21168 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9596 0039d316-1c4b-4281-b951-d872f2087c98
* Add in NavigationController to linux and mac. pinkerton@chromium.org2009-02-051-1/+7
| | | | | | Review URL: http://codereview.chromium.org/21064 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9226 0039d316-1c4b-4281-b951-d872f2087c98
* Fix issue 6520 by ensuring that InfoBarClosed is called whenever a tab is ↵tim@chromium.org2009-01-211-16/+1
| | | | | | | | | | | closed or a navigation to a URL that is not supported by the current TabContentsType takes place by invoking it on all InfoBarDelegates from TabContents::Destroy(), which is the best least-common-denominator I've found for doing this work. Alternatively I could have made InfoBarDelegate listen for TAB_CONTENTS_DESTROYED and self-invoke InfoBarClosed but that seemed unorthodox (relatively speaking). This prevents InfoBarDelegates from leaking in these cases. BUG=6520 Review URL: http://codereview.chromium.org/18381 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8406 0039d316-1c4b-4281-b951-d872f2087c98