[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 for-2.10 07/18] crypto: hmac: move crypto/hma
From: |
Gonglei (Arei) |
Subject: |
Re: [Qemu-devel] [PATCH v2 for-2.10 07/18] crypto: hmac: move crypto/hmac.h into include/crypto/ |
Date: |
Fri, 21 Apr 2017 12:11:06 +0000 |
> -----Original Message-----
> From: longpeng
> Sent: Monday, April 17, 2017 9:33 AM
> To: address@hidden
> Cc: Gonglei (Arei); Huangweidong (C); address@hidden;
> address@hidden; address@hidden; address@hidden; longpeng
> Subject: [PATCH v2 for-2.10 07/18] crypto: hmac: move crypto/hmac.h into
> include/crypto/
>
> Moves crypto/hmac.h into include/crypto/, likes cipher.h and hash.h
>
> Signed-off-by: Longpeng(Mike) <address@hidden>
> ---
> crypto/hmac.h | 166
> --------------------------------------------------
> include/crypto/hmac.h | 166
> ++++++++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 166 insertions(+), 166 deletions(-)
> delete mode 100644 crypto/hmac.h
> create mode 100644 include/crypto/hmac.h
>
Reviewed-by: Gonglei <address@hidden>
> diff --git a/crypto/hmac.h b/crypto/hmac.h
> deleted file mode 100644
> index 0d3acd7..0000000
> --- a/crypto/hmac.h
> +++ /dev/null
> @@ -1,166 +0,0 @@
> -/*
> - * QEMU Crypto hmac algorithms
> - *
> - * Copyright (c) 2016 HUAWEI TECHNOLOGIES CO., LTD.
> - *
> - * This work is licensed under the terms of the GNU GPL, version 2 or
> - * (at your option) any later version. See the COPYING file in the
> - * top-level directory.
> - *
> - */
> -
> -#ifndef QCRYPTO_HMAC_H
> -#define QCRYPTO_HMAC_H
> -
> -#include "qapi-types.h"
> -
> -typedef struct QCryptoHmac QCryptoHmac;
> -struct QCryptoHmac {
> - QCryptoHashAlgorithm alg;
> - void *opaque;
> -};
> -
> -/**
> - * qcrypto_hmac_supports:
> - * @alg: the hmac algorithm
> - *
> - * Determine if @alg hmac algorithm is supported by
> - * the current configured build
> - *
> - * Returns:
> - * true if the algorithm is supported, false otherwise
> - */
> -bool qcrypto_hmac_supports(QCryptoHashAlgorithm alg);
> -
> -/**
> - * qcrypto_hmac_new:
> - * @alg: the hmac algorithm
> - * @key: the key bytes
> - * @nkey: the length of @key
> - * @errp: pointer to a NULL-initialized error object
> - *
> - * Creates a new hmac object with the algorithm @alg
> - *
> - * The @key parameter provides the bytes representing
> - * the secret key to use. The @nkey parameter specifies
> - * the length of @key in bytes
> - *
> - * Note: must use qcrypto_hmac_free() to release the
> - * returned hmac object when no longer required
> - *
> - * Returns:
> - * a new hmac object, or NULL on error
> - */
> -QCryptoHmac *qcrypto_hmac_new(QCryptoHashAlgorithm alg,
> - const uint8_t *key, size_t nkey,
> - Error **errp);
> -
> -/**
> - * qcrypto_hmac_free:
> - * @hmac: the hmac object
> - *
> - * Release the memory associated with @hmac that was
> - * previously allocated by qcrypto_hmac_new()
> - */
> -void qcrypto_hmac_free(QCryptoHmac *hmac);
> -
> -/**
> - * qcrypto_hmac_bytesv:
> - * @hmac: the hmac object
> - * @iov: the array of memory regions to hmac
> - * @niov: the length of @iov
> - * @result: pointer to hold output hmac
> - * @resultlen: pointer to hold length of @result
> - * @errp: pointer to a NULL-initialized error object
> - *
> - * Computes the hmac across all the memory regions
> - * present in @iov. The @result pointer will be
> - * filled with raw bytes representing the computed
> - * hmac, which will have length @resultlen. The
> - * memory pointer in @result must be released
> - * with a call to g_free() when no longer required.
> - *
> - * Returns:
> - * 0 on success, -1 on error
> - */
> -int qcrypto_hmac_bytesv(QCryptoHmac *hmac,
> - const struct iovec *iov,
> - size_t niov,
> - uint8_t **result,
> - size_t *resultlen,
> - Error **errp);
> -
> -/**
> - * qcrypto_hmac_bytes:
> - * @hmac: the hmac object
> - * @buf: the memory region to hmac
> - * @len: the length of @buf
> - * @result: pointer to hold output hmac
> - * @resultlen: pointer to hold length of @result
> - * @errp: pointer to a NULL-initialized error object
> - *
> - * Computes the hmac across all the memory region
> - * @buf of length @len. The @result pointer will be
> - * filled with raw bytes representing the computed
> - * hmac, which will have length @resultlen. The
> - * memory pointer in @result must be released
> - * with a call to g_free() when no longer required.
> - *
> - * Returns:
> - * 0 on success, -1 on error
> - */
> -int qcrypto_hmac_bytes(QCryptoHmac *hmac,
> - const char *buf,
> - size_t len,
> - uint8_t **result,
> - size_t *resultlen,
> - Error **errp);
> -
> -/**
> - * qcrypto_hmac_digestv:
> - * @hmac: the hmac object
> - * @iov: the array of memory regions to hmac
> - * @niov: the length of @iov
> - * @digest: pointer to hold output hmac
> - * @errp: pointer to a NULL-initialized error object
> - *
> - * Computes the hmac across all the memory regions
> - * present in @iov. The @digest pointer will be
> - * filled with the printable hex digest of the computed
> - * hmac, which will be terminated by '\0'. The
> - * memory pointer in @digest must be released
> - * with a call to g_free() when no longer required.
> - *
> - * Returns:
> - * 0 on success, -1 on error
> - */
> -int qcrypto_hmac_digestv(QCryptoHmac *hmac,
> - const struct iovec *iov,
> - size_t niov,
> - char **digest,
> - Error **errp);
> -
> -/**
> - * qcrypto_hmac_digest:
> - * @hmac: the hmac object
> - * @buf: the memory region to hmac
> - * @len: the length of @buf
> - * @digest: pointer to hold output hmac
> - * @errp: pointer to a NULL-initialized error object
> - *
> - * Computes the hmac across all the memory region
> - * @buf of length @len. The @digest pointer will be
> - * filled with the printable hex digest of the computed
> - * hmac, which will be terminated by '\0'. The
> - * memory pointer in @digest must be released
> - * with a call to g_free() when no longer required.
> - *
> - * Returns: 0 on success, -1 on error
> - */
> -int qcrypto_hmac_digest(QCryptoHmac *hmac,
> - const char *buf,
> - size_t len,
> - char **digest,
> - Error **errp);
> -
> -#endif
> diff --git a/include/crypto/hmac.h b/include/crypto/hmac.h
> new file mode 100644
> index 0000000..0d3acd7
> --- /dev/null
> +++ b/include/crypto/hmac.h
> @@ -0,0 +1,166 @@
> +/*
> + * QEMU Crypto hmac algorithms
> + *
> + * Copyright (c) 2016 HUAWEI TECHNOLOGIES CO., LTD.
> + *
> + * This work is licensed under the terms of the GNU GPL, version 2 or
> + * (at your option) any later version. See the COPYING file in the
> + * top-level directory.
> + *
> + */
> +
> +#ifndef QCRYPTO_HMAC_H
> +#define QCRYPTO_HMAC_H
> +
> +#include "qapi-types.h"
> +
> +typedef struct QCryptoHmac QCryptoHmac;
> +struct QCryptoHmac {
> + QCryptoHashAlgorithm alg;
> + void *opaque;
> +};
> +
> +/**
> + * qcrypto_hmac_supports:
> + * @alg: the hmac algorithm
> + *
> + * Determine if @alg hmac algorithm is supported by
> + * the current configured build
> + *
> + * Returns:
> + * true if the algorithm is supported, false otherwise
> + */
> +bool qcrypto_hmac_supports(QCryptoHashAlgorithm alg);
> +
> +/**
> + * qcrypto_hmac_new:
> + * @alg: the hmac algorithm
> + * @key: the key bytes
> + * @nkey: the length of @key
> + * @errp: pointer to a NULL-initialized error object
> + *
> + * Creates a new hmac object with the algorithm @alg
> + *
> + * The @key parameter provides the bytes representing
> + * the secret key to use. The @nkey parameter specifies
> + * the length of @key in bytes
> + *
> + * Note: must use qcrypto_hmac_free() to release the
> + * returned hmac object when no longer required
> + *
> + * Returns:
> + * a new hmac object, or NULL on error
> + */
> +QCryptoHmac *qcrypto_hmac_new(QCryptoHashAlgorithm alg,
> + const uint8_t *key, size_t nkey,
> + Error **errp);
> +
> +/**
> + * qcrypto_hmac_free:
> + * @hmac: the hmac object
> + *
> + * Release the memory associated with @hmac that was
> + * previously allocated by qcrypto_hmac_new()
> + */
> +void qcrypto_hmac_free(QCryptoHmac *hmac);
> +
> +/**
> + * qcrypto_hmac_bytesv:
> + * @hmac: the hmac object
> + * @iov: the array of memory regions to hmac
> + * @niov: the length of @iov
> + * @result: pointer to hold output hmac
> + * @resultlen: pointer to hold length of @result
> + * @errp: pointer to a NULL-initialized error object
> + *
> + * Computes the hmac across all the memory regions
> + * present in @iov. The @result pointer will be
> + * filled with raw bytes representing the computed
> + * hmac, which will have length @resultlen. The
> + * memory pointer in @result must be released
> + * with a call to g_free() when no longer required.
> + *
> + * Returns:
> + * 0 on success, -1 on error
> + */
> +int qcrypto_hmac_bytesv(QCryptoHmac *hmac,
> + const struct iovec *iov,
> + size_t niov,
> + uint8_t **result,
> + size_t *resultlen,
> + Error **errp);
> +
> +/**
> + * qcrypto_hmac_bytes:
> + * @hmac: the hmac object
> + * @buf: the memory region to hmac
> + * @len: the length of @buf
> + * @result: pointer to hold output hmac
> + * @resultlen: pointer to hold length of @result
> + * @errp: pointer to a NULL-initialized error object
> + *
> + * Computes the hmac across all the memory region
> + * @buf of length @len. The @result pointer will be
> + * filled with raw bytes representing the computed
> + * hmac, which will have length @resultlen. The
> + * memory pointer in @result must be released
> + * with a call to g_free() when no longer required.
> + *
> + * Returns:
> + * 0 on success, -1 on error
> + */
> +int qcrypto_hmac_bytes(QCryptoHmac *hmac,
> + const char *buf,
> + size_t len,
> + uint8_t **result,
> + size_t *resultlen,
> + Error **errp);
> +
> +/**
> + * qcrypto_hmac_digestv:
> + * @hmac: the hmac object
> + * @iov: the array of memory regions to hmac
> + * @niov: the length of @iov
> + * @digest: pointer to hold output hmac
> + * @errp: pointer to a NULL-initialized error object
> + *
> + * Computes the hmac across all the memory regions
> + * present in @iov. The @digest pointer will be
> + * filled with the printable hex digest of the computed
> + * hmac, which will be terminated by '\0'. The
> + * memory pointer in @digest must be released
> + * with a call to g_free() when no longer required.
> + *
> + * Returns:
> + * 0 on success, -1 on error
> + */
> +int qcrypto_hmac_digestv(QCryptoHmac *hmac,
> + const struct iovec *iov,
> + size_t niov,
> + char **digest,
> + Error **errp);
> +
> +/**
> + * qcrypto_hmac_digest:
> + * @hmac: the hmac object
> + * @buf: the memory region to hmac
> + * @len: the length of @buf
> + * @digest: pointer to hold output hmac
> + * @errp: pointer to a NULL-initialized error object
> + *
> + * Computes the hmac across all the memory region
> + * @buf of length @len. The @digest pointer will be
> + * filled with the printable hex digest of the computed
> + * hmac, which will be terminated by '\0'. The
> + * memory pointer in @digest must be released
> + * with a call to g_free() when no longer required.
> + *
> + * Returns: 0 on success, -1 on error
> + */
> +int qcrypto_hmac_digest(QCryptoHmac *hmac,
> + const char *buf,
> + size_t len,
> + char **digest,
> + Error **errp);
> +
> +#endif
> --
> 1.8.3.1
>
- [Qemu-devel] [PATCH v2 for-2.10 09/18] crypto: hmac: introduce qcrypto_hmac_ctx_new for nettle-backend, (continued)
- [Qemu-devel] [PATCH v2 for-2.10 09/18] crypto: hmac: introduce qcrypto_hmac_ctx_new for nettle-backend, Longpeng(Mike), 2017/04/16
- [Qemu-devel] [PATCH v2 for-2.10 17/18] tests: crypto: add hash speed benchmark support, Longpeng(Mike), 2017/04/16
- [Qemu-devel] [PATCH v2 for-2.10 11/18] crypto: hmac: add hmac driver framework, Longpeng(Mike), 2017/04/16
- [Qemu-devel] [PATCH v2 for-2.10 16/18] tests: crypto: add cipher speed benchmark support, Longpeng(Mike), 2017/04/16
- [Qemu-devel] [PATCH v2 for-2.10 15/18] crypto: hmac: add af_alg hmac support, Longpeng(Mike), 2017/04/16
- [Qemu-devel] [PATCH v2 for-2.10 07/18] crypto: hmac: move crypto/hmac.h into include/crypto/, Longpeng(Mike), 2017/04/16
- [Qemu-devel] [PATCH v2 for-2.10 05/18] crypto: cipher: add cipher driver framework, Longpeng(Mike), 2017/04/16
- [Qemu-devel] [PATCH v2 for-2.10 14/18] crypto: hash: add afalg-backend hash support, Longpeng(Mike), 2017/04/16
- [Qemu-devel] [PATCH v2 for-2.10 13/18] crypto: cipher: add afalg-backend cipher support, Longpeng(Mike), 2017/04/16