mbuf: fix doxygen comment of bulk alloc
[dpdk.git] / drivers / crypto / armv8 / rte_armv8_pmd.c
index eeeaab7..a5c39c9 100644 (file)
@@ -1,7 +1,7 @@
 /*
  *   BSD LICENSE
  *
- *   Copyright (C) Cavium networks Ltd. 2017.
+ *   Copyright (C) Cavium, Inc. 2017.
  *
  *   Redistribution and use in source and binary forms, with or without
  *   modification, are permitted provided that the following conditions
@@ -13,7 +13,7 @@
  *       notice, this list of conditions and the following disclaimer in
  *       the documentation and/or other materials provided with the
  *       distribution.
- *     * Neither the name of Cavium networks nor the names of its
+ *     * Neither the name of Cavium, Inc nor the names of its
  *       contributors may be used to endorse or promote products derived
  *       from this software without specific prior written permission.
  *
@@ -291,27 +291,14 @@ auth_set_prerequisites(struct armv8_crypto_session *sess,
                 * Generate authentication key, i_key_pad and o_key_pad.
                 */
                /* Zero memory under key */
-               memset(sess->auth.hmac.key, 0, SHA1_AUTH_KEY_LENGTH);
-
-               if (xform->auth.key.length > SHA1_AUTH_KEY_LENGTH) {
-                       /*
-                        * In case the key is longer than 160 bits
-                        * the algorithm will use SHA1(key) instead.
-                        */
-                       error = sha1_block(NULL, xform->auth.key.data,
-                               sess->auth.hmac.key, xform->auth.key.length);
-                       if (error != 0)
-                               return -1;
-               } else {
-                       /*
-                        * Now copy the given authentication key to the session
-                        * key assuming that the session key is zeroed there is
-                        * no need for additional zero padding if the key is
-                        * shorter than SHA1_AUTH_KEY_LENGTH.
-                        */
-                       rte_memcpy(sess->auth.hmac.key, xform->auth.key.data,
-                                                       xform->auth.key.length);
-               }
+               memset(sess->auth.hmac.key, 0, SHA1_BLOCK_SIZE);
+
+               /*
+                * Now copy the given authentication key to the session
+                * key.
+                */
+               rte_memcpy(sess->auth.hmac.key, xform->auth.key.data,
+                                               xform->auth.key.length);
 
                /* Prepare HMAC padding: key|pattern */
                auth_hmac_pad_prepare(sess, xform);
@@ -337,27 +324,14 @@ auth_set_prerequisites(struct armv8_crypto_session *sess,
                 * Generate authentication key, i_key_pad and o_key_pad.
                 */
                /* Zero memory under key */
-               memset(sess->auth.hmac.key, 0, SHA256_AUTH_KEY_LENGTH);
-
-               if (xform->auth.key.length > SHA256_AUTH_KEY_LENGTH) {
-                       /*
-                        * In case the key is longer than 256 bits
-                        * the algorithm will use SHA256(key) instead.
-                        */
-                       error = sha256_block(NULL, xform->auth.key.data,
-                               sess->auth.hmac.key, xform->auth.key.length);
-                       if (error != 0)
-                               return -1;
-               } else {
-                       /*
-                        * Now copy the given authentication key to the session
-                        * key assuming that the session key is zeroed there is
-                        * no need for additional zero padding if the key is
-                        * shorter than SHA256_AUTH_KEY_LENGTH.
-                        */
-                       rte_memcpy(sess->auth.hmac.key, xform->auth.key.data,
-                                                       xform->auth.key.length);
-               }
+               memset(sess->auth.hmac.key, 0, SHA256_BLOCK_SIZE);
+
+               /*
+                * Now copy the given authentication key to the session
+                * key.
+                */
+               rte_memcpy(sess->auth.hmac.key, xform->auth.key.data,
+                                               xform->auth.key.length);
 
                /* Prepare HMAC padding: key|pattern */
                auth_hmac_pad_prepare(sess, xform);
@@ -417,7 +391,7 @@ armv8_crypto_set_session_chained_parameters(struct armv8_crypto_session *sess,
                order = sess->chain_order;
                break;
        default:
-               return -EINVAL;
+               return -ENOTSUP;
        }
        /* Select cipher direction */
        sess->cipher.direction = cipher_xform->cipher.op;
@@ -437,7 +411,7 @@ armv8_crypto_set_session_chained_parameters(struct armv8_crypto_session *sess,
                sess->cipher.iv.length = 16;
                break;
        default:
-               return -EINVAL;
+               return -ENOTSUP;
        }
        /* Select auth generate/verify */
        sess->auth.operation = auth_xform->auth.op;
@@ -451,7 +425,7 @@ armv8_crypto_set_session_chained_parameters(struct armv8_crypto_session *sess,
                sess->auth.mode = ARMV8_CRYPTO_AUTH_AS_HMAC;
                break;
        default:
-               return -EINVAL;
+               return -ENOTSUP;
        }
 
        /* Set the digest length */
@@ -471,7 +445,7 @@ armv8_crypto_set_session_chained_parameters(struct armv8_crypto_session *sess,
        default: /* Fall through */
                sess->crypto_func = NULL;
                sess->cipher.key_sched = NULL;
-               return -EINVAL;
+               return -ENOTSUP;
        }
 
        if (unlikely(sess->crypto_func == NULL)) {
@@ -525,7 +499,7 @@ armv8_crypto_set_session_parameters(struct armv8_crypto_session *sess,
                break;
        default:
                is_chained_op = false;
-               return -EINVAL;
+               return -ENOTSUP;
        }
 
        /* Set IV offset */
@@ -537,11 +511,11 @@ armv8_crypto_set_session_parameters(struct armv8_crypto_session *sess,
                if (unlikely(ret != 0)) {
                        ARMV8_CRYPTO_LOG_ERR(
                        "Invalid/unsupported chained (cipher/auth) parameters");
-                       return -EINVAL;
+                       return ret;
                }
        } else {
                ARMV8_CRYPTO_LOG_ERR("Invalid/unsupported operation");
-               return -EINVAL;
+               return -ENOTSUP;
        }
 
        return 0;