percona/percona-server
plugin/percona-pam-for-mysql/CMakeLists.txt
:22
CHECK_SYMBOL_EXISTS(getpwnam_r "pwd.h" HAVE_GETPWNAM_R)
CHECK_SYMBOL_EXISTS(getpwnam_r "pwd.h" HAVE_GETPWNAM_R)
ENDIF(HAVE_PAM AND HAVE_GETPWNAM_R AND HAVE_GETGRGID_R AND HAVE_DLFCN_H)
CHECK_SYMBOL_EXISTS(getpwnam_r "pwd.h" HAVE_GETPWNAM_R)
ENDIF(HAVE_PAM AND HAVE_GETPWNAM_R AND HAVE_GETGRGID_R AND HAVE_DLFCN_H)
check_c_source_compiles("
#include <sys/types.h>
#include <pwd.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
int
main(int argc, char *argv[])
{
struct passwd pw, *res;
char *buf;
size_t bufSize;
int rv;
bufSize = sysconf(_SC_GETPW_R_SIZE_MAX);
if (bufSize == -1) { bufSize = 16384; }
if ((buf = malloc(bufSize)) == NULL) { return (1); }
rv = getpwnam_r(\"foo\", &pw, buf, bufSize, &res);
if (res == NULL) {
return (rv == 0);
}
return (pw.pw_dir != NULL);
}
" HAVE_GETPWNAM_R)
check_function_exists ( getpwnam_r HAVE_GETPWNAM_R )
CHECK_SYMBOL_EXISTS(getpwnam_r "pwd.h" HAVE_GETPWNAM_R)
ENDIF(HAVE_PAM AND HAVE_GETPWNAM_R AND HAVE_GETGRGID_R AND HAVE_DLFCN_H)