View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0004433 | SOGo | Backend Mail | public | 2018-03-29 17:16 | 2018-08-01 14:51 |
Reporter | jordi | Assigned To | ludovic | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Platform | Linux | OS | Debian | OS Version | stretch |
Product Version | 4.0.0 | ||||
Fixed in Version | 4.0.2 | ||||
Summary | 0004433: S/MIME emails are rendered blank when using GnuTLS | ||||
Description | With 4.0.0, emails that are signed with S/MIME appear blank if GNUTLS was used to build SOGo like in Debian and Ubuntu. | ||||
Steps To Reproduce | Install Debian packages from ftp.debian.org. Open an email with a S/MIME signature. | ||||
Additional Information | I saw this codepath: https://salsa.debian.org/debian/sogo/commit/915fad335a2c37319dab8979e3708f5c02fb6dfe Is missing a GNUTLS hunk. Could it be the culprit? I haven't had time to test it. | ||||
Tags | No tags attached. | ||||
I debugged this issue today (although I was sure the backend was OpenSSL, huh), the ultimate problem is that SOGo a) fails to call SSL_load_error_strings(), and b) assumes ERR_reason_error_string() can never return NULL (but it can, for unknown error codes). When SSL_load_error_strings() wasn't called, a lot of error codes are unknown, but I still wouldn't assume /every/ code to be valid even if it was called. The NULL returned from ERR_reason_error_string() is passed to NSString's "stringWithUTF8String"-constructor which then fires an NSInvalidArgumentException (which makes it into the logfile). Here's my patch that fixes the issue: --- sogo-4.0.0.orig/UI/MailPartViewers/UIxMailPartSignedViewer.m
Edit: Oh well. Uploaded the patch as an attachment, too. |
|
sogo-smime.patch (713 bytes)
https://rt.fhr.fraunhofer.de/rt/Ticket/Display.html?id=1301 This is a comment. It is not sent to the Requestor(s): Und hier der Patch. --- sogo-4.0.0.orig/UI/MailPartViewers/UIxMailPartSignedViewer.m +++ sogo-4.0.0/UI/MailPartViewers/UIxMailPartSignedViewer.m @@ -170,8 +170,9 @@ if (err) { ERR_load_crypto_strings(); + SSL_load_error_strings(); sslError = ERR_reason_error_string(err); - validationMessage = [[self labelForKey: [NSString stringWithUTF8String: sslError]] retain]; + validationMessage = [[self labelForKey: [NSString stringWithUTF8String: sslError ? sslError : "(no error information available)"]] retain]; } } |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2018-03-29 17:16 | jordi | New Issue | |
2018-07-31 22:15 | tb | Note Added: 0012988 | |
2018-07-31 22:16 | tb | File Added: sogo-smime.patch | |
2018-07-31 22:17 | tb | Note Edited: 0012988 | |
2018-08-01 14:51 | ludovic | Changeset attached | => sogo master 5a48fca4 |
2018-08-01 14:51 | ludovic | Assigned To | => ludovic |
2018-08-01 14:51 | ludovic | Resolution | open => fixed |
2018-08-01 14:51 | ludovic | Status | new => resolved |
2018-08-01 14:51 | ludovic | Fixed in Version | => 4.0.2 |