From 4e4c16760abdbc2ab34b159e52c5c027a1b2ad26 Mon Sep 17 00:00:00 2001 From: Chris Toshok Date: Wed, 26 Nov 2003 08:54:48 +0000 Subject: mostly implement a viewer for certificates. 2003-11-26 Chris Toshok * gui/certificate-viewer.[ch]: mostly implement a viewer for certificates. * gui/smime-ui.glade: fingerprints-sh1 -> fingerprints-sha1. * gui/certificate-manager.c (import_your): new function, use e-pkcs12 to implement it. (initialize_yourcerts_ui): hook up the import button. (view_contact): new function, bring up the certificate viewer. (initialize_contactcerts_ui): hook up the view button. (view_ca): new function, bring up the certificate viewer. (initialize_authoritycerts_ui): hook up the view button. * gui/Makefile.am (libevolution_smime_la_SOURCES): add certificate-viewer.[ch] * lib/e-cert.c (e_cert_dispose): free all the new cached foo. (e_cert_populate): populate all the new cached foo. (e_cert_get_issuer_cn): new function. (e_cert_get_issuer_org): same. (e_cert_get_issuer_org_unit): same. (e_cert_get_issued_on_time): same. (e_cert_get_issued_on): same. (e_cert_get_expires_on_time): same. (e_cert_get_expires_on): same. (e_cert_get_serial_number): same. (e_cert_get_sha1_fingerprint): same. (e_cert_get_md5_fingerprint): same. * lib/e-cert.h: add prototypes for lots more accessors. * lib/e-cert-db.c (e_cert_db_find_cert_by_key): fix typo. (e_cert_db_find_cert_by_email_address): call CERT_DestroyCertificate to free the cert. (default_nickname): new function. (e_cert_db_import_user_cert): implement. (e_cert_db_import_server_cert): add blurb. * lib/e-pkcs12.[ch]: new files. * lib/Makefile.am (libessmime_la_SOURCES): add e-pkcs12.[ch] svn path=/trunk/; revision=23486 --- smime/tests/Makefile.am | 9 ++++++--- smime/tests/import-cert.c | 15 ++++++++++++--- 2 files changed, 18 insertions(+), 6 deletions(-) (limited to 'smime/tests') diff --git a/smime/tests/Makefile.am b/smime/tests/Makefile.am index 0fd1064b00..2c0c54a88e 100644 --- a/smime/tests/Makefile.am +++ b/smime/tests/Makefile.am @@ -3,12 +3,15 @@ noinst_PROGRAMS=import-cert INCLUDES= \ -I$(top_srcdir)/smime/lib \ + $(EVOLUTION_ADDRESSBOOK_CFLAGS) \ $(CERT_UI_CFLAGS) TEST_LIBS= \ - $(top_builddir)/smime/lib/libessmime.la \ - -L/home/toshok/src/mozilla/mozilla/dist/lib \ - $(CERT_UI_LIBS) + $(top_builddir)/smime/lib/libessmime.la \ + -L/home/toshok/src/mozilla/mozilla/dist/lib \ + $(CERT_UI_LIBS) \ + $(top_builddir)/e-util/libeutil.la \ + $(GNOME_FULL_LIBS) import_cert_LDADD=$(TEST_LIBS) \ No newline at end of file diff --git a/smime/tests/import-cert.c b/smime/tests/import-cert.c index 76e8dc6ccd..e30b085317 100644 --- a/smime/tests/import-cert.c +++ b/smime/tests/import-cert.c @@ -1,15 +1,17 @@ +#include #include + #include "e-cert-db.h" +#include "e-pkcs12.h" int main (int argc, char **argv) { ECertDB *db; + EPKCS12 *pkcs12; - gnome_program_init (); - - g_type_init (); + gnome_program_init("import-cert-test", "0.0", LIBGNOMEUI_MODULE, argc, argv, NULL); db = e_cert_db_peek (); @@ -25,5 +27,12 @@ main (int argc, char **argv) g_warning ("server cert import failed"); } + pkcs12 = e_pkcs12_new (); + if (!e_pkcs12_import_from_file (pkcs12, "newcert.p12", NULL /* XXX */)) { + g_warning ("PKCS12 import failed"); + } + e_cert_db_shutdown (); + + return 0; } -- cgit v1.2.3