diff options
author | Marcus Meissner <marcus@jet.franken.de> | 2017-04-29 13:06:53 +0200 |
---|---|---|
committer | Marcus Meissner <marcus@jet.franken.de> | 2017-04-29 13:06:53 +0200 |
commit | e6643b68d8851398f102088cd06e54256f9fb7bf (patch) | |
tree | 746264e2a41a1dc57880e0f415b003038938355b | |
parent | e366d6a1f072663be672e697f7d1accfc21252b4 (diff) | |
download | libgphoto2-e6643b68d8851398f102088cd06e54256f9fb7bf.tar.gz |
during unpacking Object property desc, ensure at least 5 bytes are available (AFL)
-rw-r--r-- | camlibs/ptp2/ptp-pack.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/camlibs/ptp2/ptp-pack.c b/camlibs/ptp2/ptp-pack.c index 5e2e4a73d..2e1d8e6b5 100644 --- a/camlibs/ptp2/ptp-pack.c +++ b/camlibs/ptp2/ptp-pack.c @@ -1096,6 +1096,10 @@ ptp_unpack_OPD (PTPParams *params, unsigned char* data, PTPObjectPropDesc *opd, unsigned int offset=0, ret; memset (opd, 0, sizeof(*opd)); + + if (opdlen < 5) + return 0; + opd->ObjectPropertyCode=dtoh16a(&data[PTP_opd_ObjectPropertyCode]); opd->DataType=dtoh16a(&data[PTP_opd_DataType]); opd->GetSet=dtoh8a(&data[PTP_opd_GetSet]); |