blobmsg: fix missing length checks
authorFelix Fietkau <nbd@nbd.name>
Mon, 25 May 2020 10:40:04 +0000 (12:40 +0200)
committerFelix Fietkau <nbd@nbd.name>
Tue, 26 May 2020 08:06:53 +0000 (10:06 +0200)
commit66195aee50424cbda0c2d858014e4cc58a2dc029
treeb0efa1fda5b26de82c69ddae87c99c2b831e9fce
parent639c29d19717616b809d9a1e9042461ab8024370
blobmsg: fix missing length checks

blobmsg_check_attr_len was calling blobmsg_check_data for some, but not all
attribute types. These checks was missing for arrays and tables.

Additionally, the length check in blobmsg_check_data was a bit off, since
it was comparing the blobmsg data length against the raw blob attr length.

Fix this by checking the raw blob length against the buffer length in
blobmsg_hdr_from_blob

Signed-off-by: Felix Fietkau <nbd@nbd.name>
blobmsg.c