aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dfilter
diff options
context:
space:
mode:
authorJoão Valverde <j@v6e.pt>2023-01-08 15:09:14 +0000
committerJoão Valverde <j@v6e.pt>2023-01-08 15:10:43 +0000
commit840a0d3025134cc80439671fa58275a97f888d60 (patch)
tree3191791a82ff612a2f8e28bb9f95167702fe8d4b /epan/dfilter
parent4dedbe3eb40d8a2397d24832c67c07249d053fe4 (diff)
dfilter: Display layer in DFVM dump string
Diffstat (limited to 'epan/dfilter')
-rw-r--r--epan/dfilter/dfvm.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/epan/dfilter/dfvm.c b/epan/dfilter/dfvm.c
index 86e1a6ff29..82e0a08e4a 100644
--- a/epan/dfilter/dfvm.c
+++ b/epan/dfilter/dfvm.c
@@ -320,24 +320,37 @@ append_op_args(wmem_strbuf_t *buf, dfvm_insn_t *insn, GSList **stack_print)
switch (insn->op) {
case DFVM_CHECK_EXISTS:
- case DFVM_CHECK_EXISTS_R:
wmem_strbuf_append_printf(buf, "%s", arg1_str);
break;
+ case DFVM_CHECK_EXISTS_R:
+ wmem_strbuf_append_printf(buf, "%s#[%s]", arg1_str, arg2_str);
+ break;
+
case DFVM_READ_TREE:
- case DFVM_READ_TREE_R:
wmem_strbuf_append_printf(buf, "%s", arg1_str);
indent2(buf, col_start);
append_to_register(buf, arg2_str);
break;
+ case DFVM_READ_TREE_R:
+ wmem_strbuf_append_printf(buf, "%s#[%s]", arg1_str, arg3_str);
+ indent2(buf, col_start);
+ append_to_register(buf, arg2_str);
+ break;
+
case DFVM_READ_REFERENCE:
- case DFVM_READ_REFERENCE_R:
wmem_strbuf_append_printf(buf, "${%s}", arg1_str);
indent2(buf, col_start);
append_to_register(buf, arg2_str);
break;
+ case DFVM_READ_REFERENCE_R:
+ wmem_strbuf_append_printf(buf, "${%s#[%s]}", arg1_str, arg3_str);
+ indent2(buf, col_start);
+ append_to_register(buf, arg2_str);
+ break;
+
case DFVM_PUT_FVALUE:
wmem_strbuf_append_printf(buf, "%s", arg1_str);
indent2(buf, col_start);