cryptodev: decrease key and digest sizes
authorPablo de Lara <pablo.de.lara.guarch@intel.com>
Mon, 17 Jul 2017 08:29:51 +0000 (09:29 +0100)
committerPablo de Lara <pablo.de.lara.guarch@intel.com>
Wed, 19 Jul 2017 11:10:41 +0000 (14:10 +0300)
Crypto keys and digests are not expected
to be big, so using a uint16_t to store
their lengths should be enough.

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Fiona Trahe <fiona.trahe@intel.com>
doc/guides/rel_notes/release_17_08.rst
lib/librte_cryptodev/rte_crypto_sym.h

index 6f3b662..cf0b7cb 100644 (file)
@@ -321,6 +321,7 @@ ABI Changes
 * **Reorganized the ``rte_crypto_sym_cipher_xform`` structure.**
 
   * Added cipher IV length and offset parameters.
+  * Changed field size of key length from size_t to uint16_t.
 
 * **Reorganized the ``rte_crypto_sym_auth_xform`` structure.**
 
@@ -328,6 +329,7 @@ ABI Changes
   * Changed field size of AAD length from uint32_t to uint16_t.
   * Changed field size of digest length from uint32_t to uint16_t.
   * Removed AAD length.
+  * Changed field size of key length from size_t to uint16_t.
 
 * Replaced ``dev_type`` enumeration with uint8_t ``driver_id`` in
   ``rte_cryptodev_info`` and  ``rte_cryptodev`` structures.
index f9955a4..27439af 100644 (file)
@@ -143,7 +143,7 @@ struct rte_crypto_cipher_xform {
 
        struct {
                uint8_t *data;  /**< pointer to key data */
-               size_t length;  /**< key length in bytes */
+               uint16_t length;/**< key length in bytes */
        } key;
        /**< Cipher key
         *
@@ -306,7 +306,7 @@ struct rte_crypto_auth_xform {
 
        struct {
                uint8_t *data;  /**< pointer to key data */
-               size_t length;  /**< key length in bytes */
+               uint16_t length;/**< key length in bytes */
        } key;
        /**< Authentication key data.
         * The authentication key length MUST be less than or equal to the
@@ -389,7 +389,7 @@ struct rte_crypto_aead_xform {
 
        struct {
                uint8_t *data;  /**< pointer to key data */
-               size_t length;   /**< key length in bytes */
+               uint16_t length;/**< key length in bytes */
        } key;
 
        struct {
@@ -424,7 +424,7 @@ struct rte_crypto_aead_xform {
                 */
        } iv;   /**< Initialisation vector parameters */
 
-       uint32_t digest_length;
+       uint16_t digest_length;
 
        uint16_t add_auth_data_length;
        /**< The length of the additional authenticated data (AAD) in bytes. */