30 lines
790 B
C
30 lines
790 B
C
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
|
|
|
#include "clean-ipc.h"
|
|
#include "errno-util.h"
|
|
#include "main-func.h"
|
|
#include "tests.h"
|
|
#include "user-util.h"
|
|
|
|
static int run(int argc, char *argv[]) {
|
|
uid_t uid;
|
|
int r;
|
|
const char* name = argv[1] ?: NOBODY_USER_NAME;
|
|
|
|
test_setup_logging(LOG_INFO);
|
|
|
|
r = get_user_creds(&name, &uid, NULL, NULL, NULL, 0);
|
|
if (r == -ESRCH)
|
|
return log_tests_skipped("Failed to resolve user");
|
|
if (r < 0)
|
|
return log_error_errno(r, "Failed to resolve \"%s\": %m", name);
|
|
|
|
r = clean_ipc_by_uid(uid);
|
|
if (ERRNO_IS_PRIVILEGE(r))
|
|
return log_tests_skipped("No privileges");
|
|
|
|
return r;
|
|
}
|
|
|
|
DEFINE_MAIN_FUNCTION_WITH_POSITIVE_FAILURE(run);
|