Public Member Functions

nsILoginManagerStorage Interface Reference

import "nsILoginManagerStorage.idl";

List of all members.

Public Member Functions

void init ()
 Initialize the component.
void initWithFile (in nsIFile aInputFile, in nsIFile aOutputFile)
 Initialize the component, but override the default filename locations.
void addLogin (in nsILoginInfo aLogin)
 Store a new login in the storage module.
void removeLogin (in nsILoginInfo aLogin)
 Remove a login from the storage module.
void modifyLogin (in nsILoginInfo oldLogin, in nsISupports newLoginData)
 Modify an existing login in the storage module.
void removeAllLogins ()
 Remove all stored logins.
void getAllLogins ([optional] out unsigned long count,[retval, array, size_is(count)] out nsILoginInfo logins)
 Fetch all logins in the login manager.
void getAllEncryptedLogins ([optional] out unsigned long count,[retval, array, size_is(count)] out nsILoginInfo logins)
 Fetch all logins in the login manager.
void searchLogins (out unsigned long count, in nsIPropertyBag matchData,[retval, array, size_is(count)] out nsILoginInfo logins)
 Search for logins in the login manager.
void getAllDisabledHosts ([optional] out unsigned long count,[retval, array, size_is(count)] out wstring hostnames)
 Obtain a list of all hosts for which password saving is disabled.
boolean getLoginSavingEnabled (in AString aHost)
 Check to see if saving logins has been disabled for a host.
void setLoginSavingEnabled (in AString aHost, in boolean isEnabled)
 Disable (or enable) storing logins for the specified host.
void findLogins (out unsigned long count, in AString aHostname, in AString aActionURL, in AString aHttpRealm,[retval, array, size_is(count)] out nsILoginInfo logins)
 Search for logins matching the specified criteria.
unsigned long countLogins (in AString aHostname, in AString aActionURL, in AString aHttpRealm)
 Search for logins matching the specified criteria, as with findLogins().

Member Function Documentation

void nsILoginManagerStorage::addLogin ( in nsILoginInfo  aLogin  ) 

Store a new login in the storage module.

Parameters:
aLogin The login to be added.

Default values for the login's nsILoginMetaInfo properties will be created. However, if the caller specifies non-default values, they will be used instead.

unsigned long nsILoginManagerStorage::countLogins ( in AString  aHostname,
in AString  aActionURL,
in AString  aHttpRealm 
)

Search for logins matching the specified criteria, as with findLogins().

This interface only returns the number of matching logins (and not the logins themselves), which allows a caller to check for logins without causing the user to be prompted for a master password to decrypt the logins.

Parameters:
aHostname The hostname to restrict searches to. Specify an empty string to match all hosts. A null value will not match any logins, and will thus always return a count of 0.
aActionURL The URL to which a form login will be submitted. To match any form login, specify an empty string. To not match any form login, specify null.
aHttpRealm The HTTP Realm for which the login applies. To match logins for any realm, specify an empty string. To not match logins for any realm, specify null.
void nsILoginManagerStorage::findLogins ( out unsigned long  count,
in AString  aHostname,
in AString  aActionURL,
in AString  aHttpRealm,
[retval, array, size_is(count)] out nsILoginInfo  logins 
)

Search for logins matching the specified criteria.

Called when looking for logins that might be applicable to a form or authentication request.

Parameters:
count The number of elements in the array. JS callers can simply use the array's .length property, and supply an dummy object for this out param. For example: |findLogins({}, hostname, ...)|
aHostname The hostname to restrict searches to, in URL format. For example: "http://www.site.com".
aActionURL For form logins, this argument should be the URL to which the form will be submitted. For protocol logins, specify null.
aHttpRealm For protocol logins, this argument should be the HTTP Realm for which the login applies. This is obtained from the WWW-Authenticate header. See RFC2617. For form logins, specify null.
logins An array of nsILoginInfo objects.

NOTE: This can be called from JS as: var logins = pwmgr.findLogins({}, hostname, ...);

void nsILoginManagerStorage::getAllDisabledHosts ( [optional] out unsigned long  count,
[retval, array, size_is(count)] out wstring  hostnames 
)

Obtain a list of all hosts for which password saving is disabled.

Parameters:
count The number of elements in the array. JS callers can simply use the array's .length property and omit this param.
hostnames An array of hostname strings, in origin URL format without a pathname. For example: "https://www.site.com".

NOTE: This can be called from JS as: var logins = pwmgr.getAllDisabledHosts();

void nsILoginManagerStorage::getAllEncryptedLogins ( [optional] out unsigned long  count,
[retval, array, size_is(count)] out nsILoginInfo  logins 
)

Fetch all logins in the login manager.

An array is always returned; if there are no logins the array is empty. This does not decrypt logins before returning the array

Parameters:
count The number of elements in the array. JS callers can simply use the array's .length property and omit this param.
logins An array of nsILoginInfo objects.

NOTE: This can be called from JS as: var logins = pwmgr.getAllEncryptedLogins(); (|logins| is an array).

void nsILoginManagerStorage::getAllLogins ( [optional] out unsigned long  count,
[retval, array, size_is(count)] out nsILoginInfo  logins 
)

Fetch all logins in the login manager.

An array is always returned; if there are no logins the array is empty.

Parameters:
count The number of elements in the array. JS callers can simply use the array's .length property and omit this param.
logins An array of nsILoginInfo objects.

NOTE: This can be called from JS as: var logins = pwmgr.getAllLogins(); (|logins| is an array).

boolean nsILoginManagerStorage::getLoginSavingEnabled ( in AString  aHost  ) 

Check to see if saving logins has been disabled for a host.

Parameters:
aHost The hostname to check. This argument should be in the origin URL format, without a pathname. For example: "http://foo.com".
void nsILoginManagerStorage::init (  ) 

Initialize the component.

Not invoked automatically.

void nsILoginManagerStorage::initWithFile ( in nsIFile  aInputFile,
in nsIFile  aOutputFile 
)

Initialize the component, but override the default filename locations.

This is primarily used to the unit tests and profile migration.

Parameters:
aInputFile File to read for stored logins.
aOutputFile If non-null, file to output logins to.
void nsILoginManagerStorage::modifyLogin ( in nsILoginInfo  oldLogin,
in nsISupports  newLoginData 
)

Modify an existing login in the storage module.

Parameters:
oldLogin The login to be modified.
newLoginData The new login values (either a nsILoginInfo or nsIProperyBag)

If newLoginData is a nsILoginInfo, all of the old login's nsILoginInfo properties are changed to the values from newLoginData (but the old login's nsILoginMetaInfo properties are unmodified).

If newLoginData is a nsIPropertyBag, only the specified properties will be changed. The nsILoginMetaInfo properties of oldLogin can be changed in this manner.

void nsILoginManagerStorage::removeAllLogins (  ) 

Remove all stored logins.

The browser sanitization feature allows the user to clear any stored passwords. This interface allows that to be done without getting each login first (which might require knowing the master password).

void nsILoginManagerStorage::removeLogin ( in nsILoginInfo  aLogin  ) 

Remove a login from the storage module.

Parameters:
aLogin The login to be removed.

The specified login must exactly match a stored login. However, the values of any nsILoginMetaInfo properties are ignored.

void nsILoginManagerStorage::searchLogins ( out unsigned long  count,
in nsIPropertyBag  matchData,
[retval, array, size_is(count)] out nsILoginInfo  logins 
)

Search for logins in the login manager.

An array is always returned; if there are no logins the array is empty.

Parameters:
count The number of elements in the array. JS callers can simply use the array's .length property, and supply an dummy object for this out param. For example: |searchLogins({}, matchData)|
matchData The data used to search. This does not follow the same requirements as findLogins for those fields. Wildcard matches are simply not specified.
logins An array of nsILoginInfo objects.

NOTE: This can be called from JS as: var logins = pwmgr.searchLogins({}, matchData); (|logins| is an array).

void nsILoginManagerStorage::setLoginSavingEnabled ( in AString  aHost,
in boolean  isEnabled 
)

Disable (or enable) storing logins for the specified host.

When disabled, the login manager will not prompt to store logins for that host. Existing logins are not affected.

Parameters:
aHost The hostname to set. This argument should be in the origin URL format, without a pathname. For example: "http://foo.com".
isEnabled Specify if saving logins should be enabled (true) or disabled (false)

The documentation for this interface was generated from the following file: