Skip to content

File base64.c

FileList > base > base64.c

Go to the source code of this file

  • #include "config.h"
  • #include <stdio.h>
  • #include <string.h>
  • #include <math.h>
  • #include <ctype.h>
  • #include <stdlib.h>
  • #include <stddef.h>
  • #include <assert.h>
  • #include "porting.h"
  • #include "error_code.h"
  • #include "memory_alloc.h"
  • #include "base64.h"
  • #include "memory_wrapper.hpp"

Classes

Type Name
struct base64_chunk

Public Types

Type Name
typedef struct base64_chunk BASE64_CHUNK

Public Attributes

Type Name
const char *const base64_map = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" "abcdefghijklmnopqrstuvwxyz" "0123456789+/"
const char from_base64_table = /* multi line expression */

Public Functions

Type Name
int base64_decode (const unsigned char * src, int src_len, unsigned char ** dest, int * dest_len)
int base64_encode (const unsigned char * src, int src_len, unsigned char ** dest, int * dest_len)

Public Static Functions

Type Name
int base64_decode_chunk (unsigned char * dest, int chunk_num, BASE64_CHUNK ** ppchunk)
int base64_encode_local (const unsigned char * src, int src_len, unsigned char * dest)
int base64_partition_into_chunk (const unsigned char * src, int src_len, int * chunk_num, int * dst_len, BASE64_CHUNK *** pppchunk)
int base64_remove_space (const unsigned char * src, int src_len, unsigned char * dest, int * dst_len)
bool char_is_invalid (unsigned char ch)
bool char_is_padding (unsigned char ch)
int find_base64 (unsigned char ch)
void free_base64_chunk (BASE64_CHUNK ** ppchunk, int chunk_num)
int get_base64_encode_len (int src_len)

Macros

Type Name
define CH_INVALID -1
define CH_SPACE -2
define MAX_BASE64_LINE_LENGTH 76

Public Types Documentation

typedef BASE64_CHUNK

typedef struct base64_chunk BASE64_CHUNK;

Public Attributes Documentation

variable base64_map

const char* const base64_map;

variable from_base64_table

const char from_base64_table[];

Public Functions Documentation

function base64_decode

int base64_decode (
    const  unsigned  char * src,
    int src_len,
    unsigned  char ** dest,
    int * dest_len
) 

function base64_encode

int base64_encode (
    const  unsigned  char * src,
    int src_len,
    unsigned  char ** dest,
    int * dest_len
) 

Public Static Functions Documentation

function base64_decode_chunk

static int base64_decode_chunk (
    unsigned  char * dest,
    int chunk_num,
    BASE64_CHUNK ** ppchunk
) 

function base64_encode_local

static int base64_encode_local (
    const  unsigned  char * src,
    int src_len,
    unsigned  char * dest
) 

function base64_partition_into_chunk

static int base64_partition_into_chunk (
    const  unsigned  char * src,
    int src_len,
    int * chunk_num,
    int * dst_len,
    BASE64_CHUNK *** pppchunk
) 

function base64_remove_space

static int base64_remove_space (
    const  unsigned  char * src,
    int src_len,
    unsigned  char * dest,
    int * dst_len
) 

function char_is_invalid

static bool char_is_invalid (
    unsigned  char ch
) 

function char_is_padding

static bool char_is_padding (
    unsigned  char ch
) 

function find_base64

static int find_base64 (
    unsigned  char ch
) 

function free_base64_chunk

static void free_base64_chunk (
    BASE64_CHUNK ** ppchunk,
    int chunk_num
) 

function get_base64_encode_len

static int get_base64_encode_len (
    int src_len
) 

Macro Definition Documentation

define CH_INVALID

#define CH_INVALID `-1`

define CH_SPACE

#define CH_SPACE `-2`

define MAX_BASE64_LINE_LENGTH

#define MAX_BASE64_LINE_LENGTH `76`


The documentation for this class was generated from the following file cubrid/src/base/base64.c