diff options
Diffstat (limited to 'epan')
-rw-r--r-- | epan/dissectors/packet-ber.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/epan/dissectors/packet-ber.c b/epan/dissectors/packet-ber.c index 0d964675cb..e869da5ea6 100644 --- a/epan/dissectors/packet-ber.c +++ b/epan/dissectors/packet-ber.c @@ -76,6 +76,7 @@ #include <epan/emem.h> #include <epan/oid_resolv.h> #include <epan/expert.h> +#include <epan/asn1.h> #include "packet-ber.h" static gint proto_ber = -1; @@ -309,8 +310,9 @@ int dissect_ber_tagged_type(gboolean implicit_tag, packet_info *pinfo, proto_tre return offset; } - offset = get_ber_identifier(tvb, offset, &tmp_cls, NULL, &tmp_tag); - offset = get_ber_length(tree, tvb, offset, &tmp_len, NULL); + offset = offset=dissect_ber_identifier(pinfo, tree, tvb, offset, &tmp_cls, NULL, &tmp_tag); + offset = offset=dissect_ber_length(pinfo, tree, tvb, offset, &tmp_len, NULL); + if ((tmp_cls != tag_cls) || (tmp_tag != tag_tag)) { cause = proto_tree_add_text(tree, tvb, offset, tmp_len, "BER Error: Wrong tag in tagged type - expected class:%d (%s) tag:%d(%s) but found class:%d(%s) tag:%d", |