summaryrefslogtreecommitdiff
path: root/src/libsystemd-bus/bus-internal.h
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2013-03-21 22:50:25 +0100
committerLennart Poettering <lennart@poettering.net>2013-03-21 22:53:29 +0100
commite3017af97310da024ffb378ed155bc1676922ce7 (patch)
treea09b0a555b89f7ec00d0ab62294770db99c5642a /src/libsystemd-bus/bus-internal.h
parent43b4c9aaf56aefdc55c4b6c1df78e30cdcf3988f (diff)
bus: implement full method call timeout logic
Diffstat (limited to 'src/libsystemd-bus/bus-internal.h')
-rw-r--r--src/libsystemd-bus/bus-internal.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libsystemd-bus/bus-internal.h b/src/libsystemd-bus/bus-internal.h
index 9a12d661e1..9e4cf16b7f 100644
--- a/src/libsystemd-bus/bus-internal.h
+++ b/src/libsystemd-bus/bus-internal.h
@@ -26,6 +26,7 @@
#include <netinet/in.h>
#include "hashmap.h"
+#include "prioq.h"
#include "list.h"
#include "util.h"
@@ -37,6 +38,7 @@ struct reply_callback {
void *userdata;
usec_t timeout;
uint64_t serial;
+ unsigned prioq_idx;
};
struct filter_callback {
@@ -75,6 +77,7 @@ struct sd_bus {
char *unique_name;
+ Prioq *reply_callbacks_prioq;
Hashmap *reply_callbacks;
LIST_HEAD(struct filter_callback, filter_callbacks);
@@ -97,6 +100,7 @@ struct sd_bus {
unsigned auth_index;
size_t auth_size;
char *auth_uid;
+ usec_t auth_timeout;
};
static inline void bus_unrefp(sd_bus **b) {
@@ -104,3 +108,5 @@ static inline void bus_unrefp(sd_bus **b) {
}
#define _cleanup_bus_unref_ __attribute__((cleanup(bus_unrefp)))
+
+#define BUS_DEFAULT_TIMEOUT ((usec_t) (25 * USEC_PER_SEC))