bus-internal.h revision c1b9d935725103e95901f347b8981647ce4dd546
337eebb936be1da1215535e866965ce54c82d755Lennart Poettering/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
f401e48c2db22ff9d1a05885b5599bebf19c2707Lennart Poettering This file is part of systemd.
1063dc3a525a87c0285e071794317f71724492feLennart Poettering Copyright 2013 Lennart Poettering
8cf3a8a982661c0bb9b04ff27f6d486b38b1b35eLennart Poettering systemd is free software; you can redistribute it and/or modify it
de47ca9b50e8c05c9fc116ff37794e526bddf92eLennart Poettering under the terms of the GNU Lesser General Public License as published by
e0e1580aae5913870933518f3cb7055730ce3a49Lennart Poettering the Free Software Foundation; either version 2.1 of the License, or
306a7fd82e790b3c00ba5cf806ccd6c0108061b5Lennart Poettering (at your option) any later version.
335aa753fa60ba0bb3c9fe679c761d5f1f3b1588Lennart Poettering systemd is distributed in the hope that it will be useful, but
335aa753fa60ba0bb3c9fe679c761d5f1f3b1588Lennart Poettering WITHOUT ANY WARRANTY; without even the implied warranty of
3b63d2d31d0850bd7a81ab9b468218d2c4c461e8Lennart Poettering MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3b63d2d31d0850bd7a81ab9b468218d2c4c461e8Lennart Poettering Lesser General Public License for more details.
46574a5b4afeac0c3f69f15ce47c460309cb9becLennart Poettering You should have received a copy of the GNU Lesser General Public License
46574a5b4afeac0c3f69f15ce47c460309cb9becLennart Poettering along with systemd; If not, see <http://www.gnu.org/licenses/>.
struct filter_callback {
void *userdata;
unsigned last_iteration;
struct node {
char *path;
bool object_manager;
struct node_callback {
bool is_fallback;
void *userdata;
unsigned last_iteration;
struct node_enumerator {
void *userdata;
unsigned last_iteration;
struct node_vtable {
char *interface;
bool is_fallback;
void *userdata;
unsigned last_iteration;
struct vtable_member {
const char *path;
const char *interface;
const char *member;
unsigned last_iteration;
enum bus_state {
enum bus_auth {
struct sd_bus {
int message_version;
int use_memfd;
void *rbuffer;
unsigned wqueue_size;
char *unique_name;
} sockaddr;
char *kernel;
char *machine;
char *address;
unsigned address_index;
int last_connect_error;
unsigned auth_index;
char *auth_buffer;
int *fds;
unsigned n_fds;
char *exec_path;
char **exec_argv;
unsigned iteration_counter;
void *kdbus_buffer;
unsigned n_memfd_cache;
bool interface_name_is_valid(const char *p);
bool service_name_is_valid(const char *p);
bool member_name_is_valid(const char *p);
bool object_path_is_valid(const char *p);
char *object_path_startswith(const char *a, const char *b);
char *bus_address_escape(const char *v);