9#ifndef SQUID_INCLUDE_BASE64_H
10#define SQUID_INCLUDE_BASE64_H
12#if HAVE_NETTLE_BASE64_H
13#include <nettle/base64.h>
59#define BASE64_ENCODE_LENGTH(length) (((length) * 8 + 4)/6)
62#define BASE64_ENCODE_FINAL_LENGTH 3
66#define BASE64_ENCODE_RAW_LENGTH(length) ((((length) + 2)/3)*4)
120#define BASE64_DECODE_LENGTH(length) ((((length) + 1) * 6) / 8)
169#define base64_encode_len(length) (BASE64_ENCODE_LENGTH(length)+BASE64_ENCODE_FINAL_LENGTH+1)
void base64_encode_raw(char *dst, size_t length, const uint8_t *src)
void base64_encode_group(char *dst, uint32_t group)
void base64url_encode_init(struct base64_encode_ctx *ctx)
int base64_decode_single(struct base64_decode_ctx *ctx, uint8_t *dst, char src)
void base64_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)
void base64_decode_init(struct base64_decode_ctx *ctx)
void base64url_decode_init(struct base64_decode_ctx *ctx)
size_t base64_encode_final(struct base64_encode_ctx *ctx, char *dst)
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)
const signed char * table