[evolution] I#1063 - Enhance debug prints of PKCS12 file import
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution] I#1063 - Enhance debug prints of PKCS12 file import
- Date: Tue, 25 Aug 2020 10:48:48 +0000 (UTC)
commit 4bbd80f613c6b4c4d19938d6b10013c59c2f4b19
Author: Milan Crha <mcrha redhat com>
Date: Tue Aug 25 12:48:11 2020 +0200
I#1063 - Enhance debug prints of PKCS12 file import
Closes https://gitlab.gnome.org/GNOME/evolution/-/issues/1063
src/smime/lib/e-cert-db.c | 12 ++++++------
src/smime/lib/e-cert-db.h | 2 ++
src/smime/lib/e-pkcs12.c | 35 ++++++++++++++++++++++++++++++++++-
3 files changed, 42 insertions(+), 7 deletions(-)
---
diff --git a/src/smime/lib/e-cert-db.c b/src/smime/lib/e-cert-db.c
index 690da3138e..062f02224f 100644
--- a/src/smime/lib/e-cert-db.c
+++ b/src/smime/lib/e-cert-db.c
@@ -98,8 +98,8 @@ e_certdb_error_quark (void)
return q;
}
-static const gchar *
-nss_error_to_string (glong errorcode)
+const gchar *
+e_cert_db_nss_error_to_string (gint errorcode)
{
#define cs(a,b) case a: return b;
@@ -287,7 +287,7 @@ nss_error_to_string (glong errorcode)
static void
set_nss_error (GError **error)
{
- glong err_code;
+ gint err_code;
const gchar *err_str;
if (!error)
@@ -300,7 +300,7 @@ set_nss_error (GError **error)
if (!err_code)
return;
- err_str = nss_error_to_string (err_code);
+ err_str = e_cert_db_nss_error_to_string (err_code);
if (!err_str)
return;
@@ -897,10 +897,10 @@ gboolean e_cert_db_change_cert_trust (CERTCertificate *cert, CERTCertTrust *trus
cert, trust);
if (srv != SECSuccess) {
- glong err = PORT_GetError ();
+ gint err = PORT_GetError ();
g_warning (
"CERT_ChangeCertTrust() failed: %s\n",
- nss_error_to_string (err));
+ e_cert_db_nss_error_to_string (err));
return FALSE;
}
return TRUE;
diff --git a/src/smime/lib/e-cert-db.h b/src/smime/lib/e-cert-db.h
index 016cfd94c1..5a4a5837fa 100644
--- a/src/smime/lib/e-cert-db.h
+++ b/src/smime/lib/e-cert-db.h
@@ -113,4 +113,6 @@ gboolean e_cert_db_login_to_slot (ECertDB *cert_db,
gboolean e_cert_db_change_cert_trust (CERTCertificate *cert,
CERTCertTrust *trust);
+const gchar * e_cert_db_nss_error_to_string (gint errorcode);
+
#endif /* _E_CERT_DB_H_ */
diff --git a/src/smime/lib/e-pkcs12.c b/src/smime/lib/e-pkcs12.c
index 79bf4250f8..a2e6096af7 100644
--- a/src/smime/lib/e-pkcs12.c
+++ b/src/smime/lib/e-pkcs12.c
@@ -465,7 +465,40 @@ nickname_collision (SECItem *oldNick,
static gboolean
handle_error (gint myerr)
{
- printf ("handle_error (%d)\n", myerr);
+ switch (myerr) {
+ case PKCS12_RESTORE_OK:
+ printf ("PKCS12: Restore succeeded\n");
+ break;
+ case PKCS12_BACKUP_OK:
+ printf ("PKCS12: Backup succeeded\n");
+ break;
+ case PKCS12_USER_CANCELED:
+ printf ("PKCS12: User cancelled operation\n");
+ break;
+ case PKCS12_NOSMARTCARD_EXPORT:
+ printf ("PKCS12: No smart card export\n");
+ break;
+ case PKCS12_RESTORE_FAILED:
+ printf ("PKCS12: Restore failed\n");
+ break;
+ case PKCS12_BACKUP_FAILED:
+ printf ("PKCS12: Backup failed\n");
+ break;
+ case PKCS12_NSS_ERROR: {
+ gint nss_code = PORT_GetError ();
+ const gchar *nss_errstr = e_cert_db_nss_error_to_string (nss_code);
+
+ if (nss_code && nss_errstr)
+ printf ("PKCS12: NSS error: %d (%s)\n", nss_code, nss_errstr);
+ else if (nss_code)
+ printf ("PKCS12: NSS error: %d\n", nss_code);
+ else
+ printf ("PKCS12: Unknown NSS error\n");
+ } break;
+ default:
+ printf ("PKCS12: handle_error (%d)\n", myerr);
+ break;
+ }
return FALSE;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]