static const struct rte_cryptodev_capabilities aesni_gcm_pmd_capabilities[] = {
{ /* AES GCM (AUTH) */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_AES_GCM,
.block_size = 16,
.key_size = {
.max = 12,
.increment = 4
}
- }
- }
+ }, }
+ }, }
},
{ /* AES GCM (CIPHER) */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_CIPHER,
- .cipher = {
+ {.cipher = {
.algo = RTE_CRYPTO_CIPHER_AES_GCM,
.block_size = 16,
.key_size = {
.max = 16,
.increment = 0
}
- }
- }
+ }, }
+ }, }
},
RTE_CRYPTODEV_END_OF_CAPABILITIES_LIST()
};
static const struct rte_cryptodev_capabilities aesni_mb_pmd_capabilities[] = {
{ /* MD5 HMAC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_MD5_HMAC,
.block_size = 64,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, }
+ }, }
},
{ /* SHA1 HMAC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
.block_size = 64,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, }
+ }, }
},
{ /* SHA224 HMAC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_SHA224_HMAC,
.block_size = 64,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, }
+ }, }
},
{ /* SHA256 HMAC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_SHA256_HMAC,
.block_size = 64,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, }
+ }, }
},
{ /* SHA384 HMAC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_SHA384_HMAC,
.block_size = 128,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, }
+ }, }
},
{ /* SHA512 HMAC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_SHA512_HMAC,
.block_size = 128,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, }
+ }, }
},
{ /* AES XCBC HMAC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_AES_XCBC_MAC,
.block_size = 16,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, }
+ }, }
},
{ /* AES CBC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_CIPHER,
- .cipher = {
+ {.cipher = {
.algo = RTE_CRYPTO_CIPHER_AES_CBC,
.block_size = 16,
.key_size = {
.max = 16,
.increment = 0
}
- }
- }
+ }, }
+ }, }
},
RTE_CRYPTODEV_END_OF_CAPABILITIES_LIST()
};
static const struct rte_cryptodev_capabilities null_crypto_pmd_capabilities[] = {
{ /* NULL (AUTH) */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_NULL,
.block_size = 1,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, },
+ }, },
},
{ /* NULL (CIPHER) */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_CIPHER,
- .cipher = {
+ {.cipher = {
.algo = RTE_CRYPTO_CIPHER_NULL,
.block_size = 1,
.key_size = {
.max = 0,
.increment = 0
}
- }
- }
+ }, },
+ }, }
},
RTE_CRYPTODEV_END_OF_CAPABILITIES_LIST()
};
static const struct rte_cryptodev_capabilities qat_pmd_capabilities[] = {
{ /* SHA1 HMAC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
.block_size = 64,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, }
+ }, }
},
{ /* SHA256 HMAC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_SHA256_HMAC,
.block_size = 64,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, }
+ }, }
},
{ /* SHA512 HMAC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_SHA512_HMAC,
.block_size = 128,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, }
+ }, }
},
{ /* AES XCBC MAC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_AES_XCBC_MAC,
.block_size = 16,
.key_size = {
.increment = 0
},
.aad_size = { 0 }
- }
- }
+ }, }
+ }, }
},
{ /* AES GCM (AUTH) */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_AES_GCM,
.block_size = 16,
.key_size = {
.max = 12,
.increment = 4
}
- }
- }
+ }, }
+ }, }
},
{ /* SNOW3G (UIA2) */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_SNOW3G_UIA2,
.block_size = 16,
.key_size = {
.max = 16,
.increment = 0
}
- }
- }
+ }, }
+ }, }
},
{ /* AES GCM (CIPHER) */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_CIPHER,
- .cipher = {
+ {.cipher = {
.algo = RTE_CRYPTO_CIPHER_AES_GCM,
.block_size = 16,
.key_size = {
.max = 16,
.increment = 0
}
- }
- }
+ }, }
+ }, }
},
{ /* AES CBC */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_CIPHER,
- .cipher = {
- RTE_CRYPTO_CIPHER_AES_CBC,
+ {.cipher = {
+ .algo = RTE_CRYPTO_CIPHER_AES_CBC,
.block_size = 16,
.key_size = {
.min = 16,
.max = 16,
.increment = 0
}
- }
- }
+ }, }
+ }, }
},
{ /* SNOW3G (UEA2) */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_CIPHER,
- .cipher = {
+ {.cipher = {
.algo = RTE_CRYPTO_CIPHER_SNOW3G_UEA2,
.block_size = 16,
.key_size = {
.max = 16,
.increment = 0
}
- }
- }
+ }, }
+ }, }
},
RTE_CRYPTODEV_END_OF_CAPABILITIES_LIST()
};
static const struct rte_cryptodev_capabilities snow3g_pmd_capabilities[] = {
{ /* SNOW3G (UIA2) */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
- .auth = {
+ {.auth = {
.algo = RTE_CRYPTO_AUTH_SNOW3G_UIA2,
.block_size = 16,
.key_size = {
.max = 16,
.increment = 0
}
- }
- }
+ }, }
+ }, }
},
{ /* SNOW3G (UEA2) */
.op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
- .sym = {
+ {.sym = {
.xform_type = RTE_CRYPTO_SYM_XFORM_CIPHER,
- .cipher = {
+ {.cipher = {
.algo = RTE_CRYPTO_CIPHER_SNOW3G_UEA2,
.block_size = 16,
.key_size = {
.max = 16,
.increment = 0
}
- }
- }
+ }, }
+ }, }
},
RTE_CRYPTODEV_END_OF_CAPABILITIES_LIST()
};