Return to padlock_aes_crypter.h CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / strongswan / src / libstrongswan / plugins / padlock |
1.1 misho 1: /* 2: * Copyright (C) 2008 Thomas Kallenberg 3: * Copyright (C) 2008 Martin Willi 4: * HSR Hochschule fuer Technik Rapperswil 5: * 6: * This program is free software; you can redistribute it and/or modify it 7: * under the terms of the GNU General Public License as published by the 8: * Free Software Foundation; either version 2 of the License, or (at your 9: * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>. 10: * 11: * This program is distributed in the hope that it will be useful, but 12: * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 13: * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14: * for more details. 15: */ 16: 17: /** 18: * @defgroup padlock_aes_crypter padlock_aes_crypter 19: * @{ @ingroup padlock_p 20: */ 21: 22: #ifndef PADLOCK_AES_CRYPTER_H_ 23: #define PADLOCK_AES_CRYPTER_H_ 24: 25: typedef struct padlock_aes_crypter_t padlock_aes_crypter_t; 26: 27: #include <crypto/crypters/crypter.h> 28: 29: /** 30: * Implementation of AES-128 using VIA Padlock. 31: */ 32: struct padlock_aes_crypter_t { 33: 34: /** 35: * Implements crypter_t interface. 36: */ 37: crypter_t crypter; 38: }; 39: 40: /** 41: * Constructor to create padlock_aes_crypter_t. 42: * 43: * @param key_size key size in bytes, currently supports only 16. 44: * @param algo algorithm to implement, must be ENCR_AES_CBC 45: * @return padlock_aes_crypter_t, NULL if not supported 46: */ 47: padlock_aes_crypter_t *padlock_aes_crypter_create(encryption_algorithm_t algo, 48: size_t key_size); 49: 50: #endif /** PADLOCK_AES_CRYPTER_H_ @}*/