Blame lib/accelerated/x86/aes-padlock.h
|
Packit Service |
4684c1 |
#ifndef GNUTLS_LIB_ACCELERATED_X86_AES_PADLOCK_H
|
|
Packit Service |
4684c1 |
#define GNUTLS_LIB_ACCELERATED_X86_AES_PADLOCK_H
|
|
Packit Service |
4684c1 |
|
|
Packit Service |
4684c1 |
#include "gnutls_int.h"
|
|
Packit Service |
4684c1 |
#include <aes-x86.h>
|
|
Packit Service |
4684c1 |
|
|
Packit Service |
4684c1 |
struct padlock_cipher_data {
|
|
Packit Service |
4684c1 |
unsigned char iv[16]; /* Initialization vector */
|
|
Packit Service |
4684c1 |
union {
|
|
Packit Service |
4684c1 |
unsigned int pad[4];
|
|
Packit Service |
4684c1 |
struct {
|
|
Packit Service |
4684c1 |
unsigned rounds:4;
|
|
Packit Service |
4684c1 |
unsigned dgst:1; /* n/a in C3 */
|
|
Packit Service |
4684c1 |
unsigned align:1; /* n/a in C3 */
|
|
Packit Service |
4684c1 |
unsigned ciphr:1; /* n/a in C3 */
|
|
Packit Service |
4684c1 |
unsigned int keygen:1;
|
|
Packit Service |
4684c1 |
unsigned interm:1;
|
|
Packit Service |
4684c1 |
unsigned int encdec:1;
|
|
Packit Service |
4684c1 |
unsigned ksize:2;
|
|
Packit Service |
4684c1 |
} b;
|
|
Packit Service |
4684c1 |
} cword; /* Control word */
|
|
Packit Service |
4684c1 |
AES_KEY ks; /* Encryption key */
|
|
Packit Service |
4684c1 |
};
|
|
Packit Service |
4684c1 |
|
|
Packit Service |
4684c1 |
struct padlock_ctx {
|
|
Packit Service |
4684c1 |
struct padlock_cipher_data expanded_key;
|
|
Packit Service |
4684c1 |
int enc;
|
|
Packit Service |
4684c1 |
};
|
|
Packit Service |
4684c1 |
|
|
Packit Service |
4684c1 |
extern const gnutls_crypto_cipher_st _gnutls_aes_padlock;
|
|
Packit Service |
4684c1 |
extern const gnutls_crypto_cipher_st _gnutls_aes_gcm_padlock;
|
|
Packit Service |
4684c1 |
|
|
Packit Service |
4684c1 |
extern const gnutls_crypto_mac_st _gnutls_hmac_sha_padlock;
|
|
Packit Service |
4684c1 |
extern const gnutls_crypto_digest_st _gnutls_sha_padlock;
|
|
Packit Service |
4684c1 |
|
|
Packit Service |
4684c1 |
int padlock_aes_cipher_setkey(void *_ctx, const void *userkey,
|
|
Packit Service |
4684c1 |
size_t keysize);
|
|
Packit Service |
4684c1 |
|
|
Packit Service |
4684c1 |
/* asm */
|
|
Packit Service |
4684c1 |
unsigned int padlock_capability(void);
|
|
Packit Service |
4684c1 |
void padlock_reload_key(void);
|
|
Packit Service |
4684c1 |
int padlock_ecb_encrypt(void *out, const void *inp,
|
|
Packit Service |
4684c1 |
struct padlock_cipher_data *ctx, size_t len);
|
|
Packit Service |
4684c1 |
int padlock_cbc_encrypt(void *out, const void *inp,
|
|
Packit Service |
4684c1 |
struct padlock_cipher_data *ctx, size_t len);
|
|
Packit Service |
4684c1 |
#endif /* GNUTLS_LIB_ACCELERATED_X86_AES_PADLOCK_H */
|