anchor.diff:          " -out ", CertPath]),
   
       ?info("~s", [SigningOutput]),
  +    ?info("Generating an empty CRL..."),
  +
  +    CrlGenerationOutput = os:cmd(["openssl ca",
  +        " -config ", CaConfigFile,
  +        " -gencrl",
  +        " -out ", filename:join(CaDir, "crl.pem")]),
  +
  +    ?info("~s", [CrlGenerationOutput]),
   
       mochitemp:rmtempdir(TmpDir),
       ok.
  
positive.code:         " -revoke ", filename:join([CaDir, "newcerts", Serial]), ".pem"]),
      ?info("~s", [RevokeOutput]),
      ?info("Generating an updated CRL"),
      CreateCrlOutput = os:cmd(["openssl ca"
          " -config ", CaConfigFile,
          " -gencrl",
          " -out ", filename:join(CaDir, "crl.pem")]),
      ?info(CreateCrlOutput),
      ok.
  
  
  
negative.code: -spec verify_provider_imp(PeerCertDer :: public_key:der_encoded(),
      CaDir :: string()) -> {ok, ProviderId :: binary()}.
  %% ====================================================================
  verify_provider_imp(PeerCertDer, CaDir) ->
      CaCertFile = cacert_path(CaDir),
      {ok, CaCertPem} = file:read_file(CaCertFile),
      [{'Certificate', CaCertDer, not_encrypted}] = public_key:pem_decode(CaCertPem),
  