]>
Commit | Line | Data |
---|---|---|
db9ecf05 | 1 | /* SPDX-License-Identifier: LGPL-2.1-or-later */ |
c2f1db8f | 2 | #pragma once |
3efd4195 | 3 | |
a2106925 | 4 | #include "conf-parser.h" |
87f0e418 | 5 | #include "unit.h" |
3efd4195 | 6 | |
a07a7324 FS |
7 | /* Config-parsing helpers relevant only for sources under src/core/ */ |
8 | int parse_crash_chvt(const char *value, int *data); | |
9 | int parse_confirm_spawn(const char *value, char **console); | |
10 | ||
3efd4195 LP |
11 | /* Read service data from .desktop file style configuration fragments */ |
12 | ||
e537352b LP |
13 | int unit_load_fragment(Unit *u); |
14 | ||
15 | void unit_dump_config_items(FILE *f); | |
3efd4195 | 16 | |
a2106925 LP |
17 | CONFIG_PARSER_PROTOTYPE(config_parse_unit_deps); |
18 | CONFIG_PARSER_PROTOTYPE(config_parse_obsolete_unit_deps); | |
19 | CONFIG_PARSER_PROTOTYPE(config_parse_unit_string_printf); | |
20 | CONFIG_PARSER_PROTOTYPE(config_parse_unit_strv_printf); | |
21 | CONFIG_PARSER_PROTOTYPE(config_parse_unit_path_printf); | |
8c35c10d | 22 | CONFIG_PARSER_PROTOTYPE(config_parse_colon_separated_paths); |
a2106925 LP |
23 | CONFIG_PARSER_PROTOTYPE(config_parse_unit_path_strv_printf); |
24 | CONFIG_PARSER_PROTOTYPE(config_parse_documentation); | |
25 | CONFIG_PARSER_PROTOTYPE(config_parse_socket_listen); | |
26 | CONFIG_PARSER_PROTOTYPE(config_parse_socket_protocol); | |
27 | CONFIG_PARSER_PROTOTYPE(config_parse_socket_bind); | |
28 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_nice); | |
29 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_oom_score_adjust); | |
ad21e542 | 30 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_coredump_filter); |
a2106925 LP |
31 | CONFIG_PARSER_PROTOTYPE(config_parse_exec); |
32 | CONFIG_PARSER_PROTOTYPE(config_parse_service_timeout); | |
dc653bf4 | 33 | CONFIG_PARSER_PROTOTYPE(config_parse_service_timeout_abort); |
bf760801 | 34 | CONFIG_PARSER_PROTOTYPE(config_parse_service_timeout_failure_mode); |
a2106925 LP |
35 | CONFIG_PARSER_PROTOTYPE(config_parse_service_type); |
36 | CONFIG_PARSER_PROTOTYPE(config_parse_service_restart); | |
37 | CONFIG_PARSER_PROTOTYPE(config_parse_socket_bindtodevice); | |
38 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_output); | |
39 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_input); | |
40 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_input_text); | |
41 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_input_data); | |
42 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_io_class); | |
43 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_io_priority); | |
44 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_cpu_sched_policy); | |
45 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_cpu_sched_prio); | |
46 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_cpu_affinity); | |
5e98086d | 47 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_mount_apivfs); |
a2106925 | 48 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_secure_bits); |
18d73705 | 49 | CONFIG_PARSER_PROTOTYPE(config_parse_root_image_options); |
0389f4fa | 50 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_root_hash); |
d4d55b0d | 51 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_root_hash_sig); |
a2106925 | 52 | CONFIG_PARSER_PROTOTYPE(config_parse_capability_set); |
a2106925 LP |
53 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_mount_flags); |
54 | CONFIG_PARSER_PROTOTYPE(config_parse_timer); | |
55 | CONFIG_PARSER_PROTOTYPE(config_parse_trigger_unit); | |
56 | CONFIG_PARSER_PROTOTYPE(config_parse_path_spec); | |
57 | CONFIG_PARSER_PROTOTYPE(config_parse_socket_service); | |
58 | CONFIG_PARSER_PROTOTYPE(config_parse_service_sockets); | |
59 | CONFIG_PARSER_PROTOTYPE(config_parse_unit_env_file); | |
60 | CONFIG_PARSER_PROTOTYPE(config_parse_ip_tos); | |
61 | CONFIG_PARSER_PROTOTYPE(config_parse_unit_condition_path); | |
62 | CONFIG_PARSER_PROTOTYPE(config_parse_unit_condition_string); | |
a2106925 LP |
63 | CONFIG_PARSER_PROTOTYPE(config_parse_kill_mode); |
64 | CONFIG_PARSER_PROTOTYPE(config_parse_notify_access); | |
65 | CONFIG_PARSER_PROTOTYPE(config_parse_emergency_action); | |
66 | CONFIG_PARSER_PROTOTYPE(config_parse_unit_requires_mounts_for); | |
67 | CONFIG_PARSER_PROTOTYPE(config_parse_syscall_filter); | |
68 | CONFIG_PARSER_PROTOTYPE(config_parse_syscall_archs); | |
69 | CONFIG_PARSER_PROTOTYPE(config_parse_syscall_errno); | |
9df2cdd8 | 70 | CONFIG_PARSER_PROTOTYPE(config_parse_syscall_log); |
a2106925 LP |
71 | CONFIG_PARSER_PROTOTYPE(config_parse_environ); |
72 | CONFIG_PARSER_PROTOTYPE(config_parse_pass_environ); | |
73 | CONFIG_PARSER_PROTOTYPE(config_parse_unset_environ); | |
74 | CONFIG_PARSER_PROTOTYPE(config_parse_unit_slice); | |
984faf29 | 75 | CONFIG_PARSER_PROTOTYPE(config_parse_cg_weight); |
a2106925 LP |
76 | CONFIG_PARSER_PROTOTYPE(config_parse_cpu_shares); |
77 | CONFIG_PARSER_PROTOTYPE(config_parse_memory_limit); | |
78 | CONFIG_PARSER_PROTOTYPE(config_parse_tasks_max); | |
79 | CONFIG_PARSER_PROTOTYPE(config_parse_delegate); | |
4d824a4e AZ |
80 | CONFIG_PARSER_PROTOTYPE(config_parse_managed_oom_mode); |
81 | CONFIG_PARSER_PROTOTYPE(config_parse_managed_oom_mem_pressure_limit); | |
4e806bfa | 82 | CONFIG_PARSER_PROTOTYPE(config_parse_managed_oom_preference); |
a2106925 LP |
83 | CONFIG_PARSER_PROTOTYPE(config_parse_device_policy); |
84 | CONFIG_PARSER_PROTOTYPE(config_parse_device_allow); | |
6ae4283c | 85 | CONFIG_PARSER_PROTOTYPE(config_parse_io_device_latency); |
a2106925 LP |
86 | CONFIG_PARSER_PROTOTYPE(config_parse_io_device_weight); |
87 | CONFIG_PARSER_PROTOTYPE(config_parse_io_limit); | |
88 | CONFIG_PARSER_PROTOTYPE(config_parse_blockio_weight); | |
89 | CONFIG_PARSER_PROTOTYPE(config_parse_blockio_device_weight); | |
90 | CONFIG_PARSER_PROTOTYPE(config_parse_blockio_bandwidth); | |
a2106925 LP |
91 | CONFIG_PARSER_PROTOTYPE(config_parse_job_mode); |
92 | CONFIG_PARSER_PROTOTYPE(config_parse_job_mode_isolate); | |
93 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_selinux_context); | |
94 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_apparmor_profile); | |
95 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_smack_process_label); | |
96 | CONFIG_PARSER_PROTOTYPE(config_parse_address_families); | |
97 | CONFIG_PARSER_PROTOTYPE(config_parse_runtime_preserve_mode); | |
98 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_directories); | |
bb0c0d6f LP |
99 | CONFIG_PARSER_PROTOTYPE(config_parse_set_credential); |
100 | CONFIG_PARSER_PROTOTYPE(config_parse_load_credential); | |
a2106925 LP |
101 | CONFIG_PARSER_PROTOTYPE(config_parse_set_status); |
102 | CONFIG_PARSER_PROTOTYPE(config_parse_namespace_path_strv); | |
103 | CONFIG_PARSER_PROTOTYPE(config_parse_temporary_filesystems); | |
a2106925 | 104 | CONFIG_PARSER_PROTOTYPE(config_parse_cpu_quota); |
31d3a520 | 105 | CONFIG_PARSER_PROTOTYPE(config_parse_allowed_cpuset); |
a2106925 LP |
106 | CONFIG_PARSER_PROTOTYPE(config_parse_protect_home); |
107 | CONFIG_PARSER_PROTOTYPE(config_parse_protect_system); | |
108 | CONFIG_PARSER_PROTOTYPE(config_parse_bus_name); | |
109 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_utmp_mode); | |
110 | CONFIG_PARSER_PROTOTYPE(config_parse_working_directory); | |
111 | CONFIG_PARSER_PROTOTYPE(config_parse_fdname); | |
112 | CONFIG_PARSER_PROTOTYPE(config_parse_sec_fix_0); | |
ae480f0b ZJS |
113 | CONFIG_PARSER_PROTOTYPE(config_parse_user_group_compat); |
114 | CONFIG_PARSER_PROTOTYPE(config_parse_user_group_strv_compat); | |
a2106925 LP |
115 | CONFIG_PARSER_PROTOTYPE(config_parse_restrict_namespaces); |
116 | CONFIG_PARSER_PROTOTYPE(config_parse_bind_paths); | |
117 | CONFIG_PARSER_PROTOTYPE(config_parse_exec_keyring_mode); | |
4e399953 LP |
118 | CONFIG_PARSER_PROTOTYPE(config_parse_protect_proc); |
119 | CONFIG_PARSER_PROTOTYPE(config_parse_proc_subset); | |
a2106925 LP |
120 | CONFIG_PARSER_PROTOTYPE(config_parse_job_timeout_sec); |
121 | CONFIG_PARSER_PROTOTYPE(config_parse_job_running_timeout_sec); | |
122 | CONFIG_PARSER_PROTOTYPE(config_parse_log_extra_fields); | |
91dd5f7c | 123 | CONFIG_PARSER_PROTOTYPE(config_parse_log_namespace); |
a2106925 | 124 | CONFIG_PARSER_PROTOTYPE(config_parse_collect_mode); |
a9353a5c | 125 | CONFIG_PARSER_PROTOTYPE(config_parse_pid_file); |
7af67e9a | 126 | CONFIG_PARSER_PROTOTYPE(config_parse_exit_status); |
c72703e2 | 127 | CONFIG_PARSER_PROTOTYPE(config_parse_disable_controllers); |
afcfaa69 | 128 | CONFIG_PARSER_PROTOTYPE(config_parse_oom_policy); |
b070c7c0 MS |
129 | CONFIG_PARSER_PROTOTYPE(config_parse_numa_policy); |
130 | CONFIG_PARSER_PROTOTYPE(config_parse_numa_mask); | |
fab34748 | 131 | CONFIG_PARSER_PROTOTYPE(config_parse_ip_filter_bpf_progs); |
a07a7324 FS |
132 | CONFIG_PARSER_PROTOTYPE(config_parse_cpu_affinity2); |
133 | CONFIG_PARSER_PROTOTYPE(config_parse_show_status); | |
6327aa9f | 134 | CONFIG_PARSER_PROTOTYPE(config_parse_status_unit_format); |
a07a7324 FS |
135 | CONFIG_PARSER_PROTOTYPE(config_parse_output_restricted); |
136 | CONFIG_PARSER_PROTOTYPE(config_parse_crash_chvt); | |
137 | CONFIG_PARSER_PROTOTYPE(config_parse_timeout_abort); | |
eb34a981 | 138 | CONFIG_PARSER_PROTOTYPE(config_parse_swap_priority); |
b3d13314 | 139 | CONFIG_PARSER_PROTOTYPE(config_parse_mount_images); |
9b191525 | 140 | CONFIG_PARSER_PROTOTYPE(config_parse_socket_timestamping); |
93f59701 | 141 | CONFIG_PARSER_PROTOTYPE(config_parse_extension_images); |
0879da98 | 142 | CONFIG_PARSER_PROTOTYPE(config_parse_bpf_foreign_program); |
8dd210ab | 143 | CONFIG_PARSER_PROTOTYPE(config_parse_cgroup_socket_bind); |
4f0c25c7 | 144 | CONFIG_PARSER_PROTOTYPE(config_parse_restrict_network_interfaces); |
f975e971 LP |
145 | |
146 | /* gperf prototypes */ | |
c9f7b4d3 | 147 | const struct ConfigPerfItem* load_fragment_gperf_lookup(const char *key, GPERF_LEN_TYPE length); |
f975e971 | 148 | extern const char load_fragment_gperf_nulstr[]; |