| /* SPDX-License-Identifier: LGPL-2.1+ */ |
| #pragma once |
| |
| /*** |
| This file is part of systemd. |
| |
| Copyright 2016 Lennart Poettering |
| |
| systemd is free software; you can redistribute it and/or modify it |
| under the terms of the GNU Lesser General Public License as published by |
| the Free Software Foundation; either version 2.1 of the License, or |
| (at your option) any later version. |
| |
| systemd is distributed in the hope that it will be useful, but |
| WITHOUT ANY WARRANTY; without even the implied warranty of |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| Lesser General Public License for more details. |
| |
| You should have received a copy of the GNU Lesser General Public License |
| along with systemd; If not, see <http://www.gnu.org/licenses/>. |
| ***/ |
| |
| #include "sd-bus.h" |
| |
| #include "output-mode.h" |
| #include "install.h" |
| |
| typedef struct UnitInfo { |
| const char *machine; |
| const char *id; |
| const char *description; |
| const char *load_state; |
| const char *active_state; |
| const char *sub_state; |
| const char *following; |
| const char *unit_path; |
| uint32_t job_id; |
| const char *job_type; |
| const char *job_path; |
| } UnitInfo; |
| |
| int bus_parse_unit_info(sd_bus_message *message, UnitInfo *u); |
| |
| int bus_append_unit_property_assignment(sd_bus_message *m, const char *assignment); |
| int bus_append_unit_property_assignment_many(sd_bus_message *m, char **l); |
| |
| typedef struct BusWaitForJobs BusWaitForJobs; |
| |
| int bus_wait_for_jobs_new(sd_bus *bus, BusWaitForJobs **ret); |
| void bus_wait_for_jobs_free(BusWaitForJobs *d); |
| int bus_wait_for_jobs_add(BusWaitForJobs *d, const char *path); |
| int bus_wait_for_jobs(BusWaitForJobs *d, bool quiet, const char* const* extra_args); |
| int bus_wait_for_jobs_one(BusWaitForJobs *d, const char *path, bool quiet); |
| |
| DEFINE_TRIVIAL_CLEANUP_FUNC(BusWaitForJobs*, bus_wait_for_jobs_free); |
| |
| int bus_deserialize_and_dump_unit_file_changes(sd_bus_message *m, bool quiet, UnitFileChange **changes, unsigned *n_changes); |
| |
| int unit_show_processes(sd_bus *bus, const char *unit, const char *cgroup_path, const char *prefix, unsigned n_columns, OutputFlags flags, sd_bus_error *error); |