From 4f7531f655fae2d0cc481ba74ba6fba7ba4a3908 Mon Sep 17 00:00:00 2001 From: kettenis <> Date: Tue, 30 Jun 2026 19:18:54 +0000 Subject: LLVM now emits calls to strlen(3) and wcslen(3). Redirect those calls to our hidden aliases to prevent unnecessary PLT entries (like we already do for memmove(3), memcpy(4) and memset(3)). ok deraadt@ --- src/lib/libc/include/namespace.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/lib/libc/include') diff --git a/src/lib/libc/include/namespace.h b/src/lib/libc/include/namespace.h index cc83735b90..9058230429 100644 --- a/src/lib/libc/include/namespace.h +++ b/src/lib/libc/include/namespace.h @@ -1,4 +1,4 @@ -/* $OpenBSD: namespace.h,v 1.17 2025/10/23 19:06:10 miod Exp $ */ +/* $OpenBSD: namespace.h,v 1.18 2026/06/30 19:18:53 kettenis Exp $ */ #ifndef _LIBC_NAMESPACE_H_ #define _LIBC_NAMESPACE_H_ @@ -85,11 +85,15 @@ BUILTIN void *memmove(void *, const void *, __size_t); BUILTIN void *memcpy(void *__restrict, const void *__restrict, __size_t); BUILTIN void *memset(void *, int, __size_t); +BUILTIN __size_t strlen(const char *); +BUILTIN __size_t wcslen(const __wchar_t *); BUILTIN void __stack_smash_handler(const char [], int __unused); #if !defined(__clang__) PROTO_NORMAL(memmove); PROTO_NORMAL(memcpy); PROTO_NORMAL(memset); +PROTO_NORMAL(strlen); +PROTO_NORMAL(wcslen); PROTO_NORMAL(__stack_smash_handler); #endif #undef BUILTIN -- cgit v1.2.3-55-g6feb