/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ "use strict"; var { classes: Cc, interfaces: Ci, utils: Cu } = Components; // This is only usable from the parent process, even for doing simple stuff like // serializing a cert. var gCertMaker = Cc["@mozilla.org/security/x509certdb;1"]. getService(Ci.nsIX509CertDB); var gCertOverrides = Cc["@mozilla.org/security/certoverride;1"]. getService(Ci.nsICertOverrideService); addMessageListener('add-turns-certs', certs => { var port = 5349; certs.forEach(certDescription => { var cert = gCertMaker.constructX509FromBase64(certDescription.cert); gCertOverrides.rememberValidityOverride(certDescription.hostname, port, cert, Ci.nsICertOverrideService.ERROR_UNTRUSTED, false); }); sendAsyncMessage('certs-added'); });