2003-11-26 Chris Toshok <toshok@ximian.com> * 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
39 lines
877 B
C
39 lines
877 B
C
|
|
#include <gtk/gtk.h>
|
|
#include <libgnomeui/gnome-ui-init.h>
|
|
|
|
#include "e-cert-db.h"
|
|
#include "e-pkcs12.h"
|
|
|
|
int
|
|
main (int argc, char **argv)
|
|
{
|
|
ECertDB *db;
|
|
EPKCS12 *pkcs12;
|
|
|
|
gnome_program_init("import-cert-test", "0.0", LIBGNOMEUI_MODULE, argc, argv, NULL);
|
|
|
|
db = e_cert_db_peek ();
|
|
|
|
if (!e_cert_db_import_certs_from_file (db, "ca.crt", E_CERT_CA, NULL /* XXX */)) {
|
|
g_warning ("CA cert import failed");
|
|
}
|
|
|
|
if (!e_cert_db_import_certs_from_file (db, "", E_CERT_CONTACT, NULL /* XXX */)) {
|
|
g_warning ("contact cert import failed");
|
|
}
|
|
|
|
if (!e_cert_db_import_certs_from_file (db, "", E_CERT_SITE, NULL /* XXX */)) {
|
|
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;
|
|
}
|