[dpdk-dev] [PATCH 1/3] cryptodev: modify some field sizes

Pablo de Lara pablo.de.lara.guarch at intel.com
Mon Jul 17 10:29:51 CEST 2017


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 at intel.com>
---
 doc/guides/rel_notes/release_17_08.rst | 2 ++
 lib/librte_cryptodev/rte_crypto_sym.h  | 8 ++++----
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/doc/guides/rel_notes/release_17_08.rst b/doc/guides/rel_notes/release_17_08.rst
index c6281eb..27453a3 100644
--- a/doc/guides/rel_notes/release_17_08.rst
+++ b/doc/guides/rel_notes/release_17_08.rst
@@ -313,6 +313,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.**
 
@@ -320,6 +321,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.
diff --git a/lib/librte_cryptodev/rte_crypto_sym.h b/lib/librte_cryptodev/rte_crypto_sym.h
index f9955a4..27439af 100644
--- a/lib/librte_cryptodev/rte_crypto_sym.h
+++ b/lib/librte_cryptodev/rte_crypto_sym.h
@@ -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. */
-- 
2.9.4



More information about the dev mailing list