diff options
author | Stig Bjørlykke <stig@bjorlykke.org> | 2010-01-05 11:38:33 +0000 |
---|---|---|
committer | Stig Bjørlykke <stig@bjorlykke.org> | 2010-01-05 11:38:33 +0000 |
commit | 6a433058f98766ea7198b4e5f62fe20d40919ee4 (patch) | |
tree | 1fce9925ca989055d30a8c5e5ec9e60db061d997 /tools | |
parent | bf2aae77840d2cbc0ca154ef3d5cde0600f4b999 (diff) | |
download | wireshark-6a433058f98766ea7198b4e5f62fe20d40919ee4.tar.gz |
Added check for SIZE constraints in bit-string.
svn path=/trunk/; revision=31447
Diffstat (limited to 'tools')
-rwxr-xr-x | tools/asn2wrs.py | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/tools/asn2wrs.py b/tools/asn2wrs.py index 314415ce69..3d6e91fe00 100755 --- a/tools/asn2wrs.py +++ b/tools/asn2wrs.py @@ -5220,10 +5220,16 @@ class BitStringType (Type): def eth_type_default_body(self, ectx, tname): if (ectx.Ber()): - body = ectx.eth_fn_call('dissect_%(ER)s_bitstring', ret='offset', - par=(('%(IMPLICIT_TAG)s', '%(ACTX)s', '%(TREE)s', '%(TVB)s', '%(OFFSET)s'), - ('%(TABLE)s', '%(HF_INDEX)s', '%(ETT_INDEX)s',), - ('%(VAL_PTR)s',),)) + if (ectx.constraints_check and self.HasSizeConstraint()): + body = ectx.eth_fn_call('dissect_%(ER)s_constrained_bitstring', ret='offset', + par=(('%(IMPLICIT_TAG)s', '%(ACTX)s', '%(TREE)s', '%(TVB)s', '%(OFFSET)s'), + ('%(MIN_VAL)s', '%(MAX_VAL)s', '%(TABLE)s', '%(HF_INDEX)s', '%(ETT_INDEX)s',), + ('%(VAL_PTR)s',),)) + else: + body = ectx.eth_fn_call('dissect_%(ER)s_bitstring', ret='offset', + par=(('%(IMPLICIT_TAG)s', '%(ACTX)s', '%(TREE)s', '%(TVB)s', '%(OFFSET)s'), + ('%(TABLE)s', '%(HF_INDEX)s', '%(ETT_INDEX)s',), + ('%(VAL_PTR)s',),)) elif (ectx.Per()): if self.HasContentsConstraint(): body = ectx.eth_fn_call('dissect_%(ER)s_bit_string_containing%(FN_VARIANT)s', ret='offset', |