Uploaded image for project: 'Daffodil'
  1. Daffodil
  2. DFDL-980

Assert Invariant broken when PCAP example magic number does not match

XMLWordPrintableJSON

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Normal Normal
    • s14
    • None
    • None
    • None

      When parsing with the PCAP schema in daffodil-examples, and parsing against a file that is not PCAP (e.g. docx) the magic number DFDL expression will set byteOrder to an invalid value. This causes a compile time SDE at runtime, which causes an invariant broken abort:

      edu.illinois.ncsa.daffodil.exceptions.Abort: Invariant broken.
      edu.illinois.ncsa.daffodil.exceptions.Assert$.abort(Assert.scala:95)
      edu.illinois.ncsa.daffodil.exceptions.Assert$.invariant(Assert.scala:123)
      edu.illinois.ncsa.daffodil.ExecutionMode$.requireCompilerMode(ExecutionMode.scala:97)
      edu.illinois.ncsa.daffodil.dsom.ImplementsThrowsSDE$class.SDE(SDE.scala:231)
      	at edu.illinois.ncsa.daffodil.exceptions.Assert$.abort(Assert.scala:95)
      	at edu.illinois.ncsa.daffodil.exceptions.Assert$.invariant(Assert.scala:123)
      	at edu.illinois.ncsa.daffodil.ExecutionMode$.requireCompilerMode(ExecutionMode.scala:97)
      	at edu.illinois.ncsa.daffodil.dsom.ImplementsThrowsSDE$class.SDE(SDE.scala:231)
      	at edu.illinois.ncsa.daffodil.dsom.SchemaComponent.SDE(SchemaComponent.scala:48)
      	at edu.illinois.ncsa.daffodil.schema.annotation.props.Enum.stringToEnum(Properties.scala:124)
      	at edu.illinois.ncsa.daffodil.schema.annotation.props.gen.ByteOrder$.apply(GeneratedCode.scala:2775)
      	at edu.illinois.ncsa.daffodil.processors.RuntimeExplicitByteOrderMixin$class.getByteOrder(PrimitivesBinaryNumber.scala:83)
      	at edu.illinois.ncsa.daffodil.processors.UnsignedKnownLengthRuntimeByteOrderBinaryNumber.getByteOrder(PrimitivesBinaryNumber.scala:179)
      	at edu.illinois.ncsa.daffodil.processors.BinaryNumberBase$$anon$1$$anonfun$parse$1.apply(PrimitivesBinaryNumber.scala:143)

              jchab Jessie Chab
              slawrence Steve Lawrence
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: