DPDK  20.08.0
rte_crypto_asym.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2018 Cavium Networks
3  */
4 
5 #ifndef _RTE_CRYPTO_ASYM_H_
6 #define _RTE_CRYPTO_ASYM_H_
7 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
21 #include <string.h>
22 #include <stdint.h>
23 
24 #include <rte_memory.h>
25 #include <rte_mempool.h>
26 #include <rte_common.h>
27 
28 #include "rte_crypto_sym.h"
29 
37 typedef struct rte_crypto_param_t {
38  uint8_t *data;
42  size_t length;
45 
47 extern const char *
49 
51 extern const char *
53 
99 };
100 
119  RTE_CRYPTO_ASYM_OP_LIST_END
120 };
121 
136  RTE_CRYPTO_RSA_PADDING_TYPE_LIST_END
137 };
138 
153 };
154 
197 };
198 
218  enum rte_crypto_rsa_priv_key_type key_type;
219 
220  __extension__
221  union {
231  };
232 };
233 
255 };
256 
276 };
277 
300 };
301 
332 };
333 
339  RTE_CRYPTO_EC_GROUP_UNKNOWN = 0,
340  RTE_CRYPTO_EC_GROUP_SECP192R1 = 19,
341  RTE_CRYPTO_EC_GROUP_SECP224R1 = 21,
342  RTE_CRYPTO_EC_GROUP_SECP256R1 = 23,
343  RTE_CRYPTO_EC_GROUP_SECP384R1 = 24,
344  RTE_CRYPTO_EC_GROUP_SECP521R1 = 25,
345 };
346 
355 };
356 
366 };
367 
393 };
394 
406  __extension__
407  union {
427  };
428 };
429 
431 
506 };
507 
539 };
540 
568 };
569 
601 };
602 
615 };
616 
625  union {
630  };
631 
632  __extension__
633  union {
634  struct rte_crypto_rsa_op_param rsa;
635  struct rte_crypto_mod_op_param modex;
636  struct rte_crypto_mod_op_param modinv;
637  struct rte_crypto_dh_op_param dh;
638  struct rte_crypto_dsa_op_param dsa;
639  struct rte_crypto_ecdsa_op_param ecdsa;
640  struct rte_crypto_ecpm_op_param ecpm;
641  };
642 };
643 
644 #ifdef __cplusplus
645 }
646 #endif
647 
648 #endif /* _RTE_CRYPTO_ASYM_H_ */
rte_crypto_param cipher
rte_crypto_param p
rte_crypto_rsa_padding_type
rte_crypto_param message
struct rte_crypto_ec_point r
enum rte_crypto_auth_algorithm md
rte_crypto_param e
struct rte_crypto_ec_point p
uint64_t rte_iova_t
Definition: rte_common.h:394
rte_crypto_asym_xform_type
struct rte_crypto_dsa_xform dsa
struct rte_crypto_asym_xform * xform
rte_crypto_param exponent
rte_crypto_rsa_priv_key_type
const char * rte_crypto_asym_xform_strings[]
rte_crypto_param n
rte_crypto_ec_group
enum rte_crypto_asym_op_type type
rte_crypto_param message
rte_crypto_asym_op_type
enum rte_crypto_rsa_padding_type pad
rte_crypto_param pub_key
struct rte_crypto_rsa_xform rsa
struct rte_crypto_modex_xform modex
rte_crypto_param q
rte_crypto_param g
enum rte_crypto_asym_op_type op_type
enum rte_crypto_ec_group curve_id
rte_crypto_param shared_secret
rte_crypto_param p
enum rte_crypto_auth_algorithm mgf1md
const char * rte_crypto_asym_op_strings[]
rte_crypto_param modulus
struct rte_crypto_dh_xform dh
struct rte_crypto_modinv_xform modinv
enum rte_crypto_asym_xform_type xform_type
struct rte_crypto_ec_xform ec
#define RTE_STD_C11
Definition: rte_common.h:40
rte_crypto_auth_algorithm
enum rte_crypto_asym_op_type op_type
struct rte_crypto_asym_xform * next
struct rte_cryptodev_asym_session * session
rte_crypto_param priv_key
rte_crypto_param x
rte_crypto_param result
struct rte_crypto_param_t rte_crypto_param
struct rte_crypto_rsa_priv_key_qt qt
rte_crypto_param modulus
rte_crypto_param g
rte_crypto_param d
rte_crypto_param y
struct rte_crypto_ec_point q
enum rte_crypto_asym_op_type op_type
rte_crypto_param x