You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@daffodil.apache.org by "Larry Barber (Jira)" <ji...@apache.org> on 2020/11/23 23:45:00 UTC
[jira] [Commented] (DAFFODIL-412) asserts and discriminators with
testKind pattern should have warning on too-long match
[ https://issues.apache.org/jira/browse/DAFFODIL-412?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17237752#comment-17237752 ]
Larry Barber commented on DAFFODIL-412:
---------------------------------------
Would it even make sense for something with this type of variable length pattern search to be part of a parent element with a specified length?
> asserts and discriminators with testKind pattern should have warning on too-long match
> --------------------------------------------------------------------------------------
>
> Key: DAFFODIL-412
> URL: https://issues.apache.org/jira/browse/DAFFODIL-412
> Project: Daffodil
> Issue Type: Improvement
> Components: Back End, Diagnostics, Front End, Usability
> Affects Versions: s5
> Reporter: Mike Beckerle
> Priority: Major
>
> When an assert/discriminator is of testKind pattern the pattern test passes if the regex matches a prefix of the data stream at the start of the element
> This match attempt is not bounded by the length of the element.
> It's entirely possible for a very bad regex pattern to cause massive scanning of the data stream before returning a match or a failure.
> Our runtime should emit warnings if this is happening i.e., an attempt to match a regex that consumes more than N characters should emit a warning, then every N more characters, etc.
> A tunable limit should be created for this regex lookahead/match so that we can force a failure here. The Daffodil API should provide a way to set this tunable limit.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)