#include <grpc/support/port_platform.h>
#include "src/core/lib/slice/b64.h"
#include <stdint.h>
#include <string.h>
#include <grpc/support/alloc.h>
#include <grpc/support/log.h>
#include "src/core/lib/gpr/useful.h"
#include "src/core/lib/slice/slice_refcount.h"
Go to the source code of this file.
Macros | |
#define | GRPC_BASE64_MULTILINE_LINE_LEN 76 |
#define | GRPC_BASE64_MULTILINE_NUM_BLOCKS (GRPC_BASE64_MULTILINE_LINE_LEN / 4) |
#define | GRPC_BASE64_PAD_BYTE 0x7F |
#define | GRPC_BASE64_PAD_CHAR '=' |
Functions | |
static int | decode_group (const unsigned char *codes, size_t num_codes, unsigned char *result, size_t *result_offset) |
static void | decode_one_char (const unsigned char *codes, unsigned char *result, size_t *result_offset) |
static void | decode_two_chars (const unsigned char *codes, unsigned char *result, size_t *result_offset) |
grpc_slice | grpc_base64_decode (const char *b64, int url_safe) |
grpc_slice | grpc_base64_decode_with_len (const char *b64, size_t b64_len, int url_safe) |
char * | grpc_base64_encode (const void *vdata, size_t data_size, int url_safe, int multiline) |
void | grpc_base64_encode_core (char *result, const void *vdata, size_t data_size, int url_safe, int multiline) |
size_t | grpc_base64_estimate_encoded_size (size_t data_size, int multiline) |
Variables | |
static const int8_t | base64_bytes [] |
static const char | base64_url_safe_chars [] |
static const char | base64_url_unsafe_chars [] |
#define GRPC_BASE64_MULTILINE_NUM_BLOCKS (GRPC_BASE64_MULTILINE_LINE_LEN / 4) |
|
static |
|
static |
grpc_slice grpc_base64_decode | ( | const char * | b64, |
int | url_safe | ||
) |
grpc_slice grpc_base64_decode_with_len | ( | const char * | b64, |
size_t | b64_len, | ||
int | url_safe | ||
) |
size_t grpc_base64_estimate_encoded_size | ( | size_t | data_size, |
int | multiline | ||
) |
|
static |