Home | History | Annotate | Download | only in headers
      1 #ifndef TOMCRYPT_H_
      2 #define TOMCRYPT_H_
      3 #include <assert.h>
      4 #include <stdio.h>
      5 #include <string.h>
      6 #include <stdlib.h>
      7 #include <time.h>
      8 #include <ctype.h>
      9 #include <limits.h>
     10 
     11 /* use configuration data */
     12 #include <tomcrypt_custom.h>
     13 
     14 #ifdef __cplusplus
     15 extern "C" {
     16 #endif
     17 
     18 /* version */
     19 #define CRYPT   0x0116
     20 #define SCRYPT  "1.16"
     21 
     22 /* max size of either a cipher/hash block or symmetric key [largest of the two] */
     23 #define MAXBLOCKSIZE  128
     24 
     25 /* descriptor table size */
     26 /* Dropbear change - this should be smaller, saves some size */
     27 #define TAB_SIZE    4
     28 
     29 /* error codes [will be expanded in future releases] */
     30 enum {
     31    CRYPT_OK=0,             /* Result OK */
     32    CRYPT_ERROR,            /* Generic Error */
     33    CRYPT_NOP,              /* Not a failure but no operation was performed */
     34 
     35    CRYPT_INVALID_KEYSIZE,  /* Invalid key size given */
     36    CRYPT_INVALID_ROUNDS,   /* Invalid number of rounds */
     37    CRYPT_FAIL_TESTVECTOR,  /* Algorithm failed test vectors */
     38 
     39    CRYPT_BUFFER_OVERFLOW,  /* Not enough space for output */
     40    CRYPT_INVALID_PACKET,   /* Invalid input packet given */
     41 
     42    CRYPT_INVALID_PRNGSIZE, /* Invalid number of bits for a PRNG */
     43    CRYPT_ERROR_READPRNG,   /* Could not read enough from PRNG */
     44 
     45    CRYPT_INVALID_CIPHER,   /* Invalid cipher specified */
     46    CRYPT_INVALID_HASH,     /* Invalid hash specified */
     47    CRYPT_INVALID_PRNG,     /* Invalid PRNG specified */
     48 
     49    CRYPT_MEM,              /* Out of memory */
     50 
     51    CRYPT_PK_TYPE_MISMATCH, /* Not equivalent types of PK keys */
     52    CRYPT_PK_NOT_PRIVATE,   /* Requires a private PK key */
     53 
     54    CRYPT_INVALID_ARG,      /* Generic invalid argument */
     55    CRYPT_FILE_NOTFOUND,    /* File Not Found */
     56 
     57    CRYPT_PK_INVALID_TYPE,  /* Invalid type of PK key */
     58    CRYPT_PK_INVALID_SYSTEM,/* Invalid PK system specified */
     59    CRYPT_PK_DUP,           /* Duplicate key already in key ring */
     60    CRYPT_PK_NOT_FOUND,     /* Key not found in keyring */
     61    CRYPT_PK_INVALID_SIZE,  /* Invalid size input for PK parameters */
     62 
     63    CRYPT_INVALID_PRIME_SIZE,/* Invalid size of prime requested */
     64    CRYPT_PK_INVALID_PADDING /* Invalid padding on input */
     65 };
     66 
     67 #include <tomcrypt_cfg.h>
     68 #include <tomcrypt_macros.h>
     69 #include <tomcrypt_cipher.h>
     70 #include <tomcrypt_hash.h>
     71 #include <tomcrypt_mac.h>
     72 #include <tomcrypt_prng.h>
     73 #include <tomcrypt_pk.h>
     74 #include <tomcrypt_math.h>
     75 #include <tomcrypt_misc.h>
     76 #include <tomcrypt_argchk.h>
     77 #include <tomcrypt_pkcs.h>
     78 
     79 #ifdef __cplusplus
     80    }
     81 #endif
     82 
     83 #endif /* TOMCRYPT_H_ */
     84 
     85 
     86 /* $Source: /cvs/libtom/libtomcrypt/src/headers/tomcrypt.h,v $ */
     87 /* $Revision: 1.20 $ */
     88 /* $Date: 2006/11/26 01:45:14 $ */
     89