Files
asterisk/include/asterisk/aes.h
Russell Bryant 4c457af2a8 Fix a regression in Asterisk 1.6 related to the use of AES encryption.
1024 was used instead of 128 when using AES from OpenSSL.  Many thanks
to d1mas for figuring this one out!

(closes issue #11946)
Reported by: bbhoss
Patches: 
      v1-11946.patch uploaded by dimas (license 88)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103739 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-15 23:14:32 +00:00

68 lines
1.9 KiB
C

/*
* Asterisk -- An open source telephony toolkit.
*
* Copyright (C) 20075, Digium, Inc.
*
* Kevin P. Fleming <kpfleming@digium.com>
*
* See http://www.asterisk.org for more information about
* the Asterisk project. Please do not directly contact
* any of the maintainers of this project for assistance;
* the project provides a web site, mailing lists and IRC
* channels for your use.
*
* This program is free software, distributed under the terms of
* the GNU General Public License Version 2. See the LICENSE file
* at the top of the source tree.
*/
/*! \file
* Wrappers for AES encryption/decryption
*
* \author Kevin P. Fleming <kpfleming@digium.com>
*
* These wrappers provided a generic interface to either the
* AES methods provided by OpenSSL's crypto library, or the
* AES implementation included with Asterisk.
*/
#ifndef _ASTERISK_AES_H
#define _ASTERISK_AES_H
#ifdef HAVE_CRYPTO
/* Use the OpenSSL crypto library */
#include "openssl/aes.h"
typedef AES_KEY ast_aes_encrypt_key;
typedef AES_KEY ast_aes_decrypt_key;
#define ast_aes_encrypt_key(key, context) AES_set_encrypt_key(key, 128, context)
#define ast_aes_decrypt_key(key, context) AES_set_decrypt_key(key, 128, context)
#define ast_aes_encrypt(in, out, context) AES_encrypt(in, out, context)
#define ast_aes_decrypt(in, out, context) AES_decrypt(in, out, context)
#else /* !HAVE_CRYPTO */
/* Use the included AES implementation */
#include "aes_internal.h"
typedef aes_encrypt_ctx ast_aes_encrypt_key;
typedef aes_decrypt_ctx ast_aes_decrypt_key;
#define ast_aes_encrypt_key(key, context) aes_encrypt_key128(key, context)
#define ast_aes_decrypt_key(key, context) aes_decrypt_key128(key, context)
#define ast_aes_encrypt(in, out, context) aes_encrypt(in, out, context)
#define ast_aes_decrypt(in, out, context) aes_decrypt(in, out, context)
#endif /* !HAVE_CRYPTO */
#endif /* _ASTERISK_AES_H */