Lines Matching defs:gctx

308 	EVP_AES_GCM_CTX *gctx = ctx->cipher_data;
313 aesni_set_encrypt_key(key, ctx->key_len * 8, &gctx->ks);
314 CRYPTO_gcm128_init(&gctx->gcm, &gctx->ks,
316 gctx->ctr = (ctr128_f)aesni_ctr32_encrypt_blocks;
320 if (iv == NULL && gctx->iv_set)
321 iv = gctx->iv;
324 CRYPTO_gcm128_setiv(&gctx->gcm, iv, gctx->ivlen);
325 gctx->iv_set = 1;
327 gctx->key_set = 1;
332 if (gctx->key_set)
333 CRYPTO_gcm128_setiv(&gctx->gcm, iv, gctx->ivlen);
335 memcpy(gctx->iv, iv, gctx->ivlen);
336 gctx->iv_set = 1;
337 gctx->iv_gen = 0;
679 EVP_AES_GCM_CTX *gctx = c->cipher_data;
680 OPENSSL_cleanse(&gctx->gcm, sizeof(gctx->gcm));
681 if (gctx->iv != c->iv)
682 OPENSSL_free(gctx->iv);
702 EVP_AES_GCM_CTX *gctx = c->cipher_data;
706 gctx->key_set = 0;
707 gctx->iv_set = 0;
708 gctx->ivlen = c->cipher->iv_len;
709 gctx->iv = c->iv;
710 gctx->taglen = -1;
711 gctx->iv_gen = 0;
712 gctx->tls_aad_len = -1;
724 if ((arg > EVP_MAX_IV_LENGTH) && (arg > gctx->ivlen))
726 if (gctx->iv != c->iv)
727 OPENSSL_free(gctx->iv);
728 gctx->iv = OPENSSL_malloc(arg);
729 if (!gctx->iv)
732 gctx->ivlen = arg;
739 gctx->taglen = arg;
743 if (arg <= 0 || arg > 16 || !c->encrypt || gctx->taglen < 0)
752 memcpy(gctx->iv, ptr, gctx->ivlen);
753 gctx->iv_gen = 1;
759 if ((arg < 4) || (gctx->ivlen - arg) < 8)
762 memcpy(gctx->iv, ptr, arg);
764 RAND_bytes(gctx->iv + arg, gctx->ivlen - arg) <= 0)
766 gctx->iv_gen = 1;
770 if (gctx->iv_gen == 0 || gctx->key_set == 0)
772 CRYPTO_gcm128_setiv(&gctx->gcm, gctx->iv, gctx->ivlen);
773 if (arg <= 0 || arg > gctx->ivlen)
774 arg = gctx->ivlen;
775 memcpy(ptr, gctx->iv + gctx->ivlen - arg, arg);
780 ctr64_inc(gctx->iv + gctx->ivlen - 8);
781 gctx->iv_set = 1;
785 if (gctx->iv_gen == 0 || gctx->key_set == 0 || c->encrypt)
787 memcpy(gctx->iv + gctx->ivlen - arg, ptr, arg);
788 CRYPTO_gcm128_setiv(&gctx->gcm, gctx->iv, gctx->ivlen);
789 gctx->iv_set = 1;
797 gctx->tls_aad_len = arg;
850 EVP_AES_GCM_CTX *gctx = ctx->cipher_data;
855 gctx->ctr = aes_gcm_set_key(&gctx->ks, &gctx->gcm, key, ctx->key_len);
859 if (iv == NULL && gctx->iv_set)
860 iv = gctx->iv;
863 CRYPTO_gcm128_setiv(&gctx->gcm, iv, gctx->ivlen);
864 gctx->iv_set = 1;
866 gctx->key_set = 1;
871 if (gctx->key_set)
872 CRYPTO_gcm128_setiv(&gctx->gcm, iv, gctx->ivlen);
874 memcpy(gctx->iv, iv, gctx->ivlen);
875 gctx->iv_set = 1;
876 gctx->iv_gen = 0;
890 EVP_AES_GCM_CTX *gctx = ctx->cipher_data;
903 if (CRYPTO_gcm128_aad(&gctx->gcm, ctx->buf, gctx->tls_aad_len))
912 if (gctx->ctr)
914 if (CRYPTO_gcm128_encrypt_ctr32(&gctx->gcm,
916 gctx->ctr))
920 if (CRYPTO_gcm128_encrypt(&gctx->gcm, in, out, len))
925 CRYPTO_gcm128_tag(&gctx->gcm, out, EVP_GCM_TLS_TAG_LEN);
931 if (gctx->ctr)
933 if (CRYPTO_gcm128_decrypt_ctr32(&gctx->gcm,
935 gctx->ctr))
939 if (CRYPTO_gcm128_decrypt(&gctx->gcm, in, out, len))
943 CRYPTO_gcm128_tag(&gctx->gcm, ctx->buf,
955 gctx->iv_set = 0;
956 gctx->tls_aad_len = -1;
963 EVP_AES_GCM_CTX *gctx = ctx->cipher_data;
965 if (!gctx->key_set)
968 if (gctx->tls_aad_len >= 0)
971 if (!gctx->iv_set)
977 if (CRYPTO_gcm128_aad(&gctx->gcm, in, len))
982 if (gctx->ctr)
984 if (CRYPTO_gcm128_encrypt_ctr32(&gctx->gcm,
986 gctx->ctr))
990 if (CRYPTO_gcm128_encrypt(&gctx->gcm, in, out, len))
996 if (gctx->ctr)
998 if (CRYPTO_gcm128_decrypt_ctr32(&gctx->gcm,
1000 gctx->ctr))
1004 if (CRYPTO_gcm128_decrypt(&gctx->gcm, in, out, len))
1014 if (gctx->taglen < 0)
1016 if (CRYPTO_gcm128_finish(&gctx->gcm,
1017 ctx->buf, gctx->taglen) != 0)
1019 gctx->iv_set = 0;
1022 CRYPTO_gcm128_tag(&gctx->gcm, ctx->buf, 16);
1023 gctx->taglen = 16;
1025 gctx->iv_set = 0;