diff --git a/cpp/ql/lib/change-notes/2026-09-09-bal-codec-models.md b/cpp/ql/lib/change-notes/2026-09-09-bal-codec-models.md new file mode 100644 index 000000000000..3a4c6ed29db3 --- /dev/null +++ b/cpp/ql/lib/change-notes/2026-09-09-bal-codec-models.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* Added flow summaries for the BDE codecs `BloombergLP::balber::BerDecoder`/`BerEncoder`, `BloombergLP::baljsn::Decoder`/`Encoder` and `BloombergLP::balxml::Decoder`/`Encoder`. diff --git a/cpp/ql/lib/ext/balber.model.yml b/cpp/ql/lib/ext/balber.model.yml new file mode 100644 index 000000000000..5cbc6fa71a27 --- /dev/null +++ b/cpp/ql/lib/ext/balber.model.yml @@ -0,0 +1,13 @@ +# Model of the BDE balber BER codec (BloombergLP::balber). +# All overloads take the stream at argument 0 and the object at argument 1 and return int. +extensions: + - addsTo: + pack: codeql/cpp-all + extensible: summaryModel + data: # namespace, type, subtypes, name, signature, ext, input, output, kind, provenance + # Decoding: stream -> object + - ["BloombergLP::balber", "BerDecoder", true, "decode", "", "", "Argument[*0]", "Argument[*1]", "taint", "manual"] + - ["BloombergLP::balber", "BerDecoder", true, "decodeAny", "", "", "Argument[*0]", "Argument[*1]", "taint", "manual"] + # Encoding: object -> stream + - ["BloombergLP::balber", "BerEncoder", true, "encode", "", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] + - ["BloombergLP::balber", "BerEncoder", true, "encodeAny", "", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] diff --git a/cpp/ql/lib/ext/baljsn.model.yml b/cpp/ql/lib/ext/baljsn.model.yml new file mode 100644 index 000000000000..b85463dbbb2e --- /dev/null +++ b/cpp/ql/lib/ext/baljsn.model.yml @@ -0,0 +1,14 @@ +# Model of the BDE baljsn JSON codec (BloombergLP::baljsn). +# All overloads, including those taking DecoderOptions/EncoderOptions, take the stream at +# argument 0 and the object at argument 1 and return int. +extensions: + - addsTo: + pack: codeql/cpp-all + extensible: summaryModel + data: # namespace, type, subtypes, name, signature, ext, input, output, kind, provenance + # Decoding: stream -> object + - ["BloombergLP::baljsn", "Decoder", true, "decode", "", "", "Argument[*0]", "Argument[*1]", "taint", "manual"] + - ["BloombergLP::baljsn", "Decoder", true, "decodeAny", "", "", "Argument[*0]", "Argument[*1]", "taint", "manual"] + # Encoding: object -> stream + - ["BloombergLP::baljsn", "Encoder", true, "encode", "", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] + - ["BloombergLP::baljsn", "Encoder", true, "encodeAny", "", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] diff --git a/cpp/ql/lib/ext/balxml.model.yml b/cpp/ql/lib/ext/balxml.model.yml new file mode 100644 index 000000000000..ec563089d794 --- /dev/null +++ b/cpp/ql/lib/ext/balxml.model.yml @@ -0,0 +1,32 @@ +# Model of the BDE balxml XML codec (BloombergLP::balxml). +# Rows name their overload where the overloads differ in argument layout. Not modelled: +# decode(const char *filename, TYPE *), the two-step open() + decode(TYPE *) form, and the +# Formatter overloads. +extensions: + - addsTo: + pack: codeql/cpp-all + extensible: summaryModel + data: # namespace, type, subtypes, name, signature, ext, input, output, kind, provenance + # Decoding: stream -> object; the istream overloads also return the stream + - ["BloombergLP::balxml", "Decoder", true, "decode", "(istream &,TYPE *,const char *)", "", "Argument[*0]", "Argument[*1]", "taint", "manual"] + - ["BloombergLP::balxml", "Decoder", true, "decode", "(istream &,TYPE *,const char *)", "", "Argument[*0]", "ReturnValue[*]", "taint", "manual"] + - ["BloombergLP::balxml", "Decoder", true, "decode", "(streambuf *,TYPE *,const char *)", "", "Argument[*0]", "Argument[*1]", "taint", "manual"] + - ["BloombergLP::balxml", "Decoder", true, "decode", "(const char *,size_t,TYPE *,const char *)", "", "Argument[*0]", "Argument[*2]", "taint", "manual"] + - ["BloombergLP::balxml", "Decoder", true, "decodeAny", "(istream &,TYPE *,const char *)", "", "Argument[*0]", "Argument[*1]", "taint", "manual"] + - ["BloombergLP::balxml", "Decoder", true, "decodeAny", "(istream &,TYPE *,const char *)", "", "Argument[*0]", "ReturnValue[*]", "taint", "manual"] + - ["BloombergLP::balxml", "Decoder", true, "decodeAny", "(streambuf *,TYPE *,const char *)", "", "Argument[*0]", "Argument[*1]", "taint", "manual"] + - ["BloombergLP::balxml", "Decoder", true, "decodeAny", "(istream &,AnyRef *,const char *)", "", "Argument[*0]", "Argument[*1]", "taint", "manual"] + - ["BloombergLP::balxml", "Decoder", true, "decodeAny", "(istream &,AnyRef *,const char *)", "", "Argument[*0]", "ReturnValue[*]", "taint", "manual"] + - ["BloombergLP::balxml", "Decoder", true, "decodeAny", "(streambuf *,AnyRef *,const char *)", "", "Argument[*0]", "Argument[*1]", "taint", "manual"] + # Encoding: object -> stream; the ostream overloads also return the stream + - ["BloombergLP::balxml", "Encoder", true, "encode", "(streambuf *,const TYPE &)", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] + - ["BloombergLP::balxml", "Encoder", true, "encode", "(ostream &,const TYPE &)", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] + - ["BloombergLP::balxml", "Encoder", true, "encode", "(ostream &,const TYPE &)", "", "Argument[*0..1]", "ReturnValue[*]", "taint", "manual"] + - ["BloombergLP::balxml", "Encoder", true, "encodeToStream", "", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] + - ["BloombergLP::balxml", "Encoder", true, "encodeAny", "(streambuf *,const TYPE &)", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] + - ["BloombergLP::balxml", "Encoder", true, "encodeAny", "(ostream &,const TYPE &)", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] + - ["BloombergLP::balxml", "Encoder", true, "encodeAny", "(ostream &,const TYPE &)", "", "Argument[*0..1]", "ReturnValue[*]", "taint", "manual"] + - ["BloombergLP::balxml", "Encoder", true, "encodeAnyToStream", "", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] + - ["BloombergLP::balxml", "Encoder", true, "encodeAny", "(streambuf *,const AnyConstRef &)", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] + - ["BloombergLP::balxml", "Encoder", true, "encodeAny", "(ostream &,const AnyConstRef &)", "", "Argument[*1]", "Argument[*0]", "taint", "manual"] + - ["BloombergLP::balxml", "Encoder", true, "encodeAny", "(ostream &,const AnyConstRef &)", "", "Argument[*0..1]", "ReturnValue[*]", "taint", "manual"] diff --git a/cpp/ql/test/library-tests/dataflow/external-models/bal.cpp b/cpp/ql/test/library-tests/dataflow/external-models/bal.cpp new file mode 100644 index 000000000000..cdf928e42b18 --- /dev/null +++ b/cpp/ql/test/library-tests/dataflow/external-models/bal.cpp @@ -0,0 +1,484 @@ + +// --- stub library headers --- + +namespace bsl { + typedef unsigned long size_t; + class streambuf {}; + class istream {}; + class ostream {}; + template class allocator {}; + template struct char_traits {}; + template, class Allocator = allocator > + class basic_string { + public: + basic_string(); + basic_string(const charT* s, const Allocator& a = Allocator()); + const charT* data() const; + size_t size() const; + }; + typedef basic_string string; +} + +namespace BloombergLP { +namespace bdlar { + class AnyRef {}; + class AnyConstRef {}; +} + +namespace balber { + class BerDecoder { + public: + template int decode(bsl::streambuf *streamBuf, TYPE *variable); + template int decode(bsl::istream& stream, TYPE *variable); + template int decodeAny(bsl::streambuf *streamBuf, TYPE *variable); + int decodeAny(bsl::streambuf *streamBuf, bdlar::AnyRef *variable); + template int decodeAny(bsl::istream& stream, TYPE *variable); + int decodeAny(bsl::istream& stream, bdlar::AnyRef *variable); + }; + class BerEncoder { + public: + template int encode(bsl::streambuf *streamBuf, const TYPE& value); + template int encode(bsl::ostream& stream, const TYPE& value); + template int encodeAny(bsl::streambuf *streamBuf, const TYPE& value); + int encodeAny(bsl::streambuf *streamBuf, const bdlar::AnyConstRef& any); + template int encodeAny(bsl::ostream& stream, const TYPE& value); + int encodeAny(bsl::ostream& stream, const bdlar::AnyConstRef& any); + }; +} + +namespace baljsn { + class DecoderOptions {}; + class EncoderOptions {}; + class Decoder { + public: + template int decode(bsl::streambuf *streamBuf, TYPE *value, const DecoderOptions& options); + template int decode(bsl::streambuf *streamBuf, TYPE *value, const DecoderOptions *options); + template int decode(bsl::istream& stream, TYPE *value, const DecoderOptions& options); + template int decode(bsl::istream& stream, TYPE *value, const DecoderOptions *options); + template int decode(bsl::streambuf *streamBuf, TYPE *value); + template int decode(bsl::istream& stream, TYPE *value); + template int decodeAny(bsl::streambuf *streamBuf, TYPE *value, const DecoderOptions& options); + template int decodeAny(bsl::streambuf *streamBuf, TYPE *value, const DecoderOptions *options = 0); + int decodeAny(bsl::streambuf *streamBuf, bdlar::AnyRef *value, const DecoderOptions& options); + template int decodeAny(bsl::istream& stream, TYPE *value, const DecoderOptions& options); + template int decodeAny(bsl::istream& stream, TYPE *value, const DecoderOptions *options = 0); + int decodeAny(bsl::istream& stream, bdlar::AnyRef *value, const DecoderOptions& options); + }; + class Encoder { + public: + template int encode(bsl::streambuf *streamBuf, const TYPE& value, const EncoderOptions& options); + template int encode(bsl::streambuf *streamBuf, const TYPE& value, const EncoderOptions *options); + template int encode(bsl::ostream& stream, const TYPE& value, const EncoderOptions& options); + template int encode(bsl::ostream& stream, const TYPE& value, const EncoderOptions *options); + template int encode(bsl::streambuf *streamBuf, const TYPE& value); + template int encode(bsl::ostream& stream, const TYPE& value); + template int encodeAny(bsl::streambuf *streamBuf, const TYPE& value, const EncoderOptions& options); + template int encodeAny(bsl::streambuf *streamBuf, const TYPE& value, const EncoderOptions *options = 0); + int encodeAny(bsl::streambuf *streamBuf, const bdlar::AnyConstRef& any, const EncoderOptions& options); + int encodeAny(bsl::streambuf *streamBuf, const bdlar::AnyConstRef& any, const EncoderOptions *options = 0); + template int encodeAny(bsl::ostream& stream, const TYPE& value, const EncoderOptions& options); + template int encodeAny(bsl::ostream& stream, const TYPE& value, const EncoderOptions *options = 0); + int encodeAny(bsl::ostream& stream, const bdlar::AnyConstRef& any, const EncoderOptions& options); + int encodeAny(bsl::ostream& stream, const bdlar::AnyConstRef& any, const EncoderOptions *options = 0); + }; +} + +namespace balxml { + class Formatter {}; + class Decoder { + public: + int open(bsl::istream& stream, const char *uri = 0); + int open(bsl::streambuf *buffer, const char *uri = 0); + int open(const char *buffer, bsl::size_t length, const char *uri = 0); + int open(const char *filename); + template bsl::istream& decode(bsl::istream& stream, TYPE *object, const char *uri = 0); + template int decode(bsl::streambuf *buffer, TYPE *object, const char *uri = 0); + template int decode(const char *buffer, bsl::size_t length, TYPE *object, const char *uri = 0); + template int decode(const char *filename, TYPE *object); + template int decode(TYPE *object); + template bsl::istream& decodeAny(bsl::istream& stream, TYPE *object, const char *uri = 0); + bsl::istream& decodeAny(bsl::istream& stream, bdlar::AnyRef *object, const char *uri = 0); + template int decodeAny(bsl::streambuf *buffer, TYPE *object, const char *uri = 0); + int decodeAny(bsl::streambuf *buffer, bdlar::AnyRef *object, const char *uri = 0); + template int decodeAny(TYPE *object); + int decodeAny(bdlar::AnyRef *object); + }; + class Encoder { + public: + template int encode(bsl::streambuf *buffer, const TYPE& object); + template int encodeToStream(bsl::ostream& stream, const TYPE& object); + template bsl::ostream& encode(bsl::ostream& stream, const TYPE& object); + template int encode(Formatter& formatter, const TYPE& object); + template int encodeAny(bsl::streambuf *buffer, const TYPE& object); + int encodeAny(bsl::streambuf *buffer, const bdlar::AnyConstRef& object); + template int encodeAnyToStream(bsl::ostream& stream, const TYPE& object); + int encodeAnyToStream(bsl::ostream& stream, const bdlar::AnyConstRef& object); + template bsl::ostream& encodeAny(bsl::ostream& stream, const TYPE& object); + bsl::ostream& encodeAny(bsl::ostream& stream, const bdlar::AnyConstRef& object); + template int encodeAny(Formatter& formatter, const TYPE& object); + int encodeAny(Formatter& formatter, const bdlar::AnyConstRef& object); + }; +} +} + +// --- test code --- + +char *source(); +void sink(char); +void sink(bsl::string s); + +// Stand-in for a bdlat sequence type. +struct Record { + char name[16]; +}; + +// A tainted stream is made by reinterpreting a tainted bsl::string, as in bslx.cpp. baljsn +// and balxml only accept bdlat sequence/choice types; the stubs do not enforce that, and +// most tests decode into a bsl::string so the result can be read back. The *_struct_* tests +// show whole-object taint without general object-to-field flow. TaintInheritingContent +// (FlowSteps.qll) enables inheritance for selected fields; Record::name is not modeled this way. + +// ===== balber (BER) ===== + +// Decoding a tainted stream taints the decoded object. +void test_balber_decode() { + bsl::string data(source()); + bsl::streambuf *sb = (bsl::streambuf *)data.data(); + bsl::string out; + BloombergLP::balber::BerDecoder decoder; + decoder.decode(sb, &out); + sink(*out.data()); // $ ir +} + +void test_balber_decode_istream() { + bsl::string data(source()); + bsl::istream *is = (bsl::istream *)data.data(); + bsl::string out; + BloombergLP::balber::BerDecoder decoder; + decoder.decode(*is, &out); + sink(*out.data()); // $ ir +} + +void test_balber_decodeAny() { + bsl::string data(source()); + bsl::streambuf *sb = (bsl::streambuf *)data.data(); + bsl::string out; + BloombergLP::balber::BerDecoder decoder; + decoder.decodeAny(sb, &out); + sink(*out.data()); // $ ir +} + +// Encoding a tainted object taints the destination stream. +void test_balber_encode() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::balber::BerEncoder encoder; + encoder.encode((bsl::streambuf *)buf, obj); + sink(buf[0]); // $ ir +} + +void test_balber_encodeAny() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::balber::BerEncoder encoder; + encoder.encodeAny((bsl::streambuf *)buf, obj); + sink(buf[0]); // $ ir +} + +// ===== baljsn (JSON) ===== + +// The non-deprecated overloads take a trailing DecoderOptions/EncoderOptions. +void test_baljsn_decode_options() { + bsl::string data(source()); + bsl::streambuf *sb = (bsl::streambuf *)data.data(); + bsl::string out; + BloombergLP::baljsn::DecoderOptions options; + BloombergLP::baljsn::Decoder decoder; + decoder.decode(sb, &out, options); + sink(*out.data()); // $ ir +} + +void test_baljsn_decode_istream_options_ptr() { + bsl::string data(source()); + bsl::istream *is = (bsl::istream *)data.data(); + bsl::string out; + BloombergLP::baljsn::DecoderOptions options; + BloombergLP::baljsn::Decoder decoder; + decoder.decode(*is, &out, &options); + sink(*out.data()); // $ ir +} + +void test_baljsn_decodeAny() { + bsl::string data(source()); + bsl::streambuf *sb = (bsl::streambuf *)data.data(); + bsl::string out; + BloombergLP::baljsn::Decoder decoder; + decoder.decodeAny(sb, &out); + sink(*out.data()); // $ ir +} + +void test_baljsn_encode_options() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::baljsn::EncoderOptions options; + BloombergLP::baljsn::Encoder encoder; + encoder.encode((bsl::streambuf *)buf, obj, options); + sink(buf[0]); // $ ir +} + +void test_baljsn_encodeAny() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::baljsn::Encoder encoder; + encoder.encodeAny((bsl::streambuf *)buf, obj); + sink(buf[0]); // $ ir +} + +// A decoded struct carries taint as a whole: re-encoding it taints the output stream. +void test_baljsn_struct_round_trip() { + bsl::string data(source()); + bsl::streambuf *sb = (bsl::streambuf *)data.data(); + Record rec; + BloombergLP::baljsn::Decoder decoder; + decoder.decode(sb, &rec); + char buf[16]; + BloombergLP::baljsn::Encoder encoder; + encoder.encode((bsl::streambuf *)buf, rec); + sink(buf[0]); // $ ir +} + +void test_baljsn_struct_field_no_flow() { + bsl::string data(source()); + bsl::streambuf *sb = (bsl::streambuf *)data.data(); + Record rec; + BloombergLP::baljsn::Decoder decoder; + decoder.decode(sb, &rec); + sink(rec.name[0]); // no flow: Record::name does not inherit whole-object taint +} + +// ===== balxml (XML) ===== + +void test_balxml_decode_istream() { + bsl::string data(source()); + bsl::istream *is = (bsl::istream *)data.data(); + bsl::string out; + BloombergLP::balxml::Decoder decoder; + decoder.decode(*is, &out); + sink(*out.data()); // $ ir +} + +void test_balxml_decode_istream_return() { + bsl::string data(source()); + bsl::istream *is = (bsl::istream *)data.data(); + bsl::string out; + BloombergLP::balxml::Decoder decoder; + bsl::istream &r = decoder.decode(*is, &out, "uri"); + sink(*(char *)&r); // $ ir + sink(out); // $ ir +} + +void test_balxml_decode_streambuf() { + bsl::string data(source()); + bsl::streambuf *sb = (bsl::streambuf *)data.data(); + bsl::string out; + BloombergLP::balxml::Decoder decoder; + decoder.decode(sb, &out); + sink(*out.data()); // $ ir +} + +void test_balxml_decode_buffer_length() { + bsl::string data(source()); + bsl::string out; + BloombergLP::balxml::Decoder decoder; + decoder.decode(data.data(), data.size(), &out); + sink(*out.data()); // $ ir +} + +// decode(const char *filename, TYPE *) is not modelled. +void test_balxml_decode_filename_no_flow() { + bsl::string filename(source()); + bsl::string out; + BloombergLP::balxml::Decoder decoder; + decoder.decode(filename.data(), &out); + sink(*out.data()); // no flow: the input is a path, not data +} + +// The two-step open() + decode(TYPE *) form is not modelled. +void test_balxml_open_decode_no_flow() { + bsl::string data(source()); + bsl::streambuf *sb = (bsl::streambuf *)data.data(); + bsl::string out; + BloombergLP::balxml::Decoder decoder; + decoder.open(sb); + decoder.decode(&out); + sink(*out.data()); // $ MISSING: ir (not modelled) +} + +void test_balxml_decodeAny_istream() { + bsl::string data(source()); + bsl::istream *is = (bsl::istream *)data.data(); + bsl::string out; + BloombergLP::balxml::Decoder decoder; + decoder.decodeAny(*is, &out); + sink(*out.data()); // $ ir +} + +void test_balxml_decodeAny_istream_return() { + bsl::string data(source()); + bsl::istream *is = (bsl::istream *)data.data(); + bsl::string out; + BloombergLP::balxml::Decoder decoder; + bsl::istream &r = decoder.decodeAny(*is, &out); + sink(*(char *)&r); // $ ir + sink(out); // $ ir +} + +void test_balxml_decodeAny_streambuf() { + bsl::string data(source()); + bsl::streambuf *sb = (bsl::streambuf *)data.data(); + bsl::string out; + BloombergLP::balxml::Decoder decoder; + decoder.decodeAny(sb, &out); + sink(*out.data()); // $ ir +} + +void test_balxml_decodeAny_AnyRef_istream() { + bsl::string data(source()); + bsl::istream *is = (bsl::istream *)data.data(); + BloombergLP::bdlar::AnyRef any; + BloombergLP::balxml::Decoder decoder; + decoder.decodeAny(*is, &any); + sink(*(char *)&any); // $ ir +} + +void test_balxml_decodeAny_AnyRef_istream_return() { + bsl::string data(source()); + bsl::istream *is = (bsl::istream *)data.data(); + BloombergLP::bdlar::AnyRef any; + BloombergLP::balxml::Decoder decoder; + bsl::istream &r = decoder.decodeAny(*is, &any); + sink(*(char *)&r); // $ ir + sink(*(char *)&any); // $ ir +} + +void test_balxml_decodeAny_AnyRef_streambuf() { + bsl::string data(source()); + bsl::streambuf *sb = (bsl::streambuf *)data.data(); + BloombergLP::bdlar::AnyRef any; + BloombergLP::balxml::Decoder decoder; + decoder.decodeAny(sb, &any); + sink(*(char *)&any); // $ ir +} + +void test_balxml_encode_streambuf() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::balxml::Encoder encoder; + encoder.encode((bsl::streambuf *)buf, obj); + sink(buf[0]); // $ ir +} + +void test_balxml_encode_ostream() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::balxml::Encoder encoder; + encoder.encode(*(bsl::ostream *)buf, obj); + sink(buf[0]); // $ ir +} + +void test_balxml_encode_ostream_return_from_object() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::balxml::Encoder encoder; + bsl::ostream &r = encoder.encode(*(bsl::ostream *)buf, obj); + sink(*(char *)&r); // $ ir + sink(buf[0]); // $ ir +} + +void test_balxml_encode_ostream_return_from_stream() { + bsl::string data(source()); + bsl::ostream *os = (bsl::ostream *)data.data(); + bsl::string obj; + BloombergLP::balxml::Encoder encoder; + bsl::ostream &r = encoder.encode(*os, obj); + sink(*(char *)&r); // $ ir +} + +void test_balxml_encodeToStream() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::balxml::Encoder encoder; + encoder.encodeToStream(*(bsl::ostream *)buf, obj); + sink(buf[0]); // $ ir +} + +// encode(Formatter &, const TYPE &) is not modelled. +void test_balxml_encode_formatter_no_flow() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::balxml::Formatter *formatter = (BloombergLP::balxml::Formatter *)buf; + BloombergLP::balxml::Encoder encoder; + encoder.encode(*formatter, obj); + sink(buf[0]); // no flow: not modelled +} + +void test_balxml_encodeAny_streambuf() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::balxml::Encoder encoder; + encoder.encodeAny((bsl::streambuf *)buf, obj); + sink(buf[0]); // $ ir +} + +void test_balxml_encodeAny_ostream() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::balxml::Encoder encoder; + encoder.encodeAny(*(bsl::ostream *)buf, obj); + sink(buf[0]); // $ ir +} + +void test_balxml_encodeAny_ostream_return_from_object() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::balxml::Encoder encoder; + bsl::ostream &r = encoder.encodeAny(*(bsl::ostream *)buf, obj); + sink(*(char *)&r); // $ ir + sink(buf[0]); // $ ir +} + +void test_balxml_encodeAnyToStream() { + bsl::string obj(source()); + char buf[16]; + BloombergLP::balxml::Encoder encoder; + encoder.encodeAnyToStream(*(bsl::ostream *)buf, obj); + sink(buf[0]); // $ ir +} + +void test_balxml_encodeAny_AnyConstRef_streambuf() { + bsl::string data(source()); + BloombergLP::bdlar::AnyConstRef *any = (BloombergLP::bdlar::AnyConstRef *)data.data(); + char buf[16]; + BloombergLP::balxml::Encoder encoder; + encoder.encodeAny((bsl::streambuf *)buf, *any); + sink(buf[0]); // $ ir +} + +void test_balxml_encodeAny_AnyConstRef_ostream() { + bsl::string data(source()); + BloombergLP::bdlar::AnyConstRef *any = (BloombergLP::bdlar::AnyConstRef *)data.data(); + char buf[16]; + BloombergLP::balxml::Encoder encoder; + encoder.encodeAny(*(bsl::ostream *)buf, *any); + sink(buf[0]); // $ ir +} + +void test_balxml_encodeAny_AnyConstRef_ostream_return_from_object() { + bsl::string data(source()); + BloombergLP::bdlar::AnyConstRef *any = (BloombergLP::bdlar::AnyConstRef *)data.data(); + char buf[16]; + BloombergLP::balxml::Encoder encoder; + bsl::ostream &r = encoder.encodeAny(*(bsl::ostream *)buf, *any); + sink(*(char *)&r); // $ ir + sink(buf[0]); // $ ir +} diff --git a/cpp/ql/test/library-tests/dataflow/external-models/flow.expected b/cpp/ql/test/library-tests/dataflow/external-models/flow.expected index 48d8079fed82..a809e655aa20 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/flow.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/flow.expected @@ -97,163 +97,192 @@ models | 96 | Summary: Azure::Core::IO; BodyStream; true; ReadToCount; ; ; Argument[-1]; Argument[*0]; taint; manual | | 97 | Summary: Azure::Core::IO; BodyStream; true; ReadToEnd; ; ; Argument[-1]; ReturnValue.Element; taint; manual | | 98 | Summary: Azure; Nullable; true; Value; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 99 | Summary: BloombergLP::bdlbb; Blob; true; buffer; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 100 | Summary: BloombergLP::bdlbb; BlobBuffer; true; buffer; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 101 | Summary: BloombergLP::bdlbb; BlobBuffer; true; data; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 102 | Summary: BloombergLP::bdlbb; BlobUtil; true; copy; (Blob *,int,const Blob &,int,int); ; Argument[*2]; Argument[*0]; taint; manual | -| 103 | Summary: BloombergLP::bdlbb; BlobUtil; true; copy; (Blob *,int,const char *,int); ; Argument[*2]; Argument[*0]; taint; manual | -| 104 | Summary: BloombergLP::bdlbb; BlobUtil; true; copy; (char *,const Blob &,int,int); ; Argument[*1]; Argument[*0]; taint; manual | -| 105 | Summary: BloombergLP::bdlbb; BlobUtil; true; getContiguousRangeOrCopy; ; ; Argument[*1]; ReturnValue[*]; taint; manual | -| 106 | Summary: BloombergLP::bslx::InStreamFunctions; ; false; bdexStreamIn; ; ; Argument[*0]; Argument[*1]; taint; manual | -| 107 | Summary: BloombergLP::bslx::InStreamFunctions; ; false; bdexStreamIn; ; ; Argument[*0]; ReturnValue[*]; taint; manual | -| 108 | Summary: BloombergLP::bslx; ByteInStream; true; ByteInStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 109 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayFloat32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 110 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayFloat64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 111 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 112 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 113 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 114 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 115 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 116 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 117 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 118 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt8; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 119 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 120 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 121 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 122 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 123 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 124 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 125 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 126 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 127 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 128 | Summary: BloombergLP::bslx; ByteInStream; true; getFloat32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 129 | Summary: BloombergLP::bslx; ByteInStream; true; getFloat64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 130 | Summary: BloombergLP::bslx; ByteInStream; true; getInt16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 131 | Summary: BloombergLP::bslx; ByteInStream; true; getInt24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 132 | Summary: BloombergLP::bslx; ByteInStream; true; getInt32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 133 | Summary: BloombergLP::bslx; ByteInStream; true; getInt40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 134 | Summary: BloombergLP::bslx; ByteInStream; true; getInt48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 135 | Summary: BloombergLP::bslx; ByteInStream; true; getInt56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 136 | Summary: BloombergLP::bslx; ByteInStream; true; getInt64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 137 | Summary: BloombergLP::bslx; ByteInStream; true; getInt8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 138 | Summary: BloombergLP::bslx; ByteInStream; true; getLength; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 139 | Summary: BloombergLP::bslx; ByteInStream; true; getString; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 140 | Summary: BloombergLP::bslx; ByteInStream; true; getString; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 141 | Summary: BloombergLP::bslx; ByteInStream; true; getUint16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 142 | Summary: BloombergLP::bslx; ByteInStream; true; getUint24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 143 | Summary: BloombergLP::bslx; ByteInStream; true; getUint32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 144 | Summary: BloombergLP::bslx; ByteInStream; true; getUint40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 145 | Summary: BloombergLP::bslx; ByteInStream; true; getUint48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 146 | Summary: BloombergLP::bslx; ByteInStream; true; getUint56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 147 | Summary: BloombergLP::bslx; ByteInStream; true; getUint64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 148 | Summary: BloombergLP::bslx; ByteInStream; true; getUint8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 149 | Summary: BloombergLP::bslx; ByteInStream; true; getVersion; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 150 | Summary: BloombergLP::bslx; ByteInStream; true; reset; (const StringRef &); ; Argument[*0]; Argument[-1]; taint; manual | -| 151 | Summary: BloombergLP::bslx; ByteInStream; true; reset; (const char *,size_t); ; Argument[*0]; Argument[-1]; taint; manual | -| 152 | Summary: BloombergLP::bslx; GenericInStream; true; GenericInStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 153 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayFloat32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 154 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayFloat64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 155 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 156 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 157 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 158 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 159 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 160 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 161 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 162 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 163 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 164 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 165 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 166 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 167 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 168 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 169 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 170 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 171 | Summary: BloombergLP::bslx; GenericInStream; true; getFloat32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 172 | Summary: BloombergLP::bslx; GenericInStream; true; getFloat64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 173 | Summary: BloombergLP::bslx; GenericInStream; true; getInt16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 174 | Summary: BloombergLP::bslx; GenericInStream; true; getInt24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 175 | Summary: BloombergLP::bslx; GenericInStream; true; getInt32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 176 | Summary: BloombergLP::bslx; GenericInStream; true; getInt40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 177 | Summary: BloombergLP::bslx; GenericInStream; true; getInt48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 178 | Summary: BloombergLP::bslx; GenericInStream; true; getInt56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 179 | Summary: BloombergLP::bslx; GenericInStream; true; getInt64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 180 | Summary: BloombergLP::bslx; GenericInStream; true; getInt8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 181 | Summary: BloombergLP::bslx; GenericInStream; true; getLength; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 182 | Summary: BloombergLP::bslx; GenericInStream; true; getString; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 183 | Summary: BloombergLP::bslx; GenericInStream; true; getString; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 184 | Summary: BloombergLP::bslx; GenericInStream; true; getUint16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 185 | Summary: BloombergLP::bslx; GenericInStream; true; getUint24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 186 | Summary: BloombergLP::bslx; GenericInStream; true; getUint32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 187 | Summary: BloombergLP::bslx; GenericInStream; true; getUint40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 188 | Summary: BloombergLP::bslx; GenericInStream; true; getUint48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 189 | Summary: BloombergLP::bslx; GenericInStream; true; getUint56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 190 | Summary: BloombergLP::bslx; GenericInStream; true; getUint64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 191 | Summary: BloombergLP::bslx; GenericInStream; true; getUint8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 192 | Summary: BloombergLP::bslx; GenericInStream; true; getVersion; ; ; Argument[-1]; ReturnValue[*]; taint; manual | -| 193 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,const string &,const string &); ; Argument[*1..2]; ReturnValue; taint; manual | -| 194 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,const string &,const string &,error_code &); ; Argument[*1..2]; ReturnValue; taint; manual | -| 195 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,const string &,const string &,flags); ; Argument[*1..2]; ReturnValue; taint; manual | -| 196 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,const string &,const string &,flags,error_code &); ; Argument[*1..2]; ReturnValue; taint; manual | -| 197 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,string_view,string_view); ; Argument[1..2]; ReturnValue; taint; manual | -| 198 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,string_view,string_view,error_code &); ; Argument[1..2]; ReturnValue; taint; manual | -| 199 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,string_view,string_view,flags); ; Argument[1..2]; ReturnValue; taint; manual | -| 200 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,string_view,string_view,flags,error_code &); ; Argument[1..2]; ReturnValue; taint; manual | -| 201 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const string &,const string &); ; Argument[*0..1]; ReturnValue; taint; manual | -| 202 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const string &,const string &,error_code &); ; Argument[*0..1]; ReturnValue; taint; manual | -| 203 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const string &,const string &,flags); ; Argument[*0..1]; ReturnValue; taint; manual | -| 204 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const string &,const string &,flags,error_code &); ; Argument[*0..1]; ReturnValue; taint; manual | -| 205 | Summary: boost::asio::ip; basic_resolver; false; resolve; (string_view,string_view); ; Argument[0..1]; ReturnValue; taint; manual | -| 206 | Summary: boost::asio::ip; basic_resolver; false; resolve; (string_view,string_view,error_code &); ; Argument[0..1]; ReturnValue; taint; manual | -| 207 | Summary: boost::asio::ip; basic_resolver; false; resolve; (string_view,string_view,flags); ; Argument[0..1]; ReturnValue; taint; manual | -| 208 | Summary: boost::asio::ip; basic_resolver; false; resolve; (string_view,string_view,flags,error_code &); ; Argument[0..1]; ReturnValue; taint; manual | -| 209 | Summary: boost::asio; ; false; buffer; ; ; Argument[*0]; ReturnValue; taint; manual | -| 210 | Summary: google::protobuf; MessageLite; true; AppendPartialToCord; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 211 | Summary: google::protobuf; MessageLite; true; AppendPartialToString; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 212 | Summary: google::protobuf; MessageLite; true; AppendToCord; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 213 | Summary: google::protobuf; MessageLite; true; AppendToString; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 214 | Summary: google::protobuf; MessageLite; true; MergeFromBoundedZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 215 | Summary: google::protobuf; MessageLite; true; MergeFromCodedStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 216 | Summary: google::protobuf; MessageLite; true; MergeFromCord; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 217 | Summary: google::protobuf; MessageLite; true; MergeFromString; (const Cord &); ; Argument[*0]; Argument[-1]; taint; manual | -| 218 | Summary: google::protobuf; MessageLite; true; MergeFromString; (string_view); ; Argument[0]; Argument[-1]; taint; manual | -| 219 | Summary: google::protobuf; MessageLite; true; MergePartialFromBoundedZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 220 | Summary: google::protobuf; MessageLite; true; MergePartialFromCodedStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 221 | Summary: google::protobuf; MessageLite; true; MergePartialFromCord; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 222 | Summary: google::protobuf; MessageLite; true; MergePartialFromString; (const Cord &); ; Argument[*0]; Argument[-1]; taint; manual | -| 223 | Summary: google::protobuf; MessageLite; true; MergePartialFromString; (string_view); ; Argument[0]; Argument[-1]; taint; manual | -| 224 | Summary: google::protobuf; MessageLite; true; ParseFromArray; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 225 | Summary: google::protobuf; MessageLite; true; ParseFromBoundedZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 226 | Summary: google::protobuf; MessageLite; true; ParseFromCodedStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 227 | Summary: google::protobuf; MessageLite; true; ParseFromCord; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 228 | Summary: google::protobuf; MessageLite; true; ParseFromIstream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 229 | Summary: google::protobuf; MessageLite; true; ParseFromString; (const Cord &); ; Argument[*0]; Argument[-1]; taint; manual | -| 230 | Summary: google::protobuf; MessageLite; true; ParseFromString; (string_view); ; Argument[0]; Argument[-1]; taint; manual | -| 231 | Summary: google::protobuf; MessageLite; true; ParseFromZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 232 | Summary: google::protobuf; MessageLite; true; ParsePartialFromArray; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 233 | Summary: google::protobuf; MessageLite; true; ParsePartialFromBoundedZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 234 | Summary: google::protobuf; MessageLite; true; ParsePartialFromCodedStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 235 | Summary: google::protobuf; MessageLite; true; ParsePartialFromCord; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 236 | Summary: google::protobuf; MessageLite; true; ParsePartialFromIstream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 237 | Summary: google::protobuf; MessageLite; true; ParsePartialFromString; (const Cord &); ; Argument[*0]; Argument[-1]; taint; manual | -| 238 | Summary: google::protobuf; MessageLite; true; ParsePartialFromString; (string_view); ; Argument[0]; Argument[-1]; taint; manual | -| 239 | Summary: google::protobuf; MessageLite; true; ParsePartialFromZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | -| 240 | Summary: google::protobuf; MessageLite; true; SerializeAsCord; ; ; Argument[-1]; ReturnValue; taint; manual | -| 241 | Summary: google::protobuf; MessageLite; true; SerializeAsString; ; ; Argument[-1]; ReturnValue; taint; manual | -| 242 | Summary: google::protobuf; MessageLite; true; SerializePartialAsCord; ; ; Argument[-1]; ReturnValue; taint; manual | -| 243 | Summary: google::protobuf; MessageLite; true; SerializePartialAsString; ; ; Argument[-1]; ReturnValue; taint; manual | -| 244 | Summary: google::protobuf; MessageLite; true; SerializePartialToArray; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 245 | Summary: google::protobuf; MessageLite; true; SerializePartialToCodedStream; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 246 | Summary: google::protobuf; MessageLite; true; SerializePartialToCord; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 247 | Summary: google::protobuf; MessageLite; true; SerializePartialToOstream; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 248 | Summary: google::protobuf; MessageLite; true; SerializePartialToString; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 249 | Summary: google::protobuf; MessageLite; true; SerializePartialToZeroCopyStream; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 250 | Summary: google::protobuf; MessageLite; true; SerializeToArray; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 251 | Summary: google::protobuf; MessageLite; true; SerializeToCodedStream; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 252 | Summary: google::protobuf; MessageLite; true; SerializeToCord; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 253 | Summary: google::protobuf; MessageLite; true; SerializeToOstream; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 254 | Summary: google::protobuf; MessageLite; true; SerializeToString; ; ; Argument[-1]; Argument[*0]; taint; manual | -| 255 | Summary: google::protobuf; MessageLite; true; SerializeToZeroCopyStream; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 99 | Summary: BloombergLP::balber; BerDecoder; true; decode; ; ; Argument[*0]; Argument[*1]; taint; manual | +| 100 | Summary: BloombergLP::balber; BerDecoder; true; decodeAny; ; ; Argument[*0]; Argument[*1]; taint; manual | +| 101 | Summary: BloombergLP::balber; BerEncoder; true; encode; ; ; Argument[*1]; Argument[*0]; taint; manual | +| 102 | Summary: BloombergLP::balber; BerEncoder; true; encodeAny; ; ; Argument[*1]; Argument[*0]; taint; manual | +| 103 | Summary: BloombergLP::baljsn; Decoder; true; decode; ; ; Argument[*0]; Argument[*1]; taint; manual | +| 104 | Summary: BloombergLP::baljsn; Decoder; true; decodeAny; ; ; Argument[*0]; Argument[*1]; taint; manual | +| 105 | Summary: BloombergLP::baljsn; Encoder; true; encode; ; ; Argument[*1]; Argument[*0]; taint; manual | +| 106 | Summary: BloombergLP::baljsn; Encoder; true; encodeAny; ; ; Argument[*1]; Argument[*0]; taint; manual | +| 107 | Summary: BloombergLP::balxml; Decoder; true; decode; (const char *,size_t,TYPE *,const char *); ; Argument[*0]; Argument[*2]; taint; manual | +| 108 | Summary: BloombergLP::balxml; Decoder; true; decode; (istream &,TYPE *,const char *); ; Argument[*0]; Argument[*1]; taint; manual | +| 109 | Summary: BloombergLP::balxml; Decoder; true; decode; (istream &,TYPE *,const char *); ; Argument[*0]; ReturnValue[*]; taint; manual | +| 110 | Summary: BloombergLP::balxml; Decoder; true; decode; (streambuf *,TYPE *,const char *); ; Argument[*0]; Argument[*1]; taint; manual | +| 111 | Summary: BloombergLP::balxml; Decoder; true; decodeAny; (istream &,AnyRef *,const char *); ; Argument[*0]; Argument[*1]; taint; manual | +| 112 | Summary: BloombergLP::balxml; Decoder; true; decodeAny; (istream &,AnyRef *,const char *); ; Argument[*0]; ReturnValue[*]; taint; manual | +| 113 | Summary: BloombergLP::balxml; Decoder; true; decodeAny; (streambuf *,AnyRef *,const char *); ; Argument[*0]; Argument[*1]; taint; manual | +| 114 | Summary: BloombergLP::balxml; Decoder; true; decodeAny; (istream &,TYPE *,const char *); ; Argument[*0]; Argument[*1]; taint; manual | +| 115 | Summary: BloombergLP::balxml; Decoder; true; decodeAny; (istream &,TYPE *,const char *); ; Argument[*0]; ReturnValue[*]; taint; manual | +| 116 | Summary: BloombergLP::balxml; Decoder; true; decodeAny; (streambuf *,TYPE *,const char *); ; Argument[*0]; Argument[*1]; taint; manual | +| 117 | Summary: BloombergLP::balxml; Encoder; true; encode; (ostream &,const TYPE &); ; Argument[*0..1]; ReturnValue[*]; taint; manual | +| 118 | Summary: BloombergLP::balxml; Encoder; true; encode; (ostream &,const TYPE &); ; Argument[*1]; Argument[*0]; taint; manual | +| 119 | Summary: BloombergLP::balxml; Encoder; true; encode; (streambuf *,const TYPE &); ; Argument[*1]; Argument[*0]; taint; manual | +| 120 | Summary: BloombergLP::balxml; Encoder; true; encodeAny; (ostream &,const AnyConstRef &); ; Argument[*0..1]; ReturnValue[*]; taint; manual | +| 121 | Summary: BloombergLP::balxml; Encoder; true; encodeAny; (ostream &,const AnyConstRef &); ; Argument[*1]; Argument[*0]; taint; manual | +| 122 | Summary: BloombergLP::balxml; Encoder; true; encodeAny; (streambuf *,const AnyConstRef &); ; Argument[*1]; Argument[*0]; taint; manual | +| 123 | Summary: BloombergLP::balxml; Encoder; true; encodeAny; (ostream &,const TYPE &); ; Argument[*0..1]; ReturnValue[*]; taint; manual | +| 124 | Summary: BloombergLP::balxml; Encoder; true; encodeAny; (ostream &,const TYPE &); ; Argument[*1]; Argument[*0]; taint; manual | +| 125 | Summary: BloombergLP::balxml; Encoder; true; encodeAny; (streambuf *,const TYPE &); ; Argument[*1]; Argument[*0]; taint; manual | +| 126 | Summary: BloombergLP::balxml; Encoder; true; encodeAnyToStream; ; ; Argument[*1]; Argument[*0]; taint; manual | +| 127 | Summary: BloombergLP::balxml; Encoder; true; encodeToStream; ; ; Argument[*1]; Argument[*0]; taint; manual | +| 128 | Summary: BloombergLP::bdlbb; Blob; true; buffer; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 129 | Summary: BloombergLP::bdlbb; BlobBuffer; true; buffer; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 130 | Summary: BloombergLP::bdlbb; BlobBuffer; true; data; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 131 | Summary: BloombergLP::bdlbb; BlobUtil; true; copy; (Blob *,int,const Blob &,int,int); ; Argument[*2]; Argument[*0]; taint; manual | +| 132 | Summary: BloombergLP::bdlbb; BlobUtil; true; copy; (Blob *,int,const char *,int); ; Argument[*2]; Argument[*0]; taint; manual | +| 133 | Summary: BloombergLP::bdlbb; BlobUtil; true; copy; (char *,const Blob &,int,int); ; Argument[*1]; Argument[*0]; taint; manual | +| 134 | Summary: BloombergLP::bdlbb; BlobUtil; true; getContiguousRangeOrCopy; ; ; Argument[*1]; ReturnValue[*]; taint; manual | +| 135 | Summary: BloombergLP::bslx::InStreamFunctions; ; false; bdexStreamIn; ; ; Argument[*0]; Argument[*1]; taint; manual | +| 136 | Summary: BloombergLP::bslx::InStreamFunctions; ; false; bdexStreamIn; ; ; Argument[*0]; ReturnValue[*]; taint; manual | +| 137 | Summary: BloombergLP::bslx; ByteInStream; true; ByteInStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 138 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayFloat32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 139 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayFloat64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 140 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 141 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 142 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 143 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 144 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 145 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 146 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 147 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt8; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 148 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayInt8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 149 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 150 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 151 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 152 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 153 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 154 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 155 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 156 | Summary: BloombergLP::bslx; ByteInStream; true; getArrayUint8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 157 | Summary: BloombergLP::bslx; ByteInStream; true; getFloat32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 158 | Summary: BloombergLP::bslx; ByteInStream; true; getFloat64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 159 | Summary: BloombergLP::bslx; ByteInStream; true; getInt16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 160 | Summary: BloombergLP::bslx; ByteInStream; true; getInt24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 161 | Summary: BloombergLP::bslx; ByteInStream; true; getInt32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 162 | Summary: BloombergLP::bslx; ByteInStream; true; getInt40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 163 | Summary: BloombergLP::bslx; ByteInStream; true; getInt48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 164 | Summary: BloombergLP::bslx; ByteInStream; true; getInt56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 165 | Summary: BloombergLP::bslx; ByteInStream; true; getInt64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 166 | Summary: BloombergLP::bslx; ByteInStream; true; getInt8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 167 | Summary: BloombergLP::bslx; ByteInStream; true; getLength; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 168 | Summary: BloombergLP::bslx; ByteInStream; true; getString; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 169 | Summary: BloombergLP::bslx; ByteInStream; true; getString; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 170 | Summary: BloombergLP::bslx; ByteInStream; true; getUint16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 171 | Summary: BloombergLP::bslx; ByteInStream; true; getUint24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 172 | Summary: BloombergLP::bslx; ByteInStream; true; getUint32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 173 | Summary: BloombergLP::bslx; ByteInStream; true; getUint40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 174 | Summary: BloombergLP::bslx; ByteInStream; true; getUint48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 175 | Summary: BloombergLP::bslx; ByteInStream; true; getUint56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 176 | Summary: BloombergLP::bslx; ByteInStream; true; getUint64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 177 | Summary: BloombergLP::bslx; ByteInStream; true; getUint8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 178 | Summary: BloombergLP::bslx; ByteInStream; true; getVersion; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 179 | Summary: BloombergLP::bslx; ByteInStream; true; reset; (const StringRef &); ; Argument[*0]; Argument[-1]; taint; manual | +| 180 | Summary: BloombergLP::bslx; ByteInStream; true; reset; (const char *,size_t); ; Argument[*0]; Argument[-1]; taint; manual | +| 181 | Summary: BloombergLP::bslx; GenericInStream; true; GenericInStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 182 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayFloat32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 183 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayFloat64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 184 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 185 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 186 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 187 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 188 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 189 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 190 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 191 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayInt8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 192 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 193 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 194 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 195 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 196 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 197 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 198 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 199 | Summary: BloombergLP::bslx; GenericInStream; true; getArrayUint8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 200 | Summary: BloombergLP::bslx; GenericInStream; true; getFloat32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 201 | Summary: BloombergLP::bslx; GenericInStream; true; getFloat64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 202 | Summary: BloombergLP::bslx; GenericInStream; true; getInt16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 203 | Summary: BloombergLP::bslx; GenericInStream; true; getInt24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 204 | Summary: BloombergLP::bslx; GenericInStream; true; getInt32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 205 | Summary: BloombergLP::bslx; GenericInStream; true; getInt40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 206 | Summary: BloombergLP::bslx; GenericInStream; true; getInt48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 207 | Summary: BloombergLP::bslx; GenericInStream; true; getInt56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 208 | Summary: BloombergLP::bslx; GenericInStream; true; getInt64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 209 | Summary: BloombergLP::bslx; GenericInStream; true; getInt8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 210 | Summary: BloombergLP::bslx; GenericInStream; true; getLength; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 211 | Summary: BloombergLP::bslx; GenericInStream; true; getString; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 212 | Summary: BloombergLP::bslx; GenericInStream; true; getString; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 213 | Summary: BloombergLP::bslx; GenericInStream; true; getUint16; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 214 | Summary: BloombergLP::bslx; GenericInStream; true; getUint24; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 215 | Summary: BloombergLP::bslx; GenericInStream; true; getUint32; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 216 | Summary: BloombergLP::bslx; GenericInStream; true; getUint40; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 217 | Summary: BloombergLP::bslx; GenericInStream; true; getUint48; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 218 | Summary: BloombergLP::bslx; GenericInStream; true; getUint56; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 219 | Summary: BloombergLP::bslx; GenericInStream; true; getUint64; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 220 | Summary: BloombergLP::bslx; GenericInStream; true; getUint8; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 221 | Summary: BloombergLP::bslx; GenericInStream; true; getVersion; ; ; Argument[-1]; ReturnValue[*]; taint; manual | +| 222 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,const string &,const string &); ; Argument[*1..2]; ReturnValue; taint; manual | +| 223 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,const string &,const string &,error_code &); ; Argument[*1..2]; ReturnValue; taint; manual | +| 224 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,const string &,const string &,flags); ; Argument[*1..2]; ReturnValue; taint; manual | +| 225 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,const string &,const string &,flags,error_code &); ; Argument[*1..2]; ReturnValue; taint; manual | +| 226 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,string_view,string_view); ; Argument[1..2]; ReturnValue; taint; manual | +| 227 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,string_view,string_view,error_code &); ; Argument[1..2]; ReturnValue; taint; manual | +| 228 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,string_view,string_view,flags); ; Argument[1..2]; ReturnValue; taint; manual | +| 229 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const InternetProtocol &,string_view,string_view,flags,error_code &); ; Argument[1..2]; ReturnValue; taint; manual | +| 230 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const string &,const string &); ; Argument[*0..1]; ReturnValue; taint; manual | +| 231 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const string &,const string &,error_code &); ; Argument[*0..1]; ReturnValue; taint; manual | +| 232 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const string &,const string &,flags); ; Argument[*0..1]; ReturnValue; taint; manual | +| 233 | Summary: boost::asio::ip; basic_resolver; false; resolve; (const string &,const string &,flags,error_code &); ; Argument[*0..1]; ReturnValue; taint; manual | +| 234 | Summary: boost::asio::ip; basic_resolver; false; resolve; (string_view,string_view); ; Argument[0..1]; ReturnValue; taint; manual | +| 235 | Summary: boost::asio::ip; basic_resolver; false; resolve; (string_view,string_view,error_code &); ; Argument[0..1]; ReturnValue; taint; manual | +| 236 | Summary: boost::asio::ip; basic_resolver; false; resolve; (string_view,string_view,flags); ; Argument[0..1]; ReturnValue; taint; manual | +| 237 | Summary: boost::asio::ip; basic_resolver; false; resolve; (string_view,string_view,flags,error_code &); ; Argument[0..1]; ReturnValue; taint; manual | +| 238 | Summary: boost::asio; ; false; buffer; ; ; Argument[*0]; ReturnValue; taint; manual | +| 239 | Summary: google::protobuf; MessageLite; true; AppendPartialToCord; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 240 | Summary: google::protobuf; MessageLite; true; AppendPartialToString; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 241 | Summary: google::protobuf; MessageLite; true; AppendToCord; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 242 | Summary: google::protobuf; MessageLite; true; AppendToString; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 243 | Summary: google::protobuf; MessageLite; true; MergeFromBoundedZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 244 | Summary: google::protobuf; MessageLite; true; MergeFromCodedStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 245 | Summary: google::protobuf; MessageLite; true; MergeFromCord; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 246 | Summary: google::protobuf; MessageLite; true; MergeFromString; (const Cord &); ; Argument[*0]; Argument[-1]; taint; manual | +| 247 | Summary: google::protobuf; MessageLite; true; MergeFromString; (string_view); ; Argument[0]; Argument[-1]; taint; manual | +| 248 | Summary: google::protobuf; MessageLite; true; MergePartialFromBoundedZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 249 | Summary: google::protobuf; MessageLite; true; MergePartialFromCodedStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 250 | Summary: google::protobuf; MessageLite; true; MergePartialFromCord; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 251 | Summary: google::protobuf; MessageLite; true; MergePartialFromString; (const Cord &); ; Argument[*0]; Argument[-1]; taint; manual | +| 252 | Summary: google::protobuf; MessageLite; true; MergePartialFromString; (string_view); ; Argument[0]; Argument[-1]; taint; manual | +| 253 | Summary: google::protobuf; MessageLite; true; ParseFromArray; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 254 | Summary: google::protobuf; MessageLite; true; ParseFromBoundedZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 255 | Summary: google::protobuf; MessageLite; true; ParseFromCodedStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 256 | Summary: google::protobuf; MessageLite; true; ParseFromCord; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 257 | Summary: google::protobuf; MessageLite; true; ParseFromIstream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 258 | Summary: google::protobuf; MessageLite; true; ParseFromString; (const Cord &); ; Argument[*0]; Argument[-1]; taint; manual | +| 259 | Summary: google::protobuf; MessageLite; true; ParseFromString; (string_view); ; Argument[0]; Argument[-1]; taint; manual | +| 260 | Summary: google::protobuf; MessageLite; true; ParseFromZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 261 | Summary: google::protobuf; MessageLite; true; ParsePartialFromArray; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 262 | Summary: google::protobuf; MessageLite; true; ParsePartialFromBoundedZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 263 | Summary: google::protobuf; MessageLite; true; ParsePartialFromCodedStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 264 | Summary: google::protobuf; MessageLite; true; ParsePartialFromCord; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 265 | Summary: google::protobuf; MessageLite; true; ParsePartialFromIstream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 266 | Summary: google::protobuf; MessageLite; true; ParsePartialFromString; (const Cord &); ; Argument[*0]; Argument[-1]; taint; manual | +| 267 | Summary: google::protobuf; MessageLite; true; ParsePartialFromString; (string_view); ; Argument[0]; Argument[-1]; taint; manual | +| 268 | Summary: google::protobuf; MessageLite; true; ParsePartialFromZeroCopyStream; ; ; Argument[*0]; Argument[-1]; taint; manual | +| 269 | Summary: google::protobuf; MessageLite; true; SerializeAsCord; ; ; Argument[-1]; ReturnValue; taint; manual | +| 270 | Summary: google::protobuf; MessageLite; true; SerializeAsString; ; ; Argument[-1]; ReturnValue; taint; manual | +| 271 | Summary: google::protobuf; MessageLite; true; SerializePartialAsCord; ; ; Argument[-1]; ReturnValue; taint; manual | +| 272 | Summary: google::protobuf; MessageLite; true; SerializePartialAsString; ; ; Argument[-1]; ReturnValue; taint; manual | +| 273 | Summary: google::protobuf; MessageLite; true; SerializePartialToArray; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 274 | Summary: google::protobuf; MessageLite; true; SerializePartialToCodedStream; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 275 | Summary: google::protobuf; MessageLite; true; SerializePartialToCord; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 276 | Summary: google::protobuf; MessageLite; true; SerializePartialToOstream; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 277 | Summary: google::protobuf; MessageLite; true; SerializePartialToString; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 278 | Summary: google::protobuf; MessageLite; true; SerializePartialToZeroCopyStream; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 279 | Summary: google::protobuf; MessageLite; true; SerializeToArray; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 280 | Summary: google::protobuf; MessageLite; true; SerializeToCodedStream; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 281 | Summary: google::protobuf; MessageLite; true; SerializeToCord; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 282 | Summary: google::protobuf; MessageLite; true; SerializeToOstream; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 283 | Summary: google::protobuf; MessageLite; true; SerializeToString; ; ; Argument[-1]; Argument[*0]; taint; manual | +| 284 | Summary: google::protobuf; MessageLite; true; SerializeToZeroCopyStream; ; ; Argument[-1]; Argument[*0]; taint; manual | edges | asio_streams.cpp:116:34:116:44 | read_until output argument | asio_streams.cpp:120:7:120:17 | recv_buffer | provenance | Src:MaD:56 | | asio_streams.cpp:116:34:116:44 | read_until output argument | asio_streams.cpp:122:29:122:39 | recv_buffer | provenance | Src:MaD:56 Sink:MaD:4 | @@ -262,7 +291,7 @@ edges | asio_streams.cpp:129:44:129:62 | call to buffer | asio_streams.cpp:129:44:129:62 | call to buffer | provenance | | | asio_streams.cpp:129:44:129:62 | call to buffer | asio_streams.cpp:130:7:130:17 | send_buffer | provenance | | | asio_streams.cpp:129:44:129:62 | call to buffer | asio_streams.cpp:132:29:132:39 | send_buffer | provenance | Sink:MaD:4 | -| asio_streams.cpp:129:64:129:71 | *send_str | asio_streams.cpp:129:44:129:62 | call to buffer | provenance | MaD:209 | +| asio_streams.cpp:129:64:129:71 | *send_str | asio_streams.cpp:129:44:129:62 | call to buffer | provenance | MaD:238 | | asio_streams.cpp:143:19:143:26 | call to source | asio_streams.cpp:148:24:148:27 | *host | provenance | TaintFunction | | asio_streams.cpp:143:19:143:26 | call to source | asio_streams.cpp:149:24:149:27 | *host | provenance | TaintFunction | | asio_streams.cpp:143:19:143:26 | call to source | asio_streams.cpp:150:24:150:27 | *host | provenance | TaintFunction | @@ -279,22 +308,22 @@ edges | asio_streams.cpp:145:29:145:36 | call to source | asio_streams.cpp:164:34:164:42 | host_view | provenance | TaintFunction | | asio_streams.cpp:145:29:145:36 | call to source | asio_streams.cpp:165:34:165:42 | host_view | provenance | TaintFunction | | asio_streams.cpp:145:29:145:36 | call to source | asio_streams.cpp:166:34:166:42 | host_view | provenance | TaintFunction | -| asio_streams.cpp:148:24:148:27 | *host | asio_streams.cpp:148:16:148:22 | call to resolve | provenance | MaD:201 | -| asio_streams.cpp:149:24:149:27 | *host | asio_streams.cpp:149:16:149:22 | call to resolve | provenance | MaD:202 | -| asio_streams.cpp:150:24:150:27 | *host | asio_streams.cpp:150:16:150:22 | call to resolve | provenance | MaD:203 | -| asio_streams.cpp:151:24:151:27 | *host | asio_streams.cpp:151:16:151:22 | call to resolve | provenance | MaD:204 | -| asio_streams.cpp:153:24:153:32 | host_view | asio_streams.cpp:153:16:153:22 | call to resolve | provenance | MaD:205 | -| asio_streams.cpp:154:24:154:32 | host_view | asio_streams.cpp:154:16:154:22 | call to resolve | provenance | MaD:206 | -| asio_streams.cpp:155:24:155:32 | host_view | asio_streams.cpp:155:16:155:22 | call to resolve | provenance | MaD:207 | -| asio_streams.cpp:156:24:156:32 | host_view | asio_streams.cpp:156:16:156:22 | call to resolve | provenance | MaD:208 | -| asio_streams.cpp:158:34:158:37 | *host | asio_streams.cpp:158:16:158:22 | call to resolve | provenance | MaD:193 | -| asio_streams.cpp:159:34:159:37 | *host | asio_streams.cpp:159:16:159:22 | call to resolve | provenance | MaD:194 | -| asio_streams.cpp:160:34:160:37 | *host | asio_streams.cpp:160:16:160:22 | call to resolve | provenance | MaD:195 | -| asio_streams.cpp:161:34:161:37 | *host | asio_streams.cpp:161:16:161:22 | call to resolve | provenance | MaD:196 | -| asio_streams.cpp:163:34:163:42 | host_view | asio_streams.cpp:163:16:163:22 | call to resolve | provenance | MaD:197 | -| asio_streams.cpp:164:34:164:42 | host_view | asio_streams.cpp:164:16:164:22 | call to resolve | provenance | MaD:198 | -| asio_streams.cpp:165:34:165:42 | host_view | asio_streams.cpp:165:16:165:22 | call to resolve | provenance | MaD:199 | -| asio_streams.cpp:166:34:166:42 | host_view | asio_streams.cpp:166:16:166:22 | call to resolve | provenance | MaD:200 | +| asio_streams.cpp:148:24:148:27 | *host | asio_streams.cpp:148:16:148:22 | call to resolve | provenance | MaD:230 | +| asio_streams.cpp:149:24:149:27 | *host | asio_streams.cpp:149:16:149:22 | call to resolve | provenance | MaD:231 | +| asio_streams.cpp:150:24:150:27 | *host | asio_streams.cpp:150:16:150:22 | call to resolve | provenance | MaD:232 | +| asio_streams.cpp:151:24:151:27 | *host | asio_streams.cpp:151:16:151:22 | call to resolve | provenance | MaD:233 | +| asio_streams.cpp:153:24:153:32 | host_view | asio_streams.cpp:153:16:153:22 | call to resolve | provenance | MaD:234 | +| asio_streams.cpp:154:24:154:32 | host_view | asio_streams.cpp:154:16:154:22 | call to resolve | provenance | MaD:235 | +| asio_streams.cpp:155:24:155:32 | host_view | asio_streams.cpp:155:16:155:22 | call to resolve | provenance | MaD:236 | +| asio_streams.cpp:156:24:156:32 | host_view | asio_streams.cpp:156:16:156:22 | call to resolve | provenance | MaD:237 | +| asio_streams.cpp:158:34:158:37 | *host | asio_streams.cpp:158:16:158:22 | call to resolve | provenance | MaD:222 | +| asio_streams.cpp:159:34:159:37 | *host | asio_streams.cpp:159:16:159:22 | call to resolve | provenance | MaD:223 | +| asio_streams.cpp:160:34:160:37 | *host | asio_streams.cpp:160:16:160:22 | call to resolve | provenance | MaD:224 | +| asio_streams.cpp:161:34:161:37 | *host | asio_streams.cpp:161:16:161:22 | call to resolve | provenance | MaD:225 | +| asio_streams.cpp:163:34:163:42 | host_view | asio_streams.cpp:163:16:163:22 | call to resolve | provenance | MaD:226 | +| asio_streams.cpp:164:34:164:42 | host_view | asio_streams.cpp:164:16:164:22 | call to resolve | provenance | MaD:227 | +| asio_streams.cpp:165:34:165:42 | host_view | asio_streams.cpp:165:16:165:22 | call to resolve | provenance | MaD:228 | +| asio_streams.cpp:166:34:166:42 | host_view | asio_streams.cpp:166:16:166:22 | call to resolve | provenance | MaD:229 | | asio_streams.cpp:175:22:175:29 | call to source | asio_streams.cpp:179:30:179:36 | *service | provenance | TaintFunction | | asio_streams.cpp:175:22:175:29 | call to source | asio_streams.cpp:180:30:180:36 | *service | provenance | TaintFunction | | asio_streams.cpp:175:22:175:29 | call to source | asio_streams.cpp:181:30:181:36 | *service | provenance | TaintFunction | @@ -311,22 +340,22 @@ edges | asio_streams.cpp:177:32:177:39 | call to source | asio_streams.cpp:195:45:195:56 | service_view | provenance | TaintFunction | | asio_streams.cpp:177:32:177:39 | call to source | asio_streams.cpp:196:45:196:56 | service_view | provenance | TaintFunction | | asio_streams.cpp:177:32:177:39 | call to source | asio_streams.cpp:197:45:197:56 | service_view | provenance | TaintFunction | -| asio_streams.cpp:179:30:179:36 | *service | asio_streams.cpp:179:16:179:22 | call to resolve | provenance | MaD:201 | -| asio_streams.cpp:180:30:180:36 | *service | asio_streams.cpp:180:16:180:22 | call to resolve | provenance | MaD:202 | -| asio_streams.cpp:181:30:181:36 | *service | asio_streams.cpp:181:16:181:22 | call to resolve | provenance | MaD:203 | -| asio_streams.cpp:182:30:182:36 | *service | asio_streams.cpp:182:16:182:22 | call to resolve | provenance | MaD:204 | -| asio_streams.cpp:184:35:184:46 | service_view | asio_streams.cpp:184:16:184:22 | call to resolve | provenance | MaD:205 | -| asio_streams.cpp:185:35:185:46 | service_view | asio_streams.cpp:185:16:185:22 | call to resolve | provenance | MaD:206 | -| asio_streams.cpp:186:35:186:46 | service_view | asio_streams.cpp:186:16:186:22 | call to resolve | provenance | MaD:207 | -| asio_streams.cpp:187:35:187:46 | service_view | asio_streams.cpp:187:16:187:22 | call to resolve | provenance | MaD:208 | -| asio_streams.cpp:189:40:189:46 | *service | asio_streams.cpp:189:16:189:22 | call to resolve | provenance | MaD:193 | -| asio_streams.cpp:190:40:190:46 | *service | asio_streams.cpp:190:16:190:22 | call to resolve | provenance | MaD:194 | -| asio_streams.cpp:191:40:191:46 | *service | asio_streams.cpp:191:16:191:22 | call to resolve | provenance | MaD:195 | -| asio_streams.cpp:192:40:192:46 | *service | asio_streams.cpp:192:16:192:22 | call to resolve | provenance | MaD:196 | -| asio_streams.cpp:194:45:194:56 | service_view | asio_streams.cpp:194:16:194:22 | call to resolve | provenance | MaD:197 | -| asio_streams.cpp:195:45:195:56 | service_view | asio_streams.cpp:195:16:195:22 | call to resolve | provenance | MaD:198 | -| asio_streams.cpp:196:45:196:56 | service_view | asio_streams.cpp:196:16:196:22 | call to resolve | provenance | MaD:199 | -| asio_streams.cpp:197:45:197:56 | service_view | asio_streams.cpp:197:16:197:22 | call to resolve | provenance | MaD:200 | +| asio_streams.cpp:179:30:179:36 | *service | asio_streams.cpp:179:16:179:22 | call to resolve | provenance | MaD:230 | +| asio_streams.cpp:180:30:180:36 | *service | asio_streams.cpp:180:16:180:22 | call to resolve | provenance | MaD:231 | +| asio_streams.cpp:181:30:181:36 | *service | asio_streams.cpp:181:16:181:22 | call to resolve | provenance | MaD:232 | +| asio_streams.cpp:182:30:182:36 | *service | asio_streams.cpp:182:16:182:22 | call to resolve | provenance | MaD:233 | +| asio_streams.cpp:184:35:184:46 | service_view | asio_streams.cpp:184:16:184:22 | call to resolve | provenance | MaD:234 | +| asio_streams.cpp:185:35:185:46 | service_view | asio_streams.cpp:185:16:185:22 | call to resolve | provenance | MaD:235 | +| asio_streams.cpp:186:35:186:46 | service_view | asio_streams.cpp:186:16:186:22 | call to resolve | provenance | MaD:236 | +| asio_streams.cpp:187:35:187:46 | service_view | asio_streams.cpp:187:16:187:22 | call to resolve | provenance | MaD:237 | +| asio_streams.cpp:189:40:189:46 | *service | asio_streams.cpp:189:16:189:22 | call to resolve | provenance | MaD:222 | +| asio_streams.cpp:190:40:190:46 | *service | asio_streams.cpp:190:16:190:22 | call to resolve | provenance | MaD:223 | +| asio_streams.cpp:191:40:191:46 | *service | asio_streams.cpp:191:16:191:22 | call to resolve | provenance | MaD:224 | +| asio_streams.cpp:192:40:192:46 | *service | asio_streams.cpp:192:16:192:22 | call to resolve | provenance | MaD:225 | +| asio_streams.cpp:194:45:194:56 | service_view | asio_streams.cpp:194:16:194:22 | call to resolve | provenance | MaD:226 | +| asio_streams.cpp:195:45:195:56 | service_view | asio_streams.cpp:195:16:195:22 | call to resolve | provenance | MaD:227 | +| asio_streams.cpp:196:45:196:56 | service_view | asio_streams.cpp:196:16:196:22 | call to resolve | provenance | MaD:228 | +| asio_streams.cpp:197:45:197:56 | service_view | asio_streams.cpp:197:16:197:22 | call to resolve | provenance | MaD:229 | | azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:257:5:257:8 | *resp | provenance | | | azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:262:5:262:8 | *resp | provenance | | | azure.cpp:253:48:253:60 | *call to GetBodyStream | azure.cpp:266:38:266:41 | *resp | provenance | | @@ -366,394 +395,534 @@ edges | azure.cpp:294:38:294:53 | call to operator[] | azure.cpp:295:10:295:20 | contentType | provenance | | | azure.cpp:294:38:294:53 | call to operator[] | azure.cpp:295:10:295:20 | contentType | provenance | | | azure.cpp:295:10:295:20 | contentType | azure.cpp:295:10:295:20 | contentType | provenance | | +| bal.cpp:145:19:145:26 | call to source | bal.cpp:146:23:146:51 | *call to data | provenance | TaintFunction | +| bal.cpp:146:23:146:51 | *call to data | bal.cpp:149:17:149:18 | *sb | provenance | | +| bal.cpp:149:17:149:18 | *sb | bal.cpp:149:21:149:24 | decode output argument | provenance | MaD:99 | +| bal.cpp:149:21:149:24 | decode output argument | bal.cpp:150:7:150:17 | * ... | provenance | TaintFunction | +| bal.cpp:154:19:154:26 | call to source | bal.cpp:155:21:155:47 | *call to data | provenance | TaintFunction | +| bal.cpp:155:21:155:47 | *call to data | bal.cpp:158:17:158:19 | ** ... | provenance | | +| bal.cpp:158:17:158:19 | ** ... | bal.cpp:158:22:158:25 | decode output argument | provenance | MaD:99 | +| bal.cpp:158:22:158:25 | decode output argument | bal.cpp:159:7:159:17 | * ... | provenance | TaintFunction | +| bal.cpp:163:19:163:26 | call to source | bal.cpp:164:23:164:51 | *call to data | provenance | TaintFunction | +| bal.cpp:164:23:164:51 | *call to data | bal.cpp:167:20:167:21 | *sb | provenance | | +| bal.cpp:167:20:167:21 | *sb | bal.cpp:167:24:167:27 | decodeAny output argument | provenance | MaD:100 | +| bal.cpp:167:24:167:27 | decodeAny output argument | bal.cpp:168:7:168:17 | * ... | provenance | TaintFunction | +| bal.cpp:173:18:173:25 | call to source | bal.cpp:176:40:176:42 | *obj | provenance | TaintFunction | +| bal.cpp:176:17:176:37 | encode output argument | bal.cpp:177:7:177:12 | access to array | provenance | | +| bal.cpp:176:40:176:42 | *obj | bal.cpp:176:17:176:37 | encode output argument | provenance | MaD:101 | +| bal.cpp:181:18:181:25 | call to source | bal.cpp:184:43:184:45 | *obj | provenance | TaintFunction | +| bal.cpp:184:20:184:40 | encodeAny output argument | bal.cpp:185:7:185:12 | access to array | provenance | | +| bal.cpp:184:43:184:45 | *obj | bal.cpp:184:20:184:40 | encodeAny output argument | provenance | MaD:102 | +| bal.cpp:192:19:192:26 | call to source | bal.cpp:193:23:193:51 | *call to data | provenance | TaintFunction | +| bal.cpp:193:23:193:51 | *call to data | bal.cpp:197:17:197:18 | *sb | provenance | | +| bal.cpp:197:17:197:18 | *sb | bal.cpp:197:21:197:24 | decode output argument | provenance | MaD:103 | +| bal.cpp:197:21:197:24 | decode output argument | bal.cpp:198:7:198:17 | * ... | provenance | TaintFunction | +| bal.cpp:202:19:202:26 | call to source | bal.cpp:203:21:203:47 | *call to data | provenance | TaintFunction | +| bal.cpp:203:21:203:47 | *call to data | bal.cpp:207:17:207:19 | ** ... | provenance | | +| bal.cpp:207:17:207:19 | ** ... | bal.cpp:207:22:207:25 | decode output argument | provenance | MaD:103 | +| bal.cpp:207:22:207:25 | decode output argument | bal.cpp:208:7:208:17 | * ... | provenance | TaintFunction | +| bal.cpp:212:19:212:26 | call to source | bal.cpp:213:23:213:51 | *call to data | provenance | TaintFunction | +| bal.cpp:213:23:213:51 | *call to data | bal.cpp:216:20:216:21 | *sb | provenance | | +| bal.cpp:216:20:216:21 | *sb | bal.cpp:216:24:216:27 | decodeAny output argument | provenance | MaD:104 | +| bal.cpp:216:24:216:27 | decodeAny output argument | bal.cpp:217:7:217:17 | * ... | provenance | TaintFunction | +| bal.cpp:221:18:221:25 | call to source | bal.cpp:225:40:225:42 | *obj | provenance | TaintFunction | +| bal.cpp:225:17:225:37 | encode output argument | bal.cpp:226:7:226:12 | access to array | provenance | | +| bal.cpp:225:40:225:42 | *obj | bal.cpp:225:17:225:37 | encode output argument | provenance | MaD:105 | +| bal.cpp:230:18:230:25 | call to source | bal.cpp:233:43:233:45 | *obj | provenance | TaintFunction | +| bal.cpp:233:20:233:40 | encodeAny output argument | bal.cpp:234:7:234:12 | access to array | provenance | | +| bal.cpp:233:43:233:45 | *obj | bal.cpp:233:20:233:40 | encodeAny output argument | provenance | MaD:106 | +| bal.cpp:239:19:239:26 | call to source | bal.cpp:240:23:240:51 | *call to data | provenance | TaintFunction | +| bal.cpp:240:23:240:51 | *call to data | bal.cpp:243:17:243:18 | *sb | provenance | | +| bal.cpp:243:17:243:18 | *sb | bal.cpp:243:21:243:24 | decode output argument | provenance | MaD:103 | +| bal.cpp:243:21:243:24 | decode output argument | bal.cpp:246:40:246:42 | *rec | provenance | | +| bal.cpp:246:17:246:37 | encode output argument | bal.cpp:247:7:247:12 | access to array | provenance | | +| bal.cpp:246:40:246:42 | *rec | bal.cpp:246:17:246:37 | encode output argument | provenance | MaD:105 | +| bal.cpp:262:19:262:26 | call to source | bal.cpp:263:21:263:47 | *call to data | provenance | TaintFunction | +| bal.cpp:263:21:263:47 | *call to data | bal.cpp:266:17:266:19 | ** ... | provenance | | +| bal.cpp:266:17:266:19 | ** ... | bal.cpp:266:22:266:25 | decode output argument | provenance | MaD:108 | +| bal.cpp:266:22:266:25 | decode output argument | bal.cpp:267:7:267:17 | * ... | provenance | TaintFunction | +| bal.cpp:271:19:271:26 | call to source | bal.cpp:272:21:272:47 | *call to data | provenance | TaintFunction | +| bal.cpp:272:21:272:47 | *call to data | bal.cpp:275:35:275:37 | ** ... | provenance | | +| bal.cpp:275:34:275:52 | *call to decode | bal.cpp:275:34:275:52 | *call to decode | provenance | | +| bal.cpp:275:34:275:52 | *call to decode | bal.cpp:276:7:276:17 | * ... | provenance | | +| bal.cpp:275:35:275:37 | ** ... | bal.cpp:275:34:275:52 | *call to decode | provenance | MaD:109 | +| bal.cpp:275:35:275:37 | ** ... | bal.cpp:275:40:275:43 | decode output argument | provenance | MaD:108 | +| bal.cpp:275:40:275:43 | decode output argument | bal.cpp:277:7:277:9 | out | provenance | | +| bal.cpp:281:19:281:26 | call to source | bal.cpp:282:23:282:51 | *call to data | provenance | TaintFunction | +| bal.cpp:282:23:282:51 | *call to data | bal.cpp:285:17:285:18 | *sb | provenance | | +| bal.cpp:285:17:285:18 | *sb | bal.cpp:285:21:285:24 | decode output argument | provenance | MaD:110 | +| bal.cpp:285:21:285:24 | decode output argument | bal.cpp:286:7:286:17 | * ... | provenance | TaintFunction | +| bal.cpp:290:19:290:26 | call to source | bal.cpp:293:22:293:25 | *call to data | provenance | TaintFunction | +| bal.cpp:293:22:293:25 | *call to data | bal.cpp:293:43:293:46 | decode output argument | provenance | MaD:107 | +| bal.cpp:293:43:293:46 | decode output argument | bal.cpp:294:7:294:17 | * ... | provenance | TaintFunction | +| bal.cpp:318:19:318:26 | call to source | bal.cpp:319:21:319:47 | *call to data | provenance | TaintFunction | +| bal.cpp:319:21:319:47 | *call to data | bal.cpp:322:20:322:22 | ** ... | provenance | | +| bal.cpp:322:20:322:22 | ** ... | bal.cpp:322:25:322:28 | decodeAny output argument | provenance | MaD:114 | +| bal.cpp:322:25:322:28 | decodeAny output argument | bal.cpp:323:7:323:17 | * ... | provenance | TaintFunction | +| bal.cpp:327:19:327:26 | call to source | bal.cpp:328:21:328:47 | *call to data | provenance | TaintFunction | +| bal.cpp:328:21:328:47 | *call to data | bal.cpp:331:38:331:40 | ** ... | provenance | | +| bal.cpp:331:37:331:48 | *call to decodeAny | bal.cpp:331:37:331:48 | *call to decodeAny | provenance | | +| bal.cpp:331:37:331:48 | *call to decodeAny | bal.cpp:332:7:332:17 | * ... | provenance | | +| bal.cpp:331:38:331:40 | ** ... | bal.cpp:331:37:331:48 | *call to decodeAny | provenance | MaD:115 | +| bal.cpp:331:38:331:40 | ** ... | bal.cpp:331:43:331:46 | decodeAny output argument | provenance | MaD:114 | +| bal.cpp:331:43:331:46 | decodeAny output argument | bal.cpp:333:7:333:9 | out | provenance | | +| bal.cpp:337:19:337:26 | call to source | bal.cpp:338:23:338:51 | *call to data | provenance | TaintFunction | +| bal.cpp:338:23:338:51 | *call to data | bal.cpp:341:20:341:21 | *sb | provenance | | +| bal.cpp:341:20:341:21 | *sb | bal.cpp:341:24:341:27 | decodeAny output argument | provenance | MaD:116 | +| bal.cpp:341:24:341:27 | decodeAny output argument | bal.cpp:342:7:342:17 | * ... | provenance | TaintFunction | +| bal.cpp:346:19:346:26 | call to source | bal.cpp:347:21:347:47 | *call to data | provenance | TaintFunction | +| bal.cpp:347:21:347:47 | *call to data | bal.cpp:350:20:350:22 | ** ... | provenance | | +| bal.cpp:350:20:350:22 | ** ... | bal.cpp:350:25:350:28 | decodeAny output argument | provenance | MaD:111 | +| bal.cpp:350:25:350:28 | decodeAny output argument | bal.cpp:351:7:351:19 | * ... | provenance | | +| bal.cpp:355:19:355:26 | call to source | bal.cpp:356:21:356:47 | *call to data | provenance | TaintFunction | +| bal.cpp:356:21:356:47 | *call to data | bal.cpp:359:38:359:40 | ** ... | provenance | | +| bal.cpp:359:37:359:48 | *call to decodeAny | bal.cpp:359:37:359:48 | *call to decodeAny | provenance | | +| bal.cpp:359:37:359:48 | *call to decodeAny | bal.cpp:360:7:360:17 | * ... | provenance | | +| bal.cpp:359:38:359:40 | ** ... | bal.cpp:359:37:359:48 | *call to decodeAny | provenance | MaD:112 | +| bal.cpp:359:38:359:40 | ** ... | bal.cpp:359:43:359:46 | decodeAny output argument | provenance | MaD:111 | +| bal.cpp:359:43:359:46 | decodeAny output argument | bal.cpp:361:7:361:19 | * ... | provenance | | +| bal.cpp:365:19:365:26 | call to source | bal.cpp:366:23:366:51 | *call to data | provenance | TaintFunction | +| bal.cpp:366:23:366:51 | *call to data | bal.cpp:369:20:369:21 | *sb | provenance | | +| bal.cpp:369:20:369:21 | *sb | bal.cpp:369:24:369:27 | decodeAny output argument | provenance | MaD:113 | +| bal.cpp:369:24:369:27 | decodeAny output argument | bal.cpp:370:7:370:19 | * ... | provenance | | +| bal.cpp:374:18:374:25 | call to source | bal.cpp:377:40:377:42 | *obj | provenance | TaintFunction | +| bal.cpp:377:17:377:37 | encode output argument | bal.cpp:378:7:378:12 | access to array | provenance | | +| bal.cpp:377:40:377:42 | *obj | bal.cpp:377:17:377:37 | encode output argument | provenance | MaD:119 | +| bal.cpp:382:18:382:25 | call to source | bal.cpp:385:39:385:41 | *obj | provenance | TaintFunction | +| bal.cpp:385:17:385:36 | encode output argument | bal.cpp:386:7:386:12 | access to array | provenance | | +| bal.cpp:385:39:385:41 | *obj | bal.cpp:385:17:385:36 | encode output argument | provenance | MaD:118 | +| bal.cpp:390:18:390:25 | call to source | bal.cpp:393:57:393:59 | *obj | provenance | TaintFunction | +| bal.cpp:393:34:393:61 | *call to encode | bal.cpp:393:34:393:61 | *call to encode | provenance | | +| bal.cpp:393:34:393:61 | *call to encode | bal.cpp:394:7:394:17 | * ... | provenance | | +| bal.cpp:393:35:393:54 | encode output argument | bal.cpp:395:7:395:12 | access to array | provenance | | +| bal.cpp:393:57:393:59 | *obj | bal.cpp:393:34:393:61 | *call to encode | provenance | MaD:117 | +| bal.cpp:393:57:393:59 | *obj | bal.cpp:393:35:393:54 | encode output argument | provenance | MaD:118 | +| bal.cpp:399:19:399:26 | call to source | bal.cpp:400:21:400:47 | *call to data | provenance | TaintFunction | +| bal.cpp:400:21:400:47 | *call to data | bal.cpp:403:35:403:37 | ** ... | provenance | | +| bal.cpp:403:34:403:44 | *call to encode | bal.cpp:403:34:403:44 | *call to encode | provenance | | +| bal.cpp:403:34:403:44 | *call to encode | bal.cpp:404:7:404:17 | * ... | provenance | | +| bal.cpp:403:35:403:37 | ** ... | bal.cpp:403:34:403:44 | *call to encode | provenance | MaD:117 | +| bal.cpp:408:18:408:25 | call to source | bal.cpp:411:47:411:49 | *obj | provenance | TaintFunction | +| bal.cpp:411:25:411:44 | encodeToStream output argument | bal.cpp:412:7:412:12 | access to array | provenance | | +| bal.cpp:411:47:411:49 | *obj | bal.cpp:411:25:411:44 | encodeToStream output argument | provenance | MaD:127 | +| bal.cpp:426:18:426:25 | call to source | bal.cpp:429:43:429:45 | *obj | provenance | TaintFunction | +| bal.cpp:429:20:429:40 | encodeAny output argument | bal.cpp:430:7:430:12 | access to array | provenance | | +| bal.cpp:429:43:429:45 | *obj | bal.cpp:429:20:429:40 | encodeAny output argument | provenance | MaD:125 | +| bal.cpp:434:18:434:25 | call to source | bal.cpp:437:42:437:44 | *obj | provenance | TaintFunction | +| bal.cpp:437:20:437:39 | encodeAny output argument | bal.cpp:438:7:438:12 | access to array | provenance | | +| bal.cpp:437:42:437:44 | *obj | bal.cpp:437:20:437:39 | encodeAny output argument | provenance | MaD:124 | +| bal.cpp:442:18:442:25 | call to source | bal.cpp:445:60:445:62 | *obj | provenance | TaintFunction | +| bal.cpp:445:37:445:64 | *call to encodeAny | bal.cpp:445:37:445:64 | *call to encodeAny | provenance | | +| bal.cpp:445:37:445:64 | *call to encodeAny | bal.cpp:446:7:446:17 | * ... | provenance | | +| bal.cpp:445:38:445:57 | encodeAny output argument | bal.cpp:447:7:447:12 | access to array | provenance | | +| bal.cpp:445:60:445:62 | *obj | bal.cpp:445:37:445:64 | *call to encodeAny | provenance | MaD:123 | +| bal.cpp:445:60:445:62 | *obj | bal.cpp:445:38:445:57 | encodeAny output argument | provenance | MaD:124 | +| bal.cpp:451:18:451:25 | call to source | bal.cpp:454:50:454:52 | *obj | provenance | TaintFunction | +| bal.cpp:454:28:454:47 | encodeAnyToStream output argument | bal.cpp:455:7:455:12 | access to array | provenance | | +| bal.cpp:454:50:454:52 | *obj | bal.cpp:454:28:454:47 | encodeAnyToStream output argument | provenance | MaD:126 | +| bal.cpp:459:19:459:26 | call to source | bal.cpp:460:41:460:86 | *call to data | provenance | TaintFunction | +| bal.cpp:460:41:460:86 | *call to data | bal.cpp:463:43:463:46 | ** ... | provenance | | +| bal.cpp:463:20:463:40 | encodeAny output argument | bal.cpp:464:7:464:12 | access to array | provenance | | +| bal.cpp:463:43:463:46 | ** ... | bal.cpp:463:20:463:40 | encodeAny output argument | provenance | MaD:122 | +| bal.cpp:468:19:468:26 | call to source | bal.cpp:469:41:469:86 | *call to data | provenance | TaintFunction | +| bal.cpp:469:41:469:86 | *call to data | bal.cpp:472:42:472:45 | ** ... | provenance | | +| bal.cpp:472:20:472:39 | encodeAny output argument | bal.cpp:473:7:473:12 | access to array | provenance | | +| bal.cpp:472:42:472:45 | ** ... | bal.cpp:472:20:472:39 | encodeAny output argument | provenance | MaD:121 | +| bal.cpp:477:19:477:26 | call to source | bal.cpp:478:41:478:86 | *call to data | provenance | TaintFunction | +| bal.cpp:478:41:478:86 | *call to data | bal.cpp:481:60:481:63 | ** ... | provenance | | +| bal.cpp:481:37:481:65 | *call to encodeAny | bal.cpp:481:37:481:65 | *call to encodeAny | provenance | | +| bal.cpp:481:37:481:65 | *call to encodeAny | bal.cpp:482:7:482:17 | * ... | provenance | | +| bal.cpp:481:38:481:57 | encodeAny output argument | bal.cpp:483:7:483:12 | access to array | provenance | | +| bal.cpp:481:60:481:63 | ** ... | bal.cpp:481:37:481:65 | *call to encodeAny | provenance | MaD:120 | +| bal.cpp:481:60:481:63 | ** ... | bal.cpp:481:38:481:57 | encodeAny output argument | provenance | MaD:121 | | bdlbb.cpp:54:16:54:23 | call to source | bdlbb.cpp:56:49:56:52 | *call to data | provenance | TaintFunction | | bdlbb.cpp:56:37:56:41 | copy output argument | bdlbb.cpp:58:42:58:45 | *blob | provenance | | -| bdlbb.cpp:56:49:56:52 | *call to data | bdlbb.cpp:56:37:56:41 | copy output argument | provenance | MaD:103 | +| bdlbb.cpp:56:49:56:52 | *call to data | bdlbb.cpp:56:37:56:41 | copy output argument | provenance | MaD:132 | | bdlbb.cpp:58:37:58:39 | copy output argument | bdlbb.cpp:59:7:59:10 | * ... | provenance | | -| bdlbb.cpp:58:42:58:45 | *blob | bdlbb.cpp:58:37:58:39 | copy output argument | provenance | MaD:104 | +| bdlbb.cpp:58:42:58:45 | *blob | bdlbb.cpp:58:37:58:39 | copy output argument | provenance | MaD:133 | | bdlbb.cpp:63:16:63:23 | call to source | bdlbb.cpp:65:49:65:52 | *call to data | provenance | TaintFunction | | bdlbb.cpp:65:37:65:41 | copy output argument | bdlbb.cpp:66:18:66:21 | *blob | provenance | | -| bdlbb.cpp:65:49:65:52 | *call to data | bdlbb.cpp:65:37:65:41 | copy output argument | provenance | MaD:103 | -| bdlbb.cpp:66:18:66:21 | *blob | bdlbb.cpp:66:29:66:32 | *call to buffer | provenance | MaD:99 | +| bdlbb.cpp:65:49:65:52 | *call to data | bdlbb.cpp:65:37:65:41 | copy output argument | provenance | MaD:132 | +| bdlbb.cpp:66:18:66:21 | *blob | bdlbb.cpp:66:29:66:32 | *call to buffer | provenance | MaD:128 | | bdlbb.cpp:66:18:66:38 | *call to data | bdlbb.cpp:66:18:66:38 | *call to data | provenance | | | bdlbb.cpp:66:18:66:38 | *call to data | bdlbb.cpp:67:7:67:8 | * ... | provenance | | -| bdlbb.cpp:66:29:66:32 | *call to buffer | bdlbb.cpp:66:18:66:38 | *call to data | provenance | MaD:101 | +| bdlbb.cpp:66:29:66:32 | *call to buffer | bdlbb.cpp:66:18:66:38 | *call to data | provenance | MaD:130 | | bdlbb.cpp:72:16:72:23 | call to source | bdlbb.cpp:74:49:74:52 | *call to data | provenance | TaintFunction | | bdlbb.cpp:74:37:74:41 | copy output argument | bdlbb.cpp:75:18:75:21 | *blob | provenance | | -| bdlbb.cpp:74:49:74:52 | *call to data | bdlbb.cpp:74:37:74:41 | copy output argument | provenance | MaD:103 | -| bdlbb.cpp:75:18:75:21 | *blob | bdlbb.cpp:75:29:75:32 | *call to buffer | provenance | MaD:99 | +| bdlbb.cpp:74:49:74:52 | *call to data | bdlbb.cpp:74:37:74:41 | copy output argument | provenance | MaD:132 | +| bdlbb.cpp:75:18:75:21 | *blob | bdlbb.cpp:75:29:75:32 | *call to buffer | provenance | MaD:128 | | bdlbb.cpp:75:18:75:46 | call to get | bdlbb.cpp:76:7:76:8 | * ... | provenance | | -| bdlbb.cpp:75:29:75:32 | *call to buffer | bdlbb.cpp:75:39:75:41 | *call to buffer | provenance | MaD:100 | +| bdlbb.cpp:75:29:75:32 | *call to buffer | bdlbb.cpp:75:39:75:41 | *call to buffer | provenance | MaD:129 | | bdlbb.cpp:75:39:75:41 | *call to buffer | bdlbb.cpp:75:18:75:46 | call to get | provenance | DataFlowFunction | | bdlbb.cpp:80:16:80:23 | call to source | bdlbb.cpp:82:49:82:52 | *call to data | provenance | TaintFunction | | bdlbb.cpp:82:37:82:41 | copy output argument | bdlbb.cpp:84:72:84:75 | *blob | provenance | | -| bdlbb.cpp:82:49:82:52 | *call to data | bdlbb.cpp:82:37:82:41 | copy output argument | provenance | MaD:103 | +| bdlbb.cpp:82:49:82:52 | *call to data | bdlbb.cpp:82:37:82:41 | copy output argument | provenance | MaD:132 | | bdlbb.cpp:84:12:84:65 | *call to getContiguousRangeOrCopy | bdlbb.cpp:84:12:84:65 | *call to getContiguousRangeOrCopy | provenance | | | bdlbb.cpp:84:12:84:65 | *call to getContiguousRangeOrCopy | bdlbb.cpp:85:7:85:8 | * ... | provenance | | -| bdlbb.cpp:84:72:84:75 | *blob | bdlbb.cpp:84:12:84:65 | *call to getContiguousRangeOrCopy | provenance | MaD:105 | +| bdlbb.cpp:84:72:84:75 | *blob | bdlbb.cpp:84:12:84:65 | *call to getContiguousRangeOrCopy | provenance | MaD:134 | | bdlbb.cpp:90:16:90:23 | call to source | bdlbb.cpp:92:48:92:51 | *call to data | provenance | TaintFunction | | bdlbb.cpp:92:37:92:40 | copy output argument | bdlbb.cpp:94:46:94:48 | *src | provenance | | -| bdlbb.cpp:92:48:92:51 | *call to data | bdlbb.cpp:92:37:92:40 | copy output argument | provenance | MaD:103 | +| bdlbb.cpp:92:48:92:51 | *call to data | bdlbb.cpp:92:37:92:40 | copy output argument | provenance | MaD:132 | | bdlbb.cpp:94:37:94:40 | copy output argument | bdlbb.cpp:96:42:96:44 | *dst | provenance | | -| bdlbb.cpp:94:46:94:48 | *src | bdlbb.cpp:94:37:94:40 | copy output argument | provenance | MaD:102 | +| bdlbb.cpp:94:46:94:48 | *src | bdlbb.cpp:94:37:94:40 | copy output argument | provenance | MaD:131 | | bdlbb.cpp:96:37:96:39 | copy output argument | bdlbb.cpp:97:7:97:10 | * ... | provenance | | -| bdlbb.cpp:96:42:96:44 | *dst | bdlbb.cpp:96:37:96:39 | copy output argument | provenance | MaD:104 | +| bdlbb.cpp:96:42:96:44 | *dst | bdlbb.cpp:96:37:96:39 | copy output argument | provenance | MaD:133 | | bslx.cpp:161:33:161:40 | call to source | bslx.cpp:162:46:162:49 | *call to data | provenance | TaintFunction | | bslx.cpp:162:34:162:39 | call to ByteInStream | bslx.cpp:164:2:164:7 | *stream | provenance | | -| bslx.cpp:162:46:162:49 | *call to data | bslx.cpp:162:34:162:39 | call to ByteInStream | provenance | MaD:108 | -| bslx.cpp:164:2:164:7 | *stream | bslx.cpp:164:22:164:24 | getArrayInt8 output argument | provenance | MaD:118 | +| bslx.cpp:162:46:162:49 | *call to data | bslx.cpp:162:34:162:39 | call to ByteInStream | provenance | MaD:137 | +| bslx.cpp:164:2:164:7 | *stream | bslx.cpp:164:22:164:24 | getArrayInt8 output argument | provenance | MaD:147 | | bslx.cpp:164:22:164:24 | getArrayInt8 output argument | bslx.cpp:165:7:165:10 | * ... | provenance | | | bslx.cpp:169:33:169:40 | call to source | bslx.cpp:170:46:170:49 | *call to data | provenance | TaintFunction | | bslx.cpp:170:34:170:39 | call to ByteInStream | bslx.cpp:172:2:172:7 | *stream | provenance | | -| bslx.cpp:170:46:170:49 | *call to data | bslx.cpp:170:34:170:39 | call to ByteInStream | provenance | MaD:108 | -| bslx.cpp:172:2:172:7 | *stream | bslx.cpp:172:19:172:21 | getString output argument | provenance | MaD:139 | +| bslx.cpp:170:46:170:49 | *call to data | bslx.cpp:170:34:170:39 | call to ByteInStream | provenance | MaD:137 | +| bslx.cpp:172:2:172:7 | *stream | bslx.cpp:172:19:172:21 | getString output argument | provenance | MaD:168 | | bslx.cpp:172:19:172:21 | getString output argument | bslx.cpp:173:7:173:17 | * ... | provenance | TaintFunction | | bslx.cpp:177:33:177:40 | call to source | bslx.cpp:178:46:178:49 | *call to data | provenance | TaintFunction | | bslx.cpp:178:34:178:39 | call to ByteInStream | bslx.cpp:181:2:181:7 | *stream | provenance | | -| bslx.cpp:178:46:178:49 | *call to data | bslx.cpp:178:34:178:39 | call to ByteInStream | provenance | MaD:108 | -| bslx.cpp:181:2:181:7 | *stream | bslx.cpp:181:17:181:20 | *call to getInt32 | provenance | MaD:132 | -| bslx.cpp:181:17:181:20 | *call to getInt32 | bslx.cpp:181:31:181:33 | getString output argument | provenance | MaD:139 | +| bslx.cpp:178:46:178:49 | *call to data | bslx.cpp:178:34:178:39 | call to ByteInStream | provenance | MaD:137 | +| bslx.cpp:181:2:181:7 | *stream | bslx.cpp:181:17:181:20 | *call to getInt32 | provenance | MaD:161 | +| bslx.cpp:181:17:181:20 | *call to getInt32 | bslx.cpp:181:31:181:33 | getString output argument | provenance | MaD:168 | | bslx.cpp:181:31:181:33 | getString output argument | bslx.cpp:182:7:182:17 | * ... | provenance | TaintFunction | | bslx.cpp:187:33:187:40 | call to source | bslx.cpp:188:20:188:23 | *call to data | provenance | TaintFunction | | bslx.cpp:188:2:188:7 | reset output argument | bslx.cpp:190:2:190:7 | *stream | provenance | | -| bslx.cpp:188:20:188:23 | *call to data | bslx.cpp:188:2:188:7 | reset output argument | provenance | MaD:151 | -| bslx.cpp:190:2:190:7 | *stream | bslx.cpp:190:19:190:21 | getString output argument | provenance | MaD:139 | +| bslx.cpp:188:20:188:23 | *call to data | bslx.cpp:188:2:188:7 | reset output argument | provenance | MaD:180 | +| bslx.cpp:190:2:190:7 | *stream | bslx.cpp:190:19:190:21 | getString output argument | provenance | MaD:168 | | bslx.cpp:190:19:190:21 | getString output argument | bslx.cpp:191:7:191:17 | * ... | provenance | TaintFunction | | bslx.cpp:195:33:195:40 | call to source | bslx.cpp:196:20:196:45 | *call to data | provenance | TaintFunction | | bslx.cpp:196:20:196:45 | *call to data | bslx.cpp:197:57:197:58 | *sb | provenance | | | bslx.cpp:196:20:196:45 | *call to data | bslx.cpp:199:2:199:7 | *stream | provenance | TaintFunction | | bslx.cpp:197:50:197:55 | call to GenericInStream | bslx.cpp:199:2:199:7 | *stream | provenance | | -| bslx.cpp:197:57:197:58 | *sb | bslx.cpp:197:50:197:55 | call to GenericInStream | provenance | MaD:152 | -| bslx.cpp:199:2:199:7 | *stream | bslx.cpp:199:19:199:21 | getString output argument | provenance | MaD:182 | +| bslx.cpp:197:57:197:58 | *sb | bslx.cpp:197:50:197:55 | call to GenericInStream | provenance | MaD:181 | +| bslx.cpp:199:2:199:7 | *stream | bslx.cpp:199:19:199:21 | getString output argument | provenance | MaD:211 | | bslx.cpp:199:19:199:21 | getString output argument | bslx.cpp:200:7:200:17 | * ... | provenance | TaintFunction | | bslx.cpp:213:33:213:40 | call to source | bslx.cpp:214:46:214:49 | *call to data | provenance | TaintFunction | | bslx.cpp:214:34:214:39 | call to ByteInStream | bslx.cpp:216:53:216:58 | *stream | provenance | | -| bslx.cpp:214:46:214:49 | *call to data | bslx.cpp:214:34:214:39 | call to ByteInStream | provenance | MaD:108 | -| bslx.cpp:216:53:216:58 | *stream | bslx.cpp:216:61:216:63 | bdexStreamIn output argument | provenance | MaD:106 | +| bslx.cpp:214:46:214:49 | *call to data | bslx.cpp:214:34:214:39 | call to ByteInStream | provenance | MaD:137 | +| bslx.cpp:216:53:216:58 | *stream | bslx.cpp:216:61:216:63 | bdexStreamIn output argument | provenance | MaD:135 | | bslx.cpp:216:61:216:63 | bdexStreamIn output argument | bslx.cpp:217:7:217:17 | * ... | provenance | TaintFunction | | bslx.cpp:223:33:223:40 | call to source | bslx.cpp:224:46:224:49 | *call to data | provenance | TaintFunction | | bslx.cpp:224:34:224:39 | call to ByteInStream | bslx.cpp:247:2:247:7 | *stream | provenance | | -| bslx.cpp:224:46:224:49 | *call to data | bslx.cpp:224:34:224:39 | call to ByteInStream | provenance | MaD:108 | -| bslx.cpp:247:2:247:7 | *stream | bslx.cpp:247:18:247:21 | *call to getLength | provenance | MaD:138 | -| bslx.cpp:247:18:247:21 | *call to getLength | bslx.cpp:247:32:247:35 | *call to getVersion | provenance | MaD:149 | -| bslx.cpp:247:32:247:35 | *call to getVersion | bslx.cpp:247:43:247:46 | *call to getInt8 | provenance | MaD:137 | -| bslx.cpp:247:43:247:46 | *call to getInt8 | bslx.cpp:247:55:247:59 | *call to getUint8 | provenance | MaD:148 | -| bslx.cpp:247:55:247:59 | *call to getUint8 | bslx.cpp:247:68:247:71 | *call to getInt16 | provenance | MaD:130 | -| bslx.cpp:247:68:247:71 | *call to getInt16 | bslx.cpp:247:81:247:85 | *call to getUint16 | provenance | MaD:141 | -| bslx.cpp:247:81:247:85 | *call to getUint16 | bslx.cpp:247:94:247:97 | *call to getInt24 | provenance | MaD:131 | -| bslx.cpp:247:94:247:97 | *call to getInt24 | bslx.cpp:247:107:247:111 | *call to getUint24 | provenance | MaD:142 | -| bslx.cpp:247:107:247:111 | *call to getUint24 | bslx.cpp:247:120:247:123 | *call to getInt32 | provenance | MaD:132 | -| bslx.cpp:247:120:247:123 | *call to getInt32 | bslx.cpp:247:133:247:137 | *call to getUint32 | provenance | MaD:143 | -| bslx.cpp:247:133:247:137 | *call to getUint32 | bslx.cpp:247:146:247:150 | *call to getInt40 | provenance | MaD:133 | -| bslx.cpp:247:146:247:150 | *call to getInt40 | bslx.cpp:247:160:247:165 | *call to getUint40 | provenance | MaD:144 | -| bslx.cpp:247:160:247:165 | *call to getUint40 | bslx.cpp:247:174:247:178 | *call to getInt48 | provenance | MaD:134 | -| bslx.cpp:247:174:247:178 | *call to getInt48 | bslx.cpp:247:188:247:193 | *call to getUint48 | provenance | MaD:145 | -| bslx.cpp:247:188:247:193 | *call to getUint48 | bslx.cpp:247:202:247:206 | *call to getInt56 | provenance | MaD:135 | -| bslx.cpp:247:202:247:206 | *call to getInt56 | bslx.cpp:247:216:247:221 | *call to getUint56 | provenance | MaD:146 | -| bslx.cpp:247:216:247:221 | *call to getUint56 | bslx.cpp:247:230:247:234 | *call to getInt64 | provenance | MaD:136 | -| bslx.cpp:247:230:247:234 | *call to getInt64 | bslx.cpp:247:244:247:249 | *call to getUint64 | provenance | MaD:147 | -| bslx.cpp:247:244:247:249 | *call to getUint64 | bslx.cpp:247:260:247:263 | *call to getFloat32 | provenance | MaD:128 | -| bslx.cpp:247:260:247:263 | *call to getFloat32 | bslx.cpp:247:274:247:277 | *call to getFloat64 | provenance | MaD:129 | -| bslx.cpp:247:274:247:277 | *call to getFloat64 | bslx.cpp:247:287:247:292 | *call to getString | provenance | MaD:140 | -| bslx.cpp:247:287:247:292 | *call to getString | bslx.cpp:247:305:247:315 | *call to getArrayInt8 | provenance | MaD:119 | -| bslx.cpp:247:305:247:315 | *call to getArrayInt8 | bslx.cpp:247:329:247:340 | *call to getArrayUint8 | provenance | MaD:127 | -| bslx.cpp:247:329:247:340 | *call to getArrayUint8 | bslx.cpp:247:354:247:364 | *call to getArrayInt16 | provenance | MaD:111 | -| bslx.cpp:247:354:247:364 | *call to getArrayInt16 | bslx.cpp:247:379:247:390 | *call to getArrayUint16 | provenance | MaD:120 | -| bslx.cpp:247:379:247:390 | *call to getArrayUint16 | bslx.cpp:247:404:247:414 | *call to getArrayInt24 | provenance | MaD:112 | -| bslx.cpp:247:404:247:414 | *call to getArrayInt24 | bslx.cpp:247:429:247:440 | *call to getArrayUint24 | provenance | MaD:121 | -| bslx.cpp:247:429:247:440 | *call to getArrayUint24 | bslx.cpp:247:454:247:464 | *call to getArrayInt32 | provenance | MaD:113 | -| bslx.cpp:247:454:247:464 | *call to getArrayInt32 | bslx.cpp:247:479:247:490 | *call to getArrayUint32 | provenance | MaD:122 | -| bslx.cpp:247:479:247:490 | *call to getArrayUint32 | bslx.cpp:247:504:247:515 | *call to getArrayInt40 | provenance | MaD:114 | -| bslx.cpp:247:504:247:515 | *call to getArrayInt40 | bslx.cpp:247:530:247:542 | *call to getArrayUint40 | provenance | MaD:123 | -| bslx.cpp:247:530:247:542 | *call to getArrayUint40 | bslx.cpp:247:556:247:567 | *call to getArrayInt48 | provenance | MaD:115 | -| bslx.cpp:247:556:247:567 | *call to getArrayInt48 | bslx.cpp:247:582:247:594 | *call to getArrayUint48 | provenance | MaD:124 | -| bslx.cpp:247:582:247:594 | *call to getArrayUint48 | bslx.cpp:247:608:247:619 | *call to getArrayInt56 | provenance | MaD:116 | -| bslx.cpp:247:608:247:619 | *call to getArrayInt56 | bslx.cpp:247:634:247:646 | *call to getArrayUint56 | provenance | MaD:125 | -| bslx.cpp:247:634:247:646 | *call to getArrayUint56 | bslx.cpp:247:660:247:671 | *call to getArrayInt64 | provenance | MaD:117 | -| bslx.cpp:247:660:247:671 | *call to getArrayInt64 | bslx.cpp:247:686:247:698 | *call to getArrayUint64 | provenance | MaD:126 | -| bslx.cpp:247:686:247:698 | *call to getArrayUint64 | bslx.cpp:247:714:247:724 | *call to getArrayFloat32 | provenance | MaD:109 | -| bslx.cpp:247:714:247:724 | *call to getArrayFloat32 | bslx.cpp:247:740:247:750 | *call to getArrayFloat64 | provenance | MaD:110 | -| bslx.cpp:247:740:247:750 | *call to getArrayFloat64 | bslx.cpp:247:761:247:763 | getString output argument | provenance | MaD:139 | +| bslx.cpp:224:46:224:49 | *call to data | bslx.cpp:224:34:224:39 | call to ByteInStream | provenance | MaD:137 | +| bslx.cpp:247:2:247:7 | *stream | bslx.cpp:247:18:247:21 | *call to getLength | provenance | MaD:167 | +| bslx.cpp:247:18:247:21 | *call to getLength | bslx.cpp:247:32:247:35 | *call to getVersion | provenance | MaD:178 | +| bslx.cpp:247:32:247:35 | *call to getVersion | bslx.cpp:247:43:247:46 | *call to getInt8 | provenance | MaD:166 | +| bslx.cpp:247:43:247:46 | *call to getInt8 | bslx.cpp:247:55:247:59 | *call to getUint8 | provenance | MaD:177 | +| bslx.cpp:247:55:247:59 | *call to getUint8 | bslx.cpp:247:68:247:71 | *call to getInt16 | provenance | MaD:159 | +| bslx.cpp:247:68:247:71 | *call to getInt16 | bslx.cpp:247:81:247:85 | *call to getUint16 | provenance | MaD:170 | +| bslx.cpp:247:81:247:85 | *call to getUint16 | bslx.cpp:247:94:247:97 | *call to getInt24 | provenance | MaD:160 | +| bslx.cpp:247:94:247:97 | *call to getInt24 | bslx.cpp:247:107:247:111 | *call to getUint24 | provenance | MaD:171 | +| bslx.cpp:247:107:247:111 | *call to getUint24 | bslx.cpp:247:120:247:123 | *call to getInt32 | provenance | MaD:161 | +| bslx.cpp:247:120:247:123 | *call to getInt32 | bslx.cpp:247:133:247:137 | *call to getUint32 | provenance | MaD:172 | +| bslx.cpp:247:133:247:137 | *call to getUint32 | bslx.cpp:247:146:247:150 | *call to getInt40 | provenance | MaD:162 | +| bslx.cpp:247:146:247:150 | *call to getInt40 | bslx.cpp:247:160:247:165 | *call to getUint40 | provenance | MaD:173 | +| bslx.cpp:247:160:247:165 | *call to getUint40 | bslx.cpp:247:174:247:178 | *call to getInt48 | provenance | MaD:163 | +| bslx.cpp:247:174:247:178 | *call to getInt48 | bslx.cpp:247:188:247:193 | *call to getUint48 | provenance | MaD:174 | +| bslx.cpp:247:188:247:193 | *call to getUint48 | bslx.cpp:247:202:247:206 | *call to getInt56 | provenance | MaD:164 | +| bslx.cpp:247:202:247:206 | *call to getInt56 | bslx.cpp:247:216:247:221 | *call to getUint56 | provenance | MaD:175 | +| bslx.cpp:247:216:247:221 | *call to getUint56 | bslx.cpp:247:230:247:234 | *call to getInt64 | provenance | MaD:165 | +| bslx.cpp:247:230:247:234 | *call to getInt64 | bslx.cpp:247:244:247:249 | *call to getUint64 | provenance | MaD:176 | +| bslx.cpp:247:244:247:249 | *call to getUint64 | bslx.cpp:247:260:247:263 | *call to getFloat32 | provenance | MaD:157 | +| bslx.cpp:247:260:247:263 | *call to getFloat32 | bslx.cpp:247:274:247:277 | *call to getFloat64 | provenance | MaD:158 | +| bslx.cpp:247:274:247:277 | *call to getFloat64 | bslx.cpp:247:287:247:292 | *call to getString | provenance | MaD:169 | +| bslx.cpp:247:287:247:292 | *call to getString | bslx.cpp:247:305:247:315 | *call to getArrayInt8 | provenance | MaD:148 | +| bslx.cpp:247:305:247:315 | *call to getArrayInt8 | bslx.cpp:247:329:247:340 | *call to getArrayUint8 | provenance | MaD:156 | +| bslx.cpp:247:329:247:340 | *call to getArrayUint8 | bslx.cpp:247:354:247:364 | *call to getArrayInt16 | provenance | MaD:140 | +| bslx.cpp:247:354:247:364 | *call to getArrayInt16 | bslx.cpp:247:379:247:390 | *call to getArrayUint16 | provenance | MaD:149 | +| bslx.cpp:247:379:247:390 | *call to getArrayUint16 | bslx.cpp:247:404:247:414 | *call to getArrayInt24 | provenance | MaD:141 | +| bslx.cpp:247:404:247:414 | *call to getArrayInt24 | bslx.cpp:247:429:247:440 | *call to getArrayUint24 | provenance | MaD:150 | +| bslx.cpp:247:429:247:440 | *call to getArrayUint24 | bslx.cpp:247:454:247:464 | *call to getArrayInt32 | provenance | MaD:142 | +| bslx.cpp:247:454:247:464 | *call to getArrayInt32 | bslx.cpp:247:479:247:490 | *call to getArrayUint32 | provenance | MaD:151 | +| bslx.cpp:247:479:247:490 | *call to getArrayUint32 | bslx.cpp:247:504:247:515 | *call to getArrayInt40 | provenance | MaD:143 | +| bslx.cpp:247:504:247:515 | *call to getArrayInt40 | bslx.cpp:247:530:247:542 | *call to getArrayUint40 | provenance | MaD:152 | +| bslx.cpp:247:530:247:542 | *call to getArrayUint40 | bslx.cpp:247:556:247:567 | *call to getArrayInt48 | provenance | MaD:144 | +| bslx.cpp:247:556:247:567 | *call to getArrayInt48 | bslx.cpp:247:582:247:594 | *call to getArrayUint48 | provenance | MaD:153 | +| bslx.cpp:247:582:247:594 | *call to getArrayUint48 | bslx.cpp:247:608:247:619 | *call to getArrayInt56 | provenance | MaD:145 | +| bslx.cpp:247:608:247:619 | *call to getArrayInt56 | bslx.cpp:247:634:247:646 | *call to getArrayUint56 | provenance | MaD:154 | +| bslx.cpp:247:634:247:646 | *call to getArrayUint56 | bslx.cpp:247:660:247:671 | *call to getArrayInt64 | provenance | MaD:146 | +| bslx.cpp:247:660:247:671 | *call to getArrayInt64 | bslx.cpp:247:686:247:698 | *call to getArrayUint64 | provenance | MaD:155 | +| bslx.cpp:247:686:247:698 | *call to getArrayUint64 | bslx.cpp:247:714:247:724 | *call to getArrayFloat32 | provenance | MaD:138 | +| bslx.cpp:247:714:247:724 | *call to getArrayFloat32 | bslx.cpp:247:740:247:750 | *call to getArrayFloat64 | provenance | MaD:139 | +| bslx.cpp:247:740:247:750 | *call to getArrayFloat64 | bslx.cpp:247:761:247:763 | getString output argument | provenance | MaD:168 | | bslx.cpp:247:761:247:763 | getString output argument | bslx.cpp:248:7:248:17 | * ... | provenance | TaintFunction | | bslx.cpp:252:33:252:40 | call to source | bslx.cpp:253:20:253:45 | *call to data | provenance | TaintFunction | | bslx.cpp:253:20:253:45 | *call to data | bslx.cpp:254:57:254:58 | *sb | provenance | | | bslx.cpp:253:20:253:45 | *call to data | bslx.cpp:277:2:277:7 | *stream | provenance | TaintFunction | | bslx.cpp:254:50:254:55 | call to GenericInStream | bslx.cpp:277:2:277:7 | *stream | provenance | | -| bslx.cpp:254:57:254:58 | *sb | bslx.cpp:254:50:254:55 | call to GenericInStream | provenance | MaD:152 | -| bslx.cpp:277:2:277:7 | *stream | bslx.cpp:277:18:277:21 | *call to getLength | provenance | MaD:181 | -| bslx.cpp:277:18:277:21 | *call to getLength | bslx.cpp:277:32:277:35 | *call to getVersion | provenance | MaD:192 | -| bslx.cpp:277:32:277:35 | *call to getVersion | bslx.cpp:277:43:277:46 | *call to getInt8 | provenance | MaD:180 | -| bslx.cpp:277:43:277:46 | *call to getInt8 | bslx.cpp:277:55:277:59 | *call to getUint8 | provenance | MaD:191 | -| bslx.cpp:277:55:277:59 | *call to getUint8 | bslx.cpp:277:68:277:71 | *call to getInt16 | provenance | MaD:173 | -| bslx.cpp:277:68:277:71 | *call to getInt16 | bslx.cpp:277:81:277:85 | *call to getUint16 | provenance | MaD:184 | -| bslx.cpp:277:81:277:85 | *call to getUint16 | bslx.cpp:277:94:277:97 | *call to getInt24 | provenance | MaD:174 | -| bslx.cpp:277:94:277:97 | *call to getInt24 | bslx.cpp:277:107:277:111 | *call to getUint24 | provenance | MaD:185 | -| bslx.cpp:277:107:277:111 | *call to getUint24 | bslx.cpp:277:120:277:123 | *call to getInt32 | provenance | MaD:175 | -| bslx.cpp:277:120:277:123 | *call to getInt32 | bslx.cpp:277:133:277:137 | *call to getUint32 | provenance | MaD:186 | -| bslx.cpp:277:133:277:137 | *call to getUint32 | bslx.cpp:277:146:277:150 | *call to getInt40 | provenance | MaD:176 | -| bslx.cpp:277:146:277:150 | *call to getInt40 | bslx.cpp:277:160:277:165 | *call to getUint40 | provenance | MaD:187 | -| bslx.cpp:277:160:277:165 | *call to getUint40 | bslx.cpp:277:174:277:178 | *call to getInt48 | provenance | MaD:177 | -| bslx.cpp:277:174:277:178 | *call to getInt48 | bslx.cpp:277:188:277:193 | *call to getUint48 | provenance | MaD:188 | -| bslx.cpp:277:188:277:193 | *call to getUint48 | bslx.cpp:277:202:277:206 | *call to getInt56 | provenance | MaD:178 | -| bslx.cpp:277:202:277:206 | *call to getInt56 | bslx.cpp:277:216:277:221 | *call to getUint56 | provenance | MaD:189 | -| bslx.cpp:277:216:277:221 | *call to getUint56 | bslx.cpp:277:230:277:234 | *call to getInt64 | provenance | MaD:179 | -| bslx.cpp:277:230:277:234 | *call to getInt64 | bslx.cpp:277:244:277:249 | *call to getUint64 | provenance | MaD:190 | -| bslx.cpp:277:244:277:249 | *call to getUint64 | bslx.cpp:277:260:277:263 | *call to getFloat32 | provenance | MaD:171 | -| bslx.cpp:277:260:277:263 | *call to getFloat32 | bslx.cpp:277:274:277:277 | *call to getFloat64 | provenance | MaD:172 | -| bslx.cpp:277:274:277:277 | *call to getFloat64 | bslx.cpp:277:287:277:292 | *call to getString | provenance | MaD:183 | -| bslx.cpp:277:287:277:292 | *call to getString | bslx.cpp:277:305:277:315 | *call to getArrayInt8 | provenance | MaD:162 | -| bslx.cpp:277:305:277:315 | *call to getArrayInt8 | bslx.cpp:277:329:277:340 | *call to getArrayUint8 | provenance | MaD:170 | -| bslx.cpp:277:329:277:340 | *call to getArrayUint8 | bslx.cpp:277:354:277:364 | *call to getArrayInt16 | provenance | MaD:155 | -| bslx.cpp:277:354:277:364 | *call to getArrayInt16 | bslx.cpp:277:379:277:390 | *call to getArrayUint16 | provenance | MaD:163 | -| bslx.cpp:277:379:277:390 | *call to getArrayUint16 | bslx.cpp:277:404:277:414 | *call to getArrayInt24 | provenance | MaD:156 | -| bslx.cpp:277:404:277:414 | *call to getArrayInt24 | bslx.cpp:277:429:277:440 | *call to getArrayUint24 | provenance | MaD:164 | -| bslx.cpp:277:429:277:440 | *call to getArrayUint24 | bslx.cpp:277:454:277:464 | *call to getArrayInt32 | provenance | MaD:157 | -| bslx.cpp:277:454:277:464 | *call to getArrayInt32 | bslx.cpp:277:479:277:490 | *call to getArrayUint32 | provenance | MaD:165 | -| bslx.cpp:277:479:277:490 | *call to getArrayUint32 | bslx.cpp:277:504:277:515 | *call to getArrayInt40 | provenance | MaD:158 | -| bslx.cpp:277:504:277:515 | *call to getArrayInt40 | bslx.cpp:277:530:277:542 | *call to getArrayUint40 | provenance | MaD:166 | -| bslx.cpp:277:530:277:542 | *call to getArrayUint40 | bslx.cpp:277:556:277:567 | *call to getArrayInt48 | provenance | MaD:159 | -| bslx.cpp:277:556:277:567 | *call to getArrayInt48 | bslx.cpp:277:582:277:594 | *call to getArrayUint48 | provenance | MaD:167 | -| bslx.cpp:277:582:277:594 | *call to getArrayUint48 | bslx.cpp:277:608:277:619 | *call to getArrayInt56 | provenance | MaD:160 | -| bslx.cpp:277:608:277:619 | *call to getArrayInt56 | bslx.cpp:277:634:277:646 | *call to getArrayUint56 | provenance | MaD:168 | -| bslx.cpp:277:634:277:646 | *call to getArrayUint56 | bslx.cpp:277:660:277:671 | *call to getArrayInt64 | provenance | MaD:161 | -| bslx.cpp:277:660:277:671 | *call to getArrayInt64 | bslx.cpp:277:686:277:698 | *call to getArrayUint64 | provenance | MaD:169 | -| bslx.cpp:277:686:277:698 | *call to getArrayUint64 | bslx.cpp:277:714:277:724 | *call to getArrayFloat32 | provenance | MaD:153 | -| bslx.cpp:277:714:277:724 | *call to getArrayFloat32 | bslx.cpp:277:740:277:750 | *call to getArrayFloat64 | provenance | MaD:154 | -| bslx.cpp:277:740:277:750 | *call to getArrayFloat64 | bslx.cpp:277:761:277:763 | getString output argument | provenance | MaD:182 | +| bslx.cpp:254:57:254:58 | *sb | bslx.cpp:254:50:254:55 | call to GenericInStream | provenance | MaD:181 | +| bslx.cpp:277:2:277:7 | *stream | bslx.cpp:277:18:277:21 | *call to getLength | provenance | MaD:210 | +| bslx.cpp:277:18:277:21 | *call to getLength | bslx.cpp:277:32:277:35 | *call to getVersion | provenance | MaD:221 | +| bslx.cpp:277:32:277:35 | *call to getVersion | bslx.cpp:277:43:277:46 | *call to getInt8 | provenance | MaD:209 | +| bslx.cpp:277:43:277:46 | *call to getInt8 | bslx.cpp:277:55:277:59 | *call to getUint8 | provenance | MaD:220 | +| bslx.cpp:277:55:277:59 | *call to getUint8 | bslx.cpp:277:68:277:71 | *call to getInt16 | provenance | MaD:202 | +| bslx.cpp:277:68:277:71 | *call to getInt16 | bslx.cpp:277:81:277:85 | *call to getUint16 | provenance | MaD:213 | +| bslx.cpp:277:81:277:85 | *call to getUint16 | bslx.cpp:277:94:277:97 | *call to getInt24 | provenance | MaD:203 | +| bslx.cpp:277:94:277:97 | *call to getInt24 | bslx.cpp:277:107:277:111 | *call to getUint24 | provenance | MaD:214 | +| bslx.cpp:277:107:277:111 | *call to getUint24 | bslx.cpp:277:120:277:123 | *call to getInt32 | provenance | MaD:204 | +| bslx.cpp:277:120:277:123 | *call to getInt32 | bslx.cpp:277:133:277:137 | *call to getUint32 | provenance | MaD:215 | +| bslx.cpp:277:133:277:137 | *call to getUint32 | bslx.cpp:277:146:277:150 | *call to getInt40 | provenance | MaD:205 | +| bslx.cpp:277:146:277:150 | *call to getInt40 | bslx.cpp:277:160:277:165 | *call to getUint40 | provenance | MaD:216 | +| bslx.cpp:277:160:277:165 | *call to getUint40 | bslx.cpp:277:174:277:178 | *call to getInt48 | provenance | MaD:206 | +| bslx.cpp:277:174:277:178 | *call to getInt48 | bslx.cpp:277:188:277:193 | *call to getUint48 | provenance | MaD:217 | +| bslx.cpp:277:188:277:193 | *call to getUint48 | bslx.cpp:277:202:277:206 | *call to getInt56 | provenance | MaD:207 | +| bslx.cpp:277:202:277:206 | *call to getInt56 | bslx.cpp:277:216:277:221 | *call to getUint56 | provenance | MaD:218 | +| bslx.cpp:277:216:277:221 | *call to getUint56 | bslx.cpp:277:230:277:234 | *call to getInt64 | provenance | MaD:208 | +| bslx.cpp:277:230:277:234 | *call to getInt64 | bslx.cpp:277:244:277:249 | *call to getUint64 | provenance | MaD:219 | +| bslx.cpp:277:244:277:249 | *call to getUint64 | bslx.cpp:277:260:277:263 | *call to getFloat32 | provenance | MaD:200 | +| bslx.cpp:277:260:277:263 | *call to getFloat32 | bslx.cpp:277:274:277:277 | *call to getFloat64 | provenance | MaD:201 | +| bslx.cpp:277:274:277:277 | *call to getFloat64 | bslx.cpp:277:287:277:292 | *call to getString | provenance | MaD:212 | +| bslx.cpp:277:287:277:292 | *call to getString | bslx.cpp:277:305:277:315 | *call to getArrayInt8 | provenance | MaD:191 | +| bslx.cpp:277:305:277:315 | *call to getArrayInt8 | bslx.cpp:277:329:277:340 | *call to getArrayUint8 | provenance | MaD:199 | +| bslx.cpp:277:329:277:340 | *call to getArrayUint8 | bslx.cpp:277:354:277:364 | *call to getArrayInt16 | provenance | MaD:184 | +| bslx.cpp:277:354:277:364 | *call to getArrayInt16 | bslx.cpp:277:379:277:390 | *call to getArrayUint16 | provenance | MaD:192 | +| bslx.cpp:277:379:277:390 | *call to getArrayUint16 | bslx.cpp:277:404:277:414 | *call to getArrayInt24 | provenance | MaD:185 | +| bslx.cpp:277:404:277:414 | *call to getArrayInt24 | bslx.cpp:277:429:277:440 | *call to getArrayUint24 | provenance | MaD:193 | +| bslx.cpp:277:429:277:440 | *call to getArrayUint24 | bslx.cpp:277:454:277:464 | *call to getArrayInt32 | provenance | MaD:186 | +| bslx.cpp:277:454:277:464 | *call to getArrayInt32 | bslx.cpp:277:479:277:490 | *call to getArrayUint32 | provenance | MaD:194 | +| bslx.cpp:277:479:277:490 | *call to getArrayUint32 | bslx.cpp:277:504:277:515 | *call to getArrayInt40 | provenance | MaD:187 | +| bslx.cpp:277:504:277:515 | *call to getArrayInt40 | bslx.cpp:277:530:277:542 | *call to getArrayUint40 | provenance | MaD:195 | +| bslx.cpp:277:530:277:542 | *call to getArrayUint40 | bslx.cpp:277:556:277:567 | *call to getArrayInt48 | provenance | MaD:188 | +| bslx.cpp:277:556:277:567 | *call to getArrayInt48 | bslx.cpp:277:582:277:594 | *call to getArrayUint48 | provenance | MaD:196 | +| bslx.cpp:277:582:277:594 | *call to getArrayUint48 | bslx.cpp:277:608:277:619 | *call to getArrayInt56 | provenance | MaD:189 | +| bslx.cpp:277:608:277:619 | *call to getArrayInt56 | bslx.cpp:277:634:277:646 | *call to getArrayUint56 | provenance | MaD:197 | +| bslx.cpp:277:634:277:646 | *call to getArrayUint56 | bslx.cpp:277:660:277:671 | *call to getArrayInt64 | provenance | MaD:190 | +| bslx.cpp:277:660:277:671 | *call to getArrayInt64 | bslx.cpp:277:686:277:698 | *call to getArrayUint64 | provenance | MaD:198 | +| bslx.cpp:277:686:277:698 | *call to getArrayUint64 | bslx.cpp:277:714:277:724 | *call to getArrayFloat32 | provenance | MaD:182 | +| bslx.cpp:277:714:277:724 | *call to getArrayFloat32 | bslx.cpp:277:740:277:750 | *call to getArrayFloat64 | provenance | MaD:183 | +| bslx.cpp:277:740:277:750 | *call to getArrayFloat64 | bslx.cpp:277:761:277:763 | getString output argument | provenance | MaD:211 | | bslx.cpp:277:761:277:763 | getString output argument | bslx.cpp:278:7:278:17 | * ... | provenance | TaintFunction | | bslx.cpp:282:33:282:40 | call to source | bslx.cpp:283:46:283:49 | *call to data | provenance | TaintFunction | | bslx.cpp:283:34:283:39 | call to ByteInStream | bslx.cpp:285:53:285:58 | *stream | provenance | | | bslx.cpp:283:34:283:39 | call to ByteInStream | bslx.cpp:287:53:287:58 | *stream | provenance | | | bslx.cpp:283:34:283:39 | call to ByteInStream | bslx.cpp:290:53:290:58 | *stream | provenance | | -| bslx.cpp:283:46:283:49 | *call to data | bslx.cpp:283:34:283:39 | call to ByteInStream | provenance | MaD:108 | -| bslx.cpp:285:53:285:58 | *stream | bslx.cpp:285:61:285:61 | bdexStreamIn output argument | provenance | MaD:106 | +| bslx.cpp:283:46:283:49 | *call to data | bslx.cpp:283:34:283:39 | call to ByteInStream | provenance | MaD:137 | +| bslx.cpp:285:53:285:58 | *stream | bslx.cpp:285:61:285:61 | bdexStreamIn output argument | provenance | MaD:135 | | bslx.cpp:285:61:285:61 | bdexStreamIn output argument | bslx.cpp:286:7:286:7 | x | provenance | | | bslx.cpp:285:61:285:61 | bdexStreamIn output argument | bslx.cpp:288:7:288:7 | x | provenance | | -| bslx.cpp:287:53:287:58 | *stream | bslx.cpp:287:61:287:61 | bdexStreamIn output argument | provenance | MaD:106 | +| bslx.cpp:287:53:287:58 | *stream | bslx.cpp:287:61:287:61 | bdexStreamIn output argument | provenance | MaD:135 | | bslx.cpp:287:61:287:61 | bdexStreamIn output argument | bslx.cpp:288:7:288:7 | x | provenance | | -| bslx.cpp:290:52:290:66 | *call to bdexStreamIn | bslx.cpp:290:77:290:79 | getString output argument | provenance | MaD:139 | -| bslx.cpp:290:53:290:58 | *stream | bslx.cpp:290:52:290:66 | *call to bdexStreamIn | provenance | MaD:107 | +| bslx.cpp:290:52:290:66 | *call to bdexStreamIn | bslx.cpp:290:77:290:79 | getString output argument | provenance | MaD:168 | +| bslx.cpp:290:53:290:58 | *stream | bslx.cpp:290:52:290:66 | *call to bdexStreamIn | provenance | MaD:136 | | bslx.cpp:290:77:290:79 | getString output argument | bslx.cpp:291:7:291:17 | * ... | provenance | TaintFunction | | bslx.cpp:295:33:295:40 | call to source | bslx.cpp:296:46:296:49 | *call to data | provenance | TaintFunction | | bslx.cpp:296:34:296:39 | call to ByteInStream | bslx.cpp:298:53:298:58 | *stream | provenance | | -| bslx.cpp:296:46:296:49 | *call to data | bslx.cpp:296:34:296:39 | call to ByteInStream | provenance | MaD:108 | -| bslx.cpp:298:53:298:58 | *stream | bslx.cpp:298:61:298:63 | bdexStreamIn output argument | provenance | MaD:106 | +| bslx.cpp:296:46:296:49 | *call to data | bslx.cpp:296:34:296:39 | call to ByteInStream | provenance | MaD:137 | +| bslx.cpp:298:53:298:58 | *stream | bslx.cpp:298:61:298:63 | bdexStreamIn output argument | provenance | MaD:135 | | bslx.cpp:298:61:298:63 | bdexStreamIn output argument | bslx.cpp:299:7:299:17 | * ... | provenance | TaintFunction | | bslx.cpp:309:33:309:40 | call to source | bslx.cpp:310:46:310:49 | *call to data | provenance | TaintFunction | | bslx.cpp:310:34:310:39 | call to ByteInStream | bslx.cpp:312:53:312:58 | *stream | provenance | | -| bslx.cpp:310:46:310:49 | *call to data | bslx.cpp:310:34:310:39 | call to ByteInStream | provenance | MaD:108 | -| bslx.cpp:312:53:312:58 | *stream | bslx.cpp:312:61:312:63 | bdexStreamIn output argument | provenance | MaD:106 | +| bslx.cpp:310:46:310:49 | *call to data | bslx.cpp:310:34:310:39 | call to ByteInStream | provenance | MaD:137 | +| bslx.cpp:312:53:312:58 | *stream | bslx.cpp:312:61:312:63 | bdexStreamIn output argument | provenance | MaD:135 | | bslx.cpp:312:61:312:63 | bdexStreamIn output argument | bslx.cpp:313:7:313:9 | out | provenance | | | bslx.cpp:322:40:322:60 | call to source | bslx.cpp:322:40:322:60 | call to source | provenance | | | bslx.cpp:322:40:322:60 | call to source | bslx.cpp:323:15:323:18 | *data | provenance | | | bslx.cpp:323:2:323:7 | reset output argument | bslx.cpp:325:2:325:7 | *stream | provenance | | -| bslx.cpp:323:15:323:18 | *data | bslx.cpp:323:2:323:7 | reset output argument | provenance | MaD:150 | -| bslx.cpp:325:2:325:7 | *stream | bslx.cpp:325:19:325:21 | getString output argument | provenance | MaD:139 | +| bslx.cpp:323:15:323:18 | *data | bslx.cpp:323:2:323:7 | reset output argument | provenance | MaD:179 | +| bslx.cpp:325:2:325:7 | *stream | bslx.cpp:325:19:325:21 | getString output argument | provenance | MaD:168 | | bslx.cpp:325:19:325:21 | getString output argument | bslx.cpp:326:7:326:17 | * ... | provenance | TaintFunction | | bslx.cpp:330:33:330:40 | call to source | bslx.cpp:331:46:331:49 | *call to data | provenance | TaintFunction | | bslx.cpp:331:34:331:39 | call to ByteInStream | bslx.cpp:334:2:334:7 | *stream | provenance | | -| bslx.cpp:331:46:331:49 | *call to data | bslx.cpp:331:34:331:39 | call to ByteInStream | provenance | MaD:108 | -| bslx.cpp:334:2:334:7 | *stream | bslx.cpp:334:19:334:21 | getString output argument | provenance | MaD:139 | +| bslx.cpp:331:46:331:49 | *call to data | bslx.cpp:331:34:331:39 | call to ByteInStream | provenance | MaD:137 | +| bslx.cpp:334:2:334:7 | *stream | bslx.cpp:334:19:334:21 | getString output argument | provenance | MaD:168 | | bslx.cpp:334:19:334:21 | getString output argument | bslx.cpp:335:7:335:17 | * ... | provenance | TaintFunction | | bslx.cpp:349:33:349:40 | call to source | bslx.cpp:350:46:350:49 | *call to data | provenance | TaintFunction | | bslx.cpp:350:34:350:39 | call to ByteInStream | bslx.cpp:354:2:354:7 | *stream | provenance | | -| bslx.cpp:350:46:350:49 | *call to data | bslx.cpp:350:34:350:39 | call to ByteInStream | provenance | MaD:108 | -| bslx.cpp:354:2:354:7 | *stream | bslx.cpp:354:19:354:21 | getString output argument | provenance | MaD:139 | +| bslx.cpp:350:46:350:49 | *call to data | bslx.cpp:350:34:350:39 | call to ByteInStream | provenance | MaD:137 | +| bslx.cpp:354:2:354:7 | *stream | bslx.cpp:354:19:354:21 | getString output argument | provenance | MaD:168 | | bslx.cpp:354:19:354:21 | getString output argument | bslx.cpp:356:7:356:17 | * ... | provenance | TaintFunction | | protobuf.cpp:117:27:117:51 | call to source | protobuf.cpp:117:27:117:51 | call to source | provenance | | | protobuf.cpp:117:27:117:51 | call to source | protobuf.cpp:118:22:118:25 | data | provenance | | | protobuf.cpp:118:2:118:4 | ParseFromString output argument | protobuf.cpp:119:7:119:9 | msg | provenance | | -| protobuf.cpp:118:22:118:25 | data | protobuf.cpp:118:2:118:4 | ParseFromString output argument | provenance | MaD:230 | +| protobuf.cpp:118:22:118:25 | data | protobuf.cpp:118:2:118:4 | ParseFromString output argument | provenance | MaD:259 | | protobuf.cpp:124:20:124:37 | call to source | protobuf.cpp:124:20:124:37 | call to source | provenance | | | protobuf.cpp:124:20:124:37 | call to source | protobuf.cpp:125:22:125:25 | *data | provenance | | | protobuf.cpp:125:2:125:4 | ParseFromString output argument | protobuf.cpp:126:7:126:9 | msg | provenance | | -| protobuf.cpp:125:22:125:25 | *data | protobuf.cpp:125:2:125:4 | ParseFromString output argument | provenance | MaD:229 | +| protobuf.cpp:125:22:125:25 | *data | protobuf.cpp:125:2:125:4 | ParseFromString output argument | provenance | MaD:258 | | protobuf.cpp:131:27:131:51 | call to source | protobuf.cpp:131:27:131:51 | call to source | provenance | | | protobuf.cpp:131:27:131:51 | call to source | protobuf.cpp:132:29:132:32 | data | provenance | | | protobuf.cpp:132:2:132:4 | ParsePartialFromString output argument | protobuf.cpp:133:7:133:9 | msg | provenance | | -| protobuf.cpp:132:29:132:32 | data | protobuf.cpp:132:2:132:4 | ParsePartialFromString output argument | provenance | MaD:238 | +| protobuf.cpp:132:29:132:32 | data | protobuf.cpp:132:2:132:4 | ParsePartialFromString output argument | provenance | MaD:267 | | protobuf.cpp:138:20:138:37 | call to source | protobuf.cpp:138:20:138:37 | call to source | provenance | | | protobuf.cpp:138:20:138:37 | call to source | protobuf.cpp:139:29:139:32 | *data | provenance | | | protobuf.cpp:139:2:139:4 | ParsePartialFromString output argument | protobuf.cpp:140:7:140:9 | msg | provenance | | -| protobuf.cpp:139:29:139:32 | *data | protobuf.cpp:139:2:139:4 | ParsePartialFromString output argument | provenance | MaD:237 | +| protobuf.cpp:139:29:139:32 | *data | protobuf.cpp:139:2:139:4 | ParsePartialFromString output argument | provenance | MaD:266 | | protobuf.cpp:145:27:145:51 | call to source | protobuf.cpp:145:27:145:51 | call to source | provenance | | | protobuf.cpp:145:27:145:51 | call to source | protobuf.cpp:146:22:146:25 | data | provenance | | | protobuf.cpp:146:2:146:4 | MergeFromString output argument | protobuf.cpp:147:7:147:9 | msg | provenance | | -| protobuf.cpp:146:22:146:25 | data | protobuf.cpp:146:2:146:4 | MergeFromString output argument | provenance | MaD:218 | +| protobuf.cpp:146:22:146:25 | data | protobuf.cpp:146:2:146:4 | MergeFromString output argument | provenance | MaD:247 | | protobuf.cpp:152:20:152:37 | call to source | protobuf.cpp:152:20:152:37 | call to source | provenance | | | protobuf.cpp:152:20:152:37 | call to source | protobuf.cpp:153:22:153:25 | *data | provenance | | | protobuf.cpp:153:2:153:4 | MergeFromString output argument | protobuf.cpp:154:7:154:9 | msg | provenance | | -| protobuf.cpp:153:22:153:25 | *data | protobuf.cpp:153:2:153:4 | MergeFromString output argument | provenance | MaD:217 | +| protobuf.cpp:153:22:153:25 | *data | protobuf.cpp:153:2:153:4 | MergeFromString output argument | provenance | MaD:246 | | protobuf.cpp:159:27:159:51 | call to source | protobuf.cpp:159:27:159:51 | call to source | provenance | | | protobuf.cpp:159:27:159:51 | call to source | protobuf.cpp:160:29:160:32 | data | provenance | | | protobuf.cpp:160:2:160:4 | MergePartialFromString output argument | protobuf.cpp:161:7:161:9 | msg | provenance | | -| protobuf.cpp:160:29:160:32 | data | protobuf.cpp:160:2:160:4 | MergePartialFromString output argument | provenance | MaD:223 | +| protobuf.cpp:160:29:160:32 | data | protobuf.cpp:160:2:160:4 | MergePartialFromString output argument | provenance | MaD:252 | | protobuf.cpp:166:20:166:37 | call to source | protobuf.cpp:166:20:166:37 | call to source | provenance | | | protobuf.cpp:166:20:166:37 | call to source | protobuf.cpp:167:29:167:32 | *data | provenance | | | protobuf.cpp:167:2:167:4 | MergePartialFromString output argument | protobuf.cpp:168:7:168:9 | msg | provenance | | -| protobuf.cpp:167:29:167:32 | *data | protobuf.cpp:167:2:167:4 | MergePartialFromString output argument | provenance | MaD:222 | +| protobuf.cpp:167:29:167:32 | *data | protobuf.cpp:167:2:167:4 | MergePartialFromString output argument | provenance | MaD:251 | | protobuf.cpp:173:19:173:38 | call to source | protobuf.cpp:174:21:174:31 | *call to data | provenance | TaintFunction | | protobuf.cpp:174:2:174:4 | ParseFromArray output argument | protobuf.cpp:175:7:175:9 | msg | provenance | | -| protobuf.cpp:174:21:174:31 | *call to data | protobuf.cpp:174:2:174:4 | ParseFromArray output argument | provenance | MaD:224 | +| protobuf.cpp:174:21:174:31 | *call to data | protobuf.cpp:174:2:174:4 | ParseFromArray output argument | provenance | MaD:253 | | protobuf.cpp:180:19:180:38 | call to source | protobuf.cpp:181:28:181:38 | *call to data | provenance | TaintFunction | | protobuf.cpp:181:2:181:4 | ParsePartialFromArray output argument | protobuf.cpp:182:7:182:9 | msg | provenance | | -| protobuf.cpp:181:28:181:38 | *call to data | protobuf.cpp:181:2:181:4 | ParsePartialFromArray output argument | provenance | MaD:232 | +| protobuf.cpp:181:28:181:38 | *call to data | protobuf.cpp:181:2:181:4 | ParsePartialFromArray output argument | provenance | MaD:261 | | protobuf.cpp:187:20:187:37 | call to source | protobuf.cpp:187:20:187:37 | call to source | provenance | | | protobuf.cpp:187:20:187:37 | call to source | protobuf.cpp:188:20:188:23 | *data | provenance | | | protobuf.cpp:188:2:188:4 | ParseFromCord output argument | protobuf.cpp:189:7:189:9 | msg | provenance | | -| protobuf.cpp:188:20:188:23 | *data | protobuf.cpp:188:2:188:4 | ParseFromCord output argument | provenance | MaD:227 | +| protobuf.cpp:188:20:188:23 | *data | protobuf.cpp:188:2:188:4 | ParseFromCord output argument | provenance | MaD:256 | | protobuf.cpp:194:20:194:37 | call to source | protobuf.cpp:194:20:194:37 | call to source | provenance | | | protobuf.cpp:194:20:194:37 | call to source | protobuf.cpp:195:27:195:30 | *data | provenance | | | protobuf.cpp:195:2:195:4 | ParsePartialFromCord output argument | protobuf.cpp:196:7:196:9 | msg | provenance | | -| protobuf.cpp:195:27:195:30 | *data | protobuf.cpp:195:2:195:4 | ParsePartialFromCord output argument | provenance | MaD:235 | +| protobuf.cpp:195:27:195:30 | *data | protobuf.cpp:195:2:195:4 | ParsePartialFromCord output argument | provenance | MaD:264 | | protobuf.cpp:201:20:201:37 | call to source | protobuf.cpp:201:20:201:37 | call to source | provenance | | | protobuf.cpp:201:20:201:37 | call to source | protobuf.cpp:202:20:202:23 | *data | provenance | | | protobuf.cpp:202:2:202:4 | MergeFromCord output argument | protobuf.cpp:203:7:203:9 | msg | provenance | | -| protobuf.cpp:202:20:202:23 | *data | protobuf.cpp:202:2:202:4 | MergeFromCord output argument | provenance | MaD:216 | +| protobuf.cpp:202:20:202:23 | *data | protobuf.cpp:202:2:202:4 | MergeFromCord output argument | provenance | MaD:245 | | protobuf.cpp:208:20:208:37 | call to source | protobuf.cpp:208:20:208:37 | call to source | provenance | | | protobuf.cpp:208:20:208:37 | call to source | protobuf.cpp:209:27:209:30 | *data | provenance | | | protobuf.cpp:209:2:209:4 | MergePartialFromCord output argument | protobuf.cpp:210:7:210:9 | msg | provenance | | -| protobuf.cpp:209:27:209:30 | *data | protobuf.cpp:209:2:209:4 | MergePartialFromCord output argument | provenance | MaD:221 | +| protobuf.cpp:209:27:209:30 | *data | protobuf.cpp:209:2:209:4 | MergePartialFromCord output argument | provenance | MaD:250 | | protobuf.cpp:215:20:215:39 | call to source | protobuf.cpp:215:20:215:39 | call to source | provenance | | | protobuf.cpp:215:20:215:39 | call to source | protobuf.cpp:216:23:216:25 | *& ... | provenance | | | protobuf.cpp:216:2:216:4 | ParseFromIstream output argument | protobuf.cpp:217:7:217:9 | msg | provenance | | -| protobuf.cpp:216:23:216:25 | *& ... | protobuf.cpp:216:2:216:4 | ParseFromIstream output argument | provenance | MaD:228 | +| protobuf.cpp:216:23:216:25 | *& ... | protobuf.cpp:216:2:216:4 | ParseFromIstream output argument | provenance | MaD:257 | | protobuf.cpp:222:20:222:39 | call to source | protobuf.cpp:222:20:222:39 | call to source | provenance | | | protobuf.cpp:222:20:222:39 | call to source | protobuf.cpp:223:30:223:32 | *& ... | provenance | | | protobuf.cpp:223:2:223:4 | ParsePartialFromIstream output argument | protobuf.cpp:224:7:224:9 | msg | provenance | | -| protobuf.cpp:223:30:223:32 | *& ... | protobuf.cpp:223:2:223:4 | ParsePartialFromIstream output argument | provenance | MaD:236 | +| protobuf.cpp:223:30:223:32 | *& ... | protobuf.cpp:223:2:223:4 | ParsePartialFromIstream output argument | provenance | MaD:265 | | protobuf.cpp:229:27:229:53 | call to source | protobuf.cpp:229:27:229:53 | call to source | provenance | | | protobuf.cpp:229:27:229:53 | call to source | protobuf.cpp:230:30:230:32 | *& ... | provenance | | | protobuf.cpp:230:2:230:4 | ParseFromZeroCopyStream output argument | protobuf.cpp:231:7:231:9 | msg | provenance | | -| protobuf.cpp:230:30:230:32 | *& ... | protobuf.cpp:230:2:230:4 | ParseFromZeroCopyStream output argument | provenance | MaD:231 | +| protobuf.cpp:230:30:230:32 | *& ... | protobuf.cpp:230:2:230:4 | ParseFromZeroCopyStream output argument | provenance | MaD:260 | | protobuf.cpp:236:27:236:53 | call to source | protobuf.cpp:236:27:236:53 | call to source | provenance | | | protobuf.cpp:236:27:236:53 | call to source | protobuf.cpp:237:37:237:39 | *& ... | provenance | | | protobuf.cpp:237:2:237:4 | ParsePartialFromZeroCopyStream output argument | protobuf.cpp:238:7:238:9 | msg | provenance | | -| protobuf.cpp:237:37:237:39 | *& ... | protobuf.cpp:237:2:237:4 | ParsePartialFromZeroCopyStream output argument | provenance | MaD:239 | +| protobuf.cpp:237:37:237:39 | *& ... | protobuf.cpp:237:2:237:4 | ParsePartialFromZeroCopyStream output argument | provenance | MaD:268 | | protobuf.cpp:243:27:243:53 | call to source | protobuf.cpp:243:27:243:53 | call to source | provenance | | | protobuf.cpp:243:27:243:53 | call to source | protobuf.cpp:244:37:244:39 | *& ... | provenance | | | protobuf.cpp:244:2:244:4 | ParseFromBoundedZeroCopyStream output argument | protobuf.cpp:245:7:245:9 | msg | provenance | | -| protobuf.cpp:244:37:244:39 | *& ... | protobuf.cpp:244:2:244:4 | ParseFromBoundedZeroCopyStream output argument | provenance | MaD:225 | +| protobuf.cpp:244:37:244:39 | *& ... | protobuf.cpp:244:2:244:4 | ParseFromBoundedZeroCopyStream output argument | provenance | MaD:254 | | protobuf.cpp:250:27:250:53 | call to source | protobuf.cpp:250:27:250:53 | call to source | provenance | | | protobuf.cpp:250:27:250:53 | call to source | protobuf.cpp:251:44:251:46 | *& ... | provenance | | | protobuf.cpp:251:2:251:4 | ParsePartialFromBoundedZeroCopyStream output argument | protobuf.cpp:252:7:252:9 | msg | provenance | | -| protobuf.cpp:251:44:251:46 | *& ... | protobuf.cpp:251:2:251:4 | ParsePartialFromBoundedZeroCopyStream output argument | provenance | MaD:233 | +| protobuf.cpp:251:44:251:46 | *& ... | protobuf.cpp:251:2:251:4 | ParsePartialFromBoundedZeroCopyStream output argument | provenance | MaD:262 | | protobuf.cpp:257:27:257:53 | call to source | protobuf.cpp:257:27:257:53 | call to source | provenance | | | protobuf.cpp:257:27:257:53 | call to source | protobuf.cpp:258:37:258:39 | *& ... | provenance | | | protobuf.cpp:258:2:258:4 | MergeFromBoundedZeroCopyStream output argument | protobuf.cpp:259:7:259:9 | msg | provenance | | -| protobuf.cpp:258:37:258:39 | *& ... | protobuf.cpp:258:2:258:4 | MergeFromBoundedZeroCopyStream output argument | provenance | MaD:214 | +| protobuf.cpp:258:37:258:39 | *& ... | protobuf.cpp:258:2:258:4 | MergeFromBoundedZeroCopyStream output argument | provenance | MaD:243 | | protobuf.cpp:264:27:264:53 | call to source | protobuf.cpp:264:27:264:53 | call to source | provenance | | | protobuf.cpp:264:27:264:53 | call to source | protobuf.cpp:265:44:265:46 | *& ... | provenance | | | protobuf.cpp:265:2:265:4 | MergePartialFromBoundedZeroCopyStream output argument | protobuf.cpp:266:7:266:9 | msg | provenance | | -| protobuf.cpp:265:44:265:46 | *& ... | protobuf.cpp:265:2:265:4 | MergePartialFromBoundedZeroCopyStream output argument | provenance | MaD:219 | +| protobuf.cpp:265:44:265:46 | *& ... | protobuf.cpp:265:2:265:4 | MergePartialFromBoundedZeroCopyStream output argument | provenance | MaD:248 | | protobuf.cpp:271:24:271:47 | call to source | protobuf.cpp:271:24:271:47 | call to source | provenance | | | protobuf.cpp:271:24:271:47 | call to source | protobuf.cpp:272:27:272:29 | *& ... | provenance | | | protobuf.cpp:272:2:272:4 | ParseFromCodedStream output argument | protobuf.cpp:273:7:273:9 | msg | provenance | | -| protobuf.cpp:272:27:272:29 | *& ... | protobuf.cpp:272:2:272:4 | ParseFromCodedStream output argument | provenance | MaD:226 | +| protobuf.cpp:272:27:272:29 | *& ... | protobuf.cpp:272:2:272:4 | ParseFromCodedStream output argument | provenance | MaD:255 | | protobuf.cpp:278:24:278:47 | call to source | protobuf.cpp:278:24:278:47 | call to source | provenance | | | protobuf.cpp:278:24:278:47 | call to source | protobuf.cpp:279:34:279:36 | *& ... | provenance | | | protobuf.cpp:279:2:279:4 | ParsePartialFromCodedStream output argument | protobuf.cpp:280:7:280:9 | msg | provenance | | -| protobuf.cpp:279:34:279:36 | *& ... | protobuf.cpp:279:2:279:4 | ParsePartialFromCodedStream output argument | provenance | MaD:234 | +| protobuf.cpp:279:34:279:36 | *& ... | protobuf.cpp:279:2:279:4 | ParsePartialFromCodedStream output argument | provenance | MaD:263 | | protobuf.cpp:285:24:285:47 | call to source | protobuf.cpp:285:24:285:47 | call to source | provenance | | | protobuf.cpp:285:24:285:47 | call to source | protobuf.cpp:286:27:286:29 | *& ... | provenance | | | protobuf.cpp:286:2:286:4 | MergeFromCodedStream output argument | protobuf.cpp:287:7:287:9 | msg | provenance | | -| protobuf.cpp:286:27:286:29 | *& ... | protobuf.cpp:286:2:286:4 | MergeFromCodedStream output argument | provenance | MaD:215 | +| protobuf.cpp:286:27:286:29 | *& ... | protobuf.cpp:286:2:286:4 | MergeFromCodedStream output argument | provenance | MaD:244 | | protobuf.cpp:292:24:292:47 | call to source | protobuf.cpp:292:24:292:47 | call to source | provenance | | | protobuf.cpp:292:24:292:47 | call to source | protobuf.cpp:293:34:293:36 | *& ... | provenance | | | protobuf.cpp:293:2:293:4 | MergePartialFromCodedStream output argument | protobuf.cpp:294:7:294:9 | msg | provenance | | -| protobuf.cpp:293:34:293:36 | *& ... | protobuf.cpp:293:2:293:4 | MergePartialFromCodedStream output argument | provenance | MaD:220 | +| protobuf.cpp:293:34:293:36 | *& ... | protobuf.cpp:293:2:293:4 | MergePartialFromCodedStream output argument | provenance | MaD:249 | | protobuf.cpp:307:15:307:28 | call to source | protobuf.cpp:307:15:307:28 | call to source | provenance | | | protobuf.cpp:307:15:307:28 | call to source | protobuf.cpp:309:2:309:4 | *msg | provenance | | -| protobuf.cpp:309:2:309:4 | *msg | protobuf.cpp:309:24:309:27 | SerializeToString output argument | provenance | MaD:254 | +| protobuf.cpp:309:2:309:4 | *msg | protobuf.cpp:309:24:309:27 | SerializeToString output argument | provenance | MaD:283 | | protobuf.cpp:309:24:309:27 | SerializeToString output argument | protobuf.cpp:310:7:310:9 | out | provenance | | | protobuf.cpp:314:15:314:28 | call to source | protobuf.cpp:314:15:314:28 | call to source | provenance | | | protobuf.cpp:314:15:314:28 | call to source | protobuf.cpp:316:2:316:4 | *msg | provenance | | -| protobuf.cpp:316:2:316:4 | *msg | protobuf.cpp:316:31:316:34 | SerializePartialToString output argument | provenance | MaD:248 | +| protobuf.cpp:316:2:316:4 | *msg | protobuf.cpp:316:31:316:34 | SerializePartialToString output argument | provenance | MaD:277 | | protobuf.cpp:316:31:316:34 | SerializePartialToString output argument | protobuf.cpp:317:7:317:9 | out | provenance | | | protobuf.cpp:321:15:321:28 | call to source | protobuf.cpp:321:15:321:28 | call to source | provenance | | | protobuf.cpp:321:15:321:28 | call to source | protobuf.cpp:323:2:323:4 | *msg | provenance | | -| protobuf.cpp:323:2:323:4 | *msg | protobuf.cpp:323:21:323:24 | AppendToString output argument | provenance | MaD:213 | +| protobuf.cpp:323:2:323:4 | *msg | protobuf.cpp:323:21:323:24 | AppendToString output argument | provenance | MaD:242 | | protobuf.cpp:323:21:323:24 | AppendToString output argument | protobuf.cpp:324:7:324:9 | out | provenance | | | protobuf.cpp:328:15:328:28 | call to source | protobuf.cpp:328:15:328:28 | call to source | provenance | | | protobuf.cpp:328:15:328:28 | call to source | protobuf.cpp:330:2:330:4 | *msg | provenance | | -| protobuf.cpp:330:2:330:4 | *msg | protobuf.cpp:330:28:330:31 | AppendPartialToString output argument | provenance | MaD:211 | +| protobuf.cpp:330:2:330:4 | *msg | protobuf.cpp:330:28:330:31 | AppendPartialToString output argument | provenance | MaD:240 | | protobuf.cpp:330:28:330:31 | AppendPartialToString output argument | protobuf.cpp:331:7:331:9 | out | provenance | | | protobuf.cpp:335:15:335:28 | call to source | protobuf.cpp:335:15:335:28 | call to source | provenance | | | protobuf.cpp:335:15:335:28 | call to source | protobuf.cpp:337:2:337:4 | *msg | provenance | | -| protobuf.cpp:337:2:337:4 | *msg | protobuf.cpp:337:24:337:27 | SerializeToString output argument | provenance | MaD:254 | +| protobuf.cpp:337:2:337:4 | *msg | protobuf.cpp:337:24:337:27 | SerializeToString output argument | provenance | MaD:283 | | protobuf.cpp:337:24:337:27 | SerializeToString output argument | protobuf.cpp:338:7:338:9 | out | provenance | | | protobuf.cpp:342:15:342:28 | call to source | protobuf.cpp:342:15:342:28 | call to source | provenance | | | protobuf.cpp:342:15:342:28 | call to source | protobuf.cpp:344:2:344:4 | *msg | provenance | | -| protobuf.cpp:344:2:344:4 | *msg | protobuf.cpp:344:31:344:34 | SerializePartialToString output argument | provenance | MaD:248 | +| protobuf.cpp:344:2:344:4 | *msg | protobuf.cpp:344:31:344:34 | SerializePartialToString output argument | provenance | MaD:277 | | protobuf.cpp:344:31:344:34 | SerializePartialToString output argument | protobuf.cpp:345:7:345:9 | out | provenance | | | protobuf.cpp:349:15:349:28 | call to source | protobuf.cpp:349:15:349:28 | call to source | provenance | | | protobuf.cpp:349:15:349:28 | call to source | protobuf.cpp:351:2:351:4 | *msg | provenance | | -| protobuf.cpp:351:2:351:4 | *msg | protobuf.cpp:351:21:351:24 | AppendToString output argument | provenance | MaD:213 | +| protobuf.cpp:351:2:351:4 | *msg | protobuf.cpp:351:21:351:24 | AppendToString output argument | provenance | MaD:242 | | protobuf.cpp:351:21:351:24 | AppendToString output argument | protobuf.cpp:352:7:352:9 | out | provenance | | | protobuf.cpp:356:15:356:28 | call to source | protobuf.cpp:356:15:356:28 | call to source | provenance | | | protobuf.cpp:356:15:356:28 | call to source | protobuf.cpp:358:2:358:4 | *msg | provenance | | -| protobuf.cpp:358:2:358:4 | *msg | protobuf.cpp:358:28:358:31 | AppendPartialToString output argument | provenance | MaD:211 | +| protobuf.cpp:358:2:358:4 | *msg | protobuf.cpp:358:28:358:31 | AppendPartialToString output argument | provenance | MaD:240 | | protobuf.cpp:358:28:358:31 | AppendPartialToString output argument | protobuf.cpp:359:7:359:9 | out | provenance | | | protobuf.cpp:363:15:363:28 | call to source | protobuf.cpp:363:15:363:28 | call to source | provenance | | | protobuf.cpp:363:15:363:28 | call to source | protobuf.cpp:365:2:365:4 | *msg | provenance | | -| protobuf.cpp:365:2:365:4 | *msg | protobuf.cpp:365:23:365:25 | SerializeToArray output argument | provenance | MaD:250 | +| protobuf.cpp:365:2:365:4 | *msg | protobuf.cpp:365:23:365:25 | SerializeToArray output argument | provenance | MaD:279 | | protobuf.cpp:365:23:365:25 | SerializeToArray output argument | protobuf.cpp:366:7:366:10 | * ... | provenance | | | protobuf.cpp:370:15:370:28 | call to source | protobuf.cpp:370:15:370:28 | call to source | provenance | | | protobuf.cpp:370:15:370:28 | call to source | protobuf.cpp:372:2:372:4 | *msg | provenance | | -| protobuf.cpp:372:2:372:4 | *msg | protobuf.cpp:372:30:372:32 | SerializePartialToArray output argument | provenance | MaD:244 | +| protobuf.cpp:372:2:372:4 | *msg | protobuf.cpp:372:30:372:32 | SerializePartialToArray output argument | provenance | MaD:273 | | protobuf.cpp:372:30:372:32 | SerializePartialToArray output argument | protobuf.cpp:373:7:373:10 | * ... | provenance | | | protobuf.cpp:377:15:377:28 | call to source | protobuf.cpp:377:15:377:28 | call to source | provenance | | | protobuf.cpp:377:15:377:28 | call to source | protobuf.cpp:379:2:379:4 | *msg | provenance | | -| protobuf.cpp:379:2:379:4 | *msg | protobuf.cpp:379:22:379:25 | SerializeToCord output argument | provenance | MaD:252 | +| protobuf.cpp:379:2:379:4 | *msg | protobuf.cpp:379:22:379:25 | SerializeToCord output argument | provenance | MaD:281 | | protobuf.cpp:379:22:379:25 | SerializeToCord output argument | protobuf.cpp:380:7:380:9 | out | provenance | | | protobuf.cpp:384:15:384:28 | call to source | protobuf.cpp:384:15:384:28 | call to source | provenance | | | protobuf.cpp:384:15:384:28 | call to source | protobuf.cpp:386:2:386:4 | *msg | provenance | | -| protobuf.cpp:386:2:386:4 | *msg | protobuf.cpp:386:29:386:32 | SerializePartialToCord output argument | provenance | MaD:246 | +| protobuf.cpp:386:2:386:4 | *msg | protobuf.cpp:386:29:386:32 | SerializePartialToCord output argument | provenance | MaD:275 | | protobuf.cpp:386:29:386:32 | SerializePartialToCord output argument | protobuf.cpp:387:7:387:9 | out | provenance | | | protobuf.cpp:391:15:391:28 | call to source | protobuf.cpp:391:15:391:28 | call to source | provenance | | | protobuf.cpp:391:15:391:28 | call to source | protobuf.cpp:393:2:393:4 | *msg | provenance | | -| protobuf.cpp:393:2:393:4 | *msg | protobuf.cpp:393:19:393:22 | AppendToCord output argument | provenance | MaD:212 | +| protobuf.cpp:393:2:393:4 | *msg | protobuf.cpp:393:19:393:22 | AppendToCord output argument | provenance | MaD:241 | | protobuf.cpp:393:19:393:22 | AppendToCord output argument | protobuf.cpp:394:7:394:9 | out | provenance | | | protobuf.cpp:398:15:398:28 | call to source | protobuf.cpp:398:15:398:28 | call to source | provenance | | | protobuf.cpp:398:15:398:28 | call to source | protobuf.cpp:400:2:400:4 | *msg | provenance | | -| protobuf.cpp:400:2:400:4 | *msg | protobuf.cpp:400:26:400:29 | AppendPartialToCord output argument | provenance | MaD:210 | +| protobuf.cpp:400:2:400:4 | *msg | protobuf.cpp:400:26:400:29 | AppendPartialToCord output argument | provenance | MaD:239 | | protobuf.cpp:400:26:400:29 | AppendPartialToCord output argument | protobuf.cpp:401:7:401:9 | out | provenance | | | protobuf.cpp:405:15:405:28 | call to source | protobuf.cpp:405:15:405:28 | call to source | provenance | | | protobuf.cpp:405:15:405:28 | call to source | protobuf.cpp:407:2:407:4 | *msg | provenance | | -| protobuf.cpp:407:2:407:4 | *msg | protobuf.cpp:407:25:407:28 | SerializeToOstream output argument | provenance | MaD:253 | +| protobuf.cpp:407:2:407:4 | *msg | protobuf.cpp:407:25:407:28 | SerializeToOstream output argument | provenance | MaD:282 | | protobuf.cpp:407:25:407:28 | SerializeToOstream output argument | protobuf.cpp:408:7:408:9 | out | provenance | | | protobuf.cpp:412:15:412:28 | call to source | protobuf.cpp:412:15:412:28 | call to source | provenance | | | protobuf.cpp:412:15:412:28 | call to source | protobuf.cpp:414:2:414:4 | *msg | provenance | | -| protobuf.cpp:414:2:414:4 | *msg | protobuf.cpp:414:32:414:35 | SerializePartialToOstream output argument | provenance | MaD:247 | +| protobuf.cpp:414:2:414:4 | *msg | protobuf.cpp:414:32:414:35 | SerializePartialToOstream output argument | provenance | MaD:276 | | protobuf.cpp:414:32:414:35 | SerializePartialToOstream output argument | protobuf.cpp:415:7:415:9 | out | provenance | | | protobuf.cpp:419:15:419:28 | call to source | protobuf.cpp:419:15:419:28 | call to source | provenance | | | protobuf.cpp:419:15:419:28 | call to source | protobuf.cpp:421:2:421:4 | *msg | provenance | | -| protobuf.cpp:421:2:421:4 | *msg | protobuf.cpp:421:32:421:35 | SerializeToZeroCopyStream output argument | provenance | MaD:255 | +| protobuf.cpp:421:2:421:4 | *msg | protobuf.cpp:421:32:421:35 | SerializeToZeroCopyStream output argument | provenance | MaD:284 | | protobuf.cpp:421:32:421:35 | SerializeToZeroCopyStream output argument | protobuf.cpp:422:7:422:9 | out | provenance | | | protobuf.cpp:426:15:426:28 | call to source | protobuf.cpp:426:15:426:28 | call to source | provenance | | | protobuf.cpp:426:15:426:28 | call to source | protobuf.cpp:428:2:428:4 | *msg | provenance | | -| protobuf.cpp:428:2:428:4 | *msg | protobuf.cpp:428:39:428:42 | SerializePartialToZeroCopyStream output argument | provenance | MaD:249 | +| protobuf.cpp:428:2:428:4 | *msg | protobuf.cpp:428:39:428:42 | SerializePartialToZeroCopyStream output argument | provenance | MaD:278 | | protobuf.cpp:428:39:428:42 | SerializePartialToZeroCopyStream output argument | protobuf.cpp:429:7:429:9 | out | provenance | | | protobuf.cpp:433:15:433:28 | call to source | protobuf.cpp:433:15:433:28 | call to source | provenance | | | protobuf.cpp:433:15:433:28 | call to source | protobuf.cpp:435:2:435:4 | *msg | provenance | | -| protobuf.cpp:435:2:435:4 | *msg | protobuf.cpp:435:29:435:32 | SerializeToCodedStream output argument | provenance | MaD:251 | +| protobuf.cpp:435:2:435:4 | *msg | protobuf.cpp:435:29:435:32 | SerializeToCodedStream output argument | provenance | MaD:280 | | protobuf.cpp:435:29:435:32 | SerializeToCodedStream output argument | protobuf.cpp:436:7:436:9 | out | provenance | | | protobuf.cpp:440:15:440:28 | call to source | protobuf.cpp:440:15:440:28 | call to source | provenance | | | protobuf.cpp:440:15:440:28 | call to source | protobuf.cpp:442:2:442:4 | *msg | provenance | | -| protobuf.cpp:442:2:442:4 | *msg | protobuf.cpp:442:36:442:39 | SerializePartialToCodedStream output argument | provenance | MaD:245 | +| protobuf.cpp:442:2:442:4 | *msg | protobuf.cpp:442:36:442:39 | SerializePartialToCodedStream output argument | provenance | MaD:274 | | protobuf.cpp:442:36:442:39 | SerializePartialToCodedStream output argument | protobuf.cpp:443:7:443:9 | out | provenance | | | protobuf.cpp:449:15:449:28 | call to source | protobuf.cpp:449:15:449:28 | call to source | provenance | | | protobuf.cpp:449:15:449:28 | call to source | protobuf.cpp:450:7:450:9 | *msg | provenance | | -| protobuf.cpp:450:7:450:9 | *msg | protobuf.cpp:450:11:450:27 | call to SerializeAsString | provenance | MaD:241 | +| protobuf.cpp:450:7:450:9 | *msg | protobuf.cpp:450:11:450:27 | call to SerializeAsString | provenance | MaD:270 | | protobuf.cpp:454:15:454:28 | call to source | protobuf.cpp:454:15:454:28 | call to source | provenance | | | protobuf.cpp:454:15:454:28 | call to source | protobuf.cpp:455:7:455:9 | *msg | provenance | | -| protobuf.cpp:455:7:455:9 | *msg | protobuf.cpp:455:11:455:34 | call to SerializePartialAsString | provenance | MaD:243 | +| protobuf.cpp:455:7:455:9 | *msg | protobuf.cpp:455:11:455:34 | call to SerializePartialAsString | provenance | MaD:272 | | protobuf.cpp:459:15:459:28 | call to source | protobuf.cpp:459:15:459:28 | call to source | provenance | | | protobuf.cpp:459:15:459:28 | call to source | protobuf.cpp:460:7:460:9 | *msg | provenance | | -| protobuf.cpp:460:7:460:9 | *msg | protobuf.cpp:460:11:460:25 | call to SerializeAsCord | provenance | MaD:240 | +| protobuf.cpp:460:7:460:9 | *msg | protobuf.cpp:460:11:460:25 | call to SerializeAsCord | provenance | MaD:269 | | protobuf.cpp:464:15:464:28 | call to source | protobuf.cpp:464:15:464:28 | call to source | provenance | | | protobuf.cpp:464:15:464:28 | call to source | protobuf.cpp:465:7:465:9 | *msg | provenance | | -| protobuf.cpp:465:7:465:9 | *msg | protobuf.cpp:465:11:465:32 | call to SerializePartialAsCord | provenance | MaD:242 | +| protobuf.cpp:465:7:465:9 | *msg | protobuf.cpp:465:11:465:32 | call to SerializePartialAsCord | provenance | MaD:271 | | test.cpp:7:47:7:52 | value2 | test.cpp:7:64:7:69 | value2 | provenance | | | test.cpp:7:64:7:69 | value2 | test.cpp:7:5:7:30 | *ymlStepGenerated_with_body | provenance | | | test.cpp:10:10:10:18 | call to ymlSource | test.cpp:10:10:10:18 | call to ymlSource | provenance | Src:MaD:48 | @@ -1313,6 +1482,179 @@ nodes | azure.cpp:295:10:295:20 | contentType | semmle.label | contentType | | azure.cpp:295:10:295:20 | contentType | semmle.label | contentType | | azure.cpp:295:10:295:20 | contentType | semmle.label | contentType | +| bal.cpp:145:19:145:26 | call to source | semmle.label | call to source | +| bal.cpp:146:23:146:51 | *call to data | semmle.label | *call to data | +| bal.cpp:149:17:149:18 | *sb | semmle.label | *sb | +| bal.cpp:149:21:149:24 | decode output argument | semmle.label | decode output argument | +| bal.cpp:150:7:150:17 | * ... | semmle.label | * ... | +| bal.cpp:154:19:154:26 | call to source | semmle.label | call to source | +| bal.cpp:155:21:155:47 | *call to data | semmle.label | *call to data | +| bal.cpp:158:17:158:19 | ** ... | semmle.label | ** ... | +| bal.cpp:158:22:158:25 | decode output argument | semmle.label | decode output argument | +| bal.cpp:159:7:159:17 | * ... | semmle.label | * ... | +| bal.cpp:163:19:163:26 | call to source | semmle.label | call to source | +| bal.cpp:164:23:164:51 | *call to data | semmle.label | *call to data | +| bal.cpp:167:20:167:21 | *sb | semmle.label | *sb | +| bal.cpp:167:24:167:27 | decodeAny output argument | semmle.label | decodeAny output argument | +| bal.cpp:168:7:168:17 | * ... | semmle.label | * ... | +| bal.cpp:173:18:173:25 | call to source | semmle.label | call to source | +| bal.cpp:176:17:176:37 | encode output argument | semmle.label | encode output argument | +| bal.cpp:176:40:176:42 | *obj | semmle.label | *obj | +| bal.cpp:177:7:177:12 | access to array | semmle.label | access to array | +| bal.cpp:181:18:181:25 | call to source | semmle.label | call to source | +| bal.cpp:184:20:184:40 | encodeAny output argument | semmle.label | encodeAny output argument | +| bal.cpp:184:43:184:45 | *obj | semmle.label | *obj | +| bal.cpp:185:7:185:12 | access to array | semmle.label | access to array | +| bal.cpp:192:19:192:26 | call to source | semmle.label | call to source | +| bal.cpp:193:23:193:51 | *call to data | semmle.label | *call to data | +| bal.cpp:197:17:197:18 | *sb | semmle.label | *sb | +| bal.cpp:197:21:197:24 | decode output argument | semmle.label | decode output argument | +| bal.cpp:198:7:198:17 | * ... | semmle.label | * ... | +| bal.cpp:202:19:202:26 | call to source | semmle.label | call to source | +| bal.cpp:203:21:203:47 | *call to data | semmle.label | *call to data | +| bal.cpp:207:17:207:19 | ** ... | semmle.label | ** ... | +| bal.cpp:207:22:207:25 | decode output argument | semmle.label | decode output argument | +| bal.cpp:208:7:208:17 | * ... | semmle.label | * ... | +| bal.cpp:212:19:212:26 | call to source | semmle.label | call to source | +| bal.cpp:213:23:213:51 | *call to data | semmle.label | *call to data | +| bal.cpp:216:20:216:21 | *sb | semmle.label | *sb | +| bal.cpp:216:24:216:27 | decodeAny output argument | semmle.label | decodeAny output argument | +| bal.cpp:217:7:217:17 | * ... | semmle.label | * ... | +| bal.cpp:221:18:221:25 | call to source | semmle.label | call to source | +| bal.cpp:225:17:225:37 | encode output argument | semmle.label | encode output argument | +| bal.cpp:225:40:225:42 | *obj | semmle.label | *obj | +| bal.cpp:226:7:226:12 | access to array | semmle.label | access to array | +| bal.cpp:230:18:230:25 | call to source | semmle.label | call to source | +| bal.cpp:233:20:233:40 | encodeAny output argument | semmle.label | encodeAny output argument | +| bal.cpp:233:43:233:45 | *obj | semmle.label | *obj | +| bal.cpp:234:7:234:12 | access to array | semmle.label | access to array | +| bal.cpp:239:19:239:26 | call to source | semmle.label | call to source | +| bal.cpp:240:23:240:51 | *call to data | semmle.label | *call to data | +| bal.cpp:243:17:243:18 | *sb | semmle.label | *sb | +| bal.cpp:243:21:243:24 | decode output argument | semmle.label | decode output argument | +| bal.cpp:246:17:246:37 | encode output argument | semmle.label | encode output argument | +| bal.cpp:246:40:246:42 | *rec | semmle.label | *rec | +| bal.cpp:247:7:247:12 | access to array | semmle.label | access to array | +| bal.cpp:262:19:262:26 | call to source | semmle.label | call to source | +| bal.cpp:263:21:263:47 | *call to data | semmle.label | *call to data | +| bal.cpp:266:17:266:19 | ** ... | semmle.label | ** ... | +| bal.cpp:266:22:266:25 | decode output argument | semmle.label | decode output argument | +| bal.cpp:267:7:267:17 | * ... | semmle.label | * ... | +| bal.cpp:271:19:271:26 | call to source | semmle.label | call to source | +| bal.cpp:272:21:272:47 | *call to data | semmle.label | *call to data | +| bal.cpp:275:34:275:52 | *call to decode | semmle.label | *call to decode | +| bal.cpp:275:34:275:52 | *call to decode | semmle.label | *call to decode | +| bal.cpp:275:35:275:37 | ** ... | semmle.label | ** ... | +| bal.cpp:275:40:275:43 | decode output argument | semmle.label | decode output argument | +| bal.cpp:276:7:276:17 | * ... | semmle.label | * ... | +| bal.cpp:277:7:277:9 | out | semmle.label | out | +| bal.cpp:281:19:281:26 | call to source | semmle.label | call to source | +| bal.cpp:282:23:282:51 | *call to data | semmle.label | *call to data | +| bal.cpp:285:17:285:18 | *sb | semmle.label | *sb | +| bal.cpp:285:21:285:24 | decode output argument | semmle.label | decode output argument | +| bal.cpp:286:7:286:17 | * ... | semmle.label | * ... | +| bal.cpp:290:19:290:26 | call to source | semmle.label | call to source | +| bal.cpp:293:22:293:25 | *call to data | semmle.label | *call to data | +| bal.cpp:293:43:293:46 | decode output argument | semmle.label | decode output argument | +| bal.cpp:294:7:294:17 | * ... | semmle.label | * ... | +| bal.cpp:318:19:318:26 | call to source | semmle.label | call to source | +| bal.cpp:319:21:319:47 | *call to data | semmle.label | *call to data | +| bal.cpp:322:20:322:22 | ** ... | semmle.label | ** ... | +| bal.cpp:322:25:322:28 | decodeAny output argument | semmle.label | decodeAny output argument | +| bal.cpp:323:7:323:17 | * ... | semmle.label | * ... | +| bal.cpp:327:19:327:26 | call to source | semmle.label | call to source | +| bal.cpp:328:21:328:47 | *call to data | semmle.label | *call to data | +| bal.cpp:331:37:331:48 | *call to decodeAny | semmle.label | *call to decodeAny | +| bal.cpp:331:37:331:48 | *call to decodeAny | semmle.label | *call to decodeAny | +| bal.cpp:331:38:331:40 | ** ... | semmle.label | ** ... | +| bal.cpp:331:43:331:46 | decodeAny output argument | semmle.label | decodeAny output argument | +| bal.cpp:332:7:332:17 | * ... | semmle.label | * ... | +| bal.cpp:333:7:333:9 | out | semmle.label | out | +| bal.cpp:337:19:337:26 | call to source | semmle.label | call to source | +| bal.cpp:338:23:338:51 | *call to data | semmle.label | *call to data | +| bal.cpp:341:20:341:21 | *sb | semmle.label | *sb | +| bal.cpp:341:24:341:27 | decodeAny output argument | semmle.label | decodeAny output argument | +| bal.cpp:342:7:342:17 | * ... | semmle.label | * ... | +| bal.cpp:346:19:346:26 | call to source | semmle.label | call to source | +| bal.cpp:347:21:347:47 | *call to data | semmle.label | *call to data | +| bal.cpp:350:20:350:22 | ** ... | semmle.label | ** ... | +| bal.cpp:350:25:350:28 | decodeAny output argument | semmle.label | decodeAny output argument | +| bal.cpp:351:7:351:19 | * ... | semmle.label | * ... | +| bal.cpp:355:19:355:26 | call to source | semmle.label | call to source | +| bal.cpp:356:21:356:47 | *call to data | semmle.label | *call to data | +| bal.cpp:359:37:359:48 | *call to decodeAny | semmle.label | *call to decodeAny | +| bal.cpp:359:37:359:48 | *call to decodeAny | semmle.label | *call to decodeAny | +| bal.cpp:359:38:359:40 | ** ... | semmle.label | ** ... | +| bal.cpp:359:43:359:46 | decodeAny output argument | semmle.label | decodeAny output argument | +| bal.cpp:360:7:360:17 | * ... | semmle.label | * ... | +| bal.cpp:361:7:361:19 | * ... | semmle.label | * ... | +| bal.cpp:365:19:365:26 | call to source | semmle.label | call to source | +| bal.cpp:366:23:366:51 | *call to data | semmle.label | *call to data | +| bal.cpp:369:20:369:21 | *sb | semmle.label | *sb | +| bal.cpp:369:24:369:27 | decodeAny output argument | semmle.label | decodeAny output argument | +| bal.cpp:370:7:370:19 | * ... | semmle.label | * ... | +| bal.cpp:374:18:374:25 | call to source | semmle.label | call to source | +| bal.cpp:377:17:377:37 | encode output argument | semmle.label | encode output argument | +| bal.cpp:377:40:377:42 | *obj | semmle.label | *obj | +| bal.cpp:378:7:378:12 | access to array | semmle.label | access to array | +| bal.cpp:382:18:382:25 | call to source | semmle.label | call to source | +| bal.cpp:385:17:385:36 | encode output argument | semmle.label | encode output argument | +| bal.cpp:385:39:385:41 | *obj | semmle.label | *obj | +| bal.cpp:386:7:386:12 | access to array | semmle.label | access to array | +| bal.cpp:390:18:390:25 | call to source | semmle.label | call to source | +| bal.cpp:393:34:393:61 | *call to encode | semmle.label | *call to encode | +| bal.cpp:393:34:393:61 | *call to encode | semmle.label | *call to encode | +| bal.cpp:393:35:393:54 | encode output argument | semmle.label | encode output argument | +| bal.cpp:393:57:393:59 | *obj | semmle.label | *obj | +| bal.cpp:394:7:394:17 | * ... | semmle.label | * ... | +| bal.cpp:395:7:395:12 | access to array | semmle.label | access to array | +| bal.cpp:399:19:399:26 | call to source | semmle.label | call to source | +| bal.cpp:400:21:400:47 | *call to data | semmle.label | *call to data | +| bal.cpp:403:34:403:44 | *call to encode | semmle.label | *call to encode | +| bal.cpp:403:34:403:44 | *call to encode | semmle.label | *call to encode | +| bal.cpp:403:35:403:37 | ** ... | semmle.label | ** ... | +| bal.cpp:404:7:404:17 | * ... | semmle.label | * ... | +| bal.cpp:408:18:408:25 | call to source | semmle.label | call to source | +| bal.cpp:411:25:411:44 | encodeToStream output argument | semmle.label | encodeToStream output argument | +| bal.cpp:411:47:411:49 | *obj | semmle.label | *obj | +| bal.cpp:412:7:412:12 | access to array | semmle.label | access to array | +| bal.cpp:426:18:426:25 | call to source | semmle.label | call to source | +| bal.cpp:429:20:429:40 | encodeAny output argument | semmle.label | encodeAny output argument | +| bal.cpp:429:43:429:45 | *obj | semmle.label | *obj | +| bal.cpp:430:7:430:12 | access to array | semmle.label | access to array | +| bal.cpp:434:18:434:25 | call to source | semmle.label | call to source | +| bal.cpp:437:20:437:39 | encodeAny output argument | semmle.label | encodeAny output argument | +| bal.cpp:437:42:437:44 | *obj | semmle.label | *obj | +| bal.cpp:438:7:438:12 | access to array | semmle.label | access to array | +| bal.cpp:442:18:442:25 | call to source | semmle.label | call to source | +| bal.cpp:445:37:445:64 | *call to encodeAny | semmle.label | *call to encodeAny | +| bal.cpp:445:37:445:64 | *call to encodeAny | semmle.label | *call to encodeAny | +| bal.cpp:445:38:445:57 | encodeAny output argument | semmle.label | encodeAny output argument | +| bal.cpp:445:60:445:62 | *obj | semmle.label | *obj | +| bal.cpp:446:7:446:17 | * ... | semmle.label | * ... | +| bal.cpp:447:7:447:12 | access to array | semmle.label | access to array | +| bal.cpp:451:18:451:25 | call to source | semmle.label | call to source | +| bal.cpp:454:28:454:47 | encodeAnyToStream output argument | semmle.label | encodeAnyToStream output argument | +| bal.cpp:454:50:454:52 | *obj | semmle.label | *obj | +| bal.cpp:455:7:455:12 | access to array | semmle.label | access to array | +| bal.cpp:459:19:459:26 | call to source | semmle.label | call to source | +| bal.cpp:460:41:460:86 | *call to data | semmle.label | *call to data | +| bal.cpp:463:20:463:40 | encodeAny output argument | semmle.label | encodeAny output argument | +| bal.cpp:463:43:463:46 | ** ... | semmle.label | ** ... | +| bal.cpp:464:7:464:12 | access to array | semmle.label | access to array | +| bal.cpp:468:19:468:26 | call to source | semmle.label | call to source | +| bal.cpp:469:41:469:86 | *call to data | semmle.label | *call to data | +| bal.cpp:472:20:472:39 | encodeAny output argument | semmle.label | encodeAny output argument | +| bal.cpp:472:42:472:45 | ** ... | semmle.label | ** ... | +| bal.cpp:473:7:473:12 | access to array | semmle.label | access to array | +| bal.cpp:477:19:477:26 | call to source | semmle.label | call to source | +| bal.cpp:478:41:478:86 | *call to data | semmle.label | *call to data | +| bal.cpp:481:37:481:65 | *call to encodeAny | semmle.label | *call to encodeAny | +| bal.cpp:481:37:481:65 | *call to encodeAny | semmle.label | *call to encodeAny | +| bal.cpp:481:38:481:57 | encodeAny output argument | semmle.label | encodeAny output argument | +| bal.cpp:481:60:481:63 | ** ... | semmle.label | ** ... | +| bal.cpp:482:7:482:17 | * ... | semmle.label | * ... | +| bal.cpp:483:7:483:12 | access to array | semmle.label | access to array | | bdlbb.cpp:54:16:54:23 | call to source | semmle.label | call to source | | bdlbb.cpp:56:37:56:41 | copy output argument | semmle.label | copy output argument | | bdlbb.cpp:56:49:56:52 | *call to data | semmle.label | *call to data | diff --git a/cpp/ql/test/library-tests/dataflow/external-models/steps.expected b/cpp/ql/test/library-tests/dataflow/external-models/steps.expected index 4daf1fa5b1e3..b32b72d985fe 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/steps.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/steps.expected @@ -68,6 +68,61 @@ | azure.cpp:262:5:262:8 | *resp | azure.cpp:262:23:262:28 | ReadToCount output argument | | azure.cpp:287:79:287:98 | call to string | azure.cpp:287:62:287:99 | call to Url | | azure.cpp:289:24:289:56 | call to GetHeader | azure.cpp:289:63:289:65 | call to Value | +| bal.cpp:149:17:149:18 | *sb | bal.cpp:149:21:149:24 | decode output argument | +| bal.cpp:158:17:158:19 | ** ... | bal.cpp:158:22:158:25 | decode output argument | +| bal.cpp:167:20:167:21 | *sb | bal.cpp:167:24:167:27 | decodeAny output argument | +| bal.cpp:176:40:176:42 | *obj | bal.cpp:176:17:176:37 | encode output argument | +| bal.cpp:184:43:184:45 | *obj | bal.cpp:184:20:184:40 | encodeAny output argument | +| bal.cpp:197:17:197:18 | *sb | bal.cpp:197:21:197:24 | decode output argument | +| bal.cpp:207:17:207:19 | ** ... | bal.cpp:207:22:207:25 | decode output argument | +| bal.cpp:216:20:216:21 | *sb | bal.cpp:216:24:216:27 | decodeAny output argument | +| bal.cpp:225:40:225:42 | *obj | bal.cpp:225:17:225:37 | encode output argument | +| bal.cpp:233:43:233:45 | *obj | bal.cpp:233:20:233:40 | encodeAny output argument | +| bal.cpp:243:17:243:18 | *sb | bal.cpp:243:21:243:24 | decode output argument | +| bal.cpp:246:40:246:42 | *rec | bal.cpp:246:17:246:37 | encode output argument | +| bal.cpp:255:17:255:18 | *sb | bal.cpp:255:21:255:24 | decode output argument | +| bal.cpp:266:17:266:19 | ** ... | bal.cpp:266:16:266:27 | *call to decode | +| bal.cpp:266:17:266:19 | ** ... | bal.cpp:266:22:266:25 | decode output argument | +| bal.cpp:275:35:275:37 | ** ... | bal.cpp:275:34:275:52 | *call to decode | +| bal.cpp:275:35:275:37 | ** ... | bal.cpp:275:40:275:43 | decode output argument | +| bal.cpp:285:17:285:18 | *sb | bal.cpp:285:21:285:24 | decode output argument | +| bal.cpp:293:22:293:25 | *call to data | bal.cpp:293:43:293:46 | decode output argument | +| bal.cpp:322:20:322:22 | ** ... | bal.cpp:322:19:322:30 | *call to decodeAny | +| bal.cpp:322:20:322:22 | ** ... | bal.cpp:322:25:322:28 | decodeAny output argument | +| bal.cpp:331:38:331:40 | ** ... | bal.cpp:331:37:331:48 | *call to decodeAny | +| bal.cpp:331:38:331:40 | ** ... | bal.cpp:331:43:331:46 | decodeAny output argument | +| bal.cpp:341:20:341:21 | *sb | bal.cpp:341:24:341:27 | decodeAny output argument | +| bal.cpp:350:20:350:22 | ** ... | bal.cpp:350:19:350:30 | *call to decodeAny | +| bal.cpp:350:20:350:22 | ** ... | bal.cpp:350:25:350:28 | decodeAny output argument | +| bal.cpp:359:38:359:40 | ** ... | bal.cpp:359:37:359:48 | *call to decodeAny | +| bal.cpp:359:38:359:40 | ** ... | bal.cpp:359:43:359:46 | decodeAny output argument | +| bal.cpp:369:20:369:21 | *sb | bal.cpp:369:24:369:27 | decodeAny output argument | +| bal.cpp:377:40:377:42 | *obj | bal.cpp:377:17:377:37 | encode output argument | +| bal.cpp:385:17:385:36 | ** ... | bal.cpp:385:16:385:43 | *call to encode | +| bal.cpp:385:39:385:41 | *obj | bal.cpp:385:16:385:43 | *call to encode | +| bal.cpp:385:39:385:41 | *obj | bal.cpp:385:17:385:36 | encode output argument | +| bal.cpp:393:35:393:54 | ** ... | bal.cpp:393:34:393:61 | *call to encode | +| bal.cpp:393:57:393:59 | *obj | bal.cpp:393:34:393:61 | *call to encode | +| bal.cpp:393:57:393:59 | *obj | bal.cpp:393:35:393:54 | encode output argument | +| bal.cpp:403:35:403:37 | ** ... | bal.cpp:403:34:403:44 | *call to encode | +| bal.cpp:403:40:403:42 | *obj | bal.cpp:403:34:403:44 | *call to encode | +| bal.cpp:403:40:403:42 | *obj | bal.cpp:403:35:403:37 | encode output argument | +| bal.cpp:411:47:411:49 | *obj | bal.cpp:411:25:411:44 | encodeToStream output argument | +| bal.cpp:429:43:429:45 | *obj | bal.cpp:429:20:429:40 | encodeAny output argument | +| bal.cpp:437:20:437:39 | ** ... | bal.cpp:437:19:437:46 | *call to encodeAny | +| bal.cpp:437:42:437:44 | *obj | bal.cpp:437:19:437:46 | *call to encodeAny | +| bal.cpp:437:42:437:44 | *obj | bal.cpp:437:20:437:39 | encodeAny output argument | +| bal.cpp:445:38:445:57 | ** ... | bal.cpp:445:37:445:64 | *call to encodeAny | +| bal.cpp:445:60:445:62 | *obj | bal.cpp:445:37:445:64 | *call to encodeAny | +| bal.cpp:445:60:445:62 | *obj | bal.cpp:445:38:445:57 | encodeAny output argument | +| bal.cpp:454:50:454:52 | *obj | bal.cpp:454:28:454:47 | encodeAnyToStream output argument | +| bal.cpp:463:43:463:46 | ** ... | bal.cpp:463:20:463:40 | encodeAny output argument | +| bal.cpp:472:20:472:39 | ** ... | bal.cpp:472:19:472:47 | *call to encodeAny | +| bal.cpp:472:42:472:45 | ** ... | bal.cpp:472:19:472:47 | *call to encodeAny | +| bal.cpp:472:42:472:45 | ** ... | bal.cpp:472:20:472:39 | encodeAny output argument | +| bal.cpp:481:38:481:57 | ** ... | bal.cpp:481:37:481:65 | *call to encodeAny | +| bal.cpp:481:60:481:63 | ** ... | bal.cpp:481:37:481:65 | *call to encodeAny | +| bal.cpp:481:60:481:63 | ** ... | bal.cpp:481:38:481:57 | encodeAny output argument | | bdlbb.cpp:56:49:56:52 | *call to data | bdlbb.cpp:56:37:56:41 | copy output argument | | bdlbb.cpp:58:42:58:45 | *blob | bdlbb.cpp:58:37:58:39 | copy output argument | | bdlbb.cpp:65:49:65:52 | *call to data | bdlbb.cpp:65:37:65:41 | copy output argument | diff --git a/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected b/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected index 62bcdd8f0f94..1f224aebf478 100644 --- a/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected +++ b/cpp/ql/test/library-tests/dataflow/external-models/validatemodels.expected @@ -4018,6 +4018,7 @@ | Dubious signature "(const char *,size_t *)" in summary model. | | Dubious signature "(const char *,size_t *,int)" in summary model. | | Dubious signature "(const char *,size_t)" in summary model. | +| Dubious signature "(const char *,size_t,TYPE *,const char *)" in summary model. | | Dubious signature "(const char *,size_t,char **,size_t *,urlreject)" in summary model. | | Dubious signature "(const char *,size_t,const char *)" in summary model. | | Dubious signature "(const char *,size_t,const char *,const char *,bool,iconv_ilseq_handler,size_t *,char **,size_t *)" in summary model. | @@ -4679,6 +4680,8 @@ | Dubious signature "(int,void *)" in summary model. | | Dubious signature "(int,void *,size_t)" in summary model. | | Dubious signature "(int_dhx942_dh **,const unsigned char **,long)" in summary model. | +| Dubious signature "(istream &,AnyRef *,const char *)" in summary model. | +| Dubious signature "(istream &,TYPE *,const char *)" in summary model. | | Dubious signature "(lemon *)" in summary model. | | Dubious signature "(lemon *,action *)" in summary model. | | Dubious signature "(lemon *,const char *)" in summary model. | @@ -4927,6 +4930,8 @@ | Dubious signature "(obstack *,int,int,..(*)(..),..(*)(..),void *)" in summary model. | | Dubious signature "(obstack *,void *)" in summary model. | | Dubious signature "(old_termios_t *,speed_t)" in summary model. | +| Dubious signature "(ostream &,const AnyConstRef &)" in summary model. | +| Dubious signature "(ostream &,const TYPE &)" in summary model. | | Dubious signature "(passwd *,char *,size_t,int *)" in summary model. | | Dubious signature "(passwd *,char *,size_t,passwd **)" in summary model. | | Dubious signature "(pgrs_dir *,curl_off_t,curltime)" in summary model. | @@ -5190,6 +5195,10 @@ | Dubious signature "(statvfs64 *,const statfs64 *)" in summary model. | | Dubious signature "(store_netrc *)" in summary model. | | Dubious signature "(store_netrc *,const char *,char **,char **,char *)" in summary model. | +| Dubious signature "(streambuf *,AnyRef *,const char *)" in summary model. | +| Dubious signature "(streambuf *,TYPE *,const char *)" in summary model. | +| Dubious signature "(streambuf *,const AnyConstRef &)" in summary model. | +| Dubious signature "(streambuf *,const TYPE &)" in summary model. | | Dubious signature "(string_buf *,libssh2_uint64_t *)" in summary model. | | Dubious signature "(string_buf *,uint32_t *)" in summary model. | | Dubious signature "(string_buf *,unsigned char *)" in summary model. | diff --git a/cpp/ql/test/library-tests/dataflow/taint-tests/test_mad-signatures.expected b/cpp/ql/test/library-tests/dataflow/taint-tests/test_mad-signatures.expected index 9306309a7e19..e5d529a43c4d 100644 --- a/cpp/ql/test/library-tests/dataflow/taint-tests/test_mad-signatures.expected +++ b/cpp/ql/test/library-tests/dataflow/taint-tests/test_mad-signatures.expected @@ -18078,6 +18078,10 @@ getSignatureParameterName | (const char *,size_t) | | xstrndup | 1 | size_t | | (const char *,size_t) | ByteInStream | reset | 0 | const char * | | (const char *,size_t) | ByteInStream | reset | 1 | size_t | +| (const char *,size_t,TYPE *,const char *) | Decoder | decode | 0 | const char * | +| (const char *,size_t,TYPE *,const char *) | Decoder | decode | 1 | size_t | +| (const char *,size_t,TYPE *,const char *) | Decoder | decode | 2 | func:0 * | +| (const char *,size_t,TYPE *,const char *) | Decoder | decode | 3 | const char * | | (const char *,size_t,char **,size_t *,urlreject) | | Curl_urldecode | 0 | const char * | | (const char *,size_t,char **,size_t *,urlreject) | | Curl_urldecode | 1 | size_t | | (const char *,size_t,char **,size_t *,urlreject) | | Curl_urldecode | 2 | char ** | @@ -22153,6 +22157,15 @@ getSignatureParameterName | (int_dhx942_dh **,const unsigned char **,long) | | d2i_int_dhx | 1 | const unsigned char ** | | (int_dhx942_dh **,const unsigned char **,long) | | d2i_int_dhx | 2 | long | | (intptr_t) | | __sbrk | 0 | intptr_t | +| (istream &,AnyRef *,const char *) | Decoder | decodeAny | 0 | istream & | +| (istream &,AnyRef *,const char *) | Decoder | decodeAny | 1 | AnyRef * | +| (istream &,AnyRef *,const char *) | Decoder | decodeAny | 2 | const char * | +| (istream &,TYPE *,const char *) | Decoder | decode | 0 | istream & | +| (istream &,TYPE *,const char *) | Decoder | decode | 1 | func:0 * | +| (istream &,TYPE *,const char *) | Decoder | decode | 2 | const char * | +| (istream &,TYPE *,const char *) | Decoder | decodeAny | 0 | istream & | +| (istream &,TYPE *,const char *) | Decoder | decodeAny | 1 | func:0 * | +| (istream &,TYPE *,const char *) | Decoder | decodeAny | 2 | const char * | | (lemon *) | | ResortStates | 0 | lemon * | | (lemon *) | | getstate | 0 | lemon * | | (lemon *,action *) | | compute_action | 0 | lemon * | @@ -23442,6 +23455,12 @@ getSignatureParameterName | (old_termios_t *,speed_t) | | __old_cfsetospeed | 1 | speed_t | | (old_termios_t *,speed_t) | | __old_cfsetspeed | 0 | old_termios_t * | | (old_termios_t *,speed_t) | | __old_cfsetspeed | 1 | speed_t | +| (ostream &,const AnyConstRef &) | Encoder | encodeAny | 0 | ostream & | +| (ostream &,const AnyConstRef &) | Encoder | encodeAny | 1 | const AnyConstRef & | +| (ostream &,const TYPE &) | Encoder | encode | 0 | ostream & | +| (ostream &,const TYPE &) | Encoder | encode | 1 | const func:0 & | +| (ostream &,const TYPE &) | Encoder | encodeAny | 0 | ostream & | +| (ostream &,const TYPE &) | Encoder | encodeAny | 1 | const func:0 & | | (passwd *,char *,size_t,int *) | | _nss_compat_getpwent_r | 0 | passwd * | | (passwd *,char *,size_t,int *) | | _nss_compat_getpwent_r | 1 | char * | | (passwd *,char *,size_t,int *) | | _nss_compat_getpwent_r | 2 | size_t | @@ -24741,6 +24760,21 @@ getSignatureParameterName | (store_netrc *,const char *,char **,char **,char *) | | Curl_parsenetrc | 2 | char ** | | (store_netrc *,const char *,char **,char **,char *) | | Curl_parsenetrc | 3 | char ** | | (store_netrc *,const char *,char **,char **,char *) | | Curl_parsenetrc | 4 | char * | +| (streambuf *,AnyRef *,const char *) | Decoder | decodeAny | 0 | streambuf * | +| (streambuf *,AnyRef *,const char *) | Decoder | decodeAny | 1 | AnyRef * | +| (streambuf *,AnyRef *,const char *) | Decoder | decodeAny | 2 | const char * | +| (streambuf *,TYPE *,const char *) | Decoder | decode | 0 | streambuf * | +| (streambuf *,TYPE *,const char *) | Decoder | decode | 1 | func:0 * | +| (streambuf *,TYPE *,const char *) | Decoder | decode | 2 | const char * | +| (streambuf *,TYPE *,const char *) | Decoder | decodeAny | 0 | streambuf * | +| (streambuf *,TYPE *,const char *) | Decoder | decodeAny | 1 | func:0 * | +| (streambuf *,TYPE *,const char *) | Decoder | decodeAny | 2 | const char * | +| (streambuf *,const AnyConstRef &) | Encoder | encodeAny | 0 | streambuf * | +| (streambuf *,const AnyConstRef &) | Encoder | encodeAny | 1 | const AnyConstRef & | +| (streambuf *,const TYPE &) | Encoder | encode | 0 | streambuf * | +| (streambuf *,const TYPE &) | Encoder | encode | 1 | const func:0 & | +| (streambuf *,const TYPE &) | Encoder | encodeAny | 0 | streambuf * | +| (streambuf *,const TYPE &) | Encoder | encodeAny | 1 | const func:0 & | | (string_buf *,libssh2_uint64_t *) | | _libssh2_get_u64 | 0 | string_buf * | | (string_buf *,libssh2_uint64_t *) | | _libssh2_get_u64 | 1 | libssh2_uint64_t * | | (string_buf *,uint32_t *) | | _libssh2_get_u32 | 0 | string_buf * |