/zcbor-latest/src/ |
D | zcbor_decode.c | 35 static bool initial_checks(zcbor_state_t *state) in initial_checks() argument 43 static bool type_check(zcbor_state_t *state, zcbor_major_type_t exp_major_type) in type_check() argument 45 if (!initial_checks(state)) { in type_check() 48 zcbor_major_type_t major_type = ZCBOR_MAJOR_TYPE(*state->payload); in type_check() 59 if (!initial_checks(state)) { \ 66 if (!type_check(state, exp_major_type)) { \ 71 static void err_restore(zcbor_state_t *state, int err) in err_restore() argument 73 state->payload = state->payload_bak; in err_restore() 74 state->elem_count++; in err_restore() 75 zcbor_error(state, err); in err_restore() [all …]
|
D | zcbor_encode.c | 43 static bool encode_header_byte(zcbor_state_t *state, in encode_header_byte() argument 51 *(state->payload_mut) = (uint8_t)((major_type << 5) | (additional & 0x1F)); in encode_header_byte() 52 zcbor_trace(state, "value_encode"); in encode_header_byte() 53 state->payload_mut++; in encode_header_byte() 60 static bool value_encode_len(zcbor_state_t *state, zcbor_major_type_t major_type, in value_encode_len() argument 65 if ((state->payload + 1 + result_len) > state->payload_end) { in value_encode_len() 69 if (!encode_header_byte(state, major_type, in value_encode_len() 75 memcpy(state->payload_mut, u8_result, result_len); in value_encode_len() 76 state->payload_mut += result_len; in value_encode_len() 79 *(state->payload_mut++) = u8_result[result_len - 1]; in value_encode_len() [all …]
|
D | zcbor_common.c | 20 bool zcbor_new_backup(zcbor_state_t *state, size_t new_elem_count) in zcbor_new_backup() argument 24 if ((state->constant_state->current_backup) in zcbor_new_backup() 25 >= state->constant_state->num_backups) { in zcbor_new_backup() 29 state->payload_moved = false; in zcbor_new_backup() 31 (state->constant_state->current_backup)++; in zcbor_new_backup() 35 size_t i = (state->constant_state->current_backup) - 1; in zcbor_new_backup() 37 memcpy(&state->constant_state->backup_list[i], state, in zcbor_new_backup() 40 state->elem_count = new_elem_count; in zcbor_new_backup() 48 bool zcbor_process_backup(zcbor_state_t *state, uint32_t flags, in zcbor_process_backup() argument 52 zcbor_state_t local_copy = *state; in zcbor_process_backup() [all …]
|
/zcbor-latest/include/ |
D | zcbor_decode.h | 66 bool zcbor_int32_decode(zcbor_state_t *state, int32_t *result); /* pint/nint */ 67 bool zcbor_int64_decode(zcbor_state_t *state, int64_t *result); /* pint/nint */ 68 bool zcbor_uint32_decode(zcbor_state_t *state, uint32_t *result); /* pint */ 69 bool zcbor_uint64_decode(zcbor_state_t *state, uint64_t *result); /* pint */ 70 bool zcbor_size_decode(zcbor_state_t *state, size_t *result); /* pint */ 71 bool zcbor_int_decode(zcbor_state_t *state, void *result, size_t result_size); /* pint/nint */ 72 bool zcbor_uint_decode(zcbor_state_t *state, void *result, size_t result_size); /* pint */ 73 bool zcbor_bstr_decode(zcbor_state_t *state, struct zcbor_string *result); /* bstr */ 74 bool zcbor_tstr_decode(zcbor_state_t *state, struct zcbor_string *result); /* tstr */ 75 bool zcbor_tag_decode(zcbor_state_t *state, uint32_t *result); /* CBOR tag */ [all …]
|
D | zcbor_encode.h | 62 bool zcbor_int32_put(zcbor_state_t *state, int32_t input); /* pint/nint */ 63 bool zcbor_int64_put(zcbor_state_t *state, int64_t input); /* pint/nint */ 64 bool zcbor_uint32_put(zcbor_state_t *state, uint32_t input); /* pint */ 65 bool zcbor_uint64_put(zcbor_state_t *state, uint64_t input); /* pint */ 66 bool zcbor_size_put(zcbor_state_t *state, size_t input); /* pint */ 67 bool zcbor_tag_put(zcbor_state_t *state, uint32_t tag); /* CBOR tag */ 68 bool zcbor_bool_put(zcbor_state_t *state, bool input); /* boolean CBOR simple value */ 69 bool zcbor_nil_put(zcbor_state_t *state, const void *unused); /* 'nil' CBOR simple value */ 70 bool zcbor_undefined_put(zcbor_state_t *state, const void *unused); /* 'undefined' CBOR simple valu… 71 bool zcbor_float16_put(zcbor_state_t *state, float input); /* IEEE754 float16 */ [all …]
|
D | zcbor_common.h | 163 #define ZCBOR_ENFORCE_CANONICAL(state) (state->constant_state \ argument 164 ? state->constant_state->enforce_canonical : ZCBOR_ENFORCE_CANONICAL_DEFAULT) 168 #define ZCBOR_MANUALLY_PROCESS_ELEM(state) (state->constant_state \ argument 169 ? state->constant_state->manually_process_elem : ZCBOR_MANUALLY_PROCESS_ELEM_DEFAULT) 206 zcbor_trace_file(state); \ 221 zcbor_error(state, err); \ 234 ZCBOR_ERR_IF(state->payload >= state->payload_end, ZCBOR_ERR_NO_PAYLOAD) 239 if (!zcbor_check_error(state)) { \ 298 bool zcbor_new_backup(zcbor_state_t *state, size_t new_elem_count); 304 bool zcbor_process_backup(zcbor_state_t *state, uint32_t flags, size_t max_elem_count); [all …]
|
D | zcbor_print.h | 27 #define zcbor_trace_raw(state) (zcbor_do_print("rem: %zu, cur: 0x%x, ec: 0x%zx, err: %d",\ argument 28 (size_t)state->payload_end - (size_t)state->payload, *state->payload, state->elem_count, \ 29 state->constant_state ? state->constant_state->error : 0)) 30 #define zcbor_trace(state, appendix) do { \ argument 31 zcbor_trace_raw(state); \ 34 #define zcbor_trace_file(state) do { \ argument 35 zcbor_trace_raw(state); \ 48 #define zcbor_trace(state, appendix) 49 #define zcbor_trace_file(state) ((void)state)
|
/zcbor-latest/samples/pet/src/ |
D | pet_decode.c | 23 #define log_result(state, result, func) do { \ argument 25 zcbor_trace_file(state); \ 26 zcbor_log("%s error: %s\r\n", func, zcbor_error_str(zcbor_peek_error(state))); \ 32 static bool decode_Pet(zcbor_state_t *state, struct Pet *result); 36 zcbor_state_t *state, struct Pet *result) in decode_Pet() argument 40 …state) && ((((zcbor_list_start_decode(state) && ((zcbor_multi_decode(1, 3, &(*result).names_count,… in decode_Pet() 41 && ((zcbor_bstr_decode(state, (&(*result).birthday))) in decode_Pet() 42 …(*result).birthday.len == 8)) || (zcbor_error(state, ZCBOR_ERR_WRONG_RANGE), false))) || (zcbor_er… in decode_Pet() 43 …&& ((((zcbor_uint_decode(state, &(*result).species_choice, sizeof((*result).species_choice)))) && … in decode_Pet() 45 … (zcbor_error(state, ZCBOR_ERR_WRONG_VALUE), false)))))) || (zcbor_list_map_end_force_decode(state… in decode_Pet() [all …]
|
D | pet_encode.c | 23 #define log_result(state, result, func) do { \ argument 25 zcbor_trace_file(state); \ 26 zcbor_log("%s error: %s\r\n", func, zcbor_error_str(zcbor_peek_error(state))); \ 32 static bool encode_Pet(zcbor_state_t *state, const struct Pet *input); 36 zcbor_state_t *state, const struct Pet *input) in encode_Pet() argument 40 …state, 3) && ((((zcbor_list_start_encode(state, 3) && ((zcbor_multi_encode_minmax(1, 3, &(*input).… in encode_Pet() 41 …((*input).birthday.len == 8)) || (zcbor_error(state, ZCBOR_ERR_WRONG_RANGE), false))) || (zcbor_er… in encode_Pet() 42 && (zcbor_bstr_encode(state, (&(*input).birthday)))) in encode_Pet() 43 && ((((*input).species_choice == Pet_species_cat_c) ? ((zcbor_uint32_put(state, (1)))) in encode_Pet() 44 : (((*input).species_choice == Pet_species_dog_c) ? ((zcbor_uint32_put(state, (2)))) in encode_Pet() [all …]
|
/zcbor-latest/tests/encode/test2_simple/src/ |
D | main.c | 62 ZCBOR_STATE_E(state, 4, payload, sizeof(payload), 1); in ZTEST() 75 bool res = zcbor_list_start_encode(state, 0); in ZTEST() 78 res = res && zcbor_list_start_encode(state, 0); in ZTEST() 80 res = res && zcbor_tstr_put_lit(state, "first"); in ZTEST() 82 res = res && zcbor_tstr_put_lit(state, "second"); in ZTEST() 84 res = res && zcbor_list_end_encode(state, 0); in ZTEST() 91 res = res && zcbor_bstr_encode(state, ×tamp_str); in ZTEST() 93 res = res && zcbor_uint32_put(state, 2 /* dog */); in ZTEST() 95 res = res && zcbor_list_end_encode(state, 0); in ZTEST() 100 zassert_equal(sizeof(exp_output), state->payload - payload, "%d != %d\r\n", in ZTEST() [all …]
|
/zcbor-latest/samples/hello_world/ |
D | README.md | 5 It shows how to instantiate zcbor state variables, and how to use them with the encoding and decodi…
|
/zcbor-latest/tests/unit/test1_unit_tests/src/ |
D | main.c | 877 bool zcbor_simple_put(zcbor_state_t *state, uint8_t input); 878 bool zcbor_simple_encode(zcbor_state_t *state, uint8_t *input); 879 bool zcbor_simple_expect(zcbor_state_t *state, uint8_t expected); 880 bool zcbor_simple_pexpect(zcbor_state_t *state, uint8_t *expected); 881 bool zcbor_simple_decode(zcbor_state_t *state, uint8_t *result); 1145 void decode_inner_map(zcbor_state_t *state, void *result) in decode_inner_map() argument 1147 zassert_true(zcbor_unordered_map_start_decode(state), NULL); in decode_inner_map() 1148 …zassert_true(zcbor_unordered_map_search((zcbor_decoder_t *)zcbor_bool_pexpect, state, &(bool){fals… in decode_inner_map() 1149 zassert_true(zcbor_undefined_expect(state, NULL), NULL); in decode_inner_map() 1150 zcbor_elem_processed(state); in decode_inner_map() [all …]
|
/zcbor-latest/ |
D | MIGRATION_GUIDE.md | 43 `zcbor_trace_file` and `zcbor_trace`, both of which take a ``state`` parameter.
|
D | ARCHITECTURE.md | 188 All decoding/encoding functions operate on a state variable of type `zcbor_state_t` which keeps tra… 202 In these cases, the code attempts to decode the object. If it fails, it restores the state to befor… 209 All functions (generated and not) have the same API structure: `bool <name>(zcbor_state_t *state, <… 217 There are also housekeeping functions for managing state and logging.
|
D | README.md | 64 The zcbor state object 82 /** Initialize a decoding state (could include an array of backup states). 86 /** Initialize an encoding state (could include an array of backup states). 100 …ONICAL` increases code size and makes the encoding library more often use state backups. When deco… 103 …error` functionality. Note that it also has to be enabled in the state variable (`state->constant_… 105 … a whole. Enabling increases code size and memory usage, and requires the state variable to posses…
|
D | RELEASE_NOTES.md | 386 * Add error value to state, which is populated when a function fails (returns `false`). 393 …* New helper macros for instantiating state variables: `ZCBOR_STATE_D()` and `ZCBOR_STATE_E()` for… 433 * zcbor_decode.c: Fix `zcbor_any_skip()` so it reverts the state correctly on fail.
|
D | LICENSE | 131 5. Submission of Contributions. Unless You explicitly state otherwise,
|
/zcbor-latest/tests/decode/test5_corner_cases/src/ |
D | main.c | 845 static bool my_decode_EmptyMap(zcbor_state_t *state, void *unused) in my_decode_EmptyMap() argument 848 int res = cbor_decode_EmptyMap(state->payload, in my_decode_EmptyMap() 849 state->payload_end - state->payload, NULL, &payload_len_out); in my_decode_EmptyMap() 852 state->payload += payload_len_out; in my_decode_EmptyMap() 866 ZCBOR_STATE_D(state, 0, payload4, sizeof(payload4), 3, 0); in ZTEST() 875 zassert_true(zcbor_multi_decode(3, 3, &num_decode, my_decode_EmptyMap, state, NULL, 0), NULL); in ZTEST()
|