MCPcopy
hub / github.com/mailvelope/mailvelope / load

Method load

src/modules/KeyStoreGPG.js:12–35  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

10
11export default class KeyStoreGPG extends KeyStoreBase {
12 async load() {
13 let {armored, secret_fprs} = await gpgme.Keyring.getKeysArmored({with_secret_fpr: true});
14 secret_fprs = secret_fprs.map(fpr => fpr.toLowerCase());
15 let keys = [];
16 try {
17 keys = await readKeys({armoredKeys: armored});
18 } catch (e) {
19 console.log('Error parsing armored GnuPG key:', e);
20 }
21 for (const key of keys) {
22 if (secret_fprs.includes(key.getFingerprint())) {
23 const privKey = new PrivateKeyGPG(key.toPacketList());
24 this.privateKeys.push(privKey);
25 } else {
26 this.publicKeys.push(key);
27 }
28 }
29 try {
30 const defaultKey = await gpgme.Keyring.getDefaultKey();
31 this.defaultKeyFpr = defaultKey.fingerprint.toLowerCase();
32 } catch (e) {
33 this.defaultKeyFpr = '';
34 }
35 }
36
37 async store() {
38 throw new Error('GPGME keyring does not implement store method');

Callers 6

KeyringGPG-test.jsFile · 0.45
buildKeyringFunction · 0.45
reloadKeystoreMethod · 0.45
constructorMethod · 0.45

Calls 2

pushMethod · 0.45
getDefaultKeyMethod · 0.45

Tested by

no test coverage detected