Functions
cbs.c File Reference
#include <openssl/mem.h>
#include <openssl/bytestring.h>
#include <assert.h>
#include <inttypes.h>
#include <string.h>
#include "internal.h"
#include "../internal.h"
Include dependency graph for cbs.c:

Go to the source code of this file.

Functions

static int add_decimal (CBB *out, uint64_t v)
 
int CBS_asn1_bitstring_has_bit (const CBS *cbs, unsigned bit)
 
char * CBS_asn1_oid_to_text (const CBS *cbs)
 
int CBS_contains_zero_byte (const CBS *cbs)
 
int CBS_copy_bytes (CBS *cbs, uint8_t *out, size_t len)
 
const uint8_tCBS_data (const CBS *cbs)
 
static int cbs_get (CBS *cbs, const uint8_t **p, size_t n)
 
int CBS_get_any_asn1 (CBS *cbs, CBS *out, unsigned *out_tag)
 
int CBS_get_any_asn1_element (CBS *cbs, CBS *out, unsigned *out_tag, size_t *out_header_len)
 
static int cbs_get_any_asn1_element (CBS *cbs, CBS *out, unsigned *out_tag, size_t *out_header_len, int *out_ber_found, int ber_ok)
 
int CBS_get_any_ber_asn1_element (CBS *cbs, CBS *out, unsigned *out_tag, size_t *out_header_len, int *out_ber_found)
 
int CBS_get_asn1 (CBS *cbs, CBS *out, unsigned tag_value)
 
static int cbs_get_asn1 (CBS *cbs, CBS *out, unsigned tag_value, int skip_header)
 
int CBS_get_asn1_bool (CBS *cbs, int *out)
 
int CBS_get_asn1_element (CBS *cbs, CBS *out, unsigned tag_value)
 
int CBS_get_asn1_int64 (CBS *cbs, int64_t *out)
 
int CBS_get_asn1_uint64 (CBS *cbs, uint64_t *out)
 
int CBS_get_bytes (CBS *cbs, CBS *out, size_t len)
 
int CBS_get_last_u8 (CBS *cbs, uint8_t *out)
 
static int cbs_get_length_prefixed (CBS *cbs, CBS *out, size_t len_len)
 
int CBS_get_optional_asn1 (CBS *cbs, CBS *out, int *out_present, unsigned tag)
 
int CBS_get_optional_asn1_bool (CBS *cbs, int *out, unsigned tag, int default_value)
 
int CBS_get_optional_asn1_octet_string (CBS *cbs, CBS *out, int *out_present, unsigned tag)
 
int CBS_get_optional_asn1_uint64 (CBS *cbs, uint64_t *out, unsigned tag, uint64_t default_value)
 
static int cbs_get_u (CBS *cbs, uint64_t *out, size_t len)
 
int CBS_get_u16 (CBS *cbs, uint16_t *out)
 
int CBS_get_u16_length_prefixed (CBS *cbs, CBS *out)
 
int CBS_get_u16le (CBS *cbs, uint16_t *out)
 
int CBS_get_u24 (CBS *cbs, uint32_t *out)
 
int CBS_get_u24_length_prefixed (CBS *cbs, CBS *out)
 
int CBS_get_u32 (CBS *cbs, uint32_t *out)
 
int CBS_get_u32le (CBS *cbs, uint32_t *out)
 
int CBS_get_u64 (CBS *cbs, uint64_t *out)
 
int CBS_get_u64le (CBS *cbs, uint64_t *out)
 
int CBS_get_u8 (CBS *cbs, uint8_t *out)
 
int CBS_get_u8_length_prefixed (CBS *cbs, CBS *out)
 
int CBS_get_until_first (CBS *cbs, CBS *out, uint8_t c)
 
void CBS_init (CBS *cbs, const uint8_t *data, size_t len)
 
int CBS_is_unsigned_asn1_integer (const CBS *cbs)
 
int CBS_is_valid_asn1_bitstring (const CBS *cbs)
 
int CBS_is_valid_asn1_integer (const CBS *cbs, int *out_is_negative)
 
size_t CBS_len (const CBS *cbs)
 
int CBS_mem_equal (const CBS *cbs, const uint8_t *data, size_t len)
 
int CBS_peek_asn1_tag (const CBS *cbs, unsigned tag_value)
 
int CBS_skip (CBS *cbs, size_t len)
 
int CBS_stow (const CBS *cbs, uint8_t **out_ptr, size_t *out_len)
 
int CBS_strdup (const CBS *cbs, char **out_ptr)
 
static int parse_asn1_tag (CBS *cbs, unsigned *out)
 
static int parse_base128_integer (CBS *cbs, uint64_t *out)
 

Function Documentation

◆ add_decimal()

static int add_decimal ( CBB out,
uint64_t  v 
)
static

Definition at line 661 of file cbs.c.

◆ CBS_asn1_bitstring_has_bit()

int CBS_asn1_bitstring_has_bit ( const CBS cbs,
unsigned  bit 
)

Definition at line 622 of file cbs.c.

◆ CBS_asn1_oid_to_text()

char* CBS_asn1_oid_to_text ( const CBS cbs)

Definition at line 667 of file cbs.c.

◆ CBS_contains_zero_byte()

int CBS_contains_zero_byte ( const CBS cbs)

Definition at line 79 of file cbs.c.

◆ CBS_copy_bytes()

int CBS_copy_bytes ( CBS cbs,
uint8_t out,
size_t  len 
)

Definition at line 187 of file cbs.c.

◆ CBS_data()

const uint8_t* CBS_data ( const CBS cbs)

Definition at line 47 of file cbs.c.

◆ cbs_get()

static int cbs_get ( CBS cbs,
const uint8_t **  p,
size_t  n 
)
static

Definition at line 31 of file cbs.c.

◆ CBS_get_any_asn1()

int CBS_get_any_asn1 ( CBS cbs,
CBS out,
unsigned *  out_tag 
)

Definition at line 382 of file cbs.c.

◆ CBS_get_any_asn1_element()

int CBS_get_any_asn1_element ( CBS cbs,
CBS out,
unsigned *  out_tag,
size_t *  out_header_len 
)

Definition at line 396 of file cbs.c.

◆ cbs_get_any_asn1_element()

static int cbs_get_any_asn1_element ( CBS cbs,
CBS out,
unsigned *  out_tag,
size_t *  out_header_len,
int out_ber_found,
int  ber_ok 
)
static

Definition at line 286 of file cbs.c.

◆ CBS_get_any_ber_asn1_element()

int CBS_get_any_ber_asn1_element ( CBS cbs,
CBS out,
unsigned *  out_tag,
size_t *  out_header_len,
int out_ber_found 
)

Definition at line 402 of file cbs.c.

◆ CBS_get_asn1()

int CBS_get_asn1 ( CBS cbs,
CBS out,
unsigned  tag_value 
)

Definition at line 433 of file cbs.c.

◆ cbs_get_asn1()

static int cbs_get_asn1 ( CBS cbs,
CBS out,
unsigned  tag_value,
int  skip_header 
)
static

Definition at line 410 of file cbs.c.

◆ CBS_get_asn1_bool()

int CBS_get_asn1_bool ( CBS cbs,
int out 
)

Definition at line 497 of file cbs.c.

◆ CBS_get_asn1_element()

int CBS_get_asn1_element ( CBS cbs,
CBS out,
unsigned  tag_value 
)

Definition at line 437 of file cbs.c.

◆ CBS_get_asn1_int64()

int CBS_get_asn1_int64 ( CBS cbs,
int64_t out 
)

Definition at line 473 of file cbs.c.

◆ CBS_get_asn1_uint64()

int CBS_get_asn1_uint64 ( CBS cbs,
uint64_t out 
)

Definition at line 451 of file cbs.c.

◆ CBS_get_bytes()

int CBS_get_bytes ( CBS cbs,
CBS out,
size_t  len 
)

Definition at line 178 of file cbs.c.

◆ CBS_get_last_u8()

int CBS_get_last_u8 ( CBS cbs,
uint8_t out 
)

Definition at line 169 of file cbs.c.

◆ cbs_get_length_prefixed()

static int cbs_get_length_prefixed ( CBS cbs,
CBS out,
size_t  len_len 
)
static

Definition at line 196 of file cbs.c.

◆ CBS_get_optional_asn1()

int CBS_get_optional_asn1 ( CBS cbs,
CBS out,
int out_present,
unsigned  tag 
)

Definition at line 513 of file cbs.c.

◆ CBS_get_optional_asn1_bool()

int CBS_get_optional_asn1_bool ( CBS cbs,
int out,
unsigned  tag,
int  default_value 
)

Definition at line 570 of file cbs.c.

◆ CBS_get_optional_asn1_octet_string()

int CBS_get_optional_asn1_octet_string ( CBS cbs,
CBS out,
int out_present,
unsigned  tag 
)

Definition at line 530 of file cbs.c.

◆ CBS_get_optional_asn1_uint64()

int CBS_get_optional_asn1_uint64 ( CBS cbs,
uint64_t out,
unsigned  tag,
uint64_t  default_value 
)

Definition at line 552 of file cbs.c.

◆ cbs_get_u()

static int cbs_get_u ( CBS cbs,
uint64_t out,
size_t  len 
)
static

Definition at line 90 of file cbs.c.

◆ CBS_get_u16()

int CBS_get_u16 ( CBS cbs,
uint16_t out 
)

Definition at line 114 of file cbs.c.

◆ CBS_get_u16_length_prefixed()

int CBS_get_u16_length_prefixed ( CBS cbs,
CBS out 
)

Definition at line 211 of file cbs.c.

◆ CBS_get_u16le()

int CBS_get_u16le ( CBS cbs,
uint16_t out 
)

Definition at line 123 of file cbs.c.

◆ CBS_get_u24()

int CBS_get_u24 ( CBS cbs,
uint32_t out 
)

Definition at line 131 of file cbs.c.

◆ CBS_get_u24_length_prefixed()

int CBS_get_u24_length_prefixed ( CBS cbs,
CBS out 
)

Definition at line 215 of file cbs.c.

◆ CBS_get_u32()

int CBS_get_u32 ( CBS cbs,
uint32_t out 
)

Definition at line 140 of file cbs.c.

◆ CBS_get_u32le()

int CBS_get_u32le ( CBS cbs,
uint32_t out 
)

Definition at line 149 of file cbs.c.

◆ CBS_get_u64()

int CBS_get_u64 ( CBS cbs,
uint64_t out 
)

Definition at line 157 of file cbs.c.

◆ CBS_get_u64le()

int CBS_get_u64le ( CBS cbs,
uint64_t out 
)

Definition at line 161 of file cbs.c.

◆ CBS_get_u8()

int CBS_get_u8 ( CBS cbs,
uint8_t out 
)

Definition at line 105 of file cbs.c.

◆ CBS_get_u8_length_prefixed()

int CBS_get_u8_length_prefixed ( CBS cbs,
CBS out 
)

Definition at line 207 of file cbs.c.

◆ CBS_get_until_first()

int CBS_get_until_first ( CBS cbs,
CBS out,
uint8_t  c 
)

Definition at line 219 of file cbs.c.

◆ CBS_init()

void CBS_init ( CBS cbs,
const uint8_t data,
size_t  len 
)

Definition at line 26 of file cbs.c.

◆ CBS_is_unsigned_asn1_integer()

int CBS_is_unsigned_asn1_integer ( const CBS cbs)

Definition at line 656 of file cbs.c.

◆ CBS_is_valid_asn1_bitstring()

int CBS_is_valid_asn1_bitstring ( const CBS cbs)

Definition at line 600 of file cbs.c.

◆ CBS_is_valid_asn1_integer()

int CBS_is_valid_asn1_integer ( const CBS cbs,
int out_is_negative 
)

Definition at line 637 of file cbs.c.

◆ CBS_len()

size_t CBS_len ( const CBS cbs)

Definition at line 51 of file cbs.c.

◆ CBS_mem_equal()

int CBS_mem_equal ( const CBS cbs,
const uint8_t data,
size_t  len 
)

Definition at line 83 of file cbs.c.

◆ CBS_peek_asn1_tag()

int CBS_peek_asn1_tag ( const CBS cbs,
unsigned  tag_value 
)

Definition at line 441 of file cbs.c.

◆ CBS_skip()

int CBS_skip ( CBS cbs,
size_t  len 
)

Definition at line 42 of file cbs.c.

◆ CBS_stow()

int CBS_stow ( const CBS cbs,
uint8_t **  out_ptr,
size_t *  out_len 
)

Definition at line 55 of file cbs.c.

◆ CBS_strdup()

int CBS_strdup ( const CBS cbs,
char **  out_ptr 
)

Definition at line 71 of file cbs.c.

◆ parse_asn1_tag()

static int parse_asn1_tag ( CBS cbs,
unsigned *  out 
)
static

Definition at line 254 of file cbs.c.

◆ parse_base128_integer()

static int parse_base128_integer ( CBS cbs,
uint64_t out 
)
static

Definition at line 230 of file cbs.c.



grpc
Author(s):
autogenerated on Fri May 16 2025 03:01:05