fornwall opened a new issue, #4472:
URL: https://github.com/apache/arrow-adbc/issues/4472

   ### What happened?
   
   The FFI driver exporter wrote the entire FFI_AdbcError struct into the 
caller's out-pointer on every failed method, unconditionally clobbering 
private_data (and, at two of the three sites, private_driver).
   
   `c/include/arrow-adbc/adbc.h` documents that those fields only exist in the 
ADBC 1.1.0 layout, and that a driver *"should read/write these fields if and 
only if vendor_code is equal to `ADBC_ERROR_VENDOR_CODE_PRIVATE_DATA`"* and 
*"should never touch more than [the 1.0.0-sized] portion of an AdbcError 
struct"* otherwise. Overwriting them corrupts memory an ADBC 1.0.0 caller owns 
(or does not have at all).
   
   ### Environment/Setup
   `adbc_ffi` 0.23.0 (also present in current `main`)
   
   ### Stack Trace
   
   _No response_
   
   ### How can we reproduce the bug?
   
   _No response_
   
   ### Environment/Setup
   
   _No response_


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to