X-Git-Url: https://git.cryptolib.org/?a=blobdiff_plain;f=test_src%2Fmain-twister224-test.c;h=d2e0a141b49925f128f427e7b9ec338aaf6900e1;hb=e5a49deb52521f019e37779d6e9d81ec4f02aba4;hp=0cf3d6a4c3dbd21e9df68edb705a3302a5fb2603;hpb=4469def3e210fc904cfefc5b158fc6d4dc5f6e47;p=avr-crypto-lib.git diff --git a/test_src/main-twister224-test.c b/test_src/main-twister224-test.c index 0cf3d6a..d2e0a14 100644 --- a/test_src/main-twister224-test.c +++ b/test_src/main-twister224-test.c @@ -1,6 +1,6 @@ /* main-twister224-test.c */ /* - This file is part of the Crypto-avr-lib/microcrypt-lib. + This file is part of the AVR-Crypto-Lib. Copyright (C) 2008 Daniel Otte (daniel.otte@rub.de) This program is free software: you can redistribute it and/or modify @@ -30,6 +30,8 @@ #include "nessie_hash_test.h" #include "performance_test.h" +#include + #include #include #include @@ -105,7 +107,7 @@ void testrun_twister224(void){ twister224(&hash, &(stestv[i]), stestl[i]); uart_hexdump(hash, 224/8); } - +#ifdef TWISTER_LONGTEST uart_putstr_P(PSTR("\r\n\r\n=== TWISTER-224 test suit (long test) ===")); char* ltest= "abcdefghbcdefghicdefghijdefghijk" "efghijklfghijklmghijklmnhijklmno"; @@ -117,8 +119,9 @@ void testrun_twister224(void){ for(i=0; i<16777216; ++i){ twister224_nextBlock(&ctx, ltest); } - twister224_ctx2hash(hash, &ctx) + twister224_ctx2hash(hash, &ctx); uart_hexdump(hash, 224/8); +#endif } @@ -127,7 +130,7 @@ void testrun_performance_twister224(void){ char str[16]; uint8_t data[64]; twister_state_t ctx; - + volatile uint16_t i; calibrateTimer(); print_overhead(); @@ -140,6 +143,9 @@ void testrun_performance_twister224(void){ ultoa((unsigned long)t, str, 10); uart_putstr(str); + i=3000; + while(i--) + _delay_ms(1); startTimer(1); twister_small_nextBlock(&ctx, data); @@ -148,6 +154,9 @@ void testrun_performance_twister224(void){ ultoa((unsigned long)t, str, 10); uart_putstr(str); + i=3000; + while(i--) + _delay_ms(1); startTimer(1); twister_small_lastBlock(&ctx, data, 0); @@ -155,7 +164,11 @@ void testrun_performance_twister224(void){ uart_putstr_P(PSTR("\r\n\tlast block time: ")); ultoa((unsigned long)t, str, 10); uart_putstr(str); - + + i=3000; + while(i--) + _delay_ms(1); + startTimer(1); twister_small_ctx2hash(data, &ctx, 224); t = stopTimer(); @@ -163,6 +176,10 @@ void testrun_performance_twister224(void){ ultoa((unsigned long)t, str, 10); uart_putstr(str); + i=3000; + while(i--) + _delay_ms(1); + uart_putstr_P(PSTR("\r\n")); } @@ -171,29 +188,28 @@ void testrun_performance_twister224(void){ * main * *****************************************************************************/ -int main (void){ - char str[20]; +const char nessie_str[] PROGMEM = "nessie"; +const char test_str[] PROGMEM = "test"; +const char performance_str[] PROGMEM = "performance"; +const char echo_str[] PROGMEM = "echo"; - - DEBUG_INIT(); - uart_putstr_P(PSTR("\r\n")); +cmdlist_entry_t cmdlist[] PROGMEM = { + { nessie_str, NULL, testrun_nessie_twister224}, + { test_str, NULL, testrun_twister224}, + { performance_str, NULL, testrun_performance_twister224}, + { echo_str, (void*)1, (void_fpt)echo_ctrl}, + { NULL, NULL, NULL} +}; - uart_putstr_P(PSTR("\r\n\r\nCrypto-VS (")); - uart_putstr(algo_name); - uart_putstr_P(PSTR(")\r\nloaded and running\r\n")); - PGM_P u = PSTR("nessie\0test\0performance\0"); - void_fpt v[] = { testrun_nessie_twister224, - testrun_twister224, - testrun_performance_twister224 }; - - while(1){ - if (!getnextwordn(str,20)){DEBUG_S("DBG: W1\r\n"); goto error;} - if(execcommand_d0_P(str, u, v)<0){ - uart_putstr_P(PSTR("\r\nunknown command\r\n")); - } - continue; - error: - uart_putstr("ERROR\r\n"); +int main (void){ + DEBUG_INIT(); + uart_putstr("\r\n"); + cli_rx = uart_getc; + cli_tx = uart_putc; + for(;;){ + uart_putstr_P(PSTR("\r\n\r\nCrypto-VS (")); + uart_putstr(algo_name); + uart_putstr_P(PSTR(")\r\nloaded and running\r\n")); + cmd_interface(cmdlist); } } -