]> granicus.if.org Git - sudo/commitdiff
Add rudimentary check for _FORTIFY_SOURCE support by checking for
authorTodd C. Miller <Todd.Miller@courtesan.com>
Mon, 30 Jan 2012 15:12:14 +0000 (10:12 -0500)
committerTodd C. Miller <Todd.Miller@courtesan.com>
Mon, 30 Jan 2012 15:12:14 +0000 (10:12 -0500)
__sprintf_chk, one of the functions used by gcc to support it.

--HG--
branch : 1.7

configure
configure.in

index 6595092cbdd92a7c9bd2ce643d491fdbe0a48eed..ec3b88bf0ec48bc12d68104d1a1e154044abd2dc 100755 (executable)
--- a/configure
+++ b/configure
 fi
 done
 
+O_CPPFLAGS="$CPPFLAGS -D_FORTIFY_SOURCE=2"
+ac_fn_c_check_func "$LINENO" "__sprintf_chk" "ac_cv_func___sprintf_chk"
+if test "x$ac_cv_func___sprintf_chk" = xyes; then :
+  OSDEFS="${OSDEFS} -D_FORTIFY_SOURCE=2"
+fi
+
+CPPFLAGS="$O_CPPFLAGS"
 
 for ac_func in getutxid getutid
 do :
index 430b98d04d6ca2cf531bf601bfd10625fefafaf2..47b6e3d38856061d111e750c1dd022b9407f62ac 100644 (file)
@@ -2021,6 +2021,12 @@ AC_CHECK_FUNCS(setsid, [], [
     AC_LIBOBJ(setsid)
     AC_FUNC_SETPGRP
 ])
+dnl
+dnl If libc supports _FORTIFY_SOURCE check functions, use it.
+dnl
+O_CPPFLAGS="$CPPFLAGS -D_FORTIFY_SOURCE=2"
+AC_CHECK_FUNC(__sprintf_chk, [OSDEFS="${OSDEFS} -D_FORTIFY_SOURCE=2"], [])
+CPPFLAGS="$O_CPPFLAGS"
 
 AC_CHECK_FUNCS(getutxid getutid, [break])