RUNNER_ASSERT_ERRNO_MSG(0 == rmdir(path.c_str()), "rmdir for <" << path << "> failed");
}
-
+void waitPid(pid_t pid)
+{
+ int status;
+ pid_t ret = waitpid(pid, &status, 0);
+ RUNNER_ASSERT_MSG((ret != -1) && WIFEXITED(status) && WEXITSTATUS(status) == 0,
+ "Child process exited abnormally" <<
+ ": ret=" << ret << ", errno=" << errno << ", status=" << status);
+}
+ // changes process label
+ void change_label(const char* label)
+ {
+ int ret = smack_set_label_for_self(label);
+ RUNNER_ASSERT_MSG(0 == ret, "Error in smack_set_label_for_self("<<label<<"). Error: " << ret);
+ }
void creatSafe(const std::string &path, mode_t mode);
void symlinkSafe(const std::string &targetPath, const std::string &linkPath);
void removeDir(const std::string &path);
-
+void waitPid(pid_t pid);
+ void change_label(const char* label);
#define RUNNER_TEST_SMACK(Proc, ...) \
void Proc(std::tuple<__VA_ARGS__> &optionalArgsTuple); \