digest_type
setup_key_digest(int algo, EVP_PKEY** evp_key, const EVP_MD** digest_type,
*digest_type = EVP_dss1();
*digest_type = EVP_sha1();
*digest_type = EVP_sha256();
*digest_type = EVP_sha512();
*digest_type = EVP_sha1();
*digest_type = EVP_md5();
*digest_type = EVP_get_digestbyname("md_gost94");
if(!*digest_type) {
*digest_type = &ecdsa_evp_256_md;
*digest_type = EVP_sha256();
*digest_type = &ecdsa_evp_384_md;
*digest_type = EVP_sha384();
*digest_type = NULL;
*digest_type = NULL;
const EVP_MD *digest_type;
if(!setup_key_digest(algo, &evp_key, &digest_type, key, keylen)) {
if(EVP_DigestInit(ctx, digest_type) == 0) {
if(EVP_DigestVerifyInit(ctx, NULL, digest_type, NULL, evp_key) == 0) {
*digest_type = SSHFP_HASH_RESERVED; /* 0 */
if (*algorithm && *digest_type) {
dns_read_rdata(uint8_t *algorithm, uint8_t *digest_type,
*digest_type = SSHFP_HASH_RESERVED;
*digest_type = rdata[1];
dns_read_key(uint8_t *algorithm, uint8_t *digest_type,
switch (*digest_type) {
digeststr(cte->table->conf.digest_type, head, strlen(head), digest);
enum digest_type type;
table->conf.digest_type = $4.type;
digeststr(enum digest_type type, const u_int8_t *data, size_t len, char *buf)
char *digeststr(enum digest_type, const u_int8_t *, size_t, char *);
enum digest_type kv_digest;
u_int8_t digest_type;
setup_key_digest(int algo, EVP_PKEY** evp_key, const EVP_MD** digest_type,
*digest_type = EVP_dss1();
*digest_type = EVP_sha1();
*digest_type = EVP_sha256();
*digest_type = EVP_sha512();
*digest_type = EVP_sha1();
*digest_type = EVP_md5();
*digest_type = EVP_get_digestbyname("md_gost94");
if(!*digest_type) {
*digest_type = &ecdsa_evp_256_md;
*digest_type = EVP_sha256();
*digest_type = &ecdsa_evp_384_md;
*digest_type = EVP_sha384();
*digest_type = NULL;
*digest_type = NULL;
const EVP_MD *digest_type;
if(!setup_key_digest(algo, &evp_key, &digest_type, key, keylen)) {
if(EVP_DigestInit(ctx, digest_type) == 0) {
if(EVP_DigestVerifyInit(ctx, NULL, digest_type, NULL, evp_key) == 0) {