Lines Matching refs:ctx
82 EVP_MD_CTX ctx;
86 EVP_MD_CTX_init(&ctx);
87 if (!EVP_DigestInit_ex(&ctx, type, NULL)) {
93 if (!EVP_DigestUpdate(&ctx, addr[i], len[i])) {
100 if (!EVP_DigestFinal(&ctx, mac, &mac_len)) {
143 EVP_CIPHER_CTX ctx;
148 EVP_CIPHER_CTX_init(&ctx);
149 if (!EVP_CIPHER_CTX_set_padding(&ctx, 0) ||
150 !EVP_CipherInit_ex(&ctx, EVP_rc4(), NULL, NULL, NULL, 1) ||
151 !EVP_CIPHER_CTX_set_key_length(&ctx, keylen) ||
152 !EVP_CipherInit_ex(&ctx, NULL, NULL, key, NULL, 1))
159 if (!EVP_CipherUpdate(&ctx, skip_buf, &outl, skip_buf, len))
164 if (EVP_CipherUpdate(&ctx, data, &outl, data, data_len))
168 EVP_CIPHER_CTX_cleanup(&ctx);
212 EVP_CIPHER_CTX *ctx;
219 ctx = os_malloc(sizeof(*ctx));
220 if (ctx == NULL)
222 EVP_CIPHER_CTX_init(ctx);
223 if (EVP_EncryptInit_ex(ctx, type, NULL, key, NULL) != 1) {
224 os_free(ctx);
227 EVP_CIPHER_CTX_set_padding(ctx, 0);
228 return ctx;
232 void aes_encrypt(void *ctx, const u8 *plain, u8 *crypt)
234 EVP_CIPHER_CTX *c = ctx;
243 void aes_encrypt_deinit(void *ctx)
245 EVP_CIPHER_CTX *c = ctx;
263 EVP_CIPHER_CTX *ctx;
270 ctx = os_malloc(sizeof(*ctx));
271 if (ctx == NULL)
273 EVP_CIPHER_CTX_init(ctx);
274 if (EVP_DecryptInit_ex(ctx, type, NULL, key, NULL) != 1) {
275 os_free(ctx);
278 EVP_CIPHER_CTX_set_padding(ctx, 0);
279 return ctx;
283 void aes_decrypt(void *ctx, const u8 *crypt, u8 *plain)
285 EVP_CIPHER_CTX *c = ctx;
294 void aes_decrypt_deinit(void *ctx)
296 EVP_CIPHER_CTX *c = ctx;
308 os_free(ctx);
319 BN_CTX *ctx;
321 ctx = BN_CTX_new();
322 if (ctx == NULL)
334 if (BN_mod_exp(bn_result, bn_base, bn_exp, bn_modulus, ctx) != 1)
345 BN_CTX_free(ctx);
360 struct crypto_cipher *ctx;
363 ctx = os_zalloc(sizeof(*ctx));
364 if (ctx == NULL)
386 os_free(ctx);
405 os_free(ctx);
409 EVP_CIPHER_CTX_init(&ctx->enc);
410 EVP_CIPHER_CTX_set_padding(&ctx->enc, 0);
411 if (!EVP_EncryptInit_ex(&ctx->enc, cipher, NULL, NULL, NULL) ||
412 !EVP_CIPHER_CTX_set_key_length(&ctx->enc, key_len) ||
413 !EVP_EncryptInit_ex(&ctx->enc, NULL, NULL, key, iv)) {
414 EVP_CIPHER_CTX_cleanup(&ctx->enc);
415 os_free(ctx);
419 EVP_CIPHER_CTX_init(&ctx->dec);
420 EVP_CIPHER_CTX_set_padding(&ctx->dec, 0);
421 if (!EVP_DecryptInit_ex(&ctx->dec, cipher, NULL, NULL, NULL) ||
422 !EVP_CIPHER_CTX_set_key_length(&ctx->dec, key_len) ||
423 !EVP_DecryptInit_ex(&ctx->dec, NULL, NULL, key, iv)) {
424 EVP_CIPHER_CTX_cleanup(&ctx->enc);
425 EVP_CIPHER_CTX_cleanup(&ctx->dec);
426 os_free(ctx);
430 return ctx;
434 int crypto_cipher_encrypt(struct crypto_cipher *ctx, const u8 *plain,
438 if (!EVP_EncryptUpdate(&ctx->enc, crypt, &outl, plain, len))
444 int crypto_cipher_decrypt(struct crypto_cipher *ctx, const u8 *crypt,
449 if (!EVP_DecryptUpdate(&ctx->dec, plain, &outl, crypt, len))
455 void crypto_cipher_deinit(struct crypto_cipher *ctx)
457 EVP_CIPHER_CTX_cleanup(&ctx->enc);
458 EVP_CIPHER_CTX_cleanup(&ctx->dec);
459 os_free(ctx);
546 struct wpabuf * dh5_derive_shared(void *ctx, const struct wpabuf *peer_public,
552 DH *dh = ctx;
555 if (ctx == NULL)
583 void dh5_free(void *ctx)
586 if (ctx == NULL)
588 dh = ctx;
594 HMAC_CTX ctx;
601 struct crypto_hash *ctx;
626 ctx = os_zalloc(sizeof(*ctx));
627 if (ctx == NULL)
629 HMAC_CTX_init(&ctx->ctx);
632 HMAC_Init_ex(&ctx->ctx, key, key_len, md, NULL);
634 if (HMAC_Init_ex(&ctx->ctx, key, key_len, md, NULL) != 1) {
635 os_free(ctx);
640 return ctx;
644 void crypto_hash_update(struct crypto_hash *ctx, const u8 *data, size_t len)
646 if (ctx == NULL)
648 HMAC_Update(&ctx->ctx, data, len);
652 int crypto_hash_finish(struct crypto_hash *ctx, u8 *mac, size_t *len)
657 if (ctx == NULL)
661 os_free(ctx);
667 HMAC_Final(&ctx->ctx, mac, &mdlen);
670 res = HMAC_Final(&ctx->ctx, mac, &mdlen);
672 HMAC_CTX_cleanup(&ctx->ctx);
673 os_free(ctx);
704 HMAC_CTX ctx;
709 HMAC_CTX_init(&ctx);
711 HMAC_Init_ex(&ctx, key, key_len, EVP_sha1(), NULL);
713 if (HMAC_Init_ex(&ctx, key, key_len, EVP_sha1(), NULL) != 1)
718 HMAC_Update(&ctx, addr[i], len[i]);
722 HMAC_Final(&ctx, mac, &mdlen);
725 res = HMAC_Final(&ctx, mac, &mdlen);
727 HMAC_CTX_cleanup(&ctx);
745 HMAC_CTX ctx;
750 HMAC_CTX_init(&ctx);
752 HMAC_Init_ex(&ctx, key, key_len, EVP_sha256(), NULL);
754 if (HMAC_Init_ex(&ctx, key, key_len, EVP_sha256(), NULL) != 1)
759 HMAC_Update(&ctx, addr[i], len[i]);
763 HMAC_Final(&ctx, mac, &mdlen);
766 res = HMAC_Final(&ctx, mac, &mdlen);
768 HMAC_CTX_cleanup(&ctx);
795 CMAC_CTX *ctx;
799 ctx = CMAC_CTX_new();
800 if (ctx == NULL)
803 if (!CMAC_Init(ctx, key, 16, EVP_aes_128_cbc(), NULL))
806 if (!CMAC_Update(ctx, addr[i], len[i]))
809 if (!CMAC_Final(ctx, mac, &outlen) || outlen != 16)
814 CMAC_CTX_free(ctx);