tests: Add test_uwrap_setregid().
authorAndreas Schneider <asn@samba.org>
Wed, 18 Dec 2013 15:59:54 +0000 (16:59 +0100)
committerAndreas Schneider <asn@samba.org>
Wed, 18 Dec 2013 16:07:25 +0000 (17:07 +0100)
tests/testsuite.c

index c798c0808c194089748c955c27ca2567d6956f0e..a7201c3cd1dc011fdc37254f2b9934f9d2f09b42 100644 (file)
@@ -90,6 +90,25 @@ static void test_uwrap_setegid(void **state)
        assert_int_equal(u, 42);
 }
 
+#ifdef HAVE_SETREGID
+static void test_uwrap_setregid(void **state)
+{
+       int rc;
+       uid_t u;
+
+       (void) state; /* unused */
+
+       rc = setregid(1, 2);
+       assert_int_equal(rc, 0);
+
+       u = getgid();
+       assert_int_equal(u, 1);
+
+       u = getegid();
+       assert_int_equal(u, 2);
+}
+#endif
+
 static void test_uwrap_setgid(void **state)
 {
        int rc;
@@ -223,6 +242,9 @@ int main(void) {
                unit_test(test_uwrap_seteuid),
                unit_test(test_uwrap_setuid),
                unit_test(test_uwrap_setegid),
+#ifdef HAVE_SETREGID
+               unit_test(test_uwrap_setregid),
+#endif
                unit_test(test_uwrap_setgid),
                unit_test(test_uwrap_syscall_setreuid),
                unit_test(test_uwrap_syscall_setregid),