From: Sara Golemon Date: Fri, 5 Jan 2007 21:31:56 +0000 (+0000) Subject: MFH: (r-1.16) ttyname_r() is broken on BSD X-Git-Tag: php-5.2.1RC3~98 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=13f447eb64c941970401cac7aa51a500bac78036;p=php MFH: (r-1.16) ttyname_r() is broken on BSD --- diff --git a/ext/posix/config.m4 b/ext/posix/config.m4 index 9038330bb1..f84facde60 100644 --- a/ext/posix/config.m4 +++ b/ext/posix/config.m4 @@ -11,5 +11,22 @@ if test "$PHP_POSIX" = "yes"; then AC_CHECK_HEADERS(sys/mkdev.h) - AC_CHECK_FUNCS(seteuid setegid setsid getsid setpgid getpgid ctermid mkfifo mknod getrlimit getlogin getgroups makedev initgroups getpwuid_r getgrgid_r ttyname_r) + AC_CHECK_FUNCS(seteuid setegid setsid getsid setpgid getpgid ctermid mkfifo mknod getrlimit getlogin getgroups makedev initgroups getpwuid_r getgrgid_r) + + AC_MSG_CHECKING([for working ttyname_r() implementation]) + AC_TRY_RUN([ +#include + +int main(int argc, char *argv[]) +{ + char buf[64]; + + return ttyname_r(0, buf, 64) ? 1 : 0; +} + ],[ + AC_MSG_RESULT([yes]) + AC_DEFINE(HAVE_TTYNAME_R, 1, [Whether you have a working ttyname_r]) + ],[ + AC_MSG_RESULT([no, posix_ttyname() will be thread-unsafe]) + ]) fi