class Gem::Security::Policy

def check_cert(signer, issuer, time)

def check_cert(signer, issuer, time)
  raise Gem::Security::Exception, "missing signing certificate" unless
    signer
  message = "certificate #{signer.subject}"
  if (not_before = signer.not_before) && not_before > time
    raise Gem::Security::Exception,
          "#{message} not valid before #{not_before}"
  end
  if (not_after = signer.not_after) && not_after < time
    raise Gem::Security::Exception, "#{message} not valid after #{not_after}"
  end
  if issuer && !signer.verify(issuer.public_key)
    raise Gem::Security::Exception,
          "#{message} was not issued by #{issuer.subject}"
  end
  true
end