2020-11-09 05:23:58 +01:00
|
|
|
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
2014-03-14 01:38:19 +01:00
|
|
|
|
|
|
|
#include "clean-ipc.h"
|
2020-10-20 18:02:54 +02:00
|
|
|
#include "errno-util.h"
|
|
|
|
#include "main-func.h"
|
2018-09-13 13:34:12 +02:00
|
|
|
#include "tests.h"
|
2020-10-20 18:02:54 +02:00
|
|
|
#include "user-util.h"
|
2014-03-14 01:38:19 +01:00
|
|
|
|
2020-10-20 18:02:54 +02:00
|
|
|
static int run(int argc, char *argv[]) {
|
2014-03-14 01:38:19 +01:00
|
|
|
uid_t uid;
|
2016-02-27 00:39:20 +01:00
|
|
|
int r;
|
2017-02-15 10:22:22 +01:00
|
|
|
const char* name = argv[1] ?: NOBODY_USER_NAME;
|
2016-02-27 00:39:20 +01:00
|
|
|
|
2018-09-13 14:31:13 +02:00
|
|
|
test_setup_logging(LOG_INFO);
|
|
|
|
|
2018-08-02 18:36:47 +02:00
|
|
|
r = get_user_creds(&name, &uid, NULL, NULL, NULL, 0);
|
2018-09-13 13:34:12 +02:00
|
|
|
if (r == -ESRCH)
|
|
|
|
return log_tests_skipped("Failed to resolve user");
|
2020-10-20 18:02:54 +02:00
|
|
|
if (r < 0)
|
|
|
|
return log_error_errno(r, "Failed to resolve \"%s\": %m", name);
|
2014-03-14 01:38:19 +01:00
|
|
|
|
2016-11-18 02:57:22 +01:00
|
|
|
r = clean_ipc_by_uid(uid);
|
2020-10-20 18:02:54 +02:00
|
|
|
if (ERRNO_IS_PRIVILEGE(r))
|
|
|
|
return log_tests_skipped("No privileges");
|
|
|
|
|
|
|
|
return r;
|
2014-03-14 01:38:19 +01:00
|
|
|
}
|
2020-10-20 18:02:54 +02:00
|
|
|
|
|
|
|
DEFINE_MAIN_FUNCTION_WITH_POSITIVE_FAILURE(run);
|