#include <string.h>
#include <limits.h>
#include "brg_endian.h"
#include "brg_types.h"
#include "gcm_aes.h"
Go to the source code of this file.
Defines | |
#define | USE_INLINING |
#define | ui8_ptr(x) ptr_cast(x, 8) |
#define | ui16_ptr(x) ptr_cast(x, 16) |
#define | ui32_ptr(x) ptr_cast(x, 32) |
#define | ui64_ptr(x) ptr_cast(x, 64) |
#define | unit_ptr(x) ptr_cast(x, BFR_UNIT) |
#define | BUF_INC (BFR_UNIT >> 3) |
#define | BUF_ADRMASK ((BFR_UNIT >> 3) - 1) |
#define | rotl32(x, n) (((x) << n) | ((x) >> (32 - n))) |
#define | rotr32(x, n) (((x) >> n) | ((x) << (32 - n))) |
#define | rotl64(x, n) (((x) << n) | ((x) >> (64 - n))) |
#define | rotr64(x, n) (((x) >> n) | ((x) << (64 - n))) |
#define | bswap_32(x) ((rotr32((x), 24) & 0x00ff00ff) | (rotr32((x), 8) & 0xff00ff00)) |
#define | bswap_64(x) (bswap_32((uint_32t)(x >> 32)) | ((uint_64t)bswap_32((uint_32t)x) << 32)) |
#define | bswap32_block(d, s, n) { int _i = (n); while(_i--) ui32_ptr(d)[_i] = bswap_32(ui32_ptr(s)[_i]); } |
#define | bswap64_block(d, s, n) { int _i = (n); while(_i--) ui64_ptr(d)[_i] = bswap_64(ui64_ptr(s)[_i]); } |
#define | move_block(p, q) memcpy((p), (q), 16) |
#define | move_block_aligned(p, q) move_block(p,q) |
#define | xor_block(p, q) |
#define | xor_block_aligned(p, q) xor_block(p,q) |
#define | uint_32t_to_le(x) |
#define | uint_64t_to_le(x) |
#define | uint_32t_to_be(x) (x) = bswap_32((x)) |
#define | uint_64t_to_be(x) (x) = bswap_64((x)) |
Typedefs | |
typedef void(* | xor_function )(void *, const void *q) |
#define bswap32_block | ( | d, | |||
s, | |||||
n | ) | { int _i = (n); while(_i--) ui32_ptr(d)[_i] = bswap_32(ui32_ptr(s)[_i]); } |
Definition at line 208 of file mode_hdr.h.
#define bswap64_block | ( | d, | |||
s, | |||||
n | ) | { int _i = (n); while(_i--) ui64_ptr(d)[_i] = bswap_64(ui64_ptr(s)[_i]); } |
Definition at line 211 of file mode_hdr.h.
#define bswap_32 | ( | x | ) | ((rotr32((x), 24) & 0x00ff00ff) | (rotr32((x), 8) & 0xff00ff00)) |
Definition at line 201 of file mode_hdr.h.
#define bswap_64 | ( | x | ) | (bswap_32((uint_32t)(x >> 32)) | ((uint_64t)bswap_32((uint_32t)x) << 32)) |
Definition at line 205 of file mode_hdr.h.
#define BUF_ADRMASK ((BFR_UNIT >> 3) - 1) |
Definition at line 116 of file mode_hdr.h.
#define BUF_INC (BFR_UNIT >> 3) |
Definition at line 115 of file mode_hdr.h.
#define move_block | ( | p, | |||
q | ) | memcpy((p), (q), 16) |
Definition at line 263 of file mode_hdr.h.
#define move_block_aligned | ( | p, | |||
q | ) | move_block(p,q) |
Definition at line 273 of file mode_hdr.h.
#define rotl32 | ( | x, | |||
n | ) | (((x) << n) | ((x) >> (32 - n))) |
Definition at line 185 of file mode_hdr.h.
#define rotl64 | ( | x, | |||
n | ) | (((x) << n) | ((x) >> (64 - n))) |
Definition at line 193 of file mode_hdr.h.
#define rotr32 | ( | x, | |||
n | ) | (((x) >> n) | ((x) << (32 - n))) |
Definition at line 189 of file mode_hdr.h.
#define rotr64 | ( | x, | |||
n | ) | (((x) >> n) | ((x) << (64 - n))) |
Definition at line 197 of file mode_hdr.h.
#define ui16_ptr | ( | x | ) | ptr_cast(x, 16) |
Definition at line 110 of file mode_hdr.h.
#define ui32_ptr | ( | x | ) | ptr_cast(x, 32) |
Definition at line 111 of file mode_hdr.h.
#define ui64_ptr | ( | x | ) | ptr_cast(x, 64) |
Definition at line 112 of file mode_hdr.h.
#define ui8_ptr | ( | x | ) | ptr_cast(x, 8) |
Definition at line 109 of file mode_hdr.h.
#define uint_32t_to_be | ( | x | ) | (x) = bswap_32((x)) |
Definition at line 309 of file mode_hdr.h.
#define uint_32t_to_le | ( | x | ) |
Definition at line 307 of file mode_hdr.h.
#define uint_64t_to_be | ( | x | ) | (x) = bswap_64((x)) |
Definition at line 310 of file mode_hdr.h.
#define uint_64t_to_le | ( | x | ) |
Definition at line 308 of file mode_hdr.h.
#define unit_ptr | ( | x | ) | ptr_cast(x, BFR_UNIT) |
Definition at line 113 of file mode_hdr.h.
#define USE_INLINING |
Definition at line 63 of file mode_hdr.h.
#define xor_block | ( | p, | |||
q | ) |
ui8_ptr(p)[ 0] ^= ui8_ptr(q)[ 0], ui8_ptr(p)[ 1] ^= ui8_ptr(q)[ 1], \ ui8_ptr(p)[ 2] ^= ui8_ptr(q)[ 2], ui8_ptr(p)[ 3] ^= ui8_ptr(q)[ 3], \ ui8_ptr(p)[ 4] ^= ui8_ptr(q)[ 4], ui8_ptr(p)[ 5] ^= ui8_ptr(q)[ 5], \ ui8_ptr(p)[ 6] ^= ui8_ptr(q)[ 6], ui8_ptr(p)[ 7] ^= ui8_ptr(q)[ 7], \ ui8_ptr(p)[ 8] ^= ui8_ptr(q)[ 8], ui8_ptr(p)[ 9] ^= ui8_ptr(q)[ 9], \ ui8_ptr(p)[10] ^= ui8_ptr(q)[10], ui8_ptr(p)[11] ^= ui8_ptr(q)[11], \ ui8_ptr(p)[12] ^= ui8_ptr(q)[12], ui8_ptr(p)[13] ^= ui8_ptr(q)[13], \ ui8_ptr(p)[14] ^= ui8_ptr(q)[14], ui8_ptr(p)[15] ^= ui8_ptr(q)[15]
Definition at line 276 of file mode_hdr.h.
#define xor_block_aligned | ( | p, | |||
q | ) | xor_block(p,q) |
Definition at line 294 of file mode_hdr.h.
typedef void(* xor_function)(void *, const void *q) |
Definition at line 120 of file mode_hdr.h.