# HG changeset patch # User Chris Cannam # Date 1484822925 0 # Node ID 96488e9e9096579150d27a826762daf4fdcb90da # Parent c4f841ccb2086c093dd2cab940b79d3491fabae1 Report messages < 1 word as incomplete, and messages with crazily large estimated sizes as invalid diff -r c4f841ccb208 -r 96488e9e9096 vamp-client/CapnpRRClient.h --- a/vamp-client/CapnpRRClient.h Thu Jan 19 09:57:58 2017 +0000 +++ b/vamp-client/CapnpRRClient.h Thu Jan 19 10:48:45 2017 +0000 @@ -77,6 +77,10 @@ public: State check(const std::vector &message) const override { + if (message.size() < sizeof(capnp::word)) { + return Incomplete; + } + auto karr = toKJArray(message); size_t words = karr.size(); size_t expected = capnp::expectedSizeInWordsFromPrefix(karr); @@ -103,6 +107,9 @@ } else if (words == expected) { return Complete; } else if (expected > limit) { + std::cerr << "WARNING: apparently invalid message prefix: have " + << words << " words in prefix, projected message size is " + << expected << " against limit of " << limit << std::endl; return Invalid; } else { return Incomplete;