#!/usr/bin/env python
import Options
-import os
+import os, sys
VERSION="1.1.0"
'int syscall(int number, ...)',
define='HAVE_SYSCALL_INT', headers='unistd.h sys/syscall.h')
+ if (sys.platform.rfind('linux') > -1):
+ conf.CHECK_CODE('''
+#if defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#include <stdlib.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <errno.h>
+
+#ifdef HAVE_SYS_PRIV_H
+#include <sys/priv.h>
+#endif
+#ifdef HAVE_SYS_ID_H
+#include <sys/id.h>
+#endif
+
+#if defined(HAVE_SYSCALL_H)
+#include <syscall.h>
+#endif
+
+#if defined(HAVE_SYS_SYSCALL_H)
+#include <sys/syscall.h>
+#endif
+
+syscall(SYS_setresuid32, -1, -1, -1);
+syscall(SYS_setresgid32, -1, -1, -1);
+syscall(SYS_setreuid32, -1, -1);
+syscall(SYS_setregid32, -1, -1);
+syscall(SYS_setuid32, -1);
+syscall(SYS_setgid32, -1);
+syscall(SYS_setgroups32, 0, NULL);
+''',
+ 'HAVE_LINUX_32BIT_SYSCALLS',
+ msg="Checking whether Linux has 32-bit credential calls");
+
conf.CHECK_FUNCS('getresuid getresgid')
# Create full path to uid_wrapper