--- pkcs11-loader_3.6.js 2013-02-01 13:37:42.892030919 +0200 +++ pkcs11-loader_3.7.js 2013-02-01 13:38:08.564733971 +0200 @@ -115,44 +115,27 @@ return certFound; } -function installCertificateIfNotExist(certName) { - if (!FindCertificateByNickname(certName + " - AS Sertifitseerimiskeskus")) { - return addCertificate(certName + ".crt", 'C,c,c'); - } - return false; -} - function CertificateImporter() { - netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect'); var restartNeeded = false; - if (!FindCertificateByNickname("ESTEID-SK - AS Sertifitseerimiskeskus")) { - if(!FindCertificateByNickname("SK-ESTEID")){ - restartNeeded = addCertificate("ESTEID-SK.crt", 'C,c,c'); - } - } - if (!FindCertificateByNickname("ESTEID-SK 2007 - AS Sertifitseerimiskeskus")) { - if(!FindCertificateByNickname("SK-ESTEID-2007")){ - restartNeeded = addCertificate("ESTEID-SK 2007.crt", 'C,c,c'); - } - } - - if (!FindCertificateByNickname("EE Certification Centre Root CA - AS Sertifitseerimiskeskus")) { + if (!FindCertificateByNickname("Builtin Object Token:EE Certification Centre Root CA") && + !FindCertificateByNickname("EE Certification Centre Root CA - AS Sertifitseerimiskeskus")) { restartNeeded = addCertificate("EECCRCA" + ".crt", 'C,c,c'); } - var newCertificates=["EID-SK 2011", "ESTEID-SK 2011"]; + var newCertificates=["ESTEID-SK 2007", "ESTEID-SK 2011"]; for (var i = 0; i < newCertificates.length; i++) { - var result = installCertificateIfNotExist(newCertificates[i]); + var result = false; + if (!FindCertificateByNickname(newCertificates[i] + " - AS Sertifitseerimiskeskus")) { + result = addCertificate(newCertificates[i] + ".crt", 'C,c,c'); + } restartNeeded = (restartNeeded || result); } - if (restartNeeded) restartFF(); -} - -function restartFF() { - var boot = Cc["@mozilla.org/toolkit/app-startup;1"].getService(Ci.nsIAppStartup); - boot.quit(Ci.nsIAppStartup.eForceQuit | Ci.nsIAppStartup.eRestart); + if (restartNeeded) { + var boot = Cc["@mozilla.org/toolkit/app-startup;1"].getService(Ci.nsIAppStartup); + boot.quit(Ci.nsIAppStartup.eForceQuit | Ci.nsIAppStartup.eRestart); + } } function addCertificate(CertName, CertTrust) { @@ -207,7 +190,7 @@ return "/Library/EstonianIDCard/config/certs/"; } else if (platform == "X11"){ - return "/usr/etc/digidocpp/certs/"; + return "/usr/share/esteid/certs/"; } else if (platform == "Windows"){ var certsLocation;