aboutsummaryrefslogtreecommitdiffstats
path: root/src/gsm/tuak/KeccakP-1600-3gpp.h
blob: a23cc46081a1f28ee8d057954a83edcdefa1df61 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/* -----------------------------------------------------------------------
 * code extracted from 3GPP TS 35.231, annex E for Keccak core functions
 * https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=2402
 *-----------------------------------------------------------------------*/

/* this is the trick to make the code cross-platform
 * at least, Win32 / Linux */

#if defined(_WIN32) || defined(__WIN32__)
#	include <windows.h>
#	define EXPORTIT __declspec(dllexport)
#else
#	define EXPORTIT
#endif

#include <stdint.h>

/*------------------------------------------------------------------------
 * KeccakP-1600-3gpp.h
 *------------------------------------------------------------------------*/

EXPORTIT void Keccak_f_8 (uint8_t s[200]);
EXPORTIT void Keccak_f_32(uint32_t s[50]);
EXPORTIT void Keccak_f_64(uint64_t s[25]);