diff options
author | Julien Cristau <jcristau@debian.org> | 2013-08-02 20:07:36 +0200 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2013-08-06 13:03:25 +1000 |
commit | c218ba8423a73a7a643cb17789db8a1dd0901ca6 (patch) | |
tree | ecfa6cd1b492d6f22c6c20695b0190d90bd5cb02 | |
parent | 930c6ff15d437dfb0f897e8cb4253abba70819cc (diff) |
xfree86: improve check for posix saved ids
Replace hardcoded SVR4 || linux || CSRG_BASED with an autoconf check and
the _POSIX_SAVED_IDS macro.
Suggested-by: Mark Kettenis <mark.kettenis@xs4all.nl>
Signed-off-by: Julien Cristau <jcristau@debian.org>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | hw/xfree86/parser/write.c | 3 | ||||
-rw-r--r-- | include/xorg-config.h.in | 3 |
3 files changed, 6 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac index c6ecba418..d27ca2392 100644 --- a/configure.ac +++ b/configure.ac @@ -215,7 +215,7 @@ AC_SUBST(DLOPEN_LIBS) dnl Checks for library functions. AC_CHECK_FUNCS([backtrace ffs geteuid getuid issetugid getresuid \ getdtablesize getifaddrs getpeereid getpeerucred getzoneid \ - mmap shmctl64 strncasecmp vasprintf vsnprintf walkcontext]) + mmap seteuid shmctl64 strncasecmp vasprintf vsnprintf walkcontext]) AC_REPLACE_FUNCS([strcasecmp strcasestr strlcat strlcpy strndup]) dnl Find the math libary, then check for cbrt function in it. diff --git a/hw/xfree86/parser/write.c b/hw/xfree86/parser/write.c index 9c706a062..26739b933 100644 --- a/hw/xfree86/parser/write.c +++ b/hw/xfree86/parser/write.c @@ -55,6 +55,7 @@ #include <xorg-config.h> #endif +#include "os.h" #include "xf86Parser.h" #include "xf86tokens.h" #include "Configint.h" @@ -65,7 +66,7 @@ #include <signal.h> #include <errno.h> -#if defined(SVR4) || defined(__linux__) || defined(CSRG_BASED) +#if defined(HAVE_SETEUID) && defined(_POSIX_SAVED_IDS) && _POSIX_SAVED_IDS > 0 #define HAS_SAVED_IDS_AND_SETEUID #endif #if defined(WIN32) diff --git a/include/xorg-config.h.in b/include/xorg-config.h.in index a71b25d72..0df31aeb2 100644 --- a/include/xorg-config.h.in +++ b/include/xorg-config.h.in @@ -139,4 +139,7 @@ /* Have X server platform bus support */ #undef XSERVER_PLATFORM_BUS +/* Define to 1 if you have the `seteuid' function. */ +#undef HAVE_SETEUID + #endif /* _XORG_CONFIG_H_ */ |