| 694 | } |
| 695 | |
| 696 | int |
| 697 | parser_read_uint32_val(const char *key, char *src, struct fips_val *val) |
| 698 | { |
| 699 | #ifdef USE_JANSSON |
| 700 | if (info.file_type == FIPS_TYPE_JSON) { |
| 701 | RTE_SET_USED(key); |
| 702 | |
| 703 | return parser_read_uint32(&val->len, src); |
| 704 | } |
| 705 | # endif |
| 706 | char *data = src + strlen(key); |
| 707 | size_t data_len = strlen(data); |
| 708 | int ret; |
| 709 | |
| 710 | if (data[data_len - 1] == ']') { |
| 711 | char *tmp_data = calloc(1, data_len + 1); |
| 712 | |
| 713 | if (tmp_data == NULL) |
| 714 | return -ENOMEM; |
| 715 | |
| 716 | strlcpy(tmp_data, data, data_len); |
| 717 | |
| 718 | ret = parser_read_uint32(&val->len, tmp_data); |
| 719 | |
| 720 | free(tmp_data); |
| 721 | } else |
| 722 | ret = parser_read_uint32(&val->len, data); |
| 723 | |
| 724 | return ret; |
| 725 | } |
| 726 | |
| 727 | int |
| 728 | parser_read_uint32_bit_val(const char *key, char *src, struct fips_val *val) |
no test coverage detected