From f05ae97ea17e835b4f9b198e4ebeb892f33aabd9 Mon Sep 17 00:00:00 2001 From: JP Rosevear Date: Mon, 6 Jun 2005 19:24:30 +0000 Subject: pull up missing merge from branch 2005-06-06 JP Rosevear * lib/e-cert-db.c (install_loadable_roots): pull up missing merge from branch svn path=/trunk/; revision=29462 --- smime/lib/e-cert-db.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'smime/lib/e-cert-db.c') diff --git a/smime/lib/e-cert-db.c b/smime/lib/e-cert-db.c index 5e275a063c..ce1e908412 100644 --- a/smime/lib/e-cert-db.c +++ b/smime/lib/e-cert-db.c @@ -240,6 +240,7 @@ install_loadable_roots (void) if (RootsModule) { /* Check version, and unload module if it is too old */ CK_INFO info; + if (PK11_GetModInfo (RootsModule, &info) != SECSuccess) { /* Do not use this module */ RootsModule = NULL; @@ -270,12 +271,19 @@ install_loadable_roots (void) char *paths_to_check[] = { "/usr/lib", "/usr/lib/mozilla", + "/opt/mozilla/lib", + "/opt/mozilla/lib/mozilla" }; for (i = 0; i < G_N_ELEMENTS (paths_to_check); i ++) { char *dll_path = g_module_build_path (paths_to_check [i], "nssckbi"); if (g_file_test (dll_path, G_FILE_TEST_EXISTS)) { + PRInt32 modType; + + /* Delete the existing module */ + SECMOD_DeleteModule ("Mozilla Root Certs", &modType); + SECMOD_AddNewModule("Mozilla Root Certs",dll_path, 0, 0); g_free (dll_path); break; -- cgit v1.2.3