systemctl_main() is moved to systemctl.c to allow fuzz-systemctl-parse-argv to compile. It needs systemctl_help(), which needs the verb table, with the expected groups. Once we provide that, the linker needs all the verb_* functions. So add dummy implementations in fuzz-systemctl-parse-argv to allow the link to happen. The alternative would be to provide an empty option table, but that seems to be more complicated, and also can simulate parsing of the whole command line with the full verb set, so it seems better to test with the real verb table. $ nm build/fuzz-systemctl-parse-argv | rg 0000000000418885 0000000000418885 T verb_add_dependency 0000000000418885 T verb_bind 0000000000418885 T verb_cancel 0000000000418885 T verb_cat 0000000000418885 T verb_clean_or_freeze 0000000000418885 T verb_edit 0000000000418885 T verb_enable 0000000000418885 T verb_get_default 0000000000418885 T verb_import_environment 0000000000418885 T verb_is_active 0000000000418885 T verb_is_enabled 0000000000418885 T verb_is_failed 0000000000418885 T verb_is_system_running 0000000000418885 T verb_kill 0000000000418885 T verb_list_automounts 0000000000418885 T verb_list_dependencies 0000000000418885 T verb_list_jobs 0000000000418885 T verb_list_machines 0000000000418885 T verb_list_paths 0000000000418885 T verb_list_sockets 0000000000418885 T verb_list_timers 0000000000418885 T verb_list_unit_files 0000000000418885 T verb_list_units 0000000000418885 T verb_log_setting 0000000000418885 T verb_mount_image 0000000000418885 t verb_noop 0000000000418885 T verb_preset_all 0000000000418885 T verb_reset_failed 0000000000418885 T verb_service_log_setting 0000000000418885 T verb_service_watchdogs 0000000000418885 T verb_set_default 0000000000418885 T verb_set_environment 0000000000418885 T verb_set_property 0000000000418885 T verb_show 0000000000418885 T verb_show_environment 0000000000418885 T verb_start_special 0000000000418885 T verb_start_system_special 0000000000418885 T verb_switch_root 0000000000418885 T verb_trivial_method 0000000000418885 T verb_whoami
System and Service Manager
Details
Most documentation is available on systemd's web site.
Assorted, older, general information about systemd can be found in the systemd Wiki.
Information about build requirements is provided in the README file.
Consult our NEWS file for information about what's new in the most recent systemd versions.
Please see the Code Map for information about this repository's layout and content.
Please see the Hacking guide for information on how to hack on systemd and test your modifications.
Please see our Contribution Guidelines for more information about filing GitHub Issues and posting GitHub Pull Requests.
When preparing patches for systemd, please follow our Coding Style Guidelines.
If you are looking for support, please contact our mailing list, join our IRC channel #systemd on libera.chat or Matrix channel
Stable branches with backported patches are available in the stable repo.
We have a security bug bounty program sponsored by the Sovereign Tech Fund hosted on YesWeHack
Repositories with distribution packages built from git main are available on OBS, and also repositories with packages built from the latest stable release
