MCPcopy
hub / github.com/mailvelope/mailvelope / mapSubKeys

Function mapSubKeys

src/modules/key.js:193–219  ·  view source on GitHub ↗
(subkeys = [], toKey, key)

Source from the content-addressed store, hash-verified

191}
192
193export async function mapSubKeys(subkeys = [], toKey, key) {
194 const primaryKey = key.keyPacket;
195 toKey.subkeys = [];
196 await Promise.all(subkeys.map(async subkey => {
197 try {
198 const skey = {};
199 const keyStatus = await verifyPrimaryKey(key);
200 const subKeyStatus = await verifySubKey(subkey);
201 skey.status = subKeyStatus < keyStatus ? subKeyStatus : keyStatus;
202 skey.crDate = subkey.keyPacket.created.toISOString();
203 skey.exDate = await subkey.getExpirationTime(primaryKey);
204 if (skey.exDate === Infinity) {
205 skey.exDate = false;
206 } else if (skey.exDate !== null) {
207 skey.exDate = skey.exDate.toISOString();
208 }
209 skey.keyId = subkey.getKeyID().toHex().toUpperCase();
210 const keyInfo = subkey.getAlgorithmInfo();
211 skey.algorithm = getAlgorithmString(keyInfo);
212 skey.bitLength = getKeyBitLength(keyInfo);
213 skey.fingerprint = subkey.getFingerprint();
214 toKey.subkeys.push(skey);
215 } catch (e) {
216 console.log('Exception in mapSubKeys', e);
217 }
218 }));
219}
220
221export async function mapUsers(users = [], toKey, keyring, key) {
222 toKey.users = [];

Callers 3

key-test.jsFile · 0.90
getKeyDetailsMethod · 0.90

Calls 7

verifyPrimaryKeyFunction · 0.85
verifySubKeyFunction · 0.85
getAlgorithmStringFunction · 0.85
getKeyBitLengthFunction · 0.85
toHexMethod · 0.80
getKeyIDMethod · 0.45
pushMethod · 0.45

Tested by

no test coverage detected