forked from mirrors/gecko-dev
Before this patch, we exposed a few interfaces that revolved around mapping a name to a specific PKCS#11 module, slot, or token. These APIs were all either problematic and/or unnecessary. In theory there could be two tokens in different modules with the same name, so nsIPK11TokenDB.findTokenByName wasn't guaranteed to return what the consumer expected it to. In general, these APIs were used by front-end code to go from a handle on the specific object in question to a string identifier and then back to a handle on the object. This was unnecessary - we can just retain the original handle. MozReview-Commit-ID: IbqLbV4wceA --HG-- extra : rebase_source : 05d39afd6bed0aa5e7694e1c79baf836edc03214
40 lines
1 KiB
Text
40 lines
1 KiB
Text
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
|
*
|
|
* 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"
|
|
|
|
interface nsIPKCS11Module;
|
|
interface nsIPKCS11Slot;
|
|
interface nsISimpleEnumerator;
|
|
|
|
%{C++
|
|
#define NS_PKCS11MODULEDB_CONTRACTID "@mozilla.org/security/pkcs11moduledb;1"
|
|
%}
|
|
|
|
[scriptable, uuid(ff9fbcd7-9517-4334-b97a-ceed78909974)]
|
|
interface nsIPKCS11ModuleDB : nsISupports
|
|
{
|
|
[must_use]
|
|
void deleteModule(in AString moduleName);
|
|
|
|
[must_use]
|
|
void addModule(in AString moduleName,
|
|
in AString libraryFullPath,
|
|
in long cryptoMechanismFlags,
|
|
in long cipherFlags);
|
|
|
|
[must_use]
|
|
nsISimpleEnumerator listModules();
|
|
|
|
[must_use]
|
|
readonly attribute boolean canToggleFIPS;
|
|
|
|
[must_use]
|
|
void toggleFIPSMode();
|
|
|
|
[must_use]
|
|
readonly attribute boolean isFIPSEnabled;
|
|
};
|