1/* 2 * Copyright 2002-2020 The OpenSSL Project Authors. All Rights Reserved. 3 * 4 * Licensed under the Apache License 2.0 (the "License"). You may not use 5 * this file except in compliance with the License. You can obtain a copy 6 * in the file LICENSE in the source distribution or at 7 * https://www.openssl.org/source/license.html 8 */ 9 10/* 11 * AES low level APIs are deprecated for public use, but still ok for internal 12 * use where we're using them to implement the higher level EVP interface, as is 13 * the case here. 14 */ 15#include "internal/deprecated.h" 16 17#include <openssl/aes.h> 18#include <openssl/modes.h> 19 20void AES_cbc_encrypt(const unsigned char *in, unsigned char *out, 21 size_t len, const AES_KEY *key, 22 unsigned char *ivec, const int enc) 23{ 24 25 if (enc) 26 CRYPTO_cbc128_encrypt(in, out, len, key, ivec, 27 (block128_f) AES_encrypt); 28 else 29 CRYPTO_cbc128_decrypt(in, out, len, key, ivec, 30 (block128_f) AES_decrypt); 31} 32