aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorRonnie Sahlberg <ronnie_sahlberg@ozemail.com.au>2004-11-14 05:10:44 +0000
committerRonnie Sahlberg <ronnie_sahlberg@ozemail.com.au>2004-11-14 05:10:44 +0000
commitbb0cf08d8cb55d61f1f1a8568098562477eff26e (patch)
tree0daa39424cc8d7ba1ac1326bd1aee66174a822f5 /tools
parent2e13664c4b8e1c74c0a1ffabd5c7c14c65daea1a (diff)
Major update of the ber helpers to fix a lot of bugs and make the handling of implicit_tags more sane.
It worked reasonably well mainly, I suspect, due to implicit tags are reasonably uncommon in the dissectors we have already implemented and that the bugs were masking eachothers. my regression tests (limited test samples though) decodes this new one exactly the same as the old one. As a bonus by not changing anythiong in the decode is that now it is possible to get dissection of implice items to work properly, hence CMIP (and also x509 Extensions work now) make heaps of dissector helpers implicit_tag aware. change asn2eth to generate code to call the implicit_tag aware integer dissector helper. svn path=/trunk/; revision=12520
Diffstat (limited to 'tools')
-rw-r--r--tools/asn2eth.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/tools/asn2eth.py b/tools/asn2eth.py
index 5b8819940b..aa4f513925 100644
--- a/tools/asn2eth.py
+++ b/tools/asn2eth.py
@@ -2438,8 +2438,8 @@ class EnumeratedType (Type):
ext = 'TRUE'
out += ectx.eth_type_fn_hdr(tname)
if (ectx.Ber()):
- body = ectx.eth_fn_call('dissect_ber_integer', ret='offset',
- par=(('pinfo', 'tree', 'tvb', 'offset', 'hf_index', 'NULL'),))
+ body = ectx.eth_fn_call('dissect_ber_integer_new', ret='offset',
+ par=(('implicit_tag', 'pinfo', 'tree', 'tvb', 'offset', 'hf_index', 'NULL'),))
elif (ectx.NPer()):
body = " offset = dissect_pern_constrained_integer_new(tvb, offset, pinfo, tree,\n"
body += " %s, %s, %s,\n" \
@@ -2874,8 +2874,8 @@ class IntegerType (Type):
out = '\n'
out += ectx.eth_type_fn_hdr(tname)
if (ectx.Ber()):
- body = ectx.eth_fn_call('dissect_ber_integer', ret='offset',
- par=(('pinfo', 'tree', 'tvb', 'offset', 'hf_index', 'NULL'),))
+ body = ectx.eth_fn_call('dissect_ber_integer_new', ret='offset',
+ par=(('implicit_tag', 'pinfo', 'tree', 'tvb', 'offset', 'hf_index', 'NULL'),))
elif (not self.HasConstraint()):
if (ectx.NAPI()):
body = ectx.eth_fn_call('dissect_pern_integer', ret='offset',