Blame SOURCES/valgrind-3.15.0-scalar-x86.patch

baee74
commit abc09f23e1ad55a07beb827aef969acfe6c496ef
baee74
Author: Mark Wielaard <mark@klomp.org>
baee74
Date:   Mon May 20 13:08:41 2019 +0200
baee74
baee74
    Make memcheck/tests/x86-linux/scalar test work under root.
baee74
    
baee74
    Running the testsuite as root isn't really recommended.
baee74
    But lets not make tests fail unnecessarily when running as root.
baee74
    Similar to the arm64-linux/scalar fixes. Plus 32bit variants that
baee74
    don't exist on arm64.
baee74
    
baee74
    Pass really invalid arguments to setuid[32], setgid[32], acct, fchown[32].
baee74
    Make setresgid[32], setresuid[32], setregid[32], setreuid[32] always succeed.
baee74
baee74
diff --git a/memcheck/tests/x86-linux/scalar.c b/memcheck/tests/x86-linux/scalar.c
baee74
index 213a5ad..52f0d4e 100644
baee74
--- a/memcheck/tests/x86-linux/scalar.c
baee74
+++ b/memcheck/tests/x86-linux/scalar.c
baee74
@@ -145,7 +145,7 @@ int main(void)
baee74
 
baee74
    // __NR_setuid 23
baee74
    GO(__NR_setuid, "1s 0m");
baee74
-   SY(__NR_setuid, x0); FAIL;
baee74
+   SY(__NR_setuid, x0-1); FAIL;
baee74
 
baee74
    // __NR_getuid 24
baee74
    GO(__NR_getuid, "0s 0m");
baee74
@@ -238,7 +238,7 @@ int main(void)
baee74
 
baee74
    // __NR_setgid 46
baee74
    GO(__NR_setgid, "1s 0m");
baee74
-   SY(__NR_setgid, x0); FAIL;
baee74
+   SY(__NR_setgid, x0-1); FAIL;
baee74
 
baee74
    // __NR_getgid 47
baee74
    GO(__NR_getgid, "0s 0m");
baee74
@@ -258,7 +258,7 @@ int main(void)
baee74
 
baee74
    // __NR_acct 51
baee74
    GO(__NR_acct, "1s 1m");
baee74
-   SY(__NR_acct, x0); FAIL;
baee74
+   SY(__NR_acct, x0-1); FAIL;
baee74
 
baee74
    // __NR_umount2 52
baee74
    GO(__NR_umount2, "2s 1m");
baee74
@@ -349,11 +349,11 @@ int main(void)
baee74
 
baee74
    // __NR_setreuid 70
baee74
    GO(__NR_setreuid, "2s 0m");
baee74
-   SY(__NR_setreuid, x0, x0); FAIL;
baee74
+   SY(__NR_setreuid, x0-1, x0-1); SUCC;
baee74
 
baee74
    // __NR_setregid 71
baee74
    GO(__NR_setregid, "2s 0m");
baee74
-   SY(__NR_setregid, x0, x0); FAIL;
baee74
+   SY(__NR_setregid, x0-1, x0-1); SUCC;
baee74
 
baee74
    // __NR_sigsuspend 72
baee74
    // XXX: how do you use this function?
baee74
@@ -456,7 +456,7 @@ int main(void)
baee74
 
baee74
    // __NR_fchown 95
baee74
    GO(__NR_fchown, "3s 0m");
baee74
-   SY(__NR_fchown, x0, x0, x0); FAIL;
baee74
+   SY(__NR_fchown, x0-1, x0, x0); FAIL;
baee74
 
baee74
    // __NR_getpriority 96
baee74
    GO(__NR_getpriority, "2s 0m");
baee74
@@ -742,7 +742,7 @@ int main(void)
baee74
 
baee74
    // __NR_setresuid 164
baee74
    GO(__NR_setresuid, "3s 0m");
baee74
-   SY(__NR_setresuid, x0, x0, x0); FAIL;
baee74
+   SY(__NR_setresuid, x0-1, x0-1, x0-1); SUCC;
baee74
 
baee74
    // __NR_getresuid 165
baee74
    GO(__NR_getresuid, "3s 3m");
baee74
@@ -766,7 +766,7 @@ int main(void)
baee74
 
baee74
    // __NR_setresgid 170
baee74
    GO(__NR_setresgid, "3s 0m");
baee74
-   SY(__NR_setresgid, x0, x0, x0); FAIL;
baee74
+   SY(__NR_setresgid, x0-1, x0-1, x0-1); SUCC;
baee74
 
baee74
    // __NR_getresgid 171
baee74
    GO(__NR_getresgid, "3s 3m");
baee74
@@ -923,11 +923,11 @@ int main(void)
baee74
 
baee74
    // __NR_setreuid32 203
baee74
    GO(__NR_setreuid32, "2s 0m");
baee74
-   SY(__NR_setreuid32, x0, x0); FAIL;
baee74
+   SY(__NR_setreuid32, x0-1, x0-1); SUCC;
baee74
 
baee74
    // __NR_setregid32 204
baee74
    GO(__NR_setregid32, "2s 0m");
baee74
-   SY(__NR_setregid32, x0, x0); FAIL;
baee74
+   SY(__NR_setregid32, x0-1, x0-1); SUCC;
baee74
 
baee74
    // __NR_getgroups32 205
baee74
    GO(__NR_getgroups32, "2s 1m");
baee74
@@ -939,11 +939,11 @@ int main(void)
baee74
 
baee74
    // __NR_fchown32 207
baee74
    GO(__NR_fchown32, "3s 0m");
baee74
-   SY(__NR_fchown32, x0, x0, x0); FAIL;
baee74
+   SY(__NR_fchown32, x0-1, x0, x0); FAIL;
baee74
 
baee74
    // __NR_setresuid32 208
baee74
    GO(__NR_setresuid32, "3s 0m");
baee74
-   SY(__NR_setresuid32, x0, x0, x0); FAIL;
baee74
+   SY(__NR_setresuid32, x0-1, x0-1, x0-1); SUCC;
baee74
 
baee74
    // __NR_getresuid32 209
baee74
    GO(__NR_getresuid32, "3s 3m");
baee74
@@ -951,7 +951,7 @@ int main(void)
baee74
 
baee74
    // __NR_setresgid32 210
baee74
    GO(__NR_setresgid32, "3s 0m");
baee74
-   SY(__NR_setresgid32, x0, x0, x0); FAIL;
baee74
+   SY(__NR_setresgid32, x0-1, x0-1, x0-1); SUCC;
baee74
 
baee74
    // __NR_getresgid32 211
baee74
    GO(__NR_getresgid32, "3s 3m");
baee74
@@ -963,11 +963,11 @@ int main(void)
baee74
 
baee74
    // __NR_setuid32 213
baee74
    GO(__NR_setuid32, "1s 0m");
baee74
-   SY(__NR_setuid32, x0); FAIL;
baee74
+   SY(__NR_setuid32, x0-1); FAIL;
baee74
 
baee74
    // __NR_setgid32 214
baee74
    GO(__NR_setgid32, "1s 0m");
baee74
-   SY(__NR_setgid32, x0); FAIL;
baee74
+   SY(__NR_setgid32, x0-1); FAIL;
baee74
 
baee74
    // __NR_setfsuid32 215
baee74
    GO(__NR_setfsuid32, "1s 0m");