X-Git-Url: https://git.cryptolib.org/?p=arm-crypto-lib.git;a=blobdiff_plain;f=test_src%2Fnessie_mac_test.h;fp=test_src%2Fnessie_mac_test.h;h=dd1119f2e9f35ffaf64ee8b6435b831d30487c0e;hp=0000000000000000000000000000000000000000;hb=2a4779378a7bf4322a0e6b2024284092135e8a3d;hpb=e69f1207a9fbd9c0f45bfdbb2d8ebe9852d95969 diff --git a/test_src/nessie_mac_test.h b/test_src/nessie_mac_test.h new file mode 100644 index 0000000..dd1119f --- /dev/null +++ b/test_src/nessie_mac_test.h @@ -0,0 +1,47 @@ +/* nessie_mac_test.h */ +/* + This file is part of the ARM-Crypto-Lib. + Copyright (C) 2008 Daniel Otte (daniel.otte@rub.de) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ +#ifndef NESSIE_MAC_TEST_H_ +#define NESSIE_MAC_TEST_H_ + +#include + +typedef void (*nessie_mac_init_fpt)(void* ctx, const void* key, uint16_t keysize_b); +typedef void (*nessie_mac_next_fpt)(void* ctx, const void* buffer); +typedef void (*nessie_mac_last_fpt)(void* ctx, const void* buffer, uint16_t size_b); +typedef void (*nessie_mac_conv_fpt)(void* buffer, void* ctx); + + +typedef struct nessie_mac_ctx_st{ + uint16_t macsize_b; + uint16_t keysize_b; + uint16_t blocksize_B; + uint16_t ctx_size_B; + const char* name; + nessie_mac_init_fpt mac_init; + nessie_mac_next_fpt mac_next; + nessie_mac_last_fpt mac_last; + nessie_mac_conv_fpt mac_conv; +} nessie_mac_ctx_t; + + +extern nessie_mac_ctx_t nessie_mac_ctx; + +void nessie_mac_run(void); + +#endif /*NESSIE_MAC_TEST_H_*/