00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef _CRT_SECURE_NO_DEPRECATE
00022 #define _CRT_SECURE_NO_DEPRECATE 1
00023 #endif
00024
00025 #include <string.h>
00026 #include <stdio.h>
00027
00028 #include "xyssl/config.h"
00029
00030 #include "xyssl/md2.h"
00031 #include "xyssl/md4.h"
00032 #include "xyssl/md5.h"
00033 #include "xyssl/sha1.h"
00034 #include "xyssl/sha2.h"
00035 #include "xyssl/sha4.h"
00036 #include "xyssl/arc4.h"
00037 #include "xyssl/des.h"
00038 #include "xyssl/aes.h"
00039 #include "xyssl/base64.h"
00040 #include "xyssl/bignum.h"
00041 #include "xyssl/rsa.h"
00042 #include "xyssl/x509.h"
00043
00044 int main( int argc, char *argv[] )
00045 {
00046 int ret, v;
00047
00048 if( argc == 2 && strcmp( argv[1], "-quiet" ) == 0 )
00049 v = 0;
00050 else
00051 {
00052 v = 1;
00053 printf( "\n" );
00054 }
00055
00056 #if defined(XYSSL_MD2_C)
00057 if( ( ret = md2_self_test( v ) ) != 0 )
00058 return( ret );
00059 #endif
00060
00061 #if defined(XYSSL_MD4_C)
00062 if( ( ret = md4_self_test( v ) ) != 0 )
00063 return( ret );
00064 #endif
00065
00066 #if defined(XYSSL_MD5_C)
00067 if( ( ret = md5_self_test( v ) ) != 0 )
00068 return( ret );
00069 #endif
00070
00071 #if defined(XYSSL_SHA1_C)
00072 if( ( ret = sha1_self_test( v ) ) != 0 )
00073 return( ret );
00074 #endif
00075
00076 #if defined(XYSSL_SHA2_C)
00077 if( ( ret = sha2_self_test( v ) ) != 0 )
00078 return( ret );
00079 #endif
00080
00081 #if defined(XYSSL_SHA4_C)
00082 if( ( ret = sha4_self_test( v ) ) != 0 )
00083 return( ret );
00084 #endif
00085
00086 #if defined(XYSSL_ARC4_C)
00087 if( ( ret = arc4_self_test( v ) ) != 0 )
00088 return( ret );
00089 #endif
00090
00091 #if defined(XYSSL_DES_C)
00092 if( ( ret = des_self_test( v ) ) != 0 )
00093 return( ret );
00094 #endif
00095
00096 #if defined(XYSSL_AES_C)
00097 if( ( ret = aes_self_test( v ) ) != 0 )
00098 return( ret );
00099 #endif
00100
00101 #if defined(XYSSL_BASE64_C)
00102 if( ( ret = base64_self_test( v ) ) != 0 )
00103 return( ret );
00104 #endif
00105
00106 #if defined(XYSSL_BIGNUM_C)
00107 if( ( ret = mpi_self_test( v ) ) != 0 )
00108 return( ret );
00109 #endif
00110
00111 #if defined(XYSSL_RSA_C)
00112 if( ( ret = rsa_self_test( v ) ) != 0 )
00113 return( ret );
00114 #endif
00115
00116 #if defined(XYSSL_X509_C)
00117 if( ( ret = x509_self_test( v ) ) != 0 )
00118 return( ret );
00119 #endif
00120
00121 if( v != 0 )
00122 {
00123 printf( " [ All tests passed ]\n\n" );
00124 #ifdef WIN32
00125 printf( " Press Enter to exit this program.\n" );
00126 fflush( stdout ); getchar();
00127 #endif
00128 }
00129
00130 return( ret );
00131 }