From: Adhemerval Zanella Date: Tue, 25 Jun 2024 14:57:15 +0000 (-0300) Subject: debug: Fix clang open fortify wrapper (BZ 31927) X-Git-Tag: glibc-2.40~61 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4228baef1a94e8bde84ad74f2e0358120a2bcac7;p=thirdparty%2Fglibc.git debug: Fix clang open fortify wrapper (BZ 31927) The fcntl.h fortify wrapper for clang added by 86889e22db329abac61 missed the __fortify_clang_overload_arg and and also added the mode argument for the __fortify_function_error_function function, which leads clang to be able to correct resolve which overloaded function it should emit. Checked on x86_64-linux-gnu. Reported-by: Khem Raj Tested-by: Khem Raj --- diff --git a/io/bits/fcntl2.h b/io/bits/fcntl2.h index 26f1792fd1..c8888b50c1 100644 --- a/io/bits/fcntl2.h +++ b/io/bits/fcntl2.h @@ -62,7 +62,7 @@ open (const char *__path, int __oflag, ...) } #elif __fortify_use_clang __fortify_function_error_function __attribute_overloadable__ int -open (const char *__path, int __oflag, mode_t __mode, ...) +open (__fortify_clang_overload_arg (const char *, ,__path), int __oflag, ...) __fortify_clang_unavailable ("open can be called either with 2 or 3 arguments, not more"); __fortify_function __attribute_overloadable__ int