]>
Commit | Line | Data |
---|---|---|
db9ecf05 | 1 | /* SPDX-License-Identifier: LGPL-2.1-or-later */ |
daf71ef6 LP |
2 | #pragma once |
3 | ||
4 | #include <stdbool.h> | |
5 | ||
255b1fc8 | 6 | #include "bus-print-properties.h" |
daf71ef6 LP |
7 | #include "bus-util.h" |
8 | #include "install.h" | |
9 | #include "output-mode.h" | |
10 | #include "pager.h" | |
11 | ||
12 | enum action { | |
13 | ACTION_SYSTEMCTL, | |
14 | ACTION_HALT, | |
15 | ACTION_POWEROFF, | |
16 | ACTION_REBOOT, | |
17 | ACTION_KEXEC, | |
18 | ACTION_EXIT, | |
19 | ACTION_SUSPEND, | |
20 | ACTION_HIBERNATE, | |
21 | ACTION_HYBRID_SLEEP, | |
22 | ACTION_SUSPEND_THEN_HIBERNATE, | |
23 | ACTION_RUNLEVEL2, | |
24 | ACTION_RUNLEVEL3, | |
25 | ACTION_RUNLEVEL4, | |
26 | ACTION_RUNLEVEL5, | |
27 | ACTION_RESCUE, | |
28 | ACTION_EMERGENCY, | |
29 | ACTION_DEFAULT, | |
30 | ACTION_RELOAD, | |
31 | ACTION_REEXEC, | |
32 | ACTION_RUNLEVEL, | |
ea71b460 | 33 | ACTION_TELINIT, |
daf71ef6 | 34 | ACTION_CANCEL_SHUTDOWN, |
a9c3cc8d | 35 | ACTION_SHOW_SHUTDOWN, |
daf71ef6 | 36 | _ACTION_MAX, |
2d93c20e | 37 | _ACTION_INVALID = -EINVAL, |
daf71ef6 LP |
38 | }; |
39 | ||
40 | enum dependency { | |
41 | DEPENDENCY_FORWARD, | |
42 | DEPENDENCY_REVERSE, | |
43 | DEPENDENCY_AFTER, | |
44 | DEPENDENCY_BEFORE, | |
45 | _DEPENDENCY_MAX | |
46 | }; | |
47 | ||
48 | extern char **arg_types; | |
49 | extern char **arg_states; | |
50 | extern char **arg_properties; | |
51 | extern bool arg_all; | |
52 | extern enum dependency arg_dependency; | |
a88f9dba | 53 | extern const char *_arg_job_mode; |
4870133b | 54 | extern RuntimeScope arg_runtime_scope; |
daf71ef6 LP |
55 | extern bool arg_wait; |
56 | extern bool arg_no_block; | |
6906da26 | 57 | extern int arg_legend; |
daf71ef6 LP |
58 | extern PagerFlags arg_pager_flags; |
59 | extern bool arg_no_wtmp; | |
60 | extern bool arg_no_sync; | |
61 | extern bool arg_no_wall; | |
62 | extern bool arg_no_reload; | |
255b1fc8 | 63 | extern BusPrintPropertyFlags arg_print_flags; |
daf71ef6 | 64 | extern bool arg_show_types; |
4327574f | 65 | extern int arg_check_inhibitors; |
daf71ef6 LP |
66 | extern bool arg_dry_run; |
67 | extern bool arg_quiet; | |
108d35ac | 68 | extern bool arg_no_warn; |
daf71ef6 LP |
69 | extern bool arg_full; |
70 | extern bool arg_recursive; | |
71 | extern bool arg_with_dependencies; | |
72 | extern bool arg_show_transaction; | |
73 | extern int arg_force; | |
74 | extern bool arg_ask_password; | |
75 | extern bool arg_runtime; | |
76 | extern UnitFilePresetMode arg_preset_mode; | |
77 | extern char **arg_wall; | |
4ccde410 | 78 | extern const char *arg_kill_whom; |
daf71ef6 | 79 | extern int arg_signal; |
d06e6199 LP |
80 | extern int arg_kill_value; |
81 | extern bool arg_kill_value_set; | |
daf71ef6 LP |
82 | extern char *arg_root; |
83 | extern usec_t arg_when; | |
84 | extern const char *arg_reboot_argument; | |
85 | extern enum action arg_action; | |
86 | extern BusTransport arg_transport; | |
87 | extern const char *arg_host; | |
88 | extern unsigned arg_lines; | |
89 | extern OutputMode arg_output; | |
90 | extern bool arg_plain; | |
91 | extern bool arg_firmware_setup; | |
92 | extern usec_t arg_boot_loader_menu; | |
93 | extern const char *arg_boot_loader_entry; | |
94 | extern bool arg_now; | |
95 | extern bool arg_jobs_before; | |
96 | extern bool arg_jobs_after; | |
97 | extern char **arg_clean_what; | |
98 | extern TimestampStyle arg_timestamp_style; | |
5e8deb94 LB |
99 | extern bool arg_read_only; |
100 | extern bool arg_mkdir; | |
c9615f73 | 101 | extern bool arg_marked; |
f206809b | 102 | extern const char *arg_drop_in; |
5fd87823 | 103 | |
a88f9dba ZJS |
104 | static inline const char* arg_job_mode(void) { |
105 | return _arg_job_mode ?: "replace"; | |
106 | } | |
107 | ||
5fd87823 | 108 | int systemctl_dispatch_parse_argv(int argc, char *argv[]); |