From: Zbigniew Jędrzejewski-Szmek Date: Fri, 6 Mar 2026 12:00:39 +0000 (+0100) Subject: machinectl: call all verb functions verb_* X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3d72ffc4151df5ac0e5d975c2b4f038cb4765dca;p=thirdparty%2Fsystemd.git machinectl: call all verb functions verb_* --- diff --git a/src/machine/machinectl.c b/src/machine/machinectl.c index 9b2056918c0..f71d3deee2a 100644 --- a/src/machine/machinectl.c +++ b/src/machine/machinectl.c @@ -277,7 +277,7 @@ static int show_table(Table *table, const char *word) { return 0; } -static int list_machines(int argc, char *argv[], void *userdata) { +static int verb_list_machines(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL; _cleanup_(table_unrefp) Table *table = NULL; @@ -354,7 +354,7 @@ static int list_machines(int argc, char *argv[], void *userdata) { return show_table(table, "machines"); } -static int list_images(int argc, char *argv[], void *userdata) { +static int verb_list_images(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL; @@ -745,7 +745,7 @@ static int show_machine_properties(sd_bus *bus, const char *path, bool *new_line return r; } -static int show_machine(int argc, char *argv[], void *userdata) { +static int verb_show_machine(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; bool properties, new_line = false; sd_bus *bus = ASSERT_PTR(userdata); @@ -1036,7 +1036,7 @@ static int show_image_properties(sd_bus *bus, const char *path, bool *new_line) return r; } -static int show_image(int argc, char *argv[], void *userdata) { +static int verb_show_image(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; bool properties, new_line = false; sd_bus *bus = ASSERT_PTR(userdata); @@ -1080,7 +1080,7 @@ static int show_image(int argc, char *argv[], void *userdata) { return r; } -static int kill_machine(int argc, char *argv[], void *userdata) { +static int verb_kill_machine(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; sd_bus *bus = ASSERT_PTR(userdata); int r; @@ -1105,7 +1105,7 @@ static int kill_machine(int argc, char *argv[], void *userdata) { return 0; } -static int reboot_machine(int argc, char *argv[], void *userdata) { +static int verb_reboot_machine(int argc, char *argv[], void *userdata) { if (arg_runner == RUNNER_VMSPAWN) return log_error_errno( SYNTHETIC_ERRNO(EOPNOTSUPP), @@ -1115,17 +1115,17 @@ static int reboot_machine(int argc, char *argv[], void *userdata) { arg_kill_whom = "leader"; arg_signal = SIGINT; /* sysvinit + systemd */ - return kill_machine(argc, argv, userdata); + return verb_kill_machine(argc, argv, userdata); } -static int poweroff_machine(int argc, char *argv[], void *userdata) { +static int verb_poweroff_machine(int argc, char *argv[], void *userdata) { arg_kill_whom = "leader"; arg_signal = SIGRTMIN+4; /* only systemd */ - return kill_machine(argc, argv, userdata); + return verb_kill_machine(argc, argv, userdata); } -static int terminate_machine(int argc, char *argv[], void *userdata) { +static int verb_terminate_machine(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; sd_bus *bus = ASSERT_PTR(userdata); int r; @@ -1148,7 +1148,7 @@ static const char *select_copy_method(bool copy_from, bool force) { return copy_from ? "CopyFromMachine" : "CopyToMachine"; } -static int copy_files(int argc, char *argv[], void *userdata) { +static int verb_copy_files(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_(sd_bus_message_unrefp) sd_bus_message *m = NULL; _cleanup_free_ char *abs_host_path = NULL; @@ -1203,7 +1203,7 @@ static int copy_files(int argc, char *argv[], void *userdata) { return 0; } -static int bind_mount(int argc, char *argv[], void *userdata) { +static int verb_bind_mount(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; sd_bus *bus = ASSERT_PTR(userdata); int r; @@ -1336,7 +1336,7 @@ static int parse_machine_uid(const char *spec, const char **machine, char **uid) return 0; } -static int login_machine(int argc, char *argv[], void *userdata) { +static int verb_login_machine(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL; _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_(sd_bus_slot_unrefp) sd_bus_slot *slot = NULL; @@ -1387,7 +1387,7 @@ static int login_machine(int argc, char *argv[], void *userdata) { return process_forward(event, slot, master, PTY_FORWARD_IGNORE_VHANGUP, machine); } -static int shell_machine(int argc, char *argv[], void *userdata) { +static int verb_shell_machine(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL, *m = NULL; _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_(sd_bus_slot_unrefp) sd_bus_slot *slot = NULL; @@ -1515,7 +1515,7 @@ static int get_settings_path(const char *name, char **ret_path) { return -ENOENT; } -static int edit_settings(int argc, char *argv[], void *userdata) { +static int verb_edit_settings(int argc, char *argv[], void *userdata) { _cleanup_(edit_file_context_done) EditFileContext context = {}; int r; @@ -1585,7 +1585,7 @@ static int edit_settings(int argc, char *argv[], void *userdata) { return do_edit_files_and_install(&context); } -static int cat_settings(int argc, char *argv[], void *userdata) { +static int verb_cat_settings(int argc, char *argv[], void *userdata) { int r = 0; if (arg_transport != BUS_TRANSPORT_LOCAL) @@ -1636,7 +1636,7 @@ static int cat_settings(int argc, char *argv[], void *userdata) { return r; } -static int remove_image(int argc, char *argv[], void *userdata) { +static int verb_remove_image(int argc, char *argv[], void *userdata) { sd_bus *bus = ASSERT_PTR(userdata); int r; @@ -1663,7 +1663,7 @@ static int remove_image(int argc, char *argv[], void *userdata) { return 0; } -static int rename_image(int argc, char *argv[], void *userdata) { +static int verb_rename_image(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; sd_bus *bus = ASSERT_PTR(userdata); int r; @@ -1683,7 +1683,7 @@ static int rename_image(int argc, char *argv[], void *userdata) { return 0; } -static int clone_image(int argc, char *argv[], void *userdata) { +static int verb_clone_image(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_(sd_bus_message_unrefp) sd_bus_message *m = NULL; sd_bus *bus = ASSERT_PTR(userdata); @@ -1707,7 +1707,7 @@ static int clone_image(int argc, char *argv[], void *userdata) { return 0; } -static int read_only_image(int argc, char *argv[], void *userdata) { +static int verb_read_only_image(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; sd_bus *bus = ASSERT_PTR(userdata); int b = true, r; @@ -1765,7 +1765,7 @@ static int make_service_name(const char *name, char **ret) { return 0; } -static int start_machine(int argc, char *argv[], void *userdata) { +static int verb_start_machine(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_(bus_wait_for_jobs_freep) BusWaitForJobs *w = NULL; sd_bus *bus = ASSERT_PTR(userdata); @@ -1821,7 +1821,7 @@ static int start_machine(int argc, char *argv[], void *userdata) { return 0; } -static int enable_machine(int argc, char *argv[], void *userdata) { +static int verb_enable_machine(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_message_unrefp) sd_bus_message *m = NULL, *reply = NULL; _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; const char *method; @@ -1909,15 +1909,15 @@ static int enable_machine(int argc, char *argv[], void *userdata) { return log_oom(); if (enable) - return start_machine(strv_length(new_args), new_args, userdata); + return verb_start_machine(strv_length(new_args), new_args, userdata); - return poweroff_machine(strv_length(new_args), new_args, userdata); + return verb_poweroff_machine(strv_length(new_args), new_args, userdata); } return 0; } -static int set_limit(int argc, char *argv[], void *userdata) { +static int verb_set_limit(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; sd_bus *bus = userdata; uint64_t limit; @@ -1947,7 +1947,7 @@ static int set_limit(int argc, char *argv[], void *userdata) { return 0; } -static int clean_images(int argc, char *argv[], void *userdata) { +static int verb_clean_images(int argc, char *argv[], void *userdata) { _cleanup_(sd_bus_message_unrefp) sd_bus_message *m = NULL, *reply = NULL; _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; uint64_t usage, total = 0; @@ -2048,7 +2048,7 @@ static int chainload_importctl(int argc, char *argv[]) { return log_error_errno(r, "Failed to invoke 'importctl': %m"); } -static int help(int argc, char *argv[], void *userdata) { +static int help(void) { _cleanup_free_ char *link = NULL; int r; @@ -2137,6 +2137,10 @@ static int help(int argc, char *argv[], void *userdata) { return 0; } +static int verb_help(int argc, char *argv[], void *userdata) { + return help(); +} + static int parse_argv(int argc, char *argv[]) { enum { @@ -2257,7 +2261,7 @@ static int parse_argv(int argc, char *argv[]) { break; case 'h': - return help(0, NULL, NULL); + return help(); case ARG_VERSION: return version(); @@ -2444,35 +2448,35 @@ done: static int machinectl_main(int argc, char *argv[], sd_bus *bus) { static const Verb verbs[] = { - { "help", VERB_ANY, VERB_ANY, 0, help }, - { "list", VERB_ANY, 1, VERB_DEFAULT, list_machines }, - { "list-images", VERB_ANY, 1, 0, list_images }, - { "status", 2, VERB_ANY, 0, show_machine }, - { "image-status", VERB_ANY, VERB_ANY, 0, show_image }, - { "show", VERB_ANY, VERB_ANY, 0, show_machine }, - { "show-image", VERB_ANY, VERB_ANY, 0, show_image }, - { "terminate", 2, VERB_ANY, 0, terminate_machine }, - { "reboot", 2, VERB_ANY, 0, reboot_machine }, - { "restart", 2, VERB_ANY, 0, reboot_machine }, /* Convenience alias */ - { "poweroff", 2, VERB_ANY, 0, poweroff_machine }, - { "stop", 2, VERB_ANY, 0, poweroff_machine }, /* Convenience alias */ - { "kill", 2, VERB_ANY, 0, kill_machine }, - { "login", VERB_ANY, 2, 0, login_machine }, - { "shell", VERB_ANY, VERB_ANY, 0, shell_machine }, - { "bind", 3, 4, 0, bind_mount }, - { "edit", 2, VERB_ANY, 0, edit_settings }, - { "cat", 2, VERB_ANY, 0, cat_settings }, - { "copy-to", 3, 4, 0, copy_files }, - { "copy-from", 3, 4, 0, copy_files }, - { "remove", 2, VERB_ANY, 0, remove_image }, - { "rename", 3, 3, 0, rename_image }, - { "clone", 3, 3, 0, clone_image }, - { "read-only", 2, 3, 0, read_only_image }, - { "start", 2, VERB_ANY, 0, start_machine }, - { "enable", 2, VERB_ANY, 0, enable_machine }, - { "disable", 2, VERB_ANY, 0, enable_machine }, - { "set-limit", 2, 3, 0, set_limit }, - { "clean", VERB_ANY, 1, 0, clean_images }, + { "help", VERB_ANY, VERB_ANY, 0, verb_help }, + { "list", VERB_ANY, 1, VERB_DEFAULT, verb_list_machines }, + { "list-images", VERB_ANY, 1, 0, verb_list_images }, + { "status", 2, VERB_ANY, 0, verb_show_machine }, + { "image-status", VERB_ANY, VERB_ANY, 0, verb_show_image }, + { "show", VERB_ANY, VERB_ANY, 0, verb_show_machine }, + { "show-image", VERB_ANY, VERB_ANY, 0, verb_show_image }, + { "terminate", 2, VERB_ANY, 0, verb_terminate_machine }, + { "reboot", 2, VERB_ANY, 0, verb_reboot_machine }, + { "restart", 2, VERB_ANY, 0, verb_reboot_machine }, /* Convenience alias */ + { "poweroff", 2, VERB_ANY, 0, verb_poweroff_machine }, + { "stop", 2, VERB_ANY, 0, verb_poweroff_machine }, /* Convenience alias */ + { "kill", 2, VERB_ANY, 0, verb_kill_machine }, + { "login", VERB_ANY, 2, 0, verb_login_machine }, + { "shell", VERB_ANY, VERB_ANY, 0, verb_shell_machine }, + { "bind", 3, 4, 0, verb_bind_mount }, + { "edit", 2, VERB_ANY, 0, verb_edit_settings }, + { "cat", 2, VERB_ANY, 0, verb_cat_settings }, + { "copy-to", 3, 4, 0, verb_copy_files }, + { "copy-from", 3, 4, 0, verb_copy_files }, + { "remove", 2, VERB_ANY, 0, verb_remove_image }, + { "rename", 3, 3, 0, verb_rename_image }, + { "clone", 3, 3, 0, verb_clone_image }, + { "read-only", 2, 3, 0, verb_read_only_image }, + { "start", 2, VERB_ANY, 0, verb_start_machine }, + { "enable", 2, VERB_ANY, 0, verb_enable_machine }, + { "disable", 2, VERB_ANY, 0, verb_enable_machine }, + { "set-limit", 2, 3, 0, verb_set_limit }, + { "clean", VERB_ANY, 1, 0, verb_clean_images }, {} };