diff options
| author | 2023-03-01 21:27:16 +0000 | |
|---|---|---|
| committer | 2023-03-01 21:27:16 +0000 | |
| commit | 6a75c67483b9a78c092a2a01cd58f801355fc5d0 (patch) | |
| tree | 50c3cda228f9f9df179c5ff4ab837e73f6ff3e13 | |
| parent | c7b186ff3d5091ef7299e0943b8de73510198c54 (diff) | |
| parent | c73b265fa52f8e4aa30d373583da6c617dd39c21 (diff) | |
Check for malformed Sensor Flattenable am: 962b5a4d37 am: 938eb4a710 am: c73b265fa5
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/native/+/21548268
Change-Id: I69213797bedec3d73ec534ec114e7a0efbdbd5c1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
| -rw-r--r-- | libs/sensor/Sensor.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/sensor/Sensor.cpp b/libs/sensor/Sensor.cpp index ec0ced8663..b865c4d5d6 100644 --- a/libs/sensor/Sensor.cpp +++ b/libs/sensor/Sensor.cpp @@ -632,7 +632,13 @@ bool Sensor::unflattenString8(void const*& buffer, size_t& size, String8& output return false; } outputString8.setTo(static_cast<char const*>(buffer), len); + + if (size < FlattenableUtils::align<4>(len)) { + ALOGE("Malformed Sensor String8 field. Should be in a 4-byte aligned buffer but is not."); + return false; + } FlattenableUtils::advance(buffer, size, FlattenableUtils::align<4>(len)); + return true; } |