29a772
--- a/toolkit/modules/CertUtils.jsm
29a772
+++ b/toolkit/modules/CertUtils.jsm
29a772
@@ -170,17 +170,19 @@ this.checkCert =
29a772
   issuerCert = issuerCert.QueryInterface(Ci.nsIX509Cert3);
29a772
   var tokenNames = issuerCert.getAllTokenNames({});
29a772
 
29a772
   if (!tokenNames || !tokenNames.some(isBuiltinToken))
29a772
     throw new Ce(certNotBuiltInErr, Cr.NS_ERROR_ABORT);
29a772
 }
29a772
 
29a772
 function isBuiltinToken(tokenName) {
29a772
-  return tokenName == "Builtin Object Token";
29a772
+  return tokenName == "Builtin Object Token" ||
29a772
+         tokenName == "Default Trust" ||
29a772
+         tokenName == "System Trust";
29a772
 }
29a772
 
29a772
 /**
29a772
  * This class implements nsIBadCertListener.  Its job is to prevent "bad cert"
29a772
  * security dialogs from being shown to the user.  It is better to simply fail
29a772
  * if the certificate is bad. See bug 304286.
29a772
  *
29a772
  * @param  aAllowNonBuiltInCerts (optional)