[libcamera-devel] [PATCH 2/2] android: CameraDevice: Validate buffer_handle by CameraBuffer::isValid()
Hirokazu Honda
hiroh at chromium.org
Mon Apr 5 06:04:24 CEST 2021
This adds a validation to buffer_handle provided in
CameraDevice::processCaptureRequest() by using
CameraBuffer::isValid().
Signed-off-by: Hirokazu Honda <hiroh at chromium.org>
---
src/android/camera_device.cpp | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/src/android/camera_device.cpp b/src/android/camera_device.cpp
index 89044efa..0fff5927 100644
--- a/src/android/camera_device.cpp
+++ b/src/android/camera_device.cpp
@@ -257,6 +257,7 @@ void sortCamera3StreamConfigs(std::vector<Camera3StreamConfig> &unsortedConfigs,
}
bool isValidRequest(camera3_capture_request_t *camera3Request)
+
{
if (!camera3Request) {
LOG(HAL, Error) << "No capture request provided";
@@ -293,6 +294,13 @@ bool isValidRequest(camera3_capture_request_t *camera3Request)
<< ") in buffer " << i;
return false;
}
+
+ CameraBuffer cameraBuffer(*outputBuffer.buffer,
+ PROT_READ | PROT_WRITE, /*map=*/false);
+ if (!cameraBuffer.isValid()) {
+ LOG(HAL, Error) << "cameraBuffer is invalid";
+ return false;
+ }
}
return true;
--
2.31.0.208.g409f899ff0-goog
More information about the libcamera-devel
mailing list