]> granicus.if.org Git - apache/commitdiff
Get mod_userdir compiling on FreeBSD when APR_HAS_THREADS.
authorJeff Trawick <trawick@apache.org>
Fri, 10 Nov 2000 23:52:18 +0000 (23:52 +0000)
committerJeff Trawick <trawick@apache.org>
Fri, 10 Nov 2000 23:52:18 +0000 (23:52 +0000)
This doesn't account for the fact that getpwnam() isn't
thread-safe on FreeBSD; it also doesn't account for systems
where getpwnam_r lives outside of libc.

See thread with subject "[?PATCH?] using getpwnam_r in mod_userdir"
in Nov. 2000 new-httpd for some better long-term ideas for how to
handle the problem.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86917 13f79535-47bb-0310-9956-ffa450edef68

modules/aaa/config.m4
modules/mappers/mod_userdir.c

index 9aaa782cc18f43e81260a4274d3664b659e133d9..7bf261a28e38bed8ae5324770e1697fe45e2fa48 100644 (file)
@@ -25,7 +25,9 @@ APACHE_CHECK_STANDARD_MODULE(asis, as-is filetypes, , yes)
 APACHE_CHECK_STANDARD_MODULE(imap, internal imagemaps, , yes)
 APACHE_CHECK_STANDARD_MODULE(actions, Action triggering on requests, action, yes)
 APACHE_CHECK_STANDARD_MODULE(speling, correct common URL misspellings, , no)
-APACHE_CHECK_STANDARD_MODULE(userdir, mapping of user requests, , yes)
+APACHE_CHECK_STANDARD_MODULE(userdir, mapping of user requests, , yes, [
+  AC_CHECK_FUNCS(getpwnam_r)
+])
 APACHE_CHECK_STANDARD_MODULE(suexec, set uid and gid for spawned processes, , no)
 APACHE_CHECK_STANDARD_MODULE(alias, translation of requests, , yes)
 
index b04d2a555698dcedee4b9e2f829218cd373d25ad..56c236d54f92628ae54afc9263c90eff8c40dd45 100644 (file)
@@ -326,7 +326,7 @@ static int translate_userdir(request_rec *r)
 #else                           /* WIN32 */
             struct passwd *pw;
 
-#if APR_HAS_THREADS && defined(_POSIX_THREAD_SAFE_FUNCTIONS)
+#if APR_HAS_THREADS && defined(HAVE_GETPWNAM_R)
             struct passwd pwd;
             size_t buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
             char *buf = apr_pcalloc(r->pool, buflen);