|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
diff -up proftpd-1.3.4rc1/src/scoreboard.c.tests proftpd-1.3.4rc1/src/scoreboard.c
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
--- proftpd-1.3.4rc1/src/scoreboard.c.tests 2010-11-16 15:46:23.000000000 +0000
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+++ proftpd-1.3.4rc1/src/scoreboard.c 2010-12-21 22:01:57.177572723 +0000
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -392,7 +392,19 @@ void pr_delete_scoreboard(void) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ if (scoreboard_mutex_fd > -1) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ while (close(scoreboard_mutex_fd) < 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ if (errno == EINTR) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ pr_signals_handle();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ continue;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ }
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ break;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ }
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ }
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
scoreboard_fd = -1;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ scoreboard_mutex_fd = -1;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
scoreboard_opener = 0;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (*scoreboard_file) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -406,6 +418,17 @@ void pr_delete_scoreboard(void) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(scoreboard_file);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(scoreboard_mutex);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ if (*scoreboard_mutex) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ struct stat st;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ if (stat(scoreboard_mutex, &st) == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ pr_log_debug(DEBUG3, "deleting existing scoreboard mutex '%s'",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ scoreboard_mutex);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ }
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(scoreboard_mutex);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ }
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
const char *pr_get_scoreboard(void) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
diff -up proftpd-1.3.4rc1/tests/api/scoreboard.c.tests proftpd-1.3.4rc1/tests/api/scoreboard.c
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
--- proftpd-1.3.4rc1/tests/api/scoreboard.c.tests 2010-03-04 17:29:08.000000000 +0000
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+++ proftpd-1.3.4rc1/tests/api/scoreboard.c 2010-12-21 21:34:47.427708792 +0000
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -131,6 +131,7 @@ END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_open_close_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
*symlink_path = "/tmp/prt-scoreboard/symlink";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -154,12 +155,14 @@ START_TEST (scoreboard_open_close_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (symlink(symlink_path, path) == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_open_scoreboard(O_RDWR);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(symlink_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -170,6 +173,7 @@ START_TEST (scoreboard_open_close_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(symlink_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -177,12 +181,14 @@ START_TEST (scoreboard_open_close_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(symlink_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_open_scoreboard(O_RDONLY);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly opened scoreboard using O_RDONLY");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -192,6 +198,7 @@ START_TEST (scoreboard_open_close_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(symlink_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -202,6 +209,7 @@ START_TEST (scoreboard_open_close_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res < 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -213,6 +221,7 @@ START_TEST (scoreboard_open_close_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_open_scoreboard(O_RDONLY);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -222,12 +231,14 @@ START_TEST (scoreboard_open_close_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (errno != EINVAL) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EINVAL (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -235,7 +246,8 @@ END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_delete_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
struct stat st;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -259,11 +271,13 @@ START_TEST (scoreboard_delete_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_open_scoreboard(O_RDWR);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res < 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -274,6 +288,7 @@ START_TEST (scoreboard_delete_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res < 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -285,19 +300,31 @@ START_TEST (scoreboard_delete_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = stat(pr_get_scoreboard(), &st);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly found deleted scoreboard");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ res = stat(pr_get_scoreboard_mutex(), &st);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ fail("Unexpectedly found deleted scoreboard mutex");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ }
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_restore_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail_unless(res == 0, "Failed to create directory '%s': %s", dir,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -320,10 +347,12 @@ START_TEST (scoreboard_restore_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_restore_scoreboard();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly restored scoreboard");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -333,6 +362,7 @@ START_TEST (scoreboard_restore_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EINVAL (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -343,6 +373,7 @@ START_TEST (scoreboard_restore_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -353,19 +384,22 @@ START_TEST (scoreboard_restore_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to restore scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_rewind_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail_unless(res == 0, "Failed to create directory '%s': %s", dir,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -388,10 +422,12 @@ START_TEST (scoreboard_rewind_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_rewind_scoreboard();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly rewound scoreboard");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -401,6 +437,7 @@ START_TEST (scoreboard_rewind_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EINVAL (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -411,6 +448,7 @@ START_TEST (scoreboard_rewind_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -421,12 +459,14 @@ START_TEST (scoreboard_rewind_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to rewind scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -434,7 +474,8 @@ END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_scrub_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
uid_t euid;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail_unless(res == 0, "Failed to create directory '%s': %s", dir,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -457,10 +498,12 @@ START_TEST (scoreboard_scrub_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_scoreboard_scrub();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly scrubbed scoreboard");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -472,6 +515,7 @@ START_TEST (scoreboard_scrub_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EPERM, got %d (euid = %lu)", xerrno,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -483,6 +527,7 @@ START_TEST (scoreboard_scrub_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to ENOENT, got %d (euid = %lu)", xerrno,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -495,6 +540,7 @@ START_TEST (scoreboard_scrub_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -505,19 +551,22 @@ START_TEST (scoreboard_scrub_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to scrub scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_get_daemon_pid_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
pid_t daemon_pid;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -541,12 +590,14 @@ START_TEST (scoreboard_get_daemon_pid_te
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_open_scoreboard(O_RDWR);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res < 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -555,6 +606,7 @@ START_TEST (scoreboard_get_daemon_pid_te
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
daemon_pid = pr_scoreboard_get_daemon_pid();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (daemon_pid != getpid()) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Expected %lu, got %lu", (unsigned long) getpid(),
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -570,6 +622,7 @@ START_TEST (scoreboard_get_daemon_pid_te
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -578,6 +631,7 @@ START_TEST (scoreboard_get_daemon_pid_te
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
daemon_pid = pr_scoreboard_get_daemon_pid();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (daemon_pid != 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Expected %lu, got %lu", (unsigned long) 0,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -585,13 +639,15 @@ START_TEST (scoreboard_get_daemon_pid_te
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_get_daemon_uptime_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
time_t daemon_uptime, now;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -615,12 +671,14 @@ START_TEST (scoreboard_get_daemon_uptime
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_open_scoreboard(O_RDWR);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res < 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -631,6 +689,7 @@ START_TEST (scoreboard_get_daemon_uptime
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (daemon_uptime > now) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Expected %lu, got %lu", (unsigned long) now,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -646,6 +705,7 @@ START_TEST (scoreboard_get_daemon_uptime
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -654,6 +714,7 @@ START_TEST (scoreboard_get_daemon_uptime
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
daemon_uptime = pr_scoreboard_get_daemon_uptime();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (daemon_uptime != 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Expected %lu, got %lu", (unsigned long) 0,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -661,13 +722,15 @@ START_TEST (scoreboard_get_daemon_uptime
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_entry_add_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail_unless(res == 0, "Failed to create directory '%s': %s", dir,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -690,10 +753,12 @@ START_TEST (scoreboard_entry_add_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_scoreboard_entry_add();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly added entry to scoreboard");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -703,6 +768,7 @@ START_TEST (scoreboard_entry_add_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EINVAL (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -713,6 +779,7 @@ START_TEST (scoreboard_entry_add_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -723,6 +790,7 @@ START_TEST (scoreboard_entry_add_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to add entry to scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -731,6 +799,7 @@ START_TEST (scoreboard_entry_add_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_scoreboard_entry_add();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly added entry to scoreboard");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -740,19 +809,22 @@ START_TEST (scoreboard_entry_add_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EPERM (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_entry_del_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail_unless(res == 0, "Failed to create directory '%s': %s", dir,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -775,10 +847,12 @@ START_TEST (scoreboard_entry_del_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_scoreboard_entry_del(FALSE);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly deleted entry from scoreboard");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -788,6 +862,7 @@ START_TEST (scoreboard_entry_del_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EINVAL (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -798,6 +873,7 @@ START_TEST (scoreboard_entry_del_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -806,6 +882,7 @@ START_TEST (scoreboard_entry_del_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_scoreboard_entry_del(FALSE);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly deleted entry from scoreboard");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -815,6 +892,7 @@ START_TEST (scoreboard_entry_del_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to ENOENT (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -825,6 +903,7 @@ START_TEST (scoreboard_entry_del_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to add entry to scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -835,6 +914,7 @@ START_TEST (scoreboard_entry_del_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to delete entry from scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -843,6 +923,7 @@ START_TEST (scoreboard_entry_del_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_scoreboard_entry_del(FALSE);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly deleted entry from scoreboard");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -852,19 +933,22 @@ START_TEST (scoreboard_entry_del_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to ENOENT (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_entry_read_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
pr_scoreboard_entry_t *score;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -888,10 +972,12 @@ START_TEST (scoreboard_entry_read_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
score = pr_scoreboard_entry_read();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (score != NULL) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly read scoreboard entry");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -901,6 +987,7 @@ START_TEST (scoreboard_entry_read_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EINVAL (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -911,6 +998,7 @@ START_TEST (scoreboard_entry_read_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -920,6 +1008,7 @@ START_TEST (scoreboard_entry_read_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
score = pr_scoreboard_entry_read();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (score != NULL) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly read scoreboard entry");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -930,6 +1019,7 @@ START_TEST (scoreboard_entry_read_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to add entry to scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -940,6 +1030,7 @@ START_TEST (scoreboard_entry_read_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to read scoreboard entry: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -947,6 +1038,7 @@ START_TEST (scoreboard_entry_read_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (score->sce_pid != getpid()) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to read expected scoreboard entry (expected PID %lu, got %lu)",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -956,19 +1048,22 @@ START_TEST (scoreboard_entry_read_test)
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
score = pr_scoreboard_entry_read();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (score != NULL) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly read scoreboard entry");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_entry_get_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
const char *val;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -992,10 +1087,12 @@ START_TEST (scoreboard_entry_get_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
val = pr_scoreboard_entry_get(-1);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (val != NULL) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly read value from scoreboard entry");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1005,6 +1102,7 @@ START_TEST (scoreboard_entry_get_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EINVAL (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1015,6 +1113,7 @@ START_TEST (scoreboard_entry_get_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1023,6 +1122,7 @@ START_TEST (scoreboard_entry_get_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
val = pr_scoreboard_entry_get(-1);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (val != NULL) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly read value from scoreboard entry");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1032,6 +1132,7 @@ START_TEST (scoreboard_entry_get_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EPERM (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1042,6 +1143,7 @@ START_TEST (scoreboard_entry_get_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to add entry to scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1050,6 +1152,7 @@ START_TEST (scoreboard_entry_get_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
val = pr_scoreboard_entry_get(-1);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (val != NULL) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly read value from scoreboard entry");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1059,12 +1162,14 @@ START_TEST (scoreboard_entry_get_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to ENOENT (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1072,7 +1177,8 @@ END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
START_TEST (scoreboard_entry_update_test) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int res;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
const char *val;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ const char *dir = "/tmp/prt-scoreboard/", *path = "/tmp/prt-scoreboard/test",
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ *mutex_path = "/tmp/prt-scoreboard/test.lck";
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
pid_t pid = getpid();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = mkdir(dir, 0775);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1096,10 +1202,12 @@ START_TEST (scoreboard_entry_update_test
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_scoreboard_entry_update(pid, 0);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly updated scoreboard entry");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1109,6 +1217,7 @@ START_TEST (scoreboard_entry_update_test
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EINVAL (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1119,6 +1228,7 @@ START_TEST (scoreboard_entry_update_test
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to open scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1127,6 +1237,7 @@ START_TEST (scoreboard_entry_update_test
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_scoreboard_entry_update(pid, 0);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly updated scoreboard entry");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1136,6 +1247,7 @@ START_TEST (scoreboard_entry_update_test
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to EPERM (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1146,6 +1258,7 @@ START_TEST (scoreboard_entry_update_test
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to add entry to scoreboard: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1154,6 +1267,7 @@ START_TEST (scoreboard_entry_update_test
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
res = pr_scoreboard_entry_update(pid, -1);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (res == 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Unexpectedly updated scoreboard entry");
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1163,6 +1277,7 @@ START_TEST (scoreboard_entry_update_test
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to set errno to ENOENT (got %d)", xerrno);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1174,6 +1289,7 @@ START_TEST (scoreboard_entry_update_test
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to update PR_SCORE_CWD: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1184,6 +1300,7 @@ START_TEST (scoreboard_entry_update_test
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
int xerrno = errno;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Failed to get entry PR_SCORE_CWD: %s", strerror(xerrno));
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -1191,12 +1308,14 @@ START_TEST (scoreboard_entry_update_test
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
if (strcmp(val, "cwd") != 0) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail("Expected '%s', got '%s'", "cwd", val);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) unlink(path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ (void) unlink(mutex_path);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
(void) rmdir(dir);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
END_TEST
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
diff -up proftpd-1.3.4rc1/tests/api/stubs.c.tests proftpd-1.3.4rc1/tests/api/stubs.c
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
--- proftpd-1.3.4rc1/tests/api/stubs.c.tests 2008-10-06 19:16:50.000000000 +0100
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+++ proftpd-1.3.4rc1/tests/api/stubs.c 2010-12-21 21:34:47.428708819 +0000
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -34,6 +34,10 @@ server_rec *main_server = NULL;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
module *static_modules[] = { NULL };
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
module *loaded_modules = NULL;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+int pr_ctrls_unregister(module *m, const char *action) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ return 0;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
void pr_log_debug(int level, const char *fmt, ...) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
diff -up proftpd-1.3.4rc1/tests/api/pool.c.tests proftpd-1.3.4rc1/tests/api/pool.c
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
--- proftpd-1.3.4rc1/tests/api/pool.c.tests 2009-01-30 00:14:16.000000000 +0000
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+++ proftpd-1.3.4rc1/tests/api/pool.c 2010-12-23 13:32:48.022565092 +0000
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -116,7 +116,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail_unless(v == NULL, "Allocated %u-len memory", sz);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
sz = 1;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- v = palloc(p, sz);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ v = pcalloc(p, sz);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail_if(v == NULL, "Failed to allocate %u-len memory", sz);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
for (i = 0; i < sz; i++) {
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
fail_unless(v[i] == 0, "Allocated non-zero memory at position %u", i);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
diff -up proftpd-1.3.4rc1/tests/api/timers.c.tests proftpd-1.3.4rc1/tests/api/timers.c
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
--- proftpd-1.3.4rc1/tests/api/timers.c.tests 2010-08-11 15:56:36.000000000 +0100
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+++ proftpd-1.3.4rc1/tests/api/timers.c 2010-12-24 11:03:17.625550991 +0000
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -121,7 +121,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
timers_handle_signals();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
ok = 2;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- fail_unless(timer_triggered_count == ok,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ fail_unless(timer_triggered_count == ok || timer_triggered_count == ok + 1,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
"Timer failed to fire (expected count %u, got %u)", ok,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
timer_triggered_count);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
@@ -129,7 +129,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
timers_handle_signals();
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
ok = 3;
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
- fail_unless(timer_triggered_count == ok,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
+ fail_unless(timer_triggered_count == ok || timer_triggered_count == ok + 1,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
"Timer failed to fire (expected count %u, got %u)", ok,
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
timer_triggered_count);
|
|
![](https://seccdn.libravatar.org/avatar/b1ea9b9c6af4f6c514e29d99c9ca5df476b457dd240b3fc14286c5f50f2ff406?s=16&d=retro) |
060da19 |
}
|