chiark / gitweb /
bus: make optional whether unix socket passing is negotiated and whether hello is...
[elogind.git] / src / libsystemd-bus / bus-internal.h
index 82f60849d5edd6cd9ec7863efc59bccafbe98f4a..19965083c6fa281914b9cb341b577e1de968ee1d 100644 (file)
@@ -57,6 +57,7 @@ struct object_callback {
 };
 
 enum bus_state {
+        BUS_UNSET,
         BUS_OPENING,
         BUS_AUTHENTICATING,
         BUS_HELLO,
@@ -68,8 +69,10 @@ struct sd_bus {
         enum bus_state state;
         int fd;
         int message_version;
+
+        bool negotiate_fds:1;
         bool can_fds:1;
-        bool sent_hello:1;
+        bool send_hello:1;
         bool ucred_valid:1;
 
         void *rbuffer;
@@ -114,6 +117,9 @@ struct sd_bus {
 
         struct ucred ucred;
         char label[NAME_MAX];
+
+        int *fds;
+        unsigned n_fds;
 };
 
 static inline void bus_unrefp(sd_bus **b) {
@@ -137,6 +143,8 @@ static inline void bus_unrefp(sd_bus **b) {
  * bytes */
 #define BUS_ARRAY_MAX_SIZE 67108864
 
+#define BUS_FDS_MAX 1024
+
 bool object_path_is_valid(const char *p);
 bool interface_name_is_valid(const char *p);
 bool service_name_is_valid(const char *p);