Lines Matching refs:crypto_info
75 .crypto_info = sizeof(struct ci)
444 struct tls_crypto_info *crypto_info;
451 if (!optval || (len < sizeof(*crypto_info))) {
463 crypto_info = &ctx->crypto_send.info;
466 crypto_info = &ctx->crypto_recv.info;
470 if (!TLS_CRYPTO_INFO_READY(crypto_info)) {
475 if (len == sizeof(*crypto_info)) {
476 if (copy_to_user(optval, crypto_info, sizeof(*crypto_info)))
481 cipher_desc = get_cipher_desc(crypto_info->cipher_type);
482 if (!cipher_desc || len != cipher_desc->crypto_info) {
487 memcpy(crypto_info_iv(crypto_info, cipher_desc),
489 memcpy(crypto_info_rec_seq(crypto_info, cipher_desc),
492 if (copy_to_user(optval, crypto_info, cipher_desc->crypto_info))
591 struct tls_crypto_info *crypto_info;
598 if (sockptr_is_null(optval) || (optlen < sizeof(*crypto_info)))
602 crypto_info = &ctx->crypto_send.info;
605 crypto_info = &ctx->crypto_recv.info;
610 if (TLS_CRYPTO_INFO_READY(crypto_info))
613 rc = copy_from_sockptr(crypto_info, optval, sizeof(*crypto_info));
620 if (crypto_info->version != TLS_1_2_VERSION &&
621 crypto_info->version != TLS_1_3_VERSION) {
628 if (alt_crypto_info->version != crypto_info->version ||
629 alt_crypto_info->cipher_type != crypto_info->cipher_type) {
635 cipher_desc = get_cipher_desc(crypto_info->cipher_type);
641 switch (crypto_info->cipher_type) {
644 if (crypto_info->version != TLS_1_2_VERSION) {
651 if (optlen != cipher_desc->crypto_info) {
656 rc = copy_from_sockptr_offset(crypto_info + 1, optval,
657 sizeof(*crypto_info),
658 optlen - sizeof(*crypto_info));
711 memzero_explicit(crypto_info, sizeof(union tls_crypto_context));