]> git.armaanb.net Git - opendoas.git/commitdiff
configure: add setresgid, setreuid and setregid checks
authorDuncan Overbruck <mail@duncano.de>
Thu, 12 Nov 2020 20:26:04 +0000 (21:26 +0100)
committerDuncan Overbruck <mail@duncano.de>
Thu, 12 Nov 2020 21:29:10 +0000 (22:29 +0100)
configure

index d6c85af1de06c2b6139c4beb31a08b41593001fd..0dfc64940b4dd598312e88e0acbd841b5aaf653e 100755 (executable)
--- a/configure
+++ b/configure
@@ -384,9 +384,47 @@ int main(void) {
        setresuid(0, 0, 0);
        return 0;
 }'
-check_func "setresuid" "$src" || {
+check_func "setresuid" "$src"
+have_setresuid=$?
+
+#
+# Check for setresgid().
+#
+src='
+#include <unistd.h>
+int main(void) {
+       setresgid(0, 0, 0);
+       return 0;
+}'
+check_func "setresgid" "$src"
+have_setresgid=$?
+
+if [ $have_setresuid -eq 1 -o $have_setresgid -eq 1 ]; then
        printf 'SRCS += libopenbsd/bsd-setres_id.c\n' >>$CONFIG_MK
-}
+fi
+
+#
+# Check for setreuid().
+#
+src='
+#include <unistd.h>
+int main(void) {
+       setreuid(0, 0);
+       return 0;
+}'
+check_func "setreuid" "$src"
+
+
+#
+# Check for setregid().
+#
+src='
+#include <unistd.h>
+int main(void) {
+       setregid(0, 0);
+       return 0;
+}'
+check_func "setregid" "$src"
 
 #
 # Check for closefrom().