IBR-DTNSuite  0.10
gf128mul.cpp File Reference
#include "brg_types.h"
#include "brg_endian.h"
#include "gf128mul.h"
Include dependency graph for gf128mul.cpp:

Go to the source code of this file.

Macros

#define BSP_ENABLED   true
 
#define gf_dat(q)
 
#define xx(p, q)   0x##p##q /* assemble in big endian order */
 
#define xda(i)
 

Functions

void gf_mul (void *a, const void *b)
 
void init_8k_table (unsigned char g[], void *t)
 

Variables

const unsigned short gf_tab [256] = gf_dat(xda)
 

Macro Definition Documentation

#define BSP_ENABLED   true

Definition at line 40 of file gf128mul.cpp.

#define gf_dat (   q)

Definition at line 48 of file gf128mul.cpp.

#define xda (   i)
Value:
( \
(i & 0x80 ? xx(e1,00) : 0) ^ (i & 0x40 ? xx(70,80) : 0) ^ \
(i & 0x20 ? xx(38,40) : 0) ^ (i & 0x10 ? xx(1c,20) : 0) ^ \
(i & 0x08 ? xx(0e,10) : 0) ^ (i & 0x04 ? xx(07,08) : 0) ^ \
(i & 0x02 ? xx(03,84) : 0) ^ (i & 0x01 ? xx(01,c2) : 0) )

Definition at line 98 of file gf128mul.cpp.

#define xx (   p,
 
)    0x##p##q /* assemble in big endian order */

Definition at line 95 of file gf128mul.cpp.

Function Documentation

void gf_mul ( void *  a,
const void *  b 
)

Definition at line 106 of file gf128mul.cpp.

References GF_BYTE_LEN, move_block_aligned(), and xor_block_aligned().

Referenced by gcm_compute_tag().

Here is the call graph for this function:

void init_8k_table ( unsigned char  g[],
void *  t 
)

Definition at line 175 of file gf128mul.cpp.

References GF_BYTE_LEN, and tab8k.

Referenced by gcm_init_and_key().

Variable Documentation

const unsigned short gf_tab[256] = gf_dat(xda)

Definition at line 104 of file gf128mul.cpp.