summaryrefslogtreecommitdiffstats
path: root/lib/libssl/ssl_cert.c
diff options
context:
space:
mode:
authorgkoehler <gkoehler@openbsd.org>2020-11-20 05:07:27 +0000
committergkoehler <gkoehler@openbsd.org>2020-11-20 05:07:27 +0000
commitc968ca6e72d6d1fa752fc20e33147592b1f8103b (patch)
tree9ada46f54bd794e6ef747f33dc52985169f0cffb /lib/libssl/ssl_cert.c
parentWhen doing an sftp recursive upload or download of a read-only directory, (diff)
downloadwireguard-openbsd-c968ca6e72d6d1fa752fc20e33147592b1f8103b.tar.xz
wireguard-openbsd-c968ca6e72d6d1fa752fc20e33147592b1f8103b.zip
Fix va_arg in C++, Objective-C on 32-bit powerpc
In the PPC32 SVR4 ABI, a va_list has copies of registers from the function call. va_arg looked in the wrong registers for (the pointer representation of) an object in Objective-C, and for some types in C++. Fix va_arg to look in the general-purpose registers, not the floating-point registers. Also fix va_arg for some C++ types, like a member function pointer, that are aggregates for the ABI. Anthony Richardby found the problem in Objective-C. Eli Friedman suggested part of this fix. Fixes https://bugs.llvm.org/show_bug.cgi?id=47921 I have submitted this diff as https://reviews.llvm.org/D90329 ok kettenis@
Diffstat (limited to 'lib/libssl/ssl_cert.c')
0 files changed, 0 insertions, 0 deletions