diff options
Diffstat (limited to 'epan/dissectors/packet-cose.c')
-rw-r--r-- | epan/dissectors/packet-cose.c | 174 |
1 files changed, 87 insertions, 87 deletions
diff --git a/epan/dissectors/packet-cose.c b/epan/dissectors/packet-cose.c index b7680f3fb2..5fafd2c14e 100644 --- a/epan/dissectors/packet-cose.c +++ b/epan/dissectors/packet-cose.c @@ -360,7 +360,7 @@ void cose_param_key_free(gpointer ptr) { * @return True if the pair was dissected (even as opaque CBOR data). */ static gboolean dissect_header_pair(dissector_table_t dis_table, cose_header_context_t *ctx, tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset) { - wscbor_chunk_t *chunk_label = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); + wscbor_chunk_t *chunk_label = wscbor_chunk_read(pinfo->pool, tvb, offset); proto_item *item_label = NULL; proto_tree *volatile tree_label = NULL; @@ -372,17 +372,17 @@ static gboolean dissect_header_pair(dissector_table_t dis_table, cose_header_con switch (chunk_label->type_major) { case CBOR_TYPE_UINT: case CBOR_TYPE_NEGINT: { - gint64 *label = wscbor_require_int64(wmem_packet_scope(), chunk_label); + gint64 *label = wscbor_require_int64(pinfo->pool, chunk_label); item_label = proto_tree_add_cbor_int64(tree, hf_hdr_label_int, pinfo, tvb, chunk_label, label); if (label) { key.label = ctx->label = g_variant_new_int64(*label); - label_str = wmem_strdup_printf(wmem_packet_scope(), "%" PRId64, *label); + label_str = wmem_strdup_printf(pinfo->pool, "%" PRId64, *label); } break; } case CBOR_TYPE_STRING: { - const char *label = wscbor_require_tstr(wmem_packet_scope(), chunk_label); + const char *label = wscbor_require_tstr(pinfo->pool, chunk_label); item_label = proto_tree_add_cbor_tstr(tree, hf_hdr_label_tstr, pinfo, tvb, chunk_label); if (label) { key.label = ctx->label = @@ -412,7 +412,7 @@ static gboolean dissect_header_pair(dissector_table_t dis_table, cose_header_con // Peek into the value as tvb const gint offset_value = *offset; - if (!wscbor_skip_next_item(wmem_packet_scope(), tvb, offset)) { + if (!wscbor_skip_next_item(pinfo->pool, tvb, offset)) { return FALSE; } tvb_value = tvb_new_subset_length(tvb, offset_value, *offset - offset_value); @@ -447,14 +447,14 @@ static gboolean dissect_header_pair(dissector_table_t dis_table, cose_header_con * @param[in,out] offset The data offset. */ static void dissect_header_map(dissector_table_t dis_table, tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset) { - wscbor_chunk_t *chunk_hdr_map = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); + wscbor_chunk_t *chunk_hdr_map = wscbor_chunk_read(pinfo->pool, tvb, offset); wscbor_require_map(chunk_hdr_map); proto_item *item_hdr_map = proto_tree_get_parent(tree); wscbor_chunk_mark_errors(pinfo, item_hdr_map, chunk_hdr_map); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, offset, chunk_hdr_map)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, offset, chunk_hdr_map)) { proto_tree *tree_hdr_map = proto_item_add_subtree(item_hdr_map, ett_hdr_map); - cose_header_context_t *ctx = wmem_new0(wmem_packet_scope(), cose_header_context_t); + cose_header_context_t *ctx = wmem_new0(pinfo->pool, cose_header_context_t); for (guint64 ix = 0; ix < chunk_hdr_map->head_value; ++ix) { if (!dissect_header_pair(dis_table, ctx, tvb, pinfo, tree_hdr_map, offset)) { @@ -465,7 +465,7 @@ static void dissect_header_map(dissector_table_t dis_table, tvbuff_t *tvb, packe if (ctx->principal) { g_variant_unref(ctx->principal); } - wmem_free(wmem_packet_scope(), ctx); + wmem_free(pinfo->pool, ctx); } proto_item_set_len(item_hdr_map, *offset - chunk_hdr_map->start); @@ -492,8 +492,8 @@ static void dissect_msg_tag(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *t */ static void dissect_headers(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset) { // Protected in bstr - wscbor_chunk_t *chunk_prot_bstr = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); - tvbuff_t *tvb_prot = wscbor_require_bstr(wmem_packet_scope(), chunk_prot_bstr); + wscbor_chunk_t *chunk_prot_bstr = wscbor_chunk_read(pinfo->pool, tvb, offset); + tvbuff_t *tvb_prot = wscbor_require_bstr(pinfo->pool, chunk_prot_bstr); proto_item *item_prot_bstr = proto_tree_add_cbor_bstr(tree, hf_hdr_prot_bstr, pinfo, tvb, chunk_prot_bstr); if (tvb_prot) { proto_tree *tree_prot = proto_item_add_subtree(item_prot_bstr, ett_prot_bstr); @@ -515,25 +515,25 @@ static void dissect_headers(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, /** Common behavior for payload. */ static void dissect_payload(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset) { - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, offset); if (chunk->type_major == CBOR_TYPE_FLOAT_CTRL) { proto_tree_add_cbor_ctrl(tree, hf_payload_null, pinfo, tvb, chunk); } else { - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_payload_bstr, pinfo, tvb, chunk); } } static void dissect_signature(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset) { - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, offset); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_signature, pinfo, tvb, chunk); } static void dissect_cose_signature(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset) { - wscbor_chunk_t *chunk_sig = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); + wscbor_chunk_t *chunk_sig = wscbor_chunk_read(pinfo->pool, tvb, offset); wscbor_require_array_size(chunk_sig, 3, 3); proto_item *item_sig = proto_tree_add_cbor_container(tree, hf_cose_signature, pinfo, tvb, chunk_sig); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, offset, chunk_sig)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, offset, chunk_sig)) { proto_tree *tree_sig = proto_item_add_subtree(item_sig, ett_sig); dissect_headers(tvb, pinfo, tree_sig, offset); @@ -542,21 +542,21 @@ static void dissect_cose_signature(tvbuff_t *tvb, packet_info *pinfo, proto_tree proto_item_set_len(item_sig, *offset - chunk_sig->start); } static void dissect_ciphertext(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset) { - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, offset); if (chunk->type_major == CBOR_TYPE_FLOAT_CTRL) { proto_tree_add_cbor_ctrl(tree, hf_ciphertext_null, pinfo, tvb, chunk); } else { - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_ciphertext_bstr, pinfo, tvb, chunk); } } static void dissect_cose_recipient(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset); static void dissect_cose_recipient_list(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset) { - wscbor_chunk_t *chunk_list = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); + wscbor_chunk_t *chunk_list = wscbor_chunk_read(pinfo->pool, tvb, offset); wscbor_require_array(chunk_list); proto_item *item_list = proto_tree_add_cbor_container(tree, hf_cose_recipient_list, pinfo, tvb, chunk_list); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, offset, chunk_list)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, offset, chunk_list)) { proto_tree *tree_recip_list = proto_item_add_subtree(item_list, ett_recip_list); for (guint64 ix = 0; ix < chunk_list->head_value; ++ix) { @@ -566,10 +566,10 @@ static void dissect_cose_recipient_list(tvbuff_t *tvb, packet_info *pinfo, proto proto_item_set_len(item_list, *offset - chunk_list->start); } static void dissect_cose_recipient(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset) { - wscbor_chunk_t *chunk_recip = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); + wscbor_chunk_t *chunk_recip = wscbor_chunk_read(pinfo->pool, tvb, offset); wscbor_require_array_size(chunk_recip, 3, 4); proto_item *item_recip = proto_tree_add_cbor_container(tree, hf_cose_recipient, pinfo, tvb, chunk_recip); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, offset, chunk_recip)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, offset, chunk_recip)) { proto_tree *tree_recip = proto_item_add_subtree(item_recip, ett_recip); dissect_headers(tvb, pinfo, tree_recip, offset); @@ -582,8 +582,8 @@ static void dissect_cose_recipient(tvbuff_t *tvb, packet_info *pinfo, proto_tree } static void dissect_tag(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset) { - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, offset); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_tag, pinfo, tvb, chunk); } @@ -591,21 +591,21 @@ static void dissect_tag(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gin static int dissect_cose_sign(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) { gint offset = 0; - wscbor_chunk_t *chunk_msg = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_msg = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_array_size(chunk_msg, 4, 4); proto_item *item_msg = proto_tree_add_cbor_container(tree, proto_cose, pinfo, tvb, chunk_msg); proto_item_append_text(item_msg, ": COSE_Sign"); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, &offset, chunk_msg)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, &offset, chunk_msg)) { proto_tree *tree_msg = proto_item_add_subtree(item_msg, ett_msg); dissect_msg_tag(tvb, pinfo, tree_msg, chunk_msg, data); dissect_headers(tvb, pinfo, tree_msg, &offset); dissect_payload(tvb, pinfo, tree_msg, &offset); - wscbor_chunk_t *chunk_sig_list = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_sig_list = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_array(chunk_sig_list); proto_item *item_sig_list = proto_tree_add_cbor_container(tree_msg, hf_cose_signature_list, pinfo, tvb, chunk_sig_list); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, &offset, chunk_sig_list)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, &offset, chunk_sig_list)) { proto_tree *tree_sig_list = proto_item_add_subtree(item_sig_list, ett_sig_list); for (guint64 ix = 0; ix < chunk_sig_list->head_value; ++ix) { @@ -620,11 +620,11 @@ static int dissect_cose_sign(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree static int dissect_cose_sign1(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) { gint offset = 0; - wscbor_chunk_t *chunk_msg = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_msg = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_array_size(chunk_msg, 4, 4); proto_item *item_msg = proto_tree_add_cbor_container(tree, proto_cose, pinfo, tvb, chunk_msg); proto_item_append_text(item_msg, ": COSE_Sign1"); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, &offset, chunk_msg)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, &offset, chunk_msg)) { proto_tree *tree_msg = proto_item_add_subtree(item_msg, ett_msg); dissect_msg_tag(tvb, pinfo, tree_msg, chunk_msg, data); @@ -638,11 +638,11 @@ static int dissect_cose_sign1(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre static int dissect_cose_encrypt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) { gint offset = 0; - wscbor_chunk_t *chunk_msg = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_msg = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_array_size(chunk_msg, 4, 4); proto_item *item_msg = proto_tree_add_cbor_container(tree, proto_cose, pinfo, tvb, chunk_msg); proto_item_append_text(item_msg, ": COSE_Encrypt"); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, &offset, chunk_msg)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, &offset, chunk_msg)) { proto_tree *tree_msg = proto_item_add_subtree(item_msg, ett_msg); dissect_msg_tag(tvb, pinfo, tree_msg, chunk_msg, data); @@ -656,11 +656,11 @@ static int dissect_cose_encrypt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t static int dissect_cose_encrypt0(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) { gint offset = 0; - wscbor_chunk_t *chunk_msg = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_msg = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_array_size(chunk_msg, 3, 3); proto_item *item_msg = proto_tree_add_cbor_container(tree, proto_cose, pinfo, tvb, chunk_msg); proto_item_append_text(item_msg, ": COSE_Encrypt0"); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, &offset, chunk_msg)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, &offset, chunk_msg)) { proto_tree *tree_msg = proto_item_add_subtree(item_msg, ett_msg); dissect_msg_tag(tvb, pinfo, tree_msg, chunk_msg, data); @@ -673,11 +673,11 @@ static int dissect_cose_encrypt0(tvbuff_t *tvb, packet_info *pinfo, proto_tree * static int dissect_cose_mac(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) { gint offset = 0; - wscbor_chunk_t *chunk_msg = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_msg = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_array_size(chunk_msg, 5, 5); proto_item *item_msg = proto_tree_add_cbor_container(tree, proto_cose, pinfo, tvb, chunk_msg); proto_item_append_text(item_msg, ": COSE_Mac"); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, &offset, chunk_msg)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, &offset, chunk_msg)) { proto_tree *tree_msg = proto_item_add_subtree(item_msg, ett_msg); dissect_msg_tag(tvb, pinfo, tree_msg, chunk_msg, data); @@ -692,11 +692,11 @@ static int dissect_cose_mac(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, static int dissect_cose_mac0(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) { gint offset = 0; - wscbor_chunk_t *chunk_msg = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_msg = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_array_size(chunk_msg, 4, 4); proto_item *item_msg = proto_tree_add_cbor_container(tree, proto_cose, pinfo, tvb, chunk_msg); proto_item_append_text(item_msg, ": COSE_Mac0"); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, &offset, chunk_msg)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, &offset, chunk_msg)) { proto_tree *tree_msg = proto_item_add_subtree(item_msg, ett_msg); dissect_msg_tag(tvb, pinfo, tree_msg, chunk_msg, data); @@ -714,7 +714,7 @@ static int dissect_cose_msg_tagged(tvbuff_t *tvb, packet_info *pinfo, proto_tree gint offset = 0; // All messages have the same base structure, attempt all tags present - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); for (wmem_list_frame_t *it = wmem_list_head(chunk->tags); it; it = wmem_list_frame_next(it)) { wscbor_tag_t *tag = (wscbor_tag_t *) wmem_list_frame_data(it); @@ -737,11 +737,11 @@ static int dissect_cose_msg_tagged(tvbuff_t *tvb, packet_info *pinfo, proto_tree } static void dissect_value_alg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset, GVariant **value) { - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, offset); switch (chunk->type_major) { case CBOR_TYPE_UINT: case CBOR_TYPE_NEGINT: { - gint64 *val = wscbor_require_int64(wmem_packet_scope(), chunk); + gint64 *val = wscbor_require_int64(pinfo->pool, chunk); proto_tree_add_cbor_int64(tree, hf_hdr_alg_int, pinfo, tvb, chunk, val); if (value && val) { *value = g_variant_new_int64(*val); @@ -749,7 +749,7 @@ static void dissect_value_alg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre break; } case CBOR_TYPE_STRING: { - const char *val = wscbor_require_tstr(wmem_packet_scope(), chunk); + const char *val = wscbor_require_tstr(pinfo->pool, chunk); proto_tree_add_cbor_tstr(tree, hf_hdr_alg_tstr, pinfo, tvb, chunk); if (value && val) { *value = g_variant_new_string(val); @@ -764,8 +764,8 @@ static void dissect_value_alg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre static int dissect_header_salt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_hdr_salt, pinfo, tvb, chunk); return offset; @@ -803,18 +803,18 @@ static int dissect_header_alg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre static int dissect_header_crit(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk_list = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_list = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_array(chunk_list); proto_item *item_list = proto_tree_add_cbor_container(tree, hf_hdr_crit_list, pinfo, tvb, chunk_list); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, &offset, chunk_list)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, &offset, chunk_list)) { proto_tree *tree_list = proto_item_add_subtree(item_list, ett_hdr_crit_list); for (guint64 ix = 0; ix < chunk_list->head_value; ++ix) { - wscbor_chunk_t *chunk_label = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_label = wscbor_chunk_read(pinfo->pool, tvb, &offset); switch (chunk_label->type_major) { case CBOR_TYPE_UINT: case CBOR_TYPE_NEGINT: { - gint64 *label = wscbor_require_int64(wmem_packet_scope(), chunk_label); + gint64 *label = wscbor_require_int64(pinfo->pool, chunk_label); proto_tree_add_cbor_int64(tree_list, hf_hdr_label_int, pinfo, tvb, chunk_label, label); break; } @@ -835,10 +835,10 @@ static int dissect_header_crit(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr static int dissect_header_ctype(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); switch (chunk->type_major) { case CBOR_TYPE_UINT: { - guint64 *val = wscbor_require_uint64(wmem_packet_scope(), chunk); + guint64 *val = wscbor_require_uint64(pinfo->pool, chunk); proto_tree_add_cbor_uint64(tree, hf_hdr_ctype_uint, pinfo, tvb, chunk, val); break; } @@ -856,8 +856,8 @@ static int dissect_header_ctype(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t static int dissect_header_kid(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_hdr_kid, pinfo, tvb, chunk); return offset; @@ -866,8 +866,8 @@ static int dissect_header_kid(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre static int dissect_header_iv(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_hdr_iv, pinfo, tvb, chunk); return offset; @@ -876,20 +876,20 @@ static int dissect_header_iv(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree static int dissect_header_piv(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_hdr_piv, pinfo, tvb, chunk); return offset; } static void dissect_value_x5cert(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint *offset) { - wscbor_chunk_t *chunk_item = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); - tvbuff_t *tvb_item = wscbor_require_bstr(wmem_packet_scope(), chunk_item); + wscbor_chunk_t *chunk_item = wscbor_chunk_read(pinfo->pool, tvb, offset); + tvbuff_t *tvb_item = wscbor_require_bstr(pinfo->pool, chunk_item); if (tvb_item) { // disallow column text rewrite - gchar *info_text = wmem_strdup(wmem_packet_scope(), col_get_text(pinfo->cinfo, COL_INFO)); + gchar *info_text = wmem_strdup(pinfo->pool, col_get_text(pinfo->cinfo, COL_INFO)); TRY { dissector_try_string( @@ -912,11 +912,11 @@ static void dissect_value_cosex509(tvbuff_t *tvb, packet_info *pinfo, proto_tree proto_item *item_ctr = proto_tree_add_item(tree, hfindex, tvb, 0, -1, ENC_NA); proto_tree *tree_ctr = proto_item_add_subtree(item_ctr, ett_hdr_x5cert_list); - wscbor_chunk_t *chunk_ctr = wscbor_chunk_read(wmem_packet_scope(), tvb, offset); + wscbor_chunk_t *chunk_ctr = wscbor_chunk_read(pinfo->pool, tvb, offset); switch (chunk_ctr->type_major) { case CBOR_TYPE_ARRAY: { wscbor_require_array(chunk_ctr); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, offset, chunk_ctr)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, offset, chunk_ctr)) { for (guint64 ix = 0; ix < chunk_ctr->head_value; ++ix) { dissect_value_x5cert(tvb, pinfo, tree_ctr, offset); } @@ -948,16 +948,16 @@ static int dissect_header_x5chain(tvbuff_t *tvb, packet_info *pinfo, proto_tree static int dissect_header_x5t(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk_list = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_list = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_array_size(chunk_list, 2, 2); proto_item *item_list = proto_tree_add_cbor_container(tree, hf_hdr_x5t, pinfo, tvb, chunk_list); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, &offset, chunk_list)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, &offset, chunk_list)) { proto_tree *tree_list = proto_item_add_subtree(item_list, ett_hdr_x5t_list); dissect_value_alg(tvb, pinfo, tree_list, &offset, NULL); - wscbor_chunk_t *chunk_hash = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); - wscbor_require_bstr(wmem_packet_scope(), chunk_hash); + wscbor_chunk_t *chunk_hash = wscbor_chunk_read(pinfo->pool, tvb, &offset); + wscbor_require_bstr(pinfo->pool, chunk_hash); proto_tree_add_cbor_bstr(tree_list, hf_hdr_x5t_hash, pinfo, tvb, chunk_hash); } @@ -968,7 +968,7 @@ static int dissect_header_x5t(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre static int dissect_header_x5u(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_major_type(chunk, CBOR_TYPE_STRING); proto_tree_add_cbor_tstr(tree, hf_hdr_x5u, pinfo, tvb, chunk); @@ -989,11 +989,11 @@ static int dissect_cose_key(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, static int dissect_cose_key_set(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk_set = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_set = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_array(chunk_set); proto_item *item_set = proto_tree_add_cbor_container(tree, proto_cose, pinfo, tvb, chunk_set); proto_item_append_text(item_set, ": COSE_KeySet"); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, &offset, chunk_set)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, &offset, chunk_set)) { proto_tree *tree_set = proto_item_add_subtree(item_set, ett_key_set); for (guint64 ix = 0; ix < chunk_set->head_value; ++ix) { @@ -1014,11 +1014,11 @@ static int dissect_keyparam_kty(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t cose_header_context_t *ctx = (cose_header_context_t *)data; gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); switch (chunk->type_major) { case CBOR_TYPE_UINT: case CBOR_TYPE_NEGINT: { - gint64 *val = wscbor_require_int64(wmem_packet_scope(), chunk); + gint64 *val = wscbor_require_int64(pinfo->pool, chunk); proto_tree_add_cbor_int64(tree, hf_keyparam_kty_int, pinfo, tvb, chunk, val); if (val) { ctx->principal = g_variant_new_int64(*val); @@ -1026,7 +1026,7 @@ static int dissect_keyparam_kty(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t break; } case CBOR_TYPE_STRING: { - const char *val = wscbor_require_tstr(wmem_packet_scope(), chunk); + const char *val = wscbor_require_tstr(pinfo->pool, chunk); proto_tree_add_cbor_tstr(tree, hf_keyparam_kty_tstr, pinfo, tvb, chunk); if (val) { ctx->principal = g_variant_new_string(val); @@ -1043,18 +1043,18 @@ static int dissect_keyparam_kty(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t static int dissect_keyparam_keyops(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk_list = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk_list = wscbor_chunk_read(pinfo->pool, tvb, &offset); wscbor_require_array(chunk_list); proto_item *item_list = proto_tree_add_cbor_container(tree, hf_keyparam_keyops_list, pinfo, tvb, chunk_list); - if (!wscbor_skip_if_errors(wmem_packet_scope(), tvb, &offset, chunk_list)) { + if (!wscbor_skip_if_errors(pinfo->pool, tvb, &offset, chunk_list)) { proto_tree *tree_list = proto_item_add_subtree(item_list, ett_keyops_list); for (guint64 ix = 0; ix < chunk_list->head_value; ++ix) { - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); switch (chunk->type_major) { case CBOR_TYPE_UINT: case CBOR_TYPE_NEGINT: { - gint64 *val = wscbor_require_int64(wmem_packet_scope(), chunk); + gint64 *val = wscbor_require_int64(pinfo->pool, chunk); proto_tree_add_cbor_int64(tree_list, hf_keyparam_keyops_int, pinfo, tvb, chunk, val); break; } @@ -1075,8 +1075,8 @@ static int dissect_keyparam_keyops(tvbuff_t *tvb, packet_info *pinfo, proto_tree static int dissect_keyparam_baseiv(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_keyparam_baseiv, pinfo, tvb, chunk); return offset; @@ -1085,11 +1085,11 @@ static int dissect_keyparam_baseiv(tvbuff_t *tvb, packet_info *pinfo, proto_tree static int dissect_keyparam_crv(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); switch (chunk->type_major) { case CBOR_TYPE_UINT: case CBOR_TYPE_NEGINT: { - gint64 *val = wscbor_require_int64(wmem_packet_scope(), chunk); + gint64 *val = wscbor_require_int64(pinfo->pool, chunk); proto_tree_add_cbor_int64(tree, hf_keyparam_crv_int, pinfo, tvb, chunk, val); break; } @@ -1107,8 +1107,8 @@ static int dissect_keyparam_crv(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t static int dissect_keyparam_xcoord(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_keyparam_xcoord, pinfo, tvb, chunk); return offset; @@ -1117,7 +1117,7 @@ static int dissect_keyparam_xcoord(tvbuff_t *tvb, packet_info *pinfo, proto_tree static int dissect_keyparam_ycoord(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); switch (chunk->type_major) { case CBOR_TYPE_FLOAT_CTRL: { proto_tree_add_item(tree, hf_keyparam_ycoord, tvb, 0, 0, ENC_NA); @@ -1137,8 +1137,8 @@ static int dissect_keyparam_ycoord(tvbuff_t *tvb, packet_info *pinfo, proto_tree static int dissect_keyparam_dcoord(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_keyparam_dcoord, pinfo, tvb, chunk); return offset; @@ -1147,8 +1147,8 @@ static int dissect_keyparam_dcoord(tvbuff_t *tvb, packet_info *pinfo, proto_tree static int dissect_keyparam_k(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { gint offset = 0; - wscbor_chunk_t *chunk = wscbor_chunk_read(wmem_packet_scope(), tvb, &offset); - wscbor_require_bstr(wmem_packet_scope(), chunk); + wscbor_chunk_t *chunk = wscbor_chunk_read(pinfo->pool, tvb, &offset); + wscbor_require_bstr(pinfo->pool, chunk); proto_tree_add_cbor_bstr(tree, hf_keyparam_k, pinfo, tvb, chunk); return offset; |