]> granicus.if.org Git - strace/commitdiff
tests: make ipc tests a bit more strict
authorEugene Syromyatnikov <evgsyr@gmail.com>
Sat, 7 Apr 2018 00:25:59 +0000 (02:25 +0200)
committerDmitry V. Levin <ldv@altlinux.org>
Mon, 7 May 2018 10:52:16 +0000 (10:52 +0000)
* tests/gen_tests.in (ipc_msg, ipc_sem, ipc_shm): Add -a option.
* tests/ipc_msg.c: Replace " +" with " " in expected output.
* tests/ipc_sem.c: Likewise.
* tests/ipc_shm.c: Likewise.

tests/gen_tests.in
tests/ipc_msg.c
tests/ipc_sem.c
tests/ipc_shm.c

index a9e0a75f3ad76379b53044afe4cbabba12765219..0d4b2418aa04e2c3ae883ec568d522d53e2a1682 100644 (file)
@@ -150,9 +150,9 @@ iopl        -a8
 ioprio -a18 -e trace=ioprio_get,ioprio_set
 ip_mreq        -e trace=setsockopt
 ipc    -a19
-ipc_msg        +ipc.sh
-ipc_sem        +ipc.sh
-ipc_shm        +ipc.sh
+ipc_msg        +ipc.sh -a26
+ipc_sem        +ipc.sh -a29
+ipc_shm        +ipc.sh -a29
 kcmp   -a22
 kcmp-y -a22 -y -e trace=kcmp
 kern_features -a16
index b493843981dd234eaf39c706108be63f33f8334b..701885902d676ebc5cf91424e630232b4cbcc58b 100644 (file)
@@ -58,7 +58,7 @@ static void
 cleanup(void)
 {
        msgctl(id, IPC_RMID, NULL);
-       printf("msgctl\\(%d, (IPC_64\\|)?IPC_RMID, NULL\\) += 0\n", id);
+       printf("msgctl\\(%d, (IPC_64\\|)?IPC_RMID, NULL\\) = 0\n", id);
        id = -1;
 }
 
@@ -79,7 +79,7 @@ main(void)
        struct msqid_ds ds;
 
        rc = msgget(bogus_key, bogus_flags);
-       printf("msgget\\(%#llx, %s%s%s%#x\\|%#04o\\) += %s\n",
+       printf("msgget\\(%#llx, %s%s%s%#x\\|%#04o\\) = %s\n",
               zero_extend_signed_to_ull(bogus_key),
               IPC_CREAT & bogus_flags ? "IPC_CREAT\\|" : "",
               IPC_EXCL & bogus_flags ? "IPC_EXCL\\|" : "",
@@ -90,16 +90,16 @@ main(void)
        id = msgget(private_key, 0600);
        if (id < 0)
                perror_msg_and_skip("msgget");
-       printf("msgget\\(IPC_PRIVATE, 0600\\) += %d\n", id);
+       printf("msgget\\(IPC_PRIVATE, 0600\\) = %d\n", id);
        atexit(cleanup);
 
        rc = msgctl(bogus_msgid, bogus_cmd, NULL);
        printf("msgctl\\(%d, (IPC_64\\|)?%#x /\\* MSG_\\?\\?\\? \\*/, NULL\\)"
-              " += %s\n", bogus_msgid, bogus_cmd, sprintrc_grep(rc));
+              " = %s\n", bogus_msgid, bogus_cmd, sprintrc_grep(rc));
 
 #if TEST_MSGCTL_BOGUS_ADDR
        rc = msgctl(bogus_msgid, IPC_SET, bogus_addr);
-       printf("msgctl\\(%d, (IPC_64\\|)?IPC_SET, %p\\) += %s\n",
+       printf("msgctl\\(%d, (IPC_64\\|)?IPC_SET, %p\\) = %s\n",
               bogus_msgid, bogus_addr, sprintrc_grep(rc));
 #endif
 
@@ -108,7 +108,7 @@ main(void)
        printf("msgctl\\(%d, (IPC_64\\|)?IPC_STAT, \\{msg_perm=\\{uid=%u"
               ", gid=%u, mode=%#o, key=%u, cuid=%u, cgid=%u\\}, msg_stime=%u"
               ", msg_rtime=%u, msg_ctime=%u, msg_qnum=%u, msg_qbytes=%u"
-              ", msg_lspid=%u, msg_lrpid=%u\\}\\) += 0\n",
+              ", msg_lspid=%u, msg_lrpid=%u\\}\\) = 0\n",
               id, (unsigned) ds.msg_perm.uid, (unsigned) ds.msg_perm.gid,
               (unsigned) ds.msg_perm.mode, (unsigned) ds.msg_perm.__key,
               (unsigned) ds.msg_perm.cuid, (unsigned) ds.msg_perm.cgid,
@@ -120,16 +120,16 @@ main(void)
        if (msgctl(id, IPC_SET, &ds))
                perror_msg_and_skip("msgctl IPC_SET");
        printf("msgctl\\(%d, (IPC_64\\|)?IPC_SET, \\{msg_perm=\\{uid=%u"
-              ", gid=%u, mode=%#o\\}, ...\\}\\) += 0\n",
+              ", gid=%u, mode=%#o\\}, ...\\}\\) = 0\n",
               id, (unsigned) ds.msg_perm.uid, (unsigned) ds.msg_perm.gid,
               (unsigned) ds.msg_perm.mode);
 
        rc = msgctl(0, MSG_INFO, &ds);
-       printf("msgctl\\(0, (IPC_64\\|)?MSG_INFO, %p\\) += %s\n",
+       printf("msgctl\\(0, (IPC_64\\|)?MSG_INFO, %p\\) = %s\n",
               &ds, sprintrc_grep(rc));
 
        rc = msgctl(id, MSG_STAT, &ds);
-       printf("msgctl\\(%d, (IPC_64\\|)?MSG_STAT, %p\\) += %s\n",
+       printf("msgctl\\(%d, (IPC_64\\|)?MSG_STAT, %p\\) = %s\n",
               id, &ds, sprintrc_grep(rc));
 
        return 0;
index c8832726597e06c45ead1c062fe92b1486bfa74b..b51b3ad402f2b22f2393e0159bbeae031770310f 100644 (file)
@@ -50,7 +50,7 @@ static void
 cleanup(void)
 {
        semctl(id, 0, IPC_RMID, 0);
-       printf("semctl\\(%d, 0, (IPC_64\\|)?IPC_RMID, \\[?NULL\\]?\\) += 0\n",
+       printf("semctl\\(%d, 0, (IPC_64\\|)?IPC_RMID, \\[?NULL\\]?\\) = 0\n",
               id);
        id = -1;
 }
@@ -75,7 +75,7 @@ main(void)
        struct seminfo info;
 
        rc = semget(bogus_key, bogus_size, bogus_flags);
-       printf("semget\\(%#llx, %d, %s%s%s%#x\\|%#04o\\) += %s\n",
+       printf("semget\\(%#llx, %d, %s%s%s%#x\\|%#04o\\) = %s\n",
               zero_extend_signed_to_ull(bogus_key), bogus_size,
               IPC_CREAT & bogus_flags ? "IPC_CREAT\\|" : "",
               IPC_EXCL & bogus_flags ? "IPC_EXCL\\|" : "",
@@ -86,30 +86,30 @@ main(void)
        id = semget(private_key, 1, 0600);
        if (id < 0)
                perror_msg_and_skip("semget");
-       printf("semget\\(IPC_PRIVATE, 1, 0600\\) += %d\n", id);
+       printf("semget\\(IPC_PRIVATE, 1, 0600\\) = %d\n", id);
        atexit(cleanup);
 
        rc = semctl(bogus_semid, bogus_semnum, bogus_cmd, bogus_arg);
 #define SEMCTL_BOGUS_ARG_FMT "(%#lx|\\[(%#lx|NULL)\\]|NULL)"
        printf("semctl\\(%d, %d, (IPC_64\\|)?%#x /\\* SEM_\\?\\?\\? \\*/"
-              ", " SEMCTL_BOGUS_ARG_FMT "\\) += %s\n",
+              ", " SEMCTL_BOGUS_ARG_FMT "\\) = %s\n",
               bogus_semid, bogus_semnum, bogus_cmd,
               bogus_arg, bogus_arg, sprintrc_grep(rc));
 
        un.buf = &ds;
        if (semctl(id, 0, IPC_STAT, un))
                perror_msg_and_skip("semctl IPC_STAT");
-       printf("semctl\\(%d, 0, (IPC_64\\|)?IPC_STAT, \\[?%p\\]?\\) += 0\n",
+       printf("semctl\\(%d, 0, (IPC_64\\|)?IPC_STAT, \\[?%p\\]?\\) = 0\n",
               id, &ds);
 
        un.__buf = &info;
        rc = semctl(0, 0, SEM_INFO, un);
-       printf("semctl\\(0, 0, (IPC_64\\|)?SEM_INFO, \\[?%p\\]?\\) += %s\n",
+       printf("semctl\\(0, 0, (IPC_64\\|)?SEM_INFO, \\[?%p\\]?\\) = %s\n",
               &info, sprintrc_grep(rc));
 
        un.buf = &ds;
        rc = semctl(id, 0, SEM_STAT, un);
-       printf("semctl\\(%d, 0, (IPC_64\\|)?SEM_STAT, \\[?%p\\]?\\) += %s\n",
+       printf("semctl\\(%d, 0, (IPC_64\\|)?SEM_STAT, \\[?%p\\]?\\) = %s\n",
               id, &ds, sprintrc_grep(rc));
 
        return 0;
index 6586c8af7e17d7bb50cede754f7636fc4961642a..f9dd577bd7be942f178cce83fa439994fc6a32bb 100644 (file)
@@ -50,7 +50,7 @@ static void
 cleanup(void)
 {
        shmctl(id, IPC_RMID, NULL);
-       printf("shmctl\\(%d, (IPC_64\\|)?IPC_RMID, NULL\\) += 0\n", id);
+       printf("shmctl\\(%d, (IPC_64\\|)?IPC_RMID, NULL\\) = 0\n", id);
        id = -1;
 }
 
@@ -82,25 +82,25 @@ main(void)
        struct shmid_ds ds;
 
        rc = shmget(bogus_key, bogus_size, 0);
-       printf("shmget\\(%#llx, %zu, 000\\) += %s\n",
+       printf("shmget\\(%#llx, %zu, 000\\) = %s\n",
               zero_extend_signed_to_ull(bogus_key), bogus_size,
               sprintrc_grep(rc));
 
        rc = shmget(bogus_key, bogus_size, huge_flags);
-       printf("shmget\\(%#llx, %zu, %s\\|%#03o\\) += %s\n",
+       printf("shmget\\(%#llx, %zu, %s\\|%#03o\\) = %s\n",
               zero_extend_signed_to_ull(bogus_key), bogus_size,
               "21<<SHM_HUGE_SHIFT", 0, sprintrc_grep(rc));
 
        bogus_flags = 0xface1e55 & ~(bogus_ipc_shm_flags | huge_mask);
        rc = shmget(bogus_key, bogus_size, bogus_flags);
-       printf("shmget\\(%#llx, %zu, %#x\\|%#03o\\) += %s\n",
+       printf("shmget\\(%#llx, %zu, %#x\\|%#03o\\) = %s\n",
               zero_extend_signed_to_ull(bogus_key), bogus_size,
               bogus_flags & ~0777,
               bogus_flags & 0777, sprintrc_grep(rc));
 
        bogus_flags |= bogus_ipc_shm_flags;
        rc = shmget(bogus_key, bogus_size, bogus_flags);
-       printf("shmget\\(%#llx, %zu, %s\\|%#x\\|%#03o\\) += %s\n",
+       printf("shmget\\(%#llx, %zu, %s\\|%#x\\|%#03o\\) = %s\n",
               zero_extend_signed_to_ull(bogus_key), bogus_size,
               "IPC_CREAT\\|IPC_EXCL\\|SHM_HUGETLB\\|SHM_NORESERVE",
               bogus_flags & ~(0777 | bogus_ipc_shm_flags),
@@ -108,7 +108,7 @@ main(void)
 
        bogus_flags |= huge_flags;
        rc = shmget(bogus_key, bogus_size, bogus_flags);
-       printf("shmget\\(%#llx, %zu, %s\\|%#x\\|%s\\|%#03o\\) += %s\n",
+       printf("shmget\\(%#llx, %zu, %s\\|%#x\\|%s\\|%#03o\\) = %s\n",
               zero_extend_signed_to_ull(bogus_key), bogus_size,
               "IPC_CREAT\\|IPC_EXCL\\|SHM_HUGETLB\\|SHM_NORESERVE",
               bogus_flags & ~(0777 | bogus_ipc_shm_flags | huge_mask),
@@ -117,7 +117,7 @@ main(void)
 
        bogus_flags &= ~bogus_ipc_shm_flags;
        rc = shmget(bogus_key, bogus_size, bogus_flags);
-       printf("shmget\\(%#llx, %zu, %#x\\|%s\\|%#03o\\) += %s\n",
+       printf("shmget\\(%#llx, %zu, %#x\\|%s\\|%#03o\\) = %s\n",
               zero_extend_signed_to_ull(bogus_key), bogus_size,
               bogus_flags & ~(0777 | huge_mask),
               "21<<SHM_HUGE_SHIFT",
@@ -126,15 +126,15 @@ main(void)
        id = shmget(private_key, 1, 0600);
        if (id < 0)
                perror_msg_and_skip("shmget");
-       printf("shmget\\(IPC_PRIVATE, 1, 0600\\) += %d\n", id);
+       printf("shmget\\(IPC_PRIVATE, 1, 0600\\) = %d\n", id);
        atexit(cleanup);
 
        rc = shmctl(bogus_id, bogus_cmd, NULL);
        printf("shmctl\\(%d, (IPC_64\\|)?%#x /\\* SHM_\\?\\?\\? \\*/, NULL\\)"
-              " += %s\n", bogus_id, bogus_cmd, sprintrc_grep(rc));
+              " = %s\n", bogus_id, bogus_cmd, sprintrc_grep(rc));
 
        rc = shmctl(bogus_id, IPC_STAT, bogus_addr);
-       printf("shmctl\\(%d, (IPC_64\\|)?IPC_STAT, %p\\) += %s\n",
+       printf("shmctl\\(%d, (IPC_64\\|)?IPC_STAT, %p\\) = %s\n",
               bogus_id, bogus_addr, sprintrc_grep(rc));
 
        if (shmctl(id, IPC_STAT, &ds))
@@ -142,7 +142,7 @@ main(void)
        printf("shmctl\\(%d, (IPC_64\\|)?IPC_STAT, \\{shm_perm=\\{uid=%u, gid=%u, "
                "mode=%#o, key=%u, cuid=%u, cgid=%u\\}, shm_segsz=%u, shm_cpid=%u, "
                "shm_lpid=%u, shm_nattch=%u, shm_atime=%u, shm_dtime=%u, "
-               "shm_ctime=%u\\}\\) += 0\n",
+               "shm_ctime=%u\\}\\) = 0\n",
                id, (unsigned) ds.shm_perm.uid, (unsigned) ds.shm_perm.gid,
                (unsigned) ds.shm_perm.mode, (unsigned) ds.shm_perm.__key,
                (unsigned) ds.shm_perm.cuid, (unsigned) ds.shm_perm.cgid,
@@ -154,16 +154,16 @@ main(void)
        if (shmctl(id, IPC_SET, &ds))
                perror_msg_and_skip("shmctl IPC_SET");
        printf("shmctl\\(%d, (IPC_64\\|)?IPC_SET, \\{shm_perm=\\{uid=%u, gid=%u"
-              ", mode=%#o\\}, ...\\}\\) += 0\n",
+              ", mode=%#o\\}, ...\\}\\) = 0\n",
               id, (unsigned) ds.shm_perm.uid, (unsigned) ds.shm_perm.gid,
               (unsigned) ds.shm_perm.mode);
 
        rc = shmctl(0, SHM_INFO, &ds);
-       printf("shmctl\\(0, (IPC_64\\|)?SHM_INFO, %p\\) += %s\n",
+       printf("shmctl\\(0, (IPC_64\\|)?SHM_INFO, %p\\) = %s\n",
               &ds, sprintrc_grep(rc));
 
        rc = shmctl(id, SHM_STAT, &ds);
-       printf("shmctl\\(%d, (IPC_64\\|)?SHM_STAT, %p\\) += %s\n",
+       printf("shmctl\\(%d, (IPC_64\\|)?SHM_STAT, %p\\) = %s\n",
               id, &ds, sprintrc_grep(rc));
 
        return 0;