mirror of
https://github.com/systemd/systemd-stable.git
synced 2024-12-22 13:33:56 +03:00
Merge pull request #485 from poettering/sd-bus-flush-close-unref
sd-bus: introduce new sd_bus_flush_close_unref() call
This commit is contained in:
commit
6acc94b621
@ -1331,7 +1331,7 @@ int main(int argc, char *argv[]) {
|
||||
arg_user ? MANAGER_USER : MANAGER_SYSTEM,
|
||||
arg_man);
|
||||
else {
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
|
||||
r = bus_open_transport_systemd(arg_transport, arg_host, arg_user, &bus);
|
||||
if (r < 0) {
|
||||
|
@ -45,7 +45,7 @@
|
||||
#include "formats-util.h"
|
||||
|
||||
static int proxy_create_destination(Proxy *p, const char *destination, const char *local_sec, bool negotiate_fds) {
|
||||
_cleanup_bus_close_unref_ sd_bus *b = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *b = NULL;
|
||||
int r;
|
||||
|
||||
r = sd_bus_new(&b);
|
||||
@ -101,7 +101,7 @@ static int proxy_create_destination(Proxy *p, const char *destination, const cha
|
||||
}
|
||||
|
||||
static int proxy_create_local(Proxy *p, int in_fd, int out_fd, bool negotiate_fds) {
|
||||
_cleanup_bus_close_unref_ sd_bus *b = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *b = NULL;
|
||||
sd_id128_t server_id;
|
||||
int r;
|
||||
|
||||
@ -238,8 +238,8 @@ Proxy *proxy_free(Proxy *p) {
|
||||
if (!p)
|
||||
return NULL;
|
||||
|
||||
sd_bus_close_unrefp(&p->local_bus);
|
||||
sd_bus_close_unrefp(&p->destination_bus);
|
||||
sd_bus_flush_close_unref(p->local_bus);
|
||||
sd_bus_flush_close_unref(p->destination_bus);
|
||||
set_free_free(p->owned_names);
|
||||
free(p);
|
||||
|
||||
|
@ -127,7 +127,7 @@ int main(int argc, char *argv[]) {
|
||||
int r = 0, retval = EXIT_FAILURE;
|
||||
int output_flags;
|
||||
_cleanup_free_ char *root = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
|
||||
log_parse_environment();
|
||||
log_open();
|
||||
|
@ -26,7 +26,7 @@
|
||||
#include "bus-util.h"
|
||||
|
||||
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;
|
||||
|
||||
if (argc != 2) {
|
||||
|
@ -62,7 +62,7 @@ static const char *arg_repair = "-a";
|
||||
|
||||
static void start_target(const char *target) {
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
int r;
|
||||
|
||||
assert(target);
|
||||
|
@ -509,7 +509,7 @@ static int hostnamectl_main(sd_bus *bus, int argc, char *argv[]) {
|
||||
}
|
||||
|
||||
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, "");
|
||||
|
@ -663,7 +663,7 @@ static const sd_bus_vtable hostname_vtable[] = {
|
||||
};
|
||||
|
||||
static int connect_bus(Context *c, sd_event *event, sd_bus **_bus) {
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
int r;
|
||||
|
||||
assert(c);
|
||||
@ -695,7 +695,7 @@ static int connect_bus(Context *c, sd_event *event, sd_bus **_bus) {
|
||||
int main(int argc, char *argv[]) {
|
||||
Context context = {};
|
||||
_cleanup_event_unref_ sd_event *event = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
int r;
|
||||
|
||||
log_set_target(LOG_TARGET_AUTO);
|
||||
|
@ -551,8 +551,7 @@ static Manager *manager_unref(Manager *m) {
|
||||
|
||||
bus_verify_polkit_async_registry_free(m->polkit_registry);
|
||||
|
||||
sd_bus_close(m->bus);
|
||||
sd_bus_unref(m->bus);
|
||||
m->bus = sd_bus_flush_close_unref(m->bus);
|
||||
sd_event_unref(m->event);
|
||||
|
||||
free(m);
|
||||
|
@ -1719,7 +1719,7 @@ static int access_check(sd_journal *j) {
|
||||
|
||||
static int flush_to_var(void) {
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_close_ int watch_fd = -1;
|
||||
int r;
|
||||
|
||||
|
@ -465,4 +465,5 @@ global:
|
||||
/* sd-bus */
|
||||
sd_bus_emit_object_added;
|
||||
sd_bus_emit_object_removed;
|
||||
sd_bus_flush_close_unref;
|
||||
} LIBSYSTEMD_221;
|
||||
|
@ -1974,7 +1974,7 @@ static int busctl_main(sd_bus *bus, int argc, char *argv[]) {
|
||||
}
|
||||
|
||||
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;
|
||||
|
||||
log_parse_environment();
|
||||
|
@ -1428,6 +1428,17 @@ _public_ void sd_bus_close(sd_bus *bus) {
|
||||
* ioctl on the fd when they are freed. */
|
||||
}
|
||||
|
||||
_public_ sd_bus* sd_bus_flush_close_unref(sd_bus *bus) {
|
||||
|
||||
if (!bus)
|
||||
return NULL;
|
||||
|
||||
sd_bus_flush(bus);
|
||||
sd_bus_close(bus);
|
||||
|
||||
return sd_bus_unref(bus);
|
||||
}
|
||||
|
||||
static void bus_enter_closing(sd_bus *bus) {
|
||||
assert(bus);
|
||||
|
||||
|
@ -262,7 +262,7 @@ fail:
|
||||
|
||||
static void* client1(void*p) {
|
||||
_cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
const char *hello;
|
||||
int r;
|
||||
@ -361,7 +361,7 @@ static int quit_callback(sd_bus_message *m, void *userdata, sd_bus_error *ret_er
|
||||
|
||||
static void* client2(void*p) {
|
||||
_cleanup_bus_message_unref_ sd_bus_message *m = NULL, *reply = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
bool quit = false;
|
||||
const char *mid;
|
||||
|
@ -132,7 +132,7 @@ static void test_bus_gvariant_get_alignment(void) {
|
||||
|
||||
static void test_marshal(void) {
|
||||
_cleanup_bus_message_unref_ sd_bus_message *m = NULL, *n = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_free_ void *blob;
|
||||
size_t sz;
|
||||
int r;
|
||||
|
@ -92,7 +92,7 @@ int main(int argc, char *argv[]) {
|
||||
};
|
||||
|
||||
_cleanup_bus_message_unref_ sd_bus_message *m = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
enum bus_match_node_type i;
|
||||
sd_bus_slot slots[19];
|
||||
int r;
|
||||
|
@ -667,7 +667,7 @@ static int localectl_main(sd_bus *bus, int argc, char *argv[]) {
|
||||
}
|
||||
|
||||
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, "");
|
||||
|
@ -1240,7 +1240,7 @@ static const sd_bus_vtable locale_vtable[] = {
|
||||
};
|
||||
|
||||
static int connect_bus(Context *c, sd_event *event, sd_bus **_bus) {
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
int r;
|
||||
|
||||
assert(c);
|
||||
@ -1272,7 +1272,7 @@ static int connect_bus(Context *c, sd_event *event, sd_bus **_bus) {
|
||||
int main(int argc, char *argv[]) {
|
||||
_cleanup_(context_free) Context context = {};
|
||||
_cleanup_event_unref_ sd_event *event = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
int r;
|
||||
|
||||
log_set_target(LOG_TARGET_AUTO);
|
||||
|
@ -223,7 +223,7 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
int r;
|
||||
|
||||
log_parse_environment();
|
||||
|
@ -1389,7 +1389,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, "");
|
||||
|
@ -213,7 +213,7 @@ _public_ PAM_EXTERN int pam_sm_open_session(
|
||||
*seat = NULL,
|
||||
*type = NULL, *class = NULL,
|
||||
*class_pam = NULL, *type_pam = NULL, *cvtnr = NULL, *desktop = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
int session_fd = -1, existing, r;
|
||||
bool debug = false, remote;
|
||||
struct passwd *pw;
|
||||
@ -496,7 +496,7 @@ _public_ PAM_EXTERN int pam_sm_close_session(
|
||||
int argc, const char **argv) {
|
||||
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
const void *existing = NULL;
|
||||
const char *id;
|
||||
int r;
|
||||
|
@ -2572,7 +2572,7 @@ static int machinectl_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, "");
|
||||
|
@ -2273,7 +2273,7 @@ static int drop_capabilities(void) {
|
||||
|
||||
static int register_machine(pid_t pid, int local_ifindex) {
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
int r;
|
||||
|
||||
if (!arg_register)
|
||||
@ -2430,7 +2430,7 @@ static int register_machine(pid_t pid, int local_ifindex) {
|
||||
static int terminate_machine(pid_t pid) {
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
_cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
const char *path;
|
||||
int r;
|
||||
|
||||
|
@ -79,7 +79,7 @@ enum nss_status _nss_mymachines_gethostbyname4_r(
|
||||
|
||||
struct gaih_addrtuple *r_tuple, *r_tuple_first = NULL;
|
||||
_cleanup_bus_message_unref_ sd_bus_message* reply = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_free_ int *ifindices = NULL;
|
||||
_cleanup_free_ char *class = NULL;
|
||||
size_t l, ms, idx;
|
||||
@ -228,7 +228,7 @@ enum nss_status _nss_mymachines_gethostbyname3_r(
|
||||
char **canonp) {
|
||||
|
||||
_cleanup_bus_message_unref_ sd_bus_message* reply = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_free_ char *class = NULL;
|
||||
unsigned c = 0, i = 0;
|
||||
char *r_name, *r_aliases, *r_addr, *r_addr_list;
|
||||
|
@ -122,7 +122,7 @@ enum nss_status _nss_resolve_gethostbyname4_r(
|
||||
_cleanup_bus_message_unref_ sd_bus_message *req = NULL, *reply = NULL;
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
struct gaih_addrtuple *r_tuple, *r_tuple_first = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
const char *canonical = NULL;
|
||||
size_t l, ms, idx;
|
||||
char *r_name;
|
||||
@ -305,7 +305,7 @@ enum nss_status _nss_resolve_gethostbyname3_r(
|
||||
_cleanup_bus_message_unref_ sd_bus_message *req = NULL, *reply = NULL;
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
char *r_name, *r_aliases, *r_addr, *r_addr_list;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
size_t l, idx, ms, alen;
|
||||
const char *canonical;
|
||||
int c, r, i = 0, ifindex;
|
||||
@ -513,7 +513,7 @@ enum nss_status _nss_resolve_gethostbyaddr2_r(
|
||||
_cleanup_bus_message_unref_ sd_bus_message *req = NULL, *reply = NULL;
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
char *r_name, *r_aliases, *r_addr, *r_addr_list;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
unsigned c = 0, i = 0;
|
||||
size_t ms = 0, idx;
|
||||
const char *n;
|
||||
|
@ -592,7 +592,7 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
}
|
||||
|
||||
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;
|
||||
|
||||
log_parse_environment();
|
||||
|
@ -1099,7 +1099,7 @@ static int start_transient_timer(
|
||||
}
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_free_ char *description = NULL, *command = NULL;
|
||||
int r;
|
||||
|
||||
|
@ -135,22 +135,15 @@ typedef struct UnitInfo {
|
||||
|
||||
int bus_parse_unit_info(sd_bus_message *message, UnitInfo *u);
|
||||
|
||||
static inline void sd_bus_close_unrefp(sd_bus **bus) {
|
||||
if (*bus) {
|
||||
sd_bus_flush(*bus);
|
||||
sd_bus_close(*bus);
|
||||
sd_bus_unref(*bus);
|
||||
}
|
||||
}
|
||||
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(sd_bus*, sd_bus_unref);
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(sd_bus*, sd_bus_flush_close_unref);
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(sd_bus_slot*, sd_bus_slot_unref);
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(sd_bus_message*, sd_bus_message_unref);
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(sd_bus_creds*, sd_bus_creds_unref);
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(sd_bus_track*, sd_bus_track_unref);
|
||||
|
||||
#define _cleanup_bus_unref_ _cleanup_(sd_bus_unrefp)
|
||||
#define _cleanup_bus_close_unref_ _cleanup_(sd_bus_close_unrefp)
|
||||
#define _cleanup_bus_flush_close_unref_ _cleanup_(sd_bus_flush_close_unrefp)
|
||||
#define _cleanup_bus_slot_unref_ _cleanup_(sd_bus_slot_unrefp)
|
||||
#define _cleanup_bus_message_unref_ _cleanup_(sd_bus_message_unrefp)
|
||||
#define _cleanup_bus_creds_unref_ _cleanup_(sd_bus_creds_unrefp)
|
||||
|
@ -617,7 +617,7 @@ static int get_unit_list_recursive(
|
||||
return r;
|
||||
|
||||
STRV_FOREACH(i, machines) {
|
||||
_cleanup_bus_close_unref_ sd_bus *container = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *container = NULL;
|
||||
int k;
|
||||
|
||||
r = sd_bus_open_system_machine(&container, *i);
|
||||
@ -1709,7 +1709,7 @@ static int compare_machine_info(const void *a, const void *b) {
|
||||
}
|
||||
|
||||
static int get_machine_properties(sd_bus *bus, struct machine_info *mi) {
|
||||
_cleanup_bus_close_unref_ sd_bus *container = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *container = NULL;
|
||||
int r;
|
||||
|
||||
assert(mi);
|
||||
@ -7340,7 +7340,7 @@ static int halt_main(sd_bus *bus) {
|
||||
|
||||
if (arg_when > 0) {
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *b = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *b = NULL;
|
||||
_cleanup_free_ char *m = NULL;
|
||||
|
||||
if (avoid_bus()) {
|
||||
@ -7449,7 +7449,7 @@ static int runlevel_main(void) {
|
||||
}
|
||||
|
||||
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, "");
|
||||
@ -7517,7 +7517,7 @@ int main(int argc, char*argv[]) {
|
||||
|
||||
case ACTION_CANCEL_SHUTDOWN: {
|
||||
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *b = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *b = NULL;
|
||||
_cleanup_free_ char *m = NULL;
|
||||
|
||||
if (avoid_bus()) {
|
||||
|
@ -156,6 +156,7 @@ void sd_bus_close(sd_bus *bus);
|
||||
|
||||
sd_bus *sd_bus_ref(sd_bus *bus);
|
||||
sd_bus *sd_bus_unref(sd_bus *bus);
|
||||
sd_bus *sd_bus_flush_close_unref(sd_bus *bus);
|
||||
|
||||
int sd_bus_is_open(sd_bus *bus);
|
||||
|
||||
|
@ -491,7 +491,7 @@ static int timedatectl_main(sd_bus *bus, int argc, char *argv[]) {
|
||||
}
|
||||
|
||||
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, "");
|
||||
|
@ -660,7 +660,7 @@ static const sd_bus_vtable timedate_vtable[] = {
|
||||
};
|
||||
|
||||
static int connect_bus(Context *c, sd_event *event, sd_bus **_bus) {
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
int r;
|
||||
|
||||
assert(c);
|
||||
@ -692,7 +692,7 @@ static int connect_bus(Context *c, sd_event *event, sd_bus **_bus) {
|
||||
int main(int argc, char *argv[]) {
|
||||
Context context = {};
|
||||
_cleanup_event_unref_ sd_event *event = NULL;
|
||||
_cleanup_bus_close_unref_ sd_bus *bus = NULL;
|
||||
_cleanup_bus_flush_close_unref_ sd_bus *bus = NULL;
|
||||
int r;
|
||||
|
||||
log_set_target(LOG_TARGET_AUTO);
|
||||
|
Loading…
Reference in New Issue
Block a user