bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: *printf-posix: Avoid crash in a configure test


From: Bruno Haible
Subject: Re: *printf-posix: Avoid crash in a configure test
Date: Wed, 21 Feb 2024 12:51:47 +0100

> 2024-02-20  Bruno Haible  <bruno@clisp.org>
> 
>       *printf-posix: Avoid crash in a configure test.
>       * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N): In the test program, catch the
>       SIGABRT signal, so that the program does not dump core.

There's another configure test that also exercises %n.


2024-02-21  Bruno Haible  <bruno@clisp.org>

        *printf-posix: Avoid crash in another configure test.
        * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): In the test program, catch the
        SIGABRT signal, so that the program does not dump core.

diff --git a/m4/printf.m4 b/m4/printf.m4
index 05bf7fe1df..6f917778e8 100644
--- a/m4/printf.m4
+++ b/m4/printf.m4
@@ -1705,6 +1705,7 @@ AC_DEFUN([gl_SNPRINTF_DIRECTIVE_N]
     [
       AC_RUN_IFELSE(
         [AC_LANG_SOURCE([[
+#include <signal.h>
 #include <stdio.h>
 #include <string.h>
 #if HAVE_SNPRINTF
@@ -1721,11 +1722,18 @@ AC_DEFUN([gl_SNPRINTF_DIRECTIVE_N]
   return ret;
 }
 #endif
+static void
+abort_handler (int sig)
+{
+  (void) sig;
+  _exit (1);
+}
 static char fmtstring[10];
 static char buf[100];
 int main ()
 {
   int count = -1;
+  signal (SIGABRT, abort_handler);
   /* Copy the format string.  Some systems (glibc with _FORTIFY_SOURCE=2)
      support %n in format strings in read-only memory but not in writable
      memory.  */






reply via email to

[Prev in Thread] Current Thread [Next in Thread]