Commit 77a4275
committed
cpp: model BDE bslx in-stream deserialization taint flow
Add flow summaries for the BDE byte-stream deserializers in
BloombergLP::bslx:
- ByteInStream and GenericInStream<STREAMBUF>: constructing (or, for
ByteInStream, reset-ing) from a buffer/streambuf taints the stream,
and every get* method propagates that taint into its output variable.
get* returns *this, so a fluent row keeps chained calls tainted.
- InStreamFunctions::bdexStreamIn: the generic BDEX entry point that
populates any bdex-compatible object from a stream, modeled as
stream -> object.
Not a duplicate of the bsl.* container models or the std/bsl QL models,
which cover only the bsl standard-library-alike types; the bslx BDE
namespace had no coverage. Verified with a BloombergLP::bslx-shaped stub
in the dataflow external-models harness.1 parent b756a08 commit 77a4275
5 files changed
Lines changed: 656 additions & 2 deletions
File tree
- cpp/ql
- lib
- change-notes
- ext
- test/library-tests/dataflow/external-models
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
0 commit comments