From 4e52800afd2c531c163d9f6d2f01931f0db8424e Mon Sep 17 00:00:00 2001 From: Jordan Henderson Date: Thu, 15 May 2025 17:41:11 -0500 Subject: [PATCH] Fix EOF range check --- src/H5FDros3_s3comms_curl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/H5FDros3_s3comms_curl.c b/src/H5FDros3_s3comms_curl.c index a0eb5e6142a..a14e89cd029 100644 --- a/src/H5FDros3_s3comms_curl.c +++ b/src/H5FDros3_s3comms_curl.c @@ -1327,7 +1327,7 @@ H5FD__s3comms_s3r_read(s3r_t *handle, haddr_t offset, size_t len, void *dest, si HGOTO_ERROR(H5E_ARGS, H5E_BADVALUE, FAIL, "handle has bad (NULL) private data pointer"); if (handle->purl == NULL) HGOTO_ERROR(H5E_ARGS, H5E_BADVALUE, FAIL, "handle has bad (NULL) url"); - if (offset > handle->filesize || (len + offset) > handle->filesize) + if ((offset > 0 && offset >= handle->filesize) || (len + offset) > handle->filesize) HGOTO_ERROR(H5E_ARGS, H5E_BADVALUE, FAIL, "unable to read past EOF"); curl_params = (H5FD__s3comms_curl_params_t *)handle->priv_data;