[ 
https://issues.apache.org/jira/browse/DAFFODIL-1704?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mike Beckerle updated DAFFODIL-1704:
------------------------------------
    Fix Version/s: 3.5.0

> PE undetected - Binary number parsers are missing checks for bitLength
> ----------------------------------------------------------------------
>
>                 Key: DAFFODIL-1704
>                 URL: https://issues.apache.org/jira/browse/DAFFODIL-1704
>             Project: Daffodil
>          Issue Type: Bug
>          Components: Back End, General
>    Affects Versions: 2.0.0
>            Reporter: Elizabeth Fahl
>            Priority: Critical
>             Fix For: 3.5.0
>
>
> This was discussed in a review of boolean parser and unparser, which have a 
> check for bitLength that the binary number parsers do not. These checks would 
> verify that bitLength falls within the accepted range for it's type as noted 
> in 12.3.7.2.1 in the spec. It also needs to be determined if this check would 
> be better in an evaluatable so it could be done at compile time.
> The check in BinaryBooleanParsers.scala:
> {code}
>     val nBits = getBitLength(start)
>     if (nBits < 1 || nBits > 32) {
>       PE(start, "Number of bits %d out of range, must be between 1 and 32 
> bits.", nBits)
>       return
>     }
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to