Data Structures | Macros | Functions
aes_ctr.c File Reference
#include <string.h>
#include "aes_ctr.h"
#include "aes.h"
#include "aes_internal.h"
#include "macros.h"
#include "mem.h"
#include "random_seed.h"

Go to the source code of this file.

Data Structures

struct  AVAESCTR


#define AES_BLOCK_SIZE   (16)


struct AVAESCTRav_aes_ctr_alloc (void)
 Allocate an AVAESCTR context. More...
void av_aes_ctr_set_iv (struct AVAESCTR *a, const uint8_t *iv)
 Forcefully change the 8-byte iv. More...
void av_aes_ctr_set_full_iv (struct AVAESCTR *a, const uint8_t *iv)
 Forcefully change the "full" 16-byte iv, including the counter. More...
const uint8_t * av_aes_ctr_get_iv (struct AVAESCTR *a)
 Get the current iv. More...
void av_aes_ctr_set_random_iv (struct AVAESCTR *a)
 Generate a random iv. More...
int av_aes_ctr_init (struct AVAESCTR *a, const uint8_t *key)
 Initialize an AVAESCTR context. More...
void av_aes_ctr_free (struct AVAESCTR *a)
 Release an AVAESCTR context. More...
static void av_aes_ctr_increment_be64 (uint8_t *counter)
void av_aes_ctr_increment_iv (struct AVAESCTR *a)
 Increment the top 64 bit of the iv (performed after each frame) More...
void av_aes_ctr_crypt (struct AVAESCTR *a, uint8_t *dst, const uint8_t *src, int count)
 Process a buffer using a previously initialized context. More...

Macro Definition Documentation


#define AES_BLOCK_SIZE   (16)

Definition at line 31 of file aes_ctr.c.

Function Documentation

◆ av_aes_ctr_increment_be64()

static void av_aes_ctr_increment_be64 ( uint8_t *  counter)

Definition at line 88 of file aes_ctr.c.

Referenced by av_aes_ctr_crypt(), and av_aes_ctr_increment_iv().