1234567891011121314151617181920212223242526272829303132333435 |
- #ifndef _IPXE_AES_H
- #define _IPXE_AES_H
-
- FILE_LICENCE ( GPL2_OR_LATER );
-
- struct cipher_algorithm;
-
- /** Basic AES blocksize */
- #define AES_BLOCKSIZE 16
-
- #include "crypto/axtls/crypto.h"
-
- /** AES context */
- struct aes_context {
- /** AES context for AXTLS */
- AES_CTX axtls_ctx;
- /** Cipher is being used for decrypting */
- int decrypting;
- };
-
- /** AES context size */
- #define AES_CTX_SIZE sizeof ( struct aes_context )
-
- /* AXTLS functions */
- extern void axtls_aes_encrypt ( const AES_CTX *ctx, uint32_t *data );
- extern void axtls_aes_decrypt ( const AES_CTX *ctx, uint32_t *data );
-
- extern struct cipher_algorithm aes_algorithm;
- extern struct cipher_algorithm aes_ecb_algorithm;
- extern struct cipher_algorithm aes_cbc_algorithm;
-
- int aes_wrap ( const void *kek, const void *src, void *dest, int nblk );
- int aes_unwrap ( const void *kek, const void *src, void *dest, int nblk );
-
- #endif /* _IPXE_AES_H */
|