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