blob: 4abbc4ef299d5335e3f405eacdc4ffda3bbe6e19 [file] [log] [blame]
Paul Bakker8123e9d2011-01-06 15:37:30 +00001/**
2 * \file cipher_wrap.h
3 *
4 * \brief Cipher wrappers.
5 *
6 * \author Adriaan de Jong <dejong@fox-it.com>
7 *
Paul Bakkerfab5c822012-02-06 16:45:10 +00008 * Copyright (C) 2006-2012, Brainspark B.V.
Paul Bakker8123e9d2011-01-06 15:37:30 +00009 *
10 * This file is part of PolarSSL (http://www.polarssl.org)
11 * Lead Maintainer: Paul Bakker <polarssl_maintainer at polarssl.org>
12 *
13 * All rights reserved.
14 *
15 * This program is free software; you can redistribute it and/or modify
16 * it under the terms of the GNU General Public License as published by
17 * the Free Software Foundation; either version 2 of the License, or
18 * (at your option) any later version.
19 *
20 * This program is distributed in the hope that it will be useful,
21 * but WITHOUT ANY WARRANTY; without even the implied warranty of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 * GNU General Public License for more details.
24 *
25 * You should have received a copy of the GNU General Public License along
26 * with this program; if not, write to the Free Software Foundation, Inc.,
27 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
28 */
Paul Bakkercce9d772011-11-18 14:26:47 +000029#ifndef POLARSSL_CIPHER_WRAP_H
30#define POLARSSL_CIPHER_WRAP_H
Paul Bakker8123e9d2011-01-06 15:37:30 +000031
Paul Bakker314052f2011-08-15 09:07:52 +000032#include "config.h"
33#include "cipher.h"
Paul Bakker8123e9d2011-01-06 15:37:30 +000034
Paul Bakker8123e9d2011-01-06 15:37:30 +000035#ifdef __cplusplus
36extern "C" {
37#endif
38
39#if defined(POLARSSL_AES_C)
40
41extern const cipher_info_t aes_128_cbc_info;
42extern const cipher_info_t aes_192_cbc_info;
43extern const cipher_info_t aes_256_cbc_info;
44
Paul Bakker343a8702011-06-09 14:27:58 +000045#if defined(POLARSSL_CIPHER_MODE_CFB)
46extern const cipher_info_t aes_128_cfb128_info;
47extern const cipher_info_t aes_192_cfb128_info;
48extern const cipher_info_t aes_256_cfb128_info;
49#endif /* POLARSSL_CIPHER_MODE_CFB */
50
51#if defined(POLARSSL_CIPHER_MODE_CTR)
52extern const cipher_info_t aes_128_ctr_info;
53extern const cipher_info_t aes_192_ctr_info;
54extern const cipher_info_t aes_256_ctr_info;
55#endif /* POLARSSL_CIPHER_MODE_CTR */
56
Paul Bakker8123e9d2011-01-06 15:37:30 +000057#endif /* defined(POLARSSL_AES_C) */
58
59#if defined(POLARSSL_CAMELLIA_C)
60
61extern const cipher_info_t camellia_128_cbc_info;
62extern const cipher_info_t camellia_192_cbc_info;
63extern const cipher_info_t camellia_256_cbc_info;
64
Paul Bakker343a8702011-06-09 14:27:58 +000065#if defined(POLARSSL_CIPHER_MODE_CFB)
66extern const cipher_info_t camellia_128_cfb128_info;
67extern const cipher_info_t camellia_192_cfb128_info;
68extern const cipher_info_t camellia_256_cfb128_info;
69#endif /* POLARSSL_CIPHER_MODE_CFB */
70
71#if defined(POLARSSL_CIPHER_MODE_CTR)
72extern const cipher_info_t camellia_128_ctr_info;
73extern const cipher_info_t camellia_192_ctr_info;
74extern const cipher_info_t camellia_256_ctr_info;
75#endif /* POLARSSL_CIPHER_MODE_CTR */
76
Paul Bakker8123e9d2011-01-06 15:37:30 +000077#endif /* defined(POLARSSL_CAMELLIA_C) */
78
79#if defined(POLARSSL_DES_C)
80
81extern const cipher_info_t des_cbc_info;
82extern const cipher_info_t des_ede_cbc_info;
83extern const cipher_info_t des_ede3_cbc_info;
84
85#endif /* defined(POLARSSL_DES_C) */
86
Paul Bakker6132d0a2012-07-04 17:10:40 +000087#if defined(POLARSSL_BLOWFISH_C)
88extern const cipher_info_t blowfish_cbc_info;
89
90#if defined(POLARSSL_CIPHER_MODE_CFB)
91extern const cipher_info_t blowfish_cfb64_info;
92#endif /* POLARSSL_CIPHER_MODE_CFB */
93
94#if defined(POLARSSL_CIPHER_MODE_CTR)
95extern const cipher_info_t blowfish_ctr_info;
96#endif /* POLARSSL_CIPHER_MODE_CTR */
97#endif /* defined(POLARSSL_BLOWFISH_C) */
98
Paul Bakkerfab5c822012-02-06 16:45:10 +000099#if defined(POLARSSL_CIPHER_NULL_CIPHER)
100extern const cipher_info_t null_cipher_info;
101#endif /* defined(POLARSSL_CIPHER_NULL_CIPHER) */
102
Paul Bakker8123e9d2011-01-06 15:37:30 +0000103#ifdef __cplusplus
104}
105#endif
106
107#endif /* POLARSSL_CIPHER_WRAP_H */