aboutsummaryrefslogtreecommitdiff
path: root/pyasn1/codec/ber
diff options
context:
space:
mode:
Diffstat (limited to 'pyasn1/codec/ber')
-rw-r--r--pyasn1/codec/ber/decoder.py8
-rw-r--r--pyasn1/codec/ber/encoder.py8
2 files changed, 12 insertions, 4 deletions
diff --git a/pyasn1/codec/ber/decoder.py b/pyasn1/codec/ber/decoder.py
index 3f2d180..5759ab8 100644
--- a/pyasn1/codec/ber/decoder.py
+++ b/pyasn1/codec/ber/decoder.py
@@ -695,7 +695,9 @@ class UniversalConstructedTypeDecoder(AbstractConstructedDecoder):
asn1Object.setComponentByPosition(idx, component)
else:
- asn1Object.verifySizeSpec()
+ inconsistency = asn1Object.isInconsistent
+ if inconsistency:
+ raise inconsistency
else:
asn1Object = asn1Spec.clone()
@@ -879,7 +881,9 @@ class UniversalConstructedTypeDecoder(AbstractConstructedDecoder):
asn1Object.setComponentByPosition(idx, component)
else:
- asn1Object.verifySizeSpec()
+ inconsistency = asn1Object.isInconsistent
+ if inconsistency:
+ raise inconsistency
else:
asn1Object = asn1Spec.clone()
diff --git a/pyasn1/codec/ber/encoder.py b/pyasn1/codec/ber/encoder.py
index a5d5fd3..778aa86 100644
--- a/pyasn1/codec/ber/encoder.py
+++ b/pyasn1/codec/ber/encoder.py
@@ -537,7 +537,9 @@ class SequenceEncoder(AbstractItemEncoder):
if asn1Spec is None:
# instance of ASN.1 schema
- value.verifySizeSpec()
+ inconsistency = value.isInconsistent
+ if inconsistency:
+ raise inconsistency
namedTypes = value.componentType
@@ -643,7 +645,9 @@ class SequenceOfEncoder(AbstractItemEncoder):
def _encodeComponents(self, value, asn1Spec, encodeFun, **options):
if asn1Spec is None:
- value.verifySizeSpec()
+ inconsistency = value.isInconsistent
+ if inconsistency:
+ raise inconsistency
else:
asn1Spec = asn1Spec.componentType