Skip to content

16. Security and robustness

Contents of FBL 0.7
  • No code execution. An FBL document contains no code but CEL and regular expressions. Persistence plugins are code and are installed through the explicit trust decision DISL §16 requires.
  • Regular expressions. Hosts whose regular expression engine backtracks (.NET, Java, ECMAScript) MUST bound the time a match may take, or use a linear-time engine; an expression that exceeds the bound is a finding on the statement, not a hang.
  • Paths. A registration's body and a folder subject's files are resolved within the workspace; a host MUST NOT read or write outside it, or follow symbolic links, without the user's consent.
  • Sizes. Hosts MUST enforce limits on the size of a body they read and the number of entries they build, as DISL §16 requires for stored diagrams, and report a body over the limit as unreadable rather than read part of it silently.
  • Integrity of other tools' files. A host never writes a body it could not read, never writes bytes outside an edit's splices, writes atomically, and refuses an undo on drift. These are what make it safe to point ADP at files other tools own.
  • Templates are text; placeholders are replaced literally and never evaluated.

Referenced from