- Main Page
- Related Pages
- Data Structures
- Files

# padlock.h

Go to the documentation of this file.

    00001
    00023 #ifndef POLARSSL_PADLOCK_H
    00024 #define POLARSSL_PADLOCK_H
    00025
    00026 #include "polarssl/aes.h"
    00027
    00028 #if defined(POLARSSL_HAVE_ASM) && defined(__GNUC__) && defined(__i386__)
    00029
    00030 #ifndef POLARSSL_HAVE_X86
    00031 #define POLARSSL_HAVE_X86
    00032 #endif
    00033
    00034 #define PADLOCK_RNG 0x000C
    00035 #define PADLOCK_ACE 0x00C0
    00036 #define PADLOCK_PHE 0x0C00
    00037 #define PADLOCK_PMM 0x3000
    00038
    00039 #define PADLOCK_ALIGN16(x) (unsigned long *) (16 + ((long) x & ~15))
    00040
    00041 #ifdef __cplusplus
    00042 extern "C" {
    00043 #endif
    00044
    00052 int padlock_supports( int feature );
    00053
    00064 int padlock_xcryptecb( aes_context *ctx,
    00065                        int mode,
    00066                        unsigned char input[16],
    00067                        unsigned char output[16] );
    00068
    00081 int padlock_xcryptcbc( aes_context *ctx,
    00082                        int mode,
    00083                        int length,
    00084                        unsigned char iv[16],
    00085                        unsigned char *input,
    00086                        unsigned char *output );
    00087
    00088 #ifdef __cplusplus
    00089 }
    00090 #endif
    00091
    00092 #endif /* HAVE_X86  */
    00093
    00094 #endif /* padlock.h */