diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
commit | 26a029d407be480d791972afb5975cf62c9360a6 (patch) | |
tree | f435a8308119effd964b339f76abb83a57c29483 /toolkit/components/credentialmanagement/nsIIdentityCredentialStorageService.idl | |
parent | Initial commit. (diff) | |
download | firefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz firefox-26a029d407be480d791972afb5975cf62c9360a6.zip |
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'toolkit/components/credentialmanagement/nsIIdentityCredentialStorageService.idl')
-rw-r--r-- | toolkit/components/credentialmanagement/nsIIdentityCredentialStorageService.idl | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/toolkit/components/credentialmanagement/nsIIdentityCredentialStorageService.idl b/toolkit/components/credentialmanagement/nsIIdentityCredentialStorageService.idl new file mode 100644 index 0000000000..0d993549e3 --- /dev/null +++ b/toolkit/components/credentialmanagement/nsIIdentityCredentialStorageService.idl @@ -0,0 +1,38 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsISupports.idl" +#include "nsIPrincipal.idl" + +webidl IdentityCredential; + +[scriptable, builtinclass, uuid(029823d0-0448-46c5-af1f-25cd4501d0d7)] +interface nsIIdentityCredentialStorageService : nsISupports { + // Store the registered and allowLogout bit for the tuple (rpPrincipal, idpPrincipal, credentialID). + // This goes straight to disk if rpPrincipal is not in Private Browsing mode and stays in memory otherwise. + // Additionally, if rpPrincipal is private, it will be cleared when the user closes the last private browsing window. + void setState(in nsIPrincipal rpPrincipal, in nsIPrincipal idpPrincipal, in ACString credentialID, in boolean registered, in boolean allowLogout); + + // Retrieve the registered and allowLogout bits for the tuple (rpPrincipal, idpPrincipal, credentialID). + // This will always return defaults, even if there was never a value stored or it was deleted. + void getState(in nsIPrincipal rpPrincipal, in nsIPrincipal idpPrincipal, in ACString credentialID, out boolean registered, out boolean allowLogout); + + // Delete the entry for the tuple (rpPrincipal, idpPrincipal, credentialID). + void delete(in nsIPrincipal rpPrincipal, in nsIPrincipal idpPrincipal, in ACString credentialID); + + // Delete all data in this service. + void clear(); + + // Delete all data stored under a tuple with rpPrincipal that has the given base domain + void deleteFromBaseDomain(in ACString baseDomain); + + // Delete all data stored under a tuple with a given rpPrincipal + void deleteFromPrincipal(in nsIPrincipal rpPrincipal); + + // Delete all data stored in the given time range (microseconds since epoch) + void deleteFromTimeRange(in PRTime aFrom, in PRTime aTo); + + // Delete all data matching the given Origin Attributes pattern + void deleteFromOriginAttributesPattern(in AString aPattern); +}; |