diff options
author | Brent Cook <bcook@openbsd.org> | 2014-07-30 06:53:02 -0500 |
---|---|---|
committer | Brent Cook <bcook@openbsd.org> | 2014-07-30 06:53:02 -0500 |
commit | b9ff0728e1bab018dd888c173151dba35e40ef3b (patch) | |
tree | e140e9287ca6f3a261d5e9fe036e7675846f8edd /configure.ac.tpl | |
parent | a07e33702049d63adb06271e4d15412685b44085 (diff) | |
download | portable-b9ff0728e1bab018dd888c173151dba35e40ef3b.tar.gz portable-b9ff0728e1bab018dd888c173151dba35e40ef3b.tar.bz2 portable-b9ff0728e1bab018dd888c173151dba35e40ef3b.zip |
harmonize asprintf with OpenSSH
* use the original name for the file from OpenSSH (remove duplicate version)
* add va_copy/__va_copy checks to configure
* incorporate proposed fixes to openssh version:
+ include more system headers directly for various definitions
+ limit the scope of va_copy/va_end to their affected vsnprintf calls
+ simplify error handling, removing a dead assignment
Diffstat (limited to 'configure.ac.tpl')
-rw-r--r-- | configure.ac.tpl | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/configure.ac.tpl b/configure.ac.tpl index de3995c..b557687 100644 --- a/configure.ac.tpl +++ b/configure.ac.tpl | |||
@@ -117,6 +117,31 @@ AC_CHECK_FUNC(explicit_bzero, | |||
117 | AC_DEFINE(NO_EXPLICIT_BZERO) | 117 | AC_DEFINE(NO_EXPLICIT_BZERO) |
118 | AM_CONDITIONAL(NO_EXPLICIT_BZERO, true)) | 118 | AM_CONDITIONAL(NO_EXPLICIT_BZERO, true)) |
119 | 119 | ||
120 | AC_CACHE_CHECK([whether va_copy exists], ac_cv_have_va_copy, [ | ||
121 | AC_LINK_IFELSE([AC_LANG_PROGRAM([[ | ||
122 | #include <stdarg.h> | ||
123 | va_list x,y; | ||
124 | ]], [[ va_copy(x,y); ]])], | ||
125 | [ ac_cv_have_va_copy="yes" ], | ||
126 | [ ac_cv_have_va_copy="no" | ||
127 | ]) | ||
128 | ]) | ||
129 | if test "x$ac_cv_have_va_copy" = "xyes" ; then | ||
130 | AC_DEFINE([HAVE_VA_COPY], [1], [Define if va_copy exists]) | ||
131 | fi | ||
132 | |||
133 | AC_CACHE_CHECK([whether __va_copy exists], ac_cv_have___va_copy, [ | ||
134 | AC_LINK_IFELSE([AC_LANG_PROGRAM([[ | ||
135 | #include <stdarg.h> | ||
136 | va_list x,y; | ||
137 | ]], [[ __va_copy(x,y); ]])], | ||
138 | [ ac_cv_have___va_copy="yes" ], [ ac_cv_have___va_copy="no" | ||
139 | ]) | ||
140 | ]) | ||
141 | if test "x$ac_cv_have___va_copy" = "xyes" ; then | ||
142 | AC_DEFINE([HAVE___VA_COPY], [1], [Define if __va_copy exists]) | ||
143 | fi | ||
144 | |||
120 | AC_CHECK_FUNC(getauxval, AC_DEFINE(HAVE_GETAUXVAL)) | 145 | AC_CHECK_FUNC(getauxval, AC_DEFINE(HAVE_GETAUXVAL)) |
121 | 146 | ||
122 | AC_CHECK_FUNC(funopen, AC_DEFINE(HAVE_FUNOPEN)) | 147 | AC_CHECK_FUNC(funopen, AC_DEFINE(HAVE_FUNOPEN)) |