Error handling when encrypting the verification email fails
This commit is contained in:
parent
9159bd5a47
commit
b83f13cde2
@ -82,19 +82,24 @@ class Email {
|
|||||||
* @return {string} the encrypted PGP message block
|
* @return {string} the encrypted PGP message block
|
||||||
*/
|
*/
|
||||||
async _pgpEncrypt(plaintext, publicKeyArmored) {
|
async _pgpEncrypt(plaintext, publicKeyArmored) {
|
||||||
const {keys : [key], err} = await openpgp.key.readArmored(publicKeyArmored);
|
const {keys: [key], err} = await openpgp.key.readArmored(publicKeyArmored);
|
||||||
if (err) {
|
if (err) {
|
||||||
log.error('email', 'Reading armored key failed.', err, publicKeyArmored);
|
log.error('email', 'Reading armored key failed.', err, publicKeyArmored);
|
||||||
}
|
}
|
||||||
const now = new Date();
|
const now = new Date();
|
||||||
// set message creation date if key has been created with future creation date
|
// set message creation date if key has been created with future creation date
|
||||||
const msgCreationDate = key.primaryKey.created > now ? key.primaryKey.created : now;
|
const msgCreationDate = key.primaryKey.created > now ? key.primaryKey.created : now;
|
||||||
|
try {
|
||||||
const ciphertext = await openpgp.encrypt({
|
const ciphertext = await openpgp.encrypt({
|
||||||
message: openpgp.message.fromText(plaintext),
|
message: openpgp.message.fromText(plaintext),
|
||||||
publicKeys: key,
|
publicKeys: key,
|
||||||
date: msgCreationDate
|
date: msgCreationDate
|
||||||
});
|
});
|
||||||
return ciphertext.data;
|
return ciphertext.data;
|
||||||
|
} catch (error) {
|
||||||
|
log.error('email', 'Encrypting message failed.', error, publicKeyArmored);
|
||||||
|
util.throw(400, 'Encrypting message for verification email failed.', error);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user