about summary refs log tree commit diff
path: root/elf
diff options
context:
space:
mode:
Diffstat (limited to 'elf')
-rw-r--r--elf/dl-minimal.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/elf/dl-minimal.c b/elf/dl-minimal.c
index 893a3b1f2e..f4b7e28782 100644
--- a/elf/dl-minimal.c
+++ b/elf/dl-minimal.c
@@ -209,6 +209,19 @@ Inconsistency detected by ld.so: %s: %u: %s%sAssertion `%s' failed!\n",
 }
 rtld_hidden_weak(__assert_fail)
 
+void weak_function
+__assert_perror_fail (int errnum,
+		      const char *file, unsigned int line,
+		      const char *function)
+{
+  char errbuf[400];
+  _dl_fatal_printf ("\
+Inconsistency detected by ld.so: %s: %u: %s%sUnexpected error: %s.\n",
+		    file, line, function ?: "", function ? ": " : "",
+		    __strerror_r (errnum, errbuf, sizeof errbuf));
+
+}
+rtld_hidden_weak (__assert_perror_fail)
 #endif
 
 unsigned long int weak_function