示例#1
0
PRBool
e_cert_trust_has_any_user (CERTCertTrust *trust)
{
  if (e_cert_trust_has_trust(trust->sslFlags, CERTDB_USER) ||
      e_cert_trust_has_trust(trust->emailFlags, CERTDB_USER) ||
      e_cert_trust_has_trust(trust->objectSigningFlags, CERTDB_USER))
    return PR_TRUE;
  return PR_FALSE;
}
示例#2
0
PRBool
e_cert_trust_has_any_ca (CERTCertTrust *trust)
{
  if (e_cert_trust_has_trust(trust->sslFlags, CERTDB_VALID_CA) ||
      e_cert_trust_has_trust(trust->emailFlags, CERTDB_VALID_CA) ||
      e_cert_trust_has_trust(trust->objectSigningFlags, CERTDB_VALID_CA))
    return PR_TRUE;
  return PR_FALSE;
}
示例#3
0
PRBool
e_cert_trust_has_user (CERTCertTrust *trust,
		       PRBool checkSSL,
		       PRBool checkEmail,
		       PRBool checkObjSign)
{
  if (checkSSL && !e_cert_trust_has_trust(trust->sslFlags, CERTDB_USER))
    return PR_FALSE;
  if (checkEmail && !e_cert_trust_has_trust(trust->emailFlags, CERTDB_USER))
    return PR_FALSE;
  if (checkObjSign && !e_cert_trust_has_trust(trust->objectSigningFlags, CERTDB_USER))
    return PR_FALSE;
  return PR_TRUE;
}
示例#4
0
PRBool
e_cert_trust_has_trusted_ca (CERTCertTrust *trust,
                             PRBool checkSSL,
                             PRBool checkEmail,
                             PRBool checkObjSign)
{
	if (checkSSL && !(e_cert_trust_has_trust (
		trust->sslFlags, CERTDB_TRUSTED_CA) ||
		e_cert_trust_has_trust (
		trust->sslFlags, CERTDB_TRUSTED_CLIENT_CA)))
		return PR_FALSE;

	if (checkEmail && !(e_cert_trust_has_trust (
		trust->emailFlags, CERTDB_TRUSTED_CA) ||
		e_cert_trust_has_trust (
		trust->emailFlags, CERTDB_TRUSTED_CLIENT_CA)))
		return PR_FALSE;

	if (checkObjSign && !(e_cert_trust_has_trust (
		trust->objectSigningFlags, CERTDB_TRUSTED_CA) ||
		e_cert_trust_has_trust (
		trust->objectSigningFlags, CERTDB_TRUSTED_CLIENT_CA)))
		return PR_FALSE;

	return PR_TRUE;
}