chiark / gitweb /
bus: don't generate NameAcquired/NameLost messages in the library
[elogind.git] / src / libsystemd-bus / bus-internal.h
index a1d60b113353cc79e4e765c9360faec8023a648a..4881e0427c9ae8bbec29377db6e325512f56bc27 100644 (file)
@@ -166,7 +166,7 @@ struct sd_bus {
         size_t rbuffer_size;
 
         sd_bus_message **rqueue;
-        unsigned rqueue_size;
+        unsigned rqueue_size, rqueue_allocated;
 
         sd_bus_message **wqueue;
         unsigned wqueue_size;
@@ -175,6 +175,7 @@ struct sd_bus {
         uint64_t serial;
 
         char *unique_name;
+        uint64_t unique_id;
 
         struct bus_match_node match_callbacks;
         Prioq *reply_callbacks_prioq;
@@ -182,8 +183,6 @@ struct sd_bus {
         LIST_HEAD(struct filter_callback, filter_callbacks);
 
         Hashmap *nodes;
-
-
         Hashmap *vtable_methods;
         Hashmap *vtable_properties;
 
@@ -215,6 +214,8 @@ struct sd_bus {
         struct ucred ucred;
         char label[NAME_MAX];
 
+        uint64_t creds_mask;
+
         int *fds;
         unsigned n_fds;
 
@@ -239,6 +240,7 @@ struct sd_bus {
         pid_t original_pid;
 
         uint64_t hello_flags;
+        uint64_t attach_flags;
 
         uint64_t match_cookie;
 
@@ -274,7 +276,6 @@ struct sd_bus {
 
 bool interface_name_is_valid(const char *p);
 bool service_name_is_valid(const char *p);
-bool sender_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);
@@ -294,6 +295,10 @@ int bus_ensure_running(sd_bus *bus);
 int bus_start_running(sd_bus *bus);
 int bus_next_address(sd_bus *bus);
 
+int bus_seal_synthetic_message(sd_bus *b, sd_bus_message *m);
+
+int bus_rqueue_make_room(sd_bus *bus);
+
 bool bus_pid_changed(sd_bus *bus);
 
 char *bus_address_escape(const char *v);