base64.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  base64_encode_ctx
 
struct  base64_decode_ctx
 

Macros

#define BASE64_ENCODE_LENGTH(length)   (((length) * 8 + 4)/6)
 
#define BASE64_ENCODE_FINAL_LENGTH   3
 
#define BASE64_ENCODE_RAW_LENGTH(length)   ((((length) + 2)/3)*4)
 
#define BASE64_DECODE_LENGTH(length)   ((((length) + 1) * 6) / 8)
 
#define base64_encode_len(length)   (BASE64_ENCODE_LENGTH(length)+BASE64_ENCODE_FINAL_LENGTH+1)
 

Functions

void base64_encode_init (struct base64_encode_ctx *ctx)
 
void base64url_encode_init (struct base64_encode_ctx *ctx)
 
size_t base64_encode_single (struct base64_encode_ctx *ctx, char *dst, uint8_t src)
 
size_t base64_encode_update (struct base64_encode_ctx *ctx, char *dst, size_t length, const uint8_t *src)
 
size_t base64_encode_final (struct base64_encode_ctx *ctx, char *dst)
 
void base64_encode_raw (char *dst, size_t length, const uint8_t *src)
 
void base64_encode_group (char *dst, uint32_t group)
 
void base64_decode_init (struct base64_decode_ctx *ctx)
 
void base64url_decode_init (struct base64_decode_ctx *ctx)
 
int base64_decode_single (struct base64_decode_ctx *ctx, uint8_t *dst, char src)
 
int base64_decode_update (struct base64_decode_ctx *ctx, size_t *dst_length, uint8_t *dst, size_t src_length, const char *src)
 
int base64_decode_final (struct base64_decode_ctx *ctx)
 

Macro Definition Documentation

◆ BASE64_DECODE_LENGTH

#define BASE64_DECODE_LENGTH (   length)    ((((length) + 1) * 6) / 8)

Definition at line 120 of file base64.h.

◆ BASE64_ENCODE_FINAL_LENGTH

#define BASE64_ENCODE_FINAL_LENGTH   3

Definition at line 62 of file base64.h.

◆ base64_encode_len

#define base64_encode_len (   length)    (BASE64_ENCODE_LENGTH(length)+BASE64_ENCODE_FINAL_LENGTH+1)

Calculate the buffer size required to hold the encoded form of a string of length 'decodedLen' including all terminator bytes.

Definition at line 169 of file base64.h.

◆ BASE64_ENCODE_LENGTH

#define BASE64_ENCODE_LENGTH (   length)    (((length) * 8 + 4)/6)

Definition at line 59 of file base64.h.

◆ BASE64_ENCODE_RAW_LENGTH

#define BASE64_ENCODE_RAW_LENGTH (   length)    ((((length) + 2)/3)*4)

Definition at line 66 of file base64.h.

Function Documentation

◆ base64_decode_final()

int base64_decode_final ( struct base64_decode_ctx ctx)

◆ base64_decode_init()

◆ base64_decode_single()

int base64_decode_single ( struct base64_decode_ctx ctx,
uint8_t *  dst,
char  src 
)

◆ base64_decode_update()

int base64_decode_update ( struct base64_decode_ctx ctx,
size_t dst_length,
uint8_t *  dst,
size_t  src_length,
const char *  src 
)

◆ base64_encode_final()

◆ base64_encode_group()

void base64_encode_group ( char *  dst,
uint32_t  group 
)

Definition at line 223 of file base64.c.

References base64_encode_table, and ENCODE.

◆ base64_encode_init()

◆ base64_encode_raw()

void base64_encode_raw ( char *  dst,
size_t  length,
const uint8_t *  src 
)

Definition at line 217 of file base64.c.

References base64_encode_table, and encode_raw().

◆ base64_encode_single()

size_t base64_encode_single ( struct base64_encode_ctx ctx,
char *  dst,
uint8_t  src 
)

◆ base64_encode_update()

◆ base64url_decode_init()

void base64url_decode_init ( struct base64_decode_ctx ctx)

◆ base64url_encode_init()

void base64url_encode_init ( struct base64_encode_ctx ctx)

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors