[Bug 2009825] [NEW] snap thunderbird cannot sign messages with external gnupg

elodg 2009825 at bugs.launchpad.net
Thu Mar 9 11:26:42 UTC 2023


Public bug reported:

Thunderbird supports smartcards through the external GnuPG option: https://wiki.mozilla.org/Thunderbird:OpenPGP:Smartcards. However, the snap package cannot sign outgoing messages this way and errors out.
Works (apt list): thunderbird/jammy-updates,jammy-security,now 1:102.7.1+build2-0ubuntu0.22.04.1 amd64 [installed]
Does not work (snap list): thunderbird  102.8.0-2  297  latest/stable  canonical✓  -

I don't know if this is an expected consequence of the sandboxed
environment, but could not find the error anywhere else reported.

To reproduce:
Set mail.openpgp.allow_external_gnupg to true.
Add external key in account settings. Key is found and set.
Compose empty e-mail message to self, tick Digitally Sign option.

Result:
Message fails to send.

Error console output:
Found 6 public keys and 0 secret keys (0 protected, 0 unprotected) RNPLib.jsm:541:15
Successfully loaded optional OpenPGP library libgpgme.so.11 from system's standard library locations GPGMELib.jsm:69:13
gpgme version: 1.13.1-unknown GPGMELib.jsm:241:15
services.settings: Failed to load last_modified.json: TypeError: NetworkError when attempting to fetch resource. Utils.jsm:330
Trying to load /snap/thunderbird/297/libotr.so OTRLib.jsm:64:11
Successfully loaded OTR library /snap/thunderbird/297/libotr.so OTRLib.jsm:72:13
Loading failed for the <script> with source “https://start.thunderbird.net/media/js/common-bundle.js”. release:9:1
This page is in Quirks Mode. Page layout may be impacted. For Standards Mode use “<!DOCTYPE html>”. MsgComposeCommands.js:10587:14
NS_ERROR_NOT_AVAILABLE: PreferDisplayName: undefined - not a boolean 2 AddrBookCard.jsm:364
This page is in Quirks Mode. Page layout may be impacted. For Standards Mode use “<!DOCTYPE html>”. INBOX>9395
This page is in Quirks Mode. Page layout may be impacted. For Standards Mode use “<!DOCTYPE html>”. blank
This page is in Quirks Mode. Page layout may be impacted. For Standards Mode use “<!DOCTYPE html>”. MsgComposeCommands.js:10587:14
in getEncryptionFlags, gSendEncrypted=true, gSendSigned=true enigmailMsgComposeOverlay.js:1542:13
This page is in Quirks Mode. Page layout may be impacted. For Standards Mode use “<!DOCTYPE html>”. MimeMessageUtils.jsm:148:23
getCryptParams parameters: from=0xA96471A292DD7449, to=<email address>, bcc=, hash=SHA256, flags=53441, ascii=0, errorObj= 
Object { value: "" }
 , logObj= 
Object {  }
encryption.jsm:73:13
getCryptParams, got: to=elod at elod.email, bcc= encryption.jsm:113:13
getCryptParams returning: encryption.jsm:190:13
Object { sender: "0xA96471A292DD7449", sign: true, signatureHash: "SHA256", sigTypeClear: false, sigTypeDetached: true, encrypt: false, encryptToSender: false, armor: true, senderKeyIsExternal: true, to: (1) […], … }
encryption.jsm:191:13
sendFlags=0000d0c1 encryption.jsm:456:13
Error: failure in finishCryptoEncapsulation, exitCode: -1
    finishCryptoEncapsulation chrome://openpgp/content/modules/mimeEncrypt.jsm:580
    createMessageFile resource:///modules/MimeMessage.jsm:86
mimeEncrypt.jsm:597:15
mailnews.send: 
Exception { name: "NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS", message: "[JavaScript Error: \"failure in finishCryptoEncapsulation, exitCode: -1\" {file: \"chrome://openpgp/content/modules/mimeEncrypt.jsm\" line: 580}]'[JavaScript Error: \"failure in finishCryptoEncapsulation, exitCode: -1\" {file: \"chrome://openpgp/content/modules/mimeEncrypt.jsm\" line: 580}]' when calling method: [nsIMsgComposeSecure::finishCryptoEncapsulation]", result: 2153185313, filename: "resource:///modules/MimeMessage.jsm", lineNumber: 86, columnNumber: 0, data: XPCWrappedNative_NoHelper, stack: "createMessageFile at resource:///modules/MimeMessage.jsm:86:27\n", location: XPCWrappedNative_NoHelper }
MessageSend.jsm:130:27
mailnews.send: Sending failed; , exitCode=2153185313, originalMsgURI= MessageSend.jsm:335:27
mimeEncrypt.js: caught exception: Error
Message: 'failure in finishCryptoEncapsulation, exitCode: -1'
File:    chrome://openpgp/content/modules/mimeEncrypt.jsm
Line:    580
Stack:   finishCryptoEncapsulation at chrome://openpgp/content/modules/mimeEncrypt.jsm:580:15
createMessageFile at resource:///modules/MimeMessage.jsm:86:27


Error: failure in finishCryptoEncapsulation, exitCode: -1 mimeEncrypt.jsm:580:15
1678360923822	Toolkit.Telemetry	WARN	TelemetryStorage::_enforceArchiveQuota - Unable to find the size of ping 77548c81-37cf-41ee-9fb9-ac2aa911df11

** Affects: thunderbird (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: jammy snap

** Attachment added: "error message screenshot"
   https://bugs.launchpad.net/bugs/2009825/+attachment/5653168/+files/Screenshot%20from%202023-03-09%2013-21-54.png

-- 
You received this bug notification because you are a member of Mozilla
Bugs, which is subscribed to thunderbird in Ubuntu.
https://bugs.launchpad.net/bugs/2009825

Title:
  snap thunderbird cannot sign messages with external gnupg

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/thunderbird/+bug/2009825/+subscriptions




More information about the Ubuntu-mozillateam-bugs mailing list