From 23b1ee2f45d9809201c3aae0dfda11359bd7acbb Mon Sep 17 00:00:00 2001 From: "Todd C. Miller" Date: Sat, 20 Jun 2020 13:51:02 -0600 Subject: [PATCH] Fix some warnings from configure test programs. --- configure | 43 ++++++++++++++++++++++-------------------- configure.ac | 8 ++++---- m4/ax_func_snprintf.m4 | 22 +++++++++++---------- m4/sudo.m4 | 13 +++++++------ 4 files changed, 46 insertions(+), 40 deletions(-) diff --git a/configure b/configure index eb79e64a3..231ca184d 100755 --- a/configure +++ b/configure @@ -15903,7 +15903,7 @@ $as_echo_n "checking for broken prot.h... " >&6; } int main () { -exit(0); +return(0); ; return 0; } @@ -18582,21 +18582,22 @@ else /* end confdefs.h. */ #include +#include #include #include #include -main() { +int main() { FILE *f; char b[1024]; uid_t u = (uid_t) -1; if ((f = fopen("conftestdata", "w")) == NULL) - exit(1); + return(1); (void) sprintf(b, "%lu", (unsigned long) u); - (void) fprintf(f, "%d\n", strlen(b)); + (void) fprintf(f, "%d\n", (int)strlen(b)); (void) fclose(f); - exit(0); + return(0); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : @@ -20755,7 +20756,7 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include -main() { exit(fnmatch("/*/bin/echo *", "/usr/bin/echo just a test", FNM_CASEFOLD)); } +int main() { return(fnmatch("/*/bin/echo *", "/usr/bin/echo just a test", FNM_CASEFOLD)); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : sudo_cv_func_fnmatch=yes @@ -21571,6 +21572,7 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include +#include int main(void) { @@ -21578,12 +21580,12 @@ int main(void) char bufd[5] = { 'x', 'x', 'x', '\0', '\0' }; int i; i = snprintf (bufs, 2, "%s", "111"); - if (strcmp (bufs, "1")) exit (1); - if (i != 3) exit (1); + if (strcmp (bufs, "1")) return (1); + if (i != 3) return (1); i = snprintf (bufd, 2, "%d", 111); - if (strcmp (bufd, "1")) exit (1); - if (i != 3) exit (1); - exit(0); + if (strcmp (bufd, "1")) return (1); + if (i != 3) return (1); + return(0); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : @@ -21611,6 +21613,7 @@ else /* end confdefs.h. */ #include #include +#include int my_vsnprintf (char *buf, const char *tmpl, ...) { @@ -21628,12 +21631,12 @@ int main(void) char bufd[5] = { 'x', 'x', 'x', '\0', '\0' }; int i; i = my_vsnprintf (bufs, "%s", "111"); - if (strcmp (bufs, "1")) exit (1); - if (i != 3) exit (1); + if (strcmp (bufs, "1")) return (1); + if (i != 3) return (1); i = my_vsnprintf (bufd, "%d", 111); - if (strcmp (bufd, "1")) exit (1); - if (i != 3) exit (1); - exit(0); + if (strcmp (bufd, "1")) return (1); + if (i != 3) return (1); + return(0); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : @@ -22681,7 +22684,7 @@ else int main () { -extern char *__progname; (void)puts(__progname); +extern char *__progname; if (__progname[0] == '\0') return 1; ; return 0; } @@ -22723,7 +22726,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext int main () { -(void)puts(__func__); +if (__func__[0] == '\0') return 1; ; return 0; } @@ -22755,7 +22758,7 @@ else int main () { -(void)puts(__FUNCTION__); +if(__FUNCTION__[0] == '\0') return 1; ; return 0; } @@ -27356,7 +27359,7 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_includes_default -main() { char *p = malloc(1024); if (p == NULL) return 1; memset(p, 0, 1024); return 0; } +int main() { char *p = malloc(1024); if (p == NULL) return 1; memset(p, 0, 1024); return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : sudo_cv_working_pie=yes diff --git a/configure.ac b/configure.ac index 2a669a099..4b68bfe85 100644 --- a/configure.ac +++ b/configure.ac @@ -2080,7 +2080,7 @@ case "$host" in #include #include #include - ]], [[exit(0);]])], [AC_MSG_RESULT(no)], [AC_MSG_RESULT([yes, fixing locally]) + ]], [[return(0);]])], [AC_MSG_RESULT(no)], [AC_MSG_RESULT([yes, fixing locally]) sed 's:::g' < /usr/include/prot.h > prot.h ]) # ":DEFAULT" must be appended to _RLD_LIST @@ -3225,7 +3225,7 @@ dnl AC_CHECK_FUNCS([getprogname], [AC_CHECK_FUNCS([setprogname])], [ AC_MSG_CHECKING([for __progname]) AC_CACHE_VAL(sudo_cv___progname, [ - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[extern char *__progname; (void)puts(__progname);]])], [sudo_cv___progname=yes], [sudo_cv___progname=no])]) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[extern char *__progname; if (__progname[0] == '\0') return 1;]])], [sudo_cv___progname=yes], [sudo_cv___progname=no])]) if test "$sudo_cv___progname" = "yes"; then AC_DEFINE(HAVE___PROGNAME) fi @@ -3237,14 +3237,14 @@ dnl Check for __func__ or __FUNCTION__ dnl AC_MSG_CHECKING([for __func__]) AC_CACHE_VAL(sudo_cv___func__, [ -AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[(void)puts(__func__);]])], [sudo_cv___func__=yes], [sudo_cv___func__=no])]) +AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[if (__func__[0] == '\0') return 1;]])], [sudo_cv___func__=yes], [sudo_cv___func__=no])]) AC_MSG_RESULT($sudo_cv___func__) if test "$sudo_cv___func__" = "yes"; then AC_DEFINE(HAVE___FUNC__) elif test -n "$GCC"; then AC_MSG_CHECKING([for __FUNCTION__]) AC_CACHE_VAL(sudo_cv___FUNCTION__, [ - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[(void)puts(__FUNCTION__);]])], [sudo_cv___FUNCTION__=yes], [sudo_cv___FUNCTION__=no])]) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[if(__FUNCTION__[0] == '\0') return 1;]])], [sudo_cv___FUNCTION__=yes], [sudo_cv___FUNCTION__=no])]) AC_MSG_RESULT($sudo_cv___FUNCTION__) if test "$sudo_cv___FUNCTION__" = "yes"; then AC_DEFINE(HAVE___FUNC__) diff --git a/m4/ax_func_snprintf.m4 b/m4/ax_func_snprintf.m4 index f0dccf0ea..c060d6e9f 100644 --- a/m4/ax_func_snprintf.m4 +++ b/m4/ax_func_snprintf.m4 @@ -31,6 +31,7 @@ AC_DEFUN([AX_FUNC_SNPRINTF], AC_MSG_CHECKING(for working snprintf) AC_CACHE_VAL(ac_cv_have_working_snprintf, [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include +#include int main(void) { @@ -38,18 +39,19 @@ int main(void) char bufd[5] = { 'x', 'x', 'x', '\0', '\0' }; int i; i = snprintf (bufs, 2, "%s", "111"); - if (strcmp (bufs, "1")) exit (1); - if (i != 3) exit (1); + if (strcmp (bufs, "1")) return (1); + if (i != 3) return (1); i = snprintf (bufd, 2, "%d", 111); - if (strcmp (bufd, "1")) exit (1); - if (i != 3) exit (1); - exit(0); + if (strcmp (bufd, "1")) return (1); + if (i != 3) return (1); + return(0); }]])],[ac_cv_have_working_snprintf=yes],[ac_cv_have_working_snprintf=no],[ac_cv_have_working_snprintf=cross])]) AC_MSG_RESULT([$ac_cv_have_working_snprintf]) AC_MSG_CHECKING(for working vsnprintf) AC_CACHE_VAL(ac_cv_have_working_vsnprintf, [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include #include +#include int my_vsnprintf (char *buf, const char *tmpl, ...) { @@ -67,12 +69,12 @@ int main(void) char bufd[5] = { 'x', 'x', 'x', '\0', '\0' }; int i; i = my_vsnprintf (bufs, "%s", "111"); - if (strcmp (bufs, "1")) exit (1); - if (i != 3) exit (1); + if (strcmp (bufs, "1")) return (1); + if (i != 3) return (1); i = my_vsnprintf (bufd, "%d", 111); - if (strcmp (bufd, "1")) exit (1); - if (i != 3) exit (1); - exit(0); + if (strcmp (bufd, "1")) return (1); + if (i != 3) return (1); + return(0); }]])],[ac_cv_have_working_vsnprintf=yes],[ac_cv_have_working_vsnprintf=no],[ac_cv_have_working_vsnprintf=cross])]) AC_MSG_RESULT([$ac_cv_have_working_vsnprintf]) if test x$ac_cv_have_working_snprintf$ac_cv_have_working_vsnprintf != "xyesyes"; then diff --git a/m4/sudo.m4 b/m4/sudo.m4 index 7adbb5054..a5a972b3c 100644 --- a/m4/sudo.m4 +++ b/m4/sudo.m4 @@ -206,7 +206,7 @@ AC_DEFUN([SUDO_FUNC_FNMATCH], AC_CACHE_VAL(sudo_cv_func_fnmatch, [rm -f conftestdata; > conftestdata AC_RUN_IFELSE([AC_LANG_SOURCE([[#include -main() { exit(fnmatch("/*/bin/echo *", "/usr/bin/echo just a test", FNM_CASEFOLD)); }]])], [sudo_cv_func_fnmatch=yes], [sudo_cv_func_fnmatch=no], +int main() { return(fnmatch("/*/bin/echo *", "/usr/bin/echo just a test", FNM_CASEFOLD)); }]])], [sudo_cv_func_fnmatch=yes], [sudo_cv_func_fnmatch=no], [sudo_cv_func_fnmatch=no]) rm -f core core.* *.core]) AC_MSG_RESULT($sudo_cv_func_fnmatch) @@ -223,7 +223,7 @@ AC_DEFUN([SUDO_WORKING_PIE], AC_CACHE_VAL(sudo_cv_working_pie, [rm -f conftestdata; > conftestdata AC_RUN_IFELSE([AC_LANG_SOURCE([AC_INCLUDES_DEFAULT -main() { char *p = malloc(1024); if (p == NULL) return 1; memset(p, 0, 1024); return 0; }])], [sudo_cv_working_pie=yes], [sudo_cv_working_pie=no], +int main() { char *p = malloc(1024); if (p == NULL) return 1; memset(p, 0, 1024); return 0; }])], [sudo_cv_working_pie=yes], [sudo_cv_working_pie=no], [sudo_cv_working_pie=no]) rm -f core core.* *.core]) AC_MSG_RESULT($sudo_cv_working_pie) @@ -380,21 +380,22 @@ AC_CACHE_VAL(sudo_cv_uid_t_len, [rm -f conftestdata AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include +#include #include #include #include -main() { +int main() { FILE *f; char b[1024]; uid_t u = (uid_t) -1; if ((f = fopen("conftestdata", "w")) == NULL) - exit(1); + return(1); (void) sprintf(b, "%lu", (unsigned long) u); - (void) fprintf(f, "%d\n", strlen(b)); + (void) fprintf(f, "%d\n", (int)strlen(b)); (void) fclose(f); - exit(0); + return(0); }]])], [sudo_cv_uid_t_len=`cat conftestdata`], [sudo_cv_uid_t_len=10], [sudo_cv_uid_t_len=10]) ]) rm -f conftestdata