FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
xtea.c File Reference

XTEA 32-bit implementation. More...

#include "avutil.h"
#include "common.h"
#include "intreadwrite.h"
#include "mem.h"
#include "xtea.h"

Go to the source code of this file.

Macros

#define DSTEP(SUM, K0, K1)
 
#define ESTEP(SUM, K0, K1)
 

Functions

AVXTEAav_xtea_alloc (void)
 Allocate an AVXTEA context. More...
 
void av_xtea_init (AVXTEA *ctx, const uint8_t key[16])
 Initialize an AVXTEA context. More...
 
void av_xtea_le_init (AVXTEA *ctx, const uint8_t key[16])
 Initialize an AVXTEA context. More...
 
static void xtea_crypt_ecb (AVXTEA *ctx, uint8_t *dst, const uint8_t *src, int decrypt, uint8_t *iv)
 
static void xtea_le_crypt_ecb (AVXTEA *ctx, uint8_t *dst, const uint8_t *src, int decrypt, uint8_t *iv)
 
static void xtea_crypt (AVXTEA *ctx, uint8_t *dst, const uint8_t *src, int count, uint8_t *iv, int decrypt, void(*crypt)(AVXTEA *, uint8_t *, const uint8_t *, int, uint8_t *))
 
void av_xtea_crypt (AVXTEA *ctx, uint8_t *dst, const uint8_t *src, int count, uint8_t *iv, int decrypt)
 Encrypt or decrypt a buffer using a previously initialized context, in big endian format. More...
 
void av_xtea_le_crypt (AVXTEA *ctx, uint8_t *dst, const uint8_t *src, int count, uint8_t *iv, int decrypt)
 Encrypt or decrypt a buffer using a previously initialized context, in little endian format. More...
 

Detailed Description

XTEA 32-bit implementation.

Author
Samuel Pitoiset

Definition in file xtea.c.

Macro Definition Documentation

#define DSTEP (   SUM,
  K0,
  K1 
)
Value:
v1 -= (((v0 << 4) ^ (v0 >> 5)) + v0) ^ (SUM + K0); \
v0 -= (((v1 << 4) ^ (v1 >> 5)) + v1) ^ (SUM - 0x9E3779B9U + K1)
GLfloat v0
Definition: opengl_enc.c:107

Referenced by xtea_crypt_ecb().

#define ESTEP (   SUM,
  K0,
  K1 
)
Value:
v0 += (((v1 << 4) ^ (v1 >> 5)) + v1) ^ (SUM + K0);\
v1 += (((v0 << 4) ^ (v0 >> 5)) + v0) ^ (SUM + 0x9E3779B9U + K1)
GLfloat v0
Definition: opengl_enc.c:107

Referenced by xtea_crypt_ecb().

Function Documentation

static void xtea_crypt_ecb ( AVXTEA ctx,
uint8_t dst,
const uint8_t src,
int  decrypt,
uint8_t iv 
)
static

Definition at line 58 of file xtea.c.

Referenced by av_xtea_crypt().

static void xtea_le_crypt_ecb ( AVXTEA ctx,
uint8_t dst,
const uint8_t src,
int  decrypt,
uint8_t iv 
)
static

Definition at line 178 of file xtea.c.

Referenced by av_xtea_le_crypt().

static void xtea_crypt ( AVXTEA ctx,
uint8_t dst,
const uint8_t src,
int  count,
uint8_t iv,
int  decrypt,
void(*)(AVXTEA *, uint8_t *, const uint8_t *, int, uint8_t *)  crypt 
)
static

Definition at line 214 of file xtea.c.

Referenced by av_xtea_crypt(), and av_xtea_le_crypt().