blob: fix exceeding maximum buffer length
authorZefir Kurtisi <zefir.kurtisi@gmail.com>
Fri, 23 Apr 2021 17:48:01 +0000 (19:48 +0200)
committerPetr Štetiar <ynezz@true.cz>
Thu, 29 Apr 2021 13:34:21 +0000 (15:34 +0200)
commitb36a3a90098db64a46029355e308897c97fbe13d
treee782bcf5e18e80a3998e4b50b16d2655de50956d
parenta0dbcf8b8f966ce8a358afe555bb75401ef1e9be
blob: fix exceeding maximum buffer length

Currently there is no measure in place to prevent the blob buffer
to exceed its maximum allowed length of 16MB. Continuously
calling blob_add() will expand the buffer until it exceeds
BLOB_ATTR_LEN_MASK and after that will return valid blob_attr
pointer without increasing the buflen.

A test program was added in the previous commit, this one fixes
the issue by asserting that the new bufflen after grow does not
exceed BLOB_ATTR_LEN_MASK.

Signed-off-by: Zefir Kurtisi <zefir.kurtisi@gmail.com>
blob.c