add sem_close regression test
authorSzabolcs Nagy <nsz@port70.net>
Wed, 28 Oct 2020 20:59:35 +0000 (20:59 +0000)
committerSzabolcs Nagy <nsz@port70.net>
Wed, 28 Oct 2020 21:18:08 +0000 (21:18 +0000)
src/regression/sem_close-unmap.c [new file with mode: 0644]

diff --git a/src/regression/sem_close-unmap.c b/src/regression/sem_close-unmap.c
new file mode 100644 (file)
index 0000000..f1e51d9
--- /dev/null
@@ -0,0 +1,18 @@
+// commit: f70375df85d26235a45e74559afd69be59e5ff99 2020-10-28
+#define _GNU_SOURCE 1
+#include <stdlib.h>
+#include <semaphore.h>
+
+int main()
+{
+       char buf[] = "mysemXXXXXX";
+       if (!mktemp(buf)) return 1;
+       // open twice
+       sem_t *sem = sem_open(buf, O_CREAT|O_EXCL, 0600);
+       sem_open(buf, 0);
+       sem_unlink(buf);
+       // close once
+       sem_close(sem);
+       // semaphore should be still mapped
+       sem_post(sem);
+}