Lines Matching refs:len
25 CBS_init(CBS *cbs, const uint8_t *data, size_t len) in CBS_init() argument
28 cbs->initial_len = len; in CBS_init()
29 cbs->len = len; in CBS_init()
42 if (cbs->len < n) in cbs_get()
47 cbs->len -= n; in cbs_get()
54 if (cbs->len < n) in cbs_peek()
64 return cbs->initial_len - cbs->len; in CBS_offset()
68 CBS_skip(CBS *cbs, size_t len) in CBS_skip() argument
71 return cbs_get(cbs, &dummy, len); in CBS_skip()
83 return cbs->len; in CBS_len()
93 if (cbs->len == 0) in CBS_stow()
96 if ((*out_ptr = malloc(cbs->len)) == NULL) in CBS_stow()
99 memcpy(*out_ptr, cbs->data, cbs->len); in CBS_stow()
101 *out_len = cbs->len; in CBS_stow()
114 *out_ptr = strndup((const char *)cbs->data, cbs->len); in CBS_strdup()
121 if (dst_len < cbs->len) in CBS_write_bytes()
124 memmove(dst, cbs->data, cbs->len); in CBS_write_bytes()
127 *copied = cbs->len; in CBS_write_bytes()
135 return memchr(cbs->data, 0, cbs->len) != NULL; in CBS_contains_zero_byte()
139 CBS_mem_equal(const CBS *cbs, const uint8_t *data, size_t len) in CBS_mem_equal() argument
141 if (len != cbs->len) in CBS_mem_equal()
144 return timingsafe_memcmp(cbs->data, data, len) == 0; in CBS_mem_equal()
148 cbs_get_u(CBS *cbs, uint32_t *out, size_t len) in cbs_get_u() argument
154 if (len < 1 || len > 4) in cbs_get_u()
157 if (!cbs_get(cbs, &data, len)) in cbs_get_u()
160 for (i = 0; i < len; i++) { in cbs_get_u()
209 if (cbs->len < 8) in CBS_get_u64()
224 if (cbs->len == 0) in CBS_get_last_u8()
227 *out = cbs->data[cbs->len - 1]; in CBS_get_last_u8()
228 cbs->len--; in CBS_get_last_u8()
233 CBS_get_bytes(CBS *cbs, CBS *out, size_t len) in CBS_get_bytes() argument
237 if (!cbs_get(cbs, &v, len)) in CBS_get_bytes()
240 CBS_init(out, v, len); in CBS_get_bytes()
247 uint32_t len; in cbs_get_length_prefixed() local
249 if (!cbs_get_u(cbs, &len, len_len)) in cbs_get_length_prefixed()
252 return CBS_get_bytes(cbs, out, len); in cbs_get_length_prefixed()
274 cbs_peek_u(CBS *cbs, uint32_t *out, size_t len) in cbs_peek_u() argument
280 if (len < 1 || len > 4) in cbs_peek_u()
283 if (!cbs_peek(cbs, &data, len)) in cbs_peek_u()
286 for (i = 0; i < len; i++) { in cbs_peek_u()
333 if (cbs->len == 0) in CBS_peek_last_u8()
336 *out = cbs->data[cbs->len - 1]; in CBS_peek_last_u8()
364 size_t len; in cbs_get_any_asn1_element_internal() local
385 len = ((size_t) length_byte) + 2; in cbs_get_any_asn1_element_internal()
430 len = len32; in cbs_get_any_asn1_element_internal()
431 if (len + 2 + num_bytes < len) in cbs_get_any_asn1_element_internal()
435 len += 2 + num_bytes; in cbs_get_any_asn1_element_internal()
440 return CBS_get_bytes(cbs, out, len); in cbs_get_any_asn1_element_internal()
497 size_t i, len; in CBS_get_asn1_uint64() local
504 len = CBS_len(&bytes); in CBS_get_asn1_uint64()
506 if (len == 0) in CBS_get_asn1_uint64()
514 if (data[0] == 0 && len > 1 && (data[1] & 0x80) == 0) in CBS_get_asn1_uint64()
518 for (i = 0; i < len; i++) { in CBS_get_asn1_uint64()