mirror of
https://github.com/morgan9e/systemd
synced 2026-04-14 08:25:20 +09:00
37 lines
902 B
C
37 lines
902 B
C
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include "sd-daemon.h"
|
|
|
|
#include "argv-util.h"
|
|
#include "ask-password-agent.h"
|
|
#include "main-func.h"
|
|
#include "pager.h"
|
|
#include "polkit-agent.h"
|
|
#include "selinux-util.h"
|
|
#include "string-util.h"
|
|
|
|
void main_prepare(int argc, char *argv[]) {
|
|
assert_se(argc > 0 && !isempty(argv[0]));
|
|
save_argc_argv(argc, argv);
|
|
}
|
|
|
|
void main_finalize(int r, int exit_status) {
|
|
if (r < 0)
|
|
(void) sd_notifyf(0, "ERRNO=%i", -r);
|
|
(void) sd_notifyf(0, "EXIT_STATUS=%i", exit_status);
|
|
ask_password_agent_close();
|
|
polkit_agent_close();
|
|
pager_close();
|
|
mac_selinux_finish();
|
|
}
|
|
|
|
int exit_failure_if_negative(int result) {
|
|
return result < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
|
|
}
|
|
|
|
int exit_failure_if_nonzero(int result) {
|
|
return result < 0 ? EXIT_FAILURE : result;
|
|
}
|