pkcs11.getModuleSlots()
Enumerate a module's slots. This function returns an array containing one entry for each slot. Each entry contains the slot's name and, if the slot contains a token, information about the token.
You can only call this for a module that is installed in Firefox.
This is an asynchronous function that returns a Promise.
Syntax
var getting = browser.pkcs11.getModuleSlots( name // string )
Parameters
name-
string. Name of the module. This must match thenameproperty in the PKCS #11 manifest for the module.
Return value
A Promise that will be fulfilled with an array of objects, one for each slot that the module provides access to. Each object has two properties:
-
name: the name of the slot -
token: if a token is present in this slot, aTokenobject. If no token is present in the slot, this property isnull.
Token objects have the following properties:
name-
string. Name of the token. manufacturer-
string. Name of the token's manufacturer. HWVersion-
string. Hardware version, as a PKCS #11 version number (two 32-bit integers separated with a dot, like "1.0". FWVersion-
string. Firmware version, as a PKCS #11 version number (two 32-bit integers separated with a dot, like "1.0". serial-
string. Serial number, whose format is defined by the token specification. isLoggedIn-
boolean:trueif the token is logged on already,falseotherwise.
If the module could not be found or some other error occurs, the promise will be rejected with an error message.
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
getModuleSlots |
No |
No |
58 |
? |
No |
No |
? |
? |
No |
? |
? |
? |
Examples
Installs a module, then lists its slots and list the tokens they contain:
function onInstalled() { return browser.pkcs11.getModuleSlots("my_module"); } function onGotSlots(slots) { for (slot of slots) { console.log(`Slot: ${slot.name}`); if (slot.token) { console.log(`Contains token: ${slot.token.name}`); } else { console.log('Is empty'); } } } browser.pkcs11.installModule("my_module") .then(onInstalled) .then(onGotSlots);
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/pkcs11/getModuleSlots