X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flogin%2Floginctl.c;h=cf4ca46631c629f2fdc0a37793a6a9ef481e3089;hb=1b99ea27bc3ffa1fc6f7cfe89563d891a9aed4c5;hp=a47563b506921fd095a8b1a9beafaedeabcc39d5;hpb=801daa75024fb177df1535f8e16a450bc68619fd;p=elogind.git diff --git a/src/login/loginctl.c b/src/login/loginctl.c index a47563b50..cf4ca4663 100644 --- a/src/login/loginctl.c +++ b/src/login/loginctl.c @@ -37,7 +37,7 @@ #include "strv.h" #include "unit-name.h" #include "sysfs-show.h" -#include "logs-show.h" +// #include "logs-show.h" #include "cgroup-show.h" #include "cgroup-util.h" #include "spawn-polkit-agent.h" @@ -56,9 +56,10 @@ static int arg_signal = SIGTERM; static BusTransport arg_transport = BUS_TRANSPORT_LOCAL; static char *arg_host = NULL; static bool arg_ask_password = true; -static bool arg_ignore_inhibitors = false; +#if 0 static unsigned arg_lines = 10; static OutputMode arg_output = OUTPUT_SHORT; +#endif // 0 static void pager_open_if_enabled(void) { @@ -265,7 +266,7 @@ static int show_unit_cgroup(sd_bus *bus, const char *interface, const char *unit if (isempty(cgroup)) return 0; - if (cg_is_empty_recursive(SYSTEMD_CGROUP_CONTROLLER, cgroup, false) != 0 && leader <= 0) + if (cg_is_empty_recursive(ELOGIND_CGROUP_CONTROLLER, cgroup, false) != 0 && leader <= 0) return 0; c = columns(); @@ -274,7 +275,7 @@ static int show_unit_cgroup(sd_bus *bus, const char *interface, const char *unit else c = 0; - show_cgroup_and_extra(SYSTEMD_CGROUP_CONTROLLER, cgroup, "\t\t ", c, false, &leader, leader > 0, get_output_flags()); + show_cgroup_and_extra(ELOGIND_CGROUP_CONTROLLER, cgroup, "\t\t ", c, false, &leader, leader > 0, get_output_flags()); return 0; } @@ -374,11 +375,9 @@ static int prop_map_first_of_struct(sd_bus *bus, const char *member, sd_bus_mess if (r < 0) return r; - free(*p); - *p = strdup(s); - - if (!*p) - return -ENOMEM; + r = free_and_strdup(p, s); + if (r < 0) + return r; } else { r = sd_bus_message_read_basic(m, contents[0], userdata); if (r < 0) @@ -552,7 +551,8 @@ static int print_session_status_info(sd_bus *bus, const char *path, bool *new_li true, NULL); } -#endif + +#endif // 0 } return 0; @@ -632,7 +632,8 @@ static int print_user_status_info(sd_bus *bus, const char *path, bool *new_line) SD_JOURNAL_LOCAL_ONLY, true, NULL); -#endif + +#endif // 0 } return 0; @@ -1195,9 +1196,6 @@ static int check_inhibitors(sd_bus *bus, const char *verb, const char *inhibit_w assert(bus); - if (arg_ignore_inhibitors) - return 0; - if (geteuid() == 0) return 0; @@ -1435,7 +1433,6 @@ static int help(int argc, char *argv[], void *userdata) { " --no-pager Do not pipe output into a pager\n" " --no-legend Do not show the headers and footers\n" " --no-ask-password Don't prompt for password\n" - " -i --ignore-inhibitors Ignore inhibitors when suspending or shutting down\n" " -H --host=[USER@]HOST Operate on remote host\n" " -M --machine=CONTAINER Operate on local container\n" " -p --property=NAME Show only properties by this name\n" @@ -1443,9 +1440,11 @@ static int help(int argc, char *argv[], void *userdata) { " -l --full Do not ellipsize output\n" " --kill-who=WHO Who to send signal to\n" " -s --signal=SIGNAL Which signal to send\n" +#if 0 " -n --lines=INTEGER Number of journal entries to show\n" " -o --output=STRING Change journal output mode (short, short-monotonic,\n" " verbose, export, json, json-pretty, json-sse, cat)\n\n" +#endif // 0 "Session Commands:\n" " list-sessions List sessions\n" " session-status [ID...] Show session status\n" @@ -1471,7 +1470,7 @@ static int help(int argc, char *argv[], void *userdata) { " show-seat [NAME...] Show properties of seats or the manager\n" " attach NAME DEVICE... Attach one or more devices to a seat\n" " flush-devices Flush all device associations\n" - " terminate-seat NAME... Terminate all sessions on one or more seats\n\n" + " terminate-seat NAME... Terminate all sessions on one or more seats\n" "System Commands:\n" " poweroff Turn off the machine\n" " reboot Reboot the machine\n" @@ -1506,9 +1505,10 @@ static int parse_argv(int argc, char *argv[]) { { "host", required_argument, NULL, 'H' }, { "machine", required_argument, NULL, 'M' }, { "no-ask-password", no_argument, NULL, ARG_NO_ASK_PASSWORD }, - { "ignore-inhibitors", no_argument, NULL, 'i' }, +#if 0 { "lines", required_argument, NULL, 'n' }, { "output", required_argument, NULL, 'o' }, +#endif // {} }; @@ -1517,7 +1517,7 @@ static int parse_argv(int argc, char *argv[]) { assert(argc >= 0); assert(argv); - while ((c = getopt_long(argc, argv, "hp:als:H:M:n:o:i", options, NULL)) >= 0) + while ((c = getopt_long(argc, argv, "hp:als:H:M:", options, NULL)) >= 0) switch (c) { @@ -1549,7 +1549,7 @@ static int parse_argv(int argc, char *argv[]) { case 'l': arg_full = true; break; - +#if 0 case 'n': if (safe_atou(optarg, &arg_lines) < 0) { log_error("Failed to parse lines '%s'", optarg); @@ -1558,21 +1558,13 @@ static int parse_argv(int argc, char *argv[]) { break; case 'o': -#if 0 arg_output = output_mode_from_string(optarg); -#else - arg_output = -1; -#endif if (arg_output < 0) { log_error("Unknown output '%s'.", optarg); return -EINVAL; } break; - - case 'i': - arg_ignore_inhibitors = true; - break; - +#endif // 0 case ARG_NO_PAGER: arg_no_pager = true; break; @@ -1656,7 +1648,7 @@ static int loginctl_main(int argc, char *argv[], sd_bus *bus) { } int main(int argc, char *argv[]) { - _cleanup_bus_close_unref_ sd_bus *bus = NULL; + _cleanup_bus_flush_close_unref_ sd_bus *bus = NULL; int r; setlocale(LC_ALL, "");