]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
debug: Fix clang open fortify wrapper (BZ 31927)
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>
Tue, 25 Jun 2024 14:57:15 +0000 (11:57 -0300)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Thu, 27 Jun 2024 16:32:48 +0000 (13:32 -0300)
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 <raj.khem@gmail.com>
Tested-by: Khem Raj <raj.khem@gmail.com>
io/bits/fcntl2.h

index 26f1792fd1afa3efbcbe0176b2280d0956dffc73..c8888b50c1170b7bb1365294881fb175207539ba 100644 (file)
@@ -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