Lines Matching defs:md
37 const struct gcry_md_spec *md;
111 const gcry_md_spec_t *md;
115 for (md = grub_digests; md; md = md->next)
116 if (grub_strcasecmp (name, md->name) == 0)
117 return md;
254 /* Based on gcry/cipher/md.c. */
256 grub_crypto_hmac_init (const struct gcry_md_spec *md,
265 if (md->mdlen > md->blocksize)
268 ctx = grub_malloc (md->contextsize);
272 if ( keylen > md->blocksize )
274 helpkey = grub_malloc (md->mdlen);
277 grub_crypto_hash (md, helpkey, key, keylen);
280 keylen = md->mdlen;
283 ipad = grub_zalloc (md->blocksize);
287 opad = grub_zalloc (md->blocksize);
293 for (i=0; i < md->blocksize; i++ )
301 md->init (ctx);
303 md->write (ctx, ipad, md->blocksize); /* inner pad */
304 grub_memset (ipad, 0, md->blocksize);
312 ret->md = md;
331 hnd->md->write (hnd->ctx, data, datalen);
340 ctx2 = grub_malloc (hnd->md->contextsize);
344 hnd->md->final (hnd->ctx);
345 hnd->md->read (hnd->ctx);
346 p = hnd->md->read (hnd->ctx);
348 hnd->md->init (ctx2);
349 hnd->md->write (ctx2, hnd->opad, hnd->md->blocksize);
350 hnd->md->write (ctx2, p, hnd->md->mdlen);
351 hnd->md->final (ctx2);
352 grub_memset (hnd->opad, 0, hnd->md->blocksize);
354 grub_memset (hnd->ctx, 0, hnd->md->contextsize);
357 grub_memcpy (out, hnd->md->read (ctx2), hnd->md->mdlen);
358 grub_memset (ctx2, 0, hnd->md->contextsize);
368 grub_crypto_hmac_buffer (const struct gcry_md_spec *md,
374 hnd = grub_crypto_hmac_init (md, key, keylen);