cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

hmacpriv.h (1273B)


      1/*
      2 * QEMU Crypto hmac driver supports
      3 *
      4 * Copyright (c) 2017 HUAWEI TECHNOLOGIES CO., LTD.
      5 *
      6 * Authors:
      7 *    Longpeng(Mike) <longpeng2@huawei.com>
      8 *
      9 * This work is licensed under the terms of the GNU GPL, version 2 or
     10 * (at your option) any later version.  See the COPYING file in the
     11 * top-level directory.
     12 *
     13 */
     14
     15#ifndef QCRYPTO_HMACPRIV_H
     16#define QCRYPTO_HMACPRIV_H
     17
     18typedef struct QCryptoHmacDriver QCryptoHmacDriver;
     19
     20struct QCryptoHmacDriver {
     21    int (*hmac_bytesv)(QCryptoHmac *hmac,
     22                       const struct iovec *iov,
     23                       size_t niov,
     24                       uint8_t **result,
     25                       size_t *resultlen,
     26                       Error **errp);
     27
     28    void (*hmac_free)(QCryptoHmac *hmac);
     29};
     30
     31extern void *qcrypto_hmac_ctx_new(QCryptoHashAlgorithm alg,
     32                                  const uint8_t *key, size_t nkey,
     33                                  Error **errp);
     34extern QCryptoHmacDriver qcrypto_hmac_lib_driver;
     35
     36#ifdef CONFIG_AF_ALG
     37
     38#include "afalgpriv.h"
     39
     40extern QCryptoAFAlg *
     41qcrypto_afalg_hmac_ctx_new(QCryptoHashAlgorithm alg,
     42                           const uint8_t *key, size_t nkey,
     43                           Error **errp);
     44extern QCryptoHmacDriver qcrypto_hmac_afalg_driver;
     45
     46#endif
     47
     48#endif