1 *** SPECS/systemd.spec.orig 2013-08-30 02:02:28.523413573 +0300
2 --- SPECS/systemd.spec 2013-08-30 02:04:26.248492809 +0300
6 # kernel-install patch for grubby, drop if grubby is obsolete
7 Patch1000: kernel-install-grubby.patch
9 + Patch10000: 0001-systemd-bus-create-a-shared-library-for-public-consu.patch
10 + Patch10001: 0001-systemd-bus-export-additional-forgotten-symbols.patch
12 %global num_patches %{lua: c=0; for i,p in ipairs(patches) do c=c+1; end; print(c);}
14 BuildRequires: libcap-devel
19 Development headers and auxiliary files for developing applications for systemd.
22 + Summary: systemd D-Bus client library
24 + Requires: systemd-libs = %{version}
26 + %description libs-dbus
27 + D-Bus library from the systemd sources.
29 + %package libs-dbus-devel
30 + Summary: Development headers for systemd-libs-dbus
32 + Requires: systemd-devel = %{version}
34 + %description libs-dbus-devel
35 + Development files for the D-Bus library from the systemd sources.
38 Summary: SysV tools for systemd
43 %dir %{_datadir}/gtk-doc/html/libudev
44 %{_datadir}/gtk-doc/html/libudev/*
47 + %{_libdir}/libsystemd-bus.so.0.0.0
48 + %{_libdir}/libsystemd-bus.so.0
50 + %files libs-dbus-devel
51 + %{_includedir}/systemd/sd-bus.h
52 + %{_includedir}/systemd/sd-bus-protocol.h
53 + %{_includedir}/systemd/bus
54 + %{_libdir}/libsystemd-bus.so
55 + %{_libdir}/pkgconfig/libsystemd-bus.pc
58 %{_bindir}/systemd-sysv-convert
60 *** /dev/null 2013-07-09 15:36:51.773521412 +0300
61 --- SOURCES/0001-systemd-bus-create-a-shared-library-for-public-consu.patch 2013-08-06 23:10:20.960714606 +0300
65 + From 7a53ccec1eee76801a3104cd8f0ac98289716ffa Mon Sep 17 00:00:00 2001
66 + From: Fedora systemd team <systemd-maint@redhat.com>
67 + Date: Tue, 6 Aug 2013 21:38:33 +0300
68 + Subject: [PATCH 1/1] systemd-bus: create a shared library for public
71 + For testing systemd-bus as a libdbus replacement, create a shared
72 + library out of it. Note that there might be still some sd_bus_*
73 + symbols that do not get properly exported because of missing linker
74 + version script entries.
76 + Note also, that as a quick fix the symbols referenced by the various
77 + test-* test cases have been marked public and exported from the library.
78 + This should be just a temporary workaround and we need something more
81 + Makefile.am | 26 ++++-
82 + src/libsystemd-bus/bus-control.c | 14 +--
83 + src/libsystemd-bus/bus-error.c | 15 +--
84 + src/libsystemd-bus/bus-internal.c | 15 ++-
85 + src/libsystemd-bus/bus-match.c | 21 ++--
86 + src/libsystemd-bus/bus-message.c | 84 ++++++++--------
87 + src/libsystemd-bus/bus-signature.c | 9 +-
88 + src/libsystemd-bus/libsystemd-bus.pc.in | 19 ++++
89 + src/libsystemd-bus/libsystemd-bus.sym | 163 ++++++++++++++++++++++++++++++++
90 + src/libsystemd-bus/sd-bus.c | 78 +++++++--------
91 + 10 files changed, 335 insertions(+), 109 deletions(-)
92 + create mode 100644 src/libsystemd-bus/libsystemd-bus.pc.in
93 + create mode 100644 src/libsystemd-bus/libsystemd-bus.sym
95 + diff --git a/Makefile.am b/Makefile.am
96 + index c7b5a4a..faad661 100644
99 + @@ -55,6 +55,10 @@ LIBSYSTEMD_JOURNAL_CURRENT=9
100 + LIBSYSTEMD_JOURNAL_REVISION=0
101 + LIBSYSTEMD_JOURNAL_AGE=9
103 + +LIBSYSTEMD_BUS_CURRENT=0
104 + +LIBSYSTEMD_BUS_REVISION=0
105 + +LIBSYSTEMD_BUS_AGE=0
107 + # Dirs of external packages
108 + dbuspolicydir=@dbuspolicydir@
109 + dbussessionservicedir=@dbussessionservicedir@
110 + @@ -1717,7 +1721,27 @@ libsystemd_bus_la_LIBADD = \
111 + libsystemd-shared.la \
112 + libsystemd-daemon.la
114 + -noinst_LTLIBRARIES += \
115 + +libsystemd_bus_la_LDFLAGS = \
117 + + -version-info $(LIBSYSTEMD_BUS_CURRENT):$(LIBSYSTEMD_BUS_REVISION):$(LIBSYSTEMD_BUS_AGE) \
118 + + -Wl,--version-script=$(top_srcdir)/src/libsystemd-bus/libsystemd-bus.sym
120 + +pkginclude_HEADERS += \
121 + + src/systemd/sd-bus.h \
122 + + src/systemd/sd-bus-protocol.h
124 + +libsystemd_bus_la_HEADERS = \
125 + + src/libsystemd-bus/bus-message.h \
126 + + src/shared/macro.h \
129 + +libsystemd_bus_ladir = \
130 + + $(includedir)/systemd/bus
132 + +pkgconfiglib_DATA += \
133 + + src/libsystemd-bus/libsystemd-bus.pc
135 + +lib_LTLIBRARIES += \
139 + diff --git a/src/libsystemd-bus/bus-control.c b/src/libsystemd-bus/bus-control.c
140 + index a0abccf..2795cb4 100644
141 + --- a/src/libsystemd-bus/bus-control.c
142 + +++ b/src/libsystemd-bus/bus-control.c
144 + #include "bus-message.h"
145 + #include "bus-control.h"
147 + -int sd_bus_get_unique_name(sd_bus *bus, const char **unique) {
148 + +_public_ int sd_bus_get_unique_name(sd_bus *bus, const char **unique) {
152 + @@ -45,7 +45,7 @@ int sd_bus_get_unique_name(sd_bus *bus, const char **unique) {
156 + -int sd_bus_request_name(sd_bus *bus, const char *name, int flags) {
157 + +_public_ int sd_bus_request_name(sd_bus *bus, const char *name, int flags) {
158 + _cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
161 + @@ -76,7 +76,7 @@ int sd_bus_request_name(sd_bus *bus, const char *name, int flags) {
165 + -int sd_bus_release_name(sd_bus *bus, const char *name) {
166 + +_public_ int sd_bus_release_name(sd_bus *bus, const char *name) {
167 + _cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
170 + @@ -106,7 +106,7 @@ int sd_bus_release_name(sd_bus *bus, const char *name) {
174 + -int sd_bus_list_names(sd_bus *bus, char ***l) {
175 + +_public_ int sd_bus_list_names(sd_bus *bus, char ***l) {
176 + _cleanup_bus_message_unref_ sd_bus_message *reply1 = NULL, *reply2 = NULL;
179 + @@ -156,7 +156,7 @@ int sd_bus_list_names(sd_bus *bus, char ***l) {
183 + -int sd_bus_get_owner(sd_bus *bus, const char *name, char **owner) {
184 + +_public_ int sd_bus_get_owner(sd_bus *bus, const char *name, char **owner) {
185 + _cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
188 + @@ -196,7 +196,7 @@ int sd_bus_get_owner(sd_bus *bus, const char *name, char **owner) {
192 + -int sd_bus_get_owner_uid(sd_bus *bus, const char *name, uid_t *uid) {
193 + +_public_ int sd_bus_get_owner_uid(sd_bus *bus, const char *name, uid_t *uid) {
194 + _cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
197 + @@ -229,7 +229,7 @@ int sd_bus_get_owner_uid(sd_bus *bus, const char *name, uid_t *uid) {
201 + -int sd_bus_get_owner_pid(sd_bus *bus, const char *name, pid_t *pid) {
202 + +_public_ int sd_bus_get_owner_pid(sd_bus *bus, const char *name, pid_t *pid) {
203 + _cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
206 + diff --git a/src/libsystemd-bus/bus-error.c b/src/libsystemd-bus/bus-error.c
207 + index 5faa173..145a378 100644
208 + --- a/src/libsystemd-bus/bus-error.c
209 + +++ b/src/libsystemd-bus/bus-error.c
210 + @@ -38,7 +38,7 @@ bool bus_error_is_dirty(sd_bus_error *e) {
211 + return e->name || e->message || e->need_free;
214 + -void sd_bus_error_free(sd_bus_error *e) {
215 + +_public_ void sd_bus_error_free(sd_bus_error *e) {
219 + @@ -51,7 +51,7 @@ void sd_bus_error_free(sd_bus_error *e) {
220 + e->need_free = false;
223 + -int sd_bus_error_set(sd_bus_error *e, const char *name, const char *format, ...) {
224 + +_public_ int sd_bus_error_set(sd_bus_error *e, const char *name, const char *format, ...) {
225 + char *n, *m = NULL;
228 + @@ -85,7 +85,7 @@ int sd_bus_error_set(sd_bus_error *e, const char *name, const char *format, ...)
232 + -int sd_bus_error_copy(sd_bus_error *dest, const sd_bus_error *e) {
233 + +_public_ int sd_bus_error_copy(sd_bus_error *dest, const sd_bus_error *e) {
234 + char *x, *y = NULL;
237 + @@ -113,7 +113,7 @@ int sd_bus_error_copy(sd_bus_error *dest, const sd_bus_error *e) {
241 + -void sd_bus_error_set_const(sd_bus_error *e, const char *name, const char *message) {
242 + +_public_ void sd_bus_error_set_const(sd_bus_error *e, const char *name, const char *message) {
245 + if (bus_error_is_dirty(e))
246 + @@ -124,14 +124,14 @@ void sd_bus_error_set_const(sd_bus_error *e, const char *name, const char *messa
247 + e->need_free = false;
250 + -int sd_bus_error_is_set(const sd_bus_error *e) {
251 + +_public_ int sd_bus_error_is_set(const sd_bus_error *e) {
258 + -int sd_bus_error_has_name(const sd_bus_error *e, const char *name) {
259 + +_public_ int sd_bus_error_has_name(const sd_bus_error *e, const char *name) {
263 + @@ -169,7 +169,8 @@ int bus_error_from_errno(sd_bus_error *e, int error) {
267 + -const char *bus_error_message(const sd_bus_error *e, int error) {
268 + +/* XXX TODO: for test-* */
269 + +_public_ const char *bus_error_message(const sd_bus_error *e, int error) {
270 + if (e && e->message)
273 + diff --git a/src/libsystemd-bus/bus-internal.c b/src/libsystemd-bus/bus-internal.c
274 + index 317f6a8..ec66a11 100644
275 + --- a/src/libsystemd-bus/bus-internal.c
276 + +++ b/src/libsystemd-bus/bus-internal.c
277 + @@ -101,7 +101,8 @@ bool interface_name_is_valid(const char *p) {
281 + -bool service_name_is_valid(const char *p) {
282 + +/* XXX TODO: for busctl */
283 + +_public_ bool service_name_is_valid(const char *p) {
285 + bool dot, found_dot, unique;
287 + @@ -187,11 +188,13 @@ static bool complex_pattern_check(char c, const char *a, const char *b) {
291 + -bool namespace_complex_pattern(const char *pattern, const char *value) {
292 + +/* XXX TODO: for test-* */
293 + +_public_ bool namespace_complex_pattern(const char *pattern, const char *value) {
294 + return complex_pattern_check('.', pattern, value);
297 + -bool path_complex_pattern(const char *pattern, const char *value) {
298 + +/* XXX TODO: for test-* */
299 + +_public_ bool path_complex_pattern(const char *pattern, const char *value) {
300 + return complex_pattern_check('/', pattern, value);
303 + @@ -207,11 +210,13 @@ static bool simple_pattern_check(char c, const char *a, const char *b) {
307 + -bool namespace_simple_pattern(const char *pattern, const char *value) {
308 + +/* XXX TODO: for test-* */
309 + +_public_ bool namespace_simple_pattern(const char *pattern, const char *value) {
310 + return simple_pattern_check('.', pattern, value);
313 + -bool path_simple_pattern(const char *pattern, const char *value) {
314 + +/* XXX TODO: for test-* */
315 + +_public_ bool path_simple_pattern(const char *pattern, const char *value) {
316 + return simple_pattern_check('/', pattern, value);
319 + diff --git a/src/libsystemd-bus/bus-match.c b/src/libsystemd-bus/bus-match.c
320 + index fed25c1..6907a5f 100644
321 + --- a/src/libsystemd-bus/bus-match.c
322 + +++ b/src/libsystemd-bus/bus-match.c
323 + @@ -196,7 +196,8 @@ static bool value_node_same(
327 + -int bus_match_run(
328 + +/* XXX TODO: for test-* */
329 + +_public_ int bus_match_run(
331 + struct bus_match_node *node,
333 + @@ -546,7 +547,8 @@ static int bus_match_find_leaf(
337 + -enum bus_match_node_type bus_match_node_type_from_string(const char *k, size_t n) {
338 + +/* XXX TODO: for test-* */
339 + +_public_ enum bus_match_node_type bus_match_node_type_from_string(const char *k, size_t n) {
342 + if (n == 4 && memcmp(k, "type", 4) == 0)
343 + @@ -788,7 +790,8 @@ fail:
347 + -int bus_match_add(
348 + +/* XXX TODO: for test-* */
349 + +_public_ int bus_match_add(
350 + struct bus_match_node *root,
352 + sd_bus_message_handler_t callback,
353 + @@ -829,7 +832,8 @@ finish:
357 + -int bus_match_remove(
358 + +/* XXX TODO: for test-* */
359 + +_public_ int bus_match_remove(
360 + struct bus_match_node *root,
362 + sd_bus_message_handler_t callback,
363 + @@ -884,7 +888,8 @@ finish:
367 + -void bus_match_free(struct bus_match_node *node) {
368 + +/* XXX TODO: for test-* */
369 + +_public_ void bus_match_free(struct bus_match_node *node) {
370 + struct bus_match_node *c;
373 + @@ -906,7 +911,8 @@ void bus_match_free(struct bus_match_node *node) {
374 + bus_match_node_free(node);
377 + -const char* bus_match_node_type_to_string(enum bus_match_node_type t, char buf[], size_t l) {
378 + +/* XXX TODO: for test-* */
379 + +_public_ const char* bus_match_node_type_to_string(enum bus_match_node_type t, char buf[], size_t l) {
382 + case BUS_MATCH_ROOT:
383 + @@ -956,7 +962,8 @@ const char* bus_match_node_type_to_string(enum bus_match_node_type t, char buf[]
387 + -void bus_match_dump(struct bus_match_node *node, unsigned level) {
388 + +/* XXX TODO: for test-* */
389 + +_public_ void bus_match_dump(struct bus_match_node *node, unsigned level) {
390 + struct bus_match_node *c;
391 + _cleanup_free_ char *pfx = NULL;
393 + diff --git a/src/libsystemd-bus/bus-message.c b/src/libsystemd-bus/bus-message.c
394 + index 2d051e8..0e33faf 100644
395 + --- a/src/libsystemd-bus/bus-message.c
396 + +++ b/src/libsystemd-bus/bus-message.c
397 + @@ -225,7 +225,8 @@ static int message_append_field_uint32(sd_bus_message *m, uint8_t h, uint32_t x)
401 + -int bus_message_from_malloc(
402 + +/* XXX TODO: for test-* */
403 + +_public_ int bus_message_from_malloc(
407 + @@ -337,7 +338,7 @@ static sd_bus_message *message_new(sd_bus *bus, uint8_t type) {
411 + -int sd_bus_message_new_signal(
412 + +_public_ int sd_bus_message_new_signal(
415 + const char *interface,
416 + @@ -382,7 +383,7 @@ fail:
420 + -int sd_bus_message_new_method_call(
421 + +_public_ int sd_bus_message_new_method_call(
423 + const char *destination,
425 + @@ -480,7 +481,7 @@ fail:
429 + -int sd_bus_message_new_method_return(
430 + +_public_ int sd_bus_message_new_method_return(
432 + sd_bus_message *call,
433 + sd_bus_message **m) {
434 + @@ -488,7 +489,7 @@ int sd_bus_message_new_method_return(
435 + return message_new_reply(bus, call, SD_BUS_MESSAGE_TYPE_METHOD_RETURN, m);
438 + -int sd_bus_message_new_method_error(
439 + +_public_ int sd_bus_message_new_method_error(
441 + sd_bus_message *call,
442 + const sd_bus_error *e,
443 + @@ -524,7 +525,7 @@ fail:
447 + -sd_bus_message* sd_bus_message_ref(sd_bus_message *m) {
448 + +_public_ sd_bus_message* sd_bus_message_ref(sd_bus_message *m) {
452 + @@ -534,7 +535,7 @@ sd_bus_message* sd_bus_message_ref(sd_bus_message *m) {
456 + -sd_bus_message* sd_bus_message_unref(sd_bus_message *m) {
457 + +_public_ sd_bus_message* sd_bus_message_unref(sd_bus_message *m) {
461 + @@ -547,7 +548,7 @@ sd_bus_message* sd_bus_message_unref(sd_bus_message *m) {
465 + -int sd_bus_message_get_type(sd_bus_message *m, uint8_t *type) {
466 + +_public_ int sd_bus_message_get_type(sd_bus_message *m, uint8_t *type) {
470 + @@ -557,7 +558,7 @@ int sd_bus_message_get_type(sd_bus_message *m, uint8_t *type) {
474 + -int sd_bus_message_get_serial(sd_bus_message *m, uint64_t *serial) {
475 + +_public_ int sd_bus_message_get_serial(sd_bus_message *m, uint64_t *serial) {
479 + @@ -569,7 +570,7 @@ int sd_bus_message_get_serial(sd_bus_message *m, uint64_t *serial) {
483 + -int sd_bus_message_get_reply_serial(sd_bus_message *m, uint64_t *serial) {
484 + +_public_ int sd_bus_message_get_reply_serial(sd_bus_message *m, uint64_t *serial) {
488 + @@ -581,48 +582,48 @@ int sd_bus_message_get_reply_serial(sd_bus_message *m, uint64_t *serial) {
492 + -int sd_bus_message_get_no_reply(sd_bus_message *m) {
493 + +_public_ int sd_bus_message_get_no_reply(sd_bus_message *m) {
497 + return m->header->type == SD_BUS_MESSAGE_TYPE_METHOD_CALL ? !!(m->header->flags & SD_BUS_MESSAGE_NO_REPLY_EXPECTED) : 0;
500 + -const char *sd_bus_message_get_path(sd_bus_message *m) {
501 + +_public_ const char *sd_bus_message_get_path(sd_bus_message *m) {
508 + -const char *sd_bus_message_get_interface(sd_bus_message *m) {
509 + +_public_ const char *sd_bus_message_get_interface(sd_bus_message *m) {
513 + return m->interface;
516 + -const char *sd_bus_message_get_member(sd_bus_message *m) {
517 + +_public_ const char *sd_bus_message_get_member(sd_bus_message *m) {
523 + -const char *sd_bus_message_get_destination(sd_bus_message *m) {
524 + +_public_ const char *sd_bus_message_get_destination(sd_bus_message *m) {
528 + return m->destination;
531 + -const char *sd_bus_message_get_sender(sd_bus_message *m) {
532 + +_public_ const char *sd_bus_message_get_sender(sd_bus_message *m) {
539 + -const sd_bus_error *sd_bus_message_get_error(sd_bus_message *m) {
540 + +_public_ const sd_bus_error *sd_bus_message_get_error(sd_bus_message *m) {
544 + @@ -632,7 +633,7 @@ const sd_bus_error *sd_bus_message_get_error(sd_bus_message *m) {
548 + -int sd_bus_message_get_uid(sd_bus_message *m, uid_t *uid) {
549 + +_public_ int sd_bus_message_get_uid(sd_bus_message *m, uid_t *uid) {
553 + @@ -642,7 +643,7 @@ int sd_bus_message_get_uid(sd_bus_message *m, uid_t *uid) {
557 + -int sd_bus_message_get_gid(sd_bus_message *m, gid_t *gid) {
558 + +_public_ int sd_bus_message_get_gid(sd_bus_message *m, gid_t *gid) {
562 + @@ -652,7 +653,7 @@ int sd_bus_message_get_gid(sd_bus_message *m, gid_t *gid) {
566 + -int sd_bus_message_get_pid(sd_bus_message *m, pid_t *pid) {
567 + +_public_ int sd_bus_message_get_pid(sd_bus_message *m, pid_t *pid) {
571 + @@ -662,7 +663,7 @@ int sd_bus_message_get_pid(sd_bus_message *m, pid_t *pid) {
575 + -int sd_bus_message_get_tid(sd_bus_message *m, pid_t *tid) {
576 + +_public_ int sd_bus_message_get_tid(sd_bus_message *m, pid_t *tid) {
580 + @@ -672,14 +673,14 @@ int sd_bus_message_get_tid(sd_bus_message *m, pid_t *tid) {
584 + -const char *sd_bus_message_get_label(sd_bus_message *m) {
585 + +_public_ const char *sd_bus_message_get_label(sd_bus_message *m) {
592 + -int sd_bus_message_is_signal(sd_bus_message *m, const char *interface, const char *member) {
593 + +_public_ int sd_bus_message_is_signal(sd_bus_message *m, const char *interface, const char *member) {
597 + @@ -695,7 +696,7 @@ int sd_bus_message_is_signal(sd_bus_message *m, const char *interface, const cha
601 + -int sd_bus_message_is_method_call(sd_bus_message *m, const char *interface, const char *member) {
602 + +_public_ int sd_bus_message_is_method_call(sd_bus_message *m, const char *interface, const char *member) {
606 + @@ -711,7 +712,7 @@ int sd_bus_message_is_method_call(sd_bus_message *m, const char *interface, cons
610 + -int sd_bus_message_is_method_error(sd_bus_message *m, const char *name) {
611 + +_public_ int sd_bus_message_is_method_error(sd_bus_message *m, const char *name) {
615 + @@ -724,7 +725,7 @@ int sd_bus_message_is_method_error(sd_bus_message *m, const char *name) {
619 + -int sd_bus_message_set_no_reply(sd_bus_message *m, int b) {
620 + +_public_ int sd_bus_message_set_no_reply(sd_bus_message *m, int b) {
624 + @@ -937,7 +938,7 @@ fail:
628 + -int sd_bus_message_append_basic(sd_bus_message *m, char type, const void *p) {
629 + +_public_ int sd_bus_message_append_basic(sd_bus_message *m, char type, const void *p) {
630 + return message_append_basic(m, type, p, NULL);
633 + @@ -1164,7 +1165,7 @@ static int bus_message_open_dict_entry(
637 + -int sd_bus_message_open_container(
638 + +_public_ int sd_bus_message_open_container(
641 + const char *contents) {
642 + @@ -1220,7 +1221,7 @@ int sd_bus_message_open_container(
646 + -int sd_bus_message_close_container(sd_bus_message *m) {
647 + +_public_ int sd_bus_message_close_container(sd_bus_message *m) {
648 + struct bus_container *c;
651 + @@ -1400,7 +1401,7 @@ int bus_message_append_ap(
655 + -int sd_bus_message_append(sd_bus_message *m, const char *types, ...) {
656 + +_public_ int sd_bus_message_append(sd_bus_message *m, const char *types, ...) {
660 + @@ -1514,7 +1515,7 @@ static bool validate_object_path(const char *s, size_t l) {
664 + -int sd_bus_message_read_basic(sd_bus_message *m, char type, void *p) {
665 + +_public_ int sd_bus_message_read_basic(sd_bus_message *m, char type, void *p) {
666 + struct bus_container *c;
669 + @@ -1843,7 +1844,7 @@ static int bus_message_enter_dict_entry(
673 + -int sd_bus_message_enter_container(sd_bus_message *m, char type, const char *contents) {
674 + +_public_ int sd_bus_message_enter_container(sd_bus_message *m, char type, const char *contents) {
675 + struct bus_container *c, *w;
676 + uint32_t *array_size = NULL;
678 + @@ -1916,7 +1917,7 @@ int sd_bus_message_enter_container(sd_bus_message *m, char type, const char *con
682 + -int sd_bus_message_exit_container(sd_bus_message *m) {
683 + +_public_ int sd_bus_message_exit_container(sd_bus_message *m) {
684 + struct bus_container *c;
687 + @@ -1945,7 +1946,7 @@ int sd_bus_message_exit_container(sd_bus_message *m) {
691 + -int sd_bus_message_peek_type(sd_bus_message *m, char *type, const char **contents) {
692 + +_public_ int sd_bus_message_peek_type(sd_bus_message *m, char *type, const char **contents) {
693 + struct bus_container *c;
696 + @@ -2067,7 +2068,7 @@ eof:
700 + -int sd_bus_message_rewind(sd_bus_message *m, int complete) {
701 + +_public_ int sd_bus_message_rewind(sd_bus_message *m, int complete) {
702 + struct bus_container *c;
705 + @@ -2224,7 +2225,7 @@ static int message_read_ap(sd_bus_message *m, const char *types, va_list ap) {
709 + -int sd_bus_message_read(sd_bus_message *m, const char *types, ...) {
710 + +_public_ int sd_bus_message_read(sd_bus_message *m, const char *types, ...) {
714 + @@ -2711,7 +2712,8 @@ static void setup_iovec(sd_bus_message *m) {
718 + -int bus_message_seal(sd_bus_message *m, uint64_t serial) {
719 + +/* XXX TODO: for test-* */
720 + +_public_ int bus_message_seal(sd_bus_message *m, uint64_t serial) {
724 + @@ -2743,7 +2745,7 @@ int bus_message_seal(sd_bus_message *m, uint64_t serial) {
728 + -int sd_bus_message_set_destination(sd_bus_message *m, const char *destination) {
729 + +_public_ int sd_bus_message_set_destination(sd_bus_message *m, const char *destination) {
733 + @@ -2756,7 +2758,8 @@ int sd_bus_message_set_destination(sd_bus_message *m, const char *destination) {
734 + return message_append_field_string(m, SD_BUS_MESSAGE_HEADER_DESTINATION, SD_BUS_TYPE_STRING, destination, &m->destination);
737 + -int bus_message_dump(sd_bus_message *m) {
738 + +/* XXX TODO: for test-* */
739 + +_public_ int bus_message_dump(sd_bus_message *m) {
740 + unsigned level = 1;
743 + @@ -2953,7 +2956,8 @@ int bus_message_dump(sd_bus_message *m) {
747 + -int bus_message_get_blob(sd_bus_message *m, void **buffer, size_t *sz) {
748 + +/* XXX TODO: for test-* */
749 + +_public_ int bus_message_get_blob(sd_bus_message *m, void **buffer, size_t *sz) {
753 + diff --git a/src/libsystemd-bus/bus-signature.c b/src/libsystemd-bus/bus-signature.c
754 + index a92b712..3755d08 100644
755 + --- a/src/libsystemd-bus/bus-signature.c
756 + +++ b/src/libsystemd-bus/bus-signature.c
757 + @@ -110,7 +110,8 @@ int signature_element_length(const char *s, size_t *l) {
758 + return signature_element_length_internal(s, true, 0, 0, l);
761 + -bool signature_is_single(const char *s) {
762 + +/* XXX TODO: for test-* */
763 + +_public_ bool signature_is_single(const char *s) {
767 + @@ -123,7 +124,8 @@ bool signature_is_single(const char *s) {
771 + -bool signature_is_pair(const char *s) {
772 + +/* XXX TODO: for test-* */
773 + +_public_ bool signature_is_pair(const char *s) {
776 + if (!bus_type_is_basic(*s))
777 + @@ -132,7 +134,8 @@ bool signature_is_pair(const char *s) {
778 + return signature_is_single(s + 1);
781 + -bool signature_is_valid(const char *s, bool allow_dict_entry) {
782 + +/* XXX TODO: for test-* */
783 + +_public_ bool signature_is_valid(const char *s, bool allow_dict_entry) {
787 + diff --git a/src/libsystemd-bus/libsystemd-bus.pc.in b/src/libsystemd-bus/libsystemd-bus.pc.in
788 + new file mode 100644
789 + index 0000000..6907a1d
791 + +++ b/src/libsystemd-bus/libsystemd-bus.pc.in
793 + +# This file is part of systemd.
795 + +# systemd is free software; you can redistribute it and/or modify it
796 + +# under the terms of the GNU Lesser General Public License as published by
797 + +# the Free Software Foundation; either version 2.1 of the License, or
798 + +# (at your option) any later version.
801 + +exec_prefix=@exec_prefix@
803 + +includedir=@includedir@
806 + +Description: systemd D-Bus client library
807 + +URL: @PACKAGE_URL@
808 + +Version: @PACKAGE_VERSION@
809 + +Requires: libsystemd-daemon = @PACKAGE_VERSION@
810 + +Libs: -L${libdir} -lsystemd-bus
811 + +Cflags: -I${includedir} -I${includedir}/systemd -I${includedir}/systemd/bus
812 + diff --git a/src/libsystemd-bus/libsystemd-bus.sym b/src/libsystemd-bus/libsystemd-bus.sym
813 + new file mode 100644
814 + index 0000000..02f63c0
816 + +++ b/src/libsystemd-bus/libsystemd-bus.sym
820 + + sd_bus_open_system;
821 + + sd_bus_open_user;
823 + + sd_bus_set_address;
826 + + sd_bus_set_bus_client;
827 + + sd_bus_set_server;
828 + + sd_bus_set_anonymous;
829 + + sd_bus_set_negotiate_fds;
830 + + sd_bus_negotiate_attach_comm;
831 + + sd_bus_negotiate_attach_exe;
832 + + sd_bus_negotiate_attach_cmdline;
833 + + sd_bus_negotiate_attach_cgroup;
834 + + sd_bus_negotiate_attach_caps;
835 + + sd_bus_negotiate_attach_selinux_context;
836 + + sd_bus_negotiate_attach_audit;
843 + + sd_bus_get_server_id;
845 + + sd_bus_send_with_reply;
846 + + sd_bus_send_with_reply_cancel;
847 + + sd_bus_send_with_reply_and_block;
849 + + sd_bus_get_events;
850 + + sd_bus_get_timeout;
854 + + sd_bus_add_filter;
855 + + sd_bus_remove_filter;
856 + + sd_bus_add_object;
857 + + sd_bus_remove_object;
858 + + sd_bus_add_fallback;
859 + + sd_bus_remove_fallback;
860 + + sd_bus_add_match;
861 + + sd_bus_remove_match;
862 + + sd_bus_message_new_signal;
863 + + sd_bus_message_new_method_call;
864 + + sd_bus_message_new_method_return;
865 + + sd_bus_message_new_method_error;
866 + + sd_bus_message_ref;
867 + + sd_bus_message_unref;
868 + + sd_bus_message_get_type;
869 + + sd_bus_message_get_serial;
870 + + sd_bus_message_get_reply_serial;
871 + + sd_bus_message_get_no_reply;
872 + + sd_bus_message_get_error;
873 + + sd_bus_message_get_uid;
874 + + sd_bus_message_get_gid;
875 + + sd_bus_message_get_pid;
876 + + sd_bus_message_get_tid;
877 + + sd_bus_message_get_pid_starttime;
878 + + sd_bus_message_get_selinux_context;
879 + + sd_bus_message_get_monotonic_timestamp;
880 + + sd_bus_message_get_realtime_timestamp;
881 + + sd_bus_message_get_comm;
882 + + sd_bus_message_get_tid_comm;
883 + + sd_bus_message_get_exe;
884 + + sd_bus_message_get_cgroup;
885 + + sd_bus_message_get_unit;
886 + + sd_bus_message_get_user_unit;
887 + + sd_bus_message_get_session;
888 + + sd_bus_message_get_owner_uid;
889 + + sd_bus_message_get_cmdline;
890 + + sd_bus_message_get_audit_sessionid;
891 + + sd_bus_message_get_audit_loginuid;
892 + + sd_bus_message_get_label;
893 + + sd_bus_message_has_effective_cap;
894 + + sd_bus_message_is_signal;
895 + + sd_bus_message_is_method_call;
896 + + sd_bus_message_is_method_error;
897 + + sd_bus_message_set_no_reply;
898 + + sd_bus_message_set_destination;
899 + + sd_bus_message_append;
900 + + sd_bus_message_append_basic;
901 + + sd_bus_message_append_array;
902 + + sd_bus_message_append_array_space;
903 + + sd_bus_message_append_array_memfd;
904 + + sd_bus_message_append_string_space;
905 + + sd_bus_message_append_string_memfd;
906 + + sd_bus_message_open_container;
907 + + sd_bus_message_close_container;
908 + + sd_bus_message_read;
909 + + sd_bus_message_read_basic;
910 + + sd_bus_message_read_array;
911 + + sd_bus_message_enter_container;
912 + + sd_bus_message_exit_container;
913 + + sd_bus_message_peek_type;
914 + + sd_bus_message_rewind;
915 + + sd_bus_emit_signal;
916 + + sd_bus_call_method;
917 + + sd_bus_reply_method_return;
918 + + sd_bus_reply_method_error;
919 + + sd_bus_get_unique_name;
920 + + sd_bus_request_name;
921 + + sd_bus_release_name;
922 + + sd_bus_list_names;
923 + + sd_bus_get_owner;
924 + + sd_bus_get_owner_uid;
925 + + sd_bus_get_owner_pid;
926 + + sd_bus_get_owner_machine_id;
927 + + sd_bus_error_free;
928 + + sd_bus_error_set;
929 + + sd_bus_error_set_const;
930 + + sd_bus_error_copy;
931 + + sd_bus_error_is_set;
932 + + sd_bus_error_has_name;
933 + + sd_bus_message_get_type;
934 + + sd_bus_message_get_serial;
935 + + sd_bus_message_get_reply_serial;
936 + + sd_bus_message_get_no_reply;
937 + + sd_bus_message_get_path;
938 + + sd_bus_message_get_interface;
939 + + sd_bus_message_get_member;
940 + + sd_bus_message_get_sender;
941 + + sd_bus_message_get_error;
942 + + sd_bus_message_get_uid;
947 + + sd_memfd_get_file;
950 + + sd_memfd_set_sealed;
951 + + sd_memfd_get_sealed;
952 + + sd_memfd_get_size;
953 + + sd_memfd_set_size;
954 + + sd_memfd_new_and_map;
955 + + bus_message_seal;
956 + + bus_message_dump;
957 + + bus_message_from_malloc;
958 + + bus_message_get_blob;
959 + + bus_message_to_errno;
960 + + bus_error_message;
965 + + bus_match_remove;
967 + + bus_match_parse_free;
968 + + bus_match_node_type_to_string;
969 + + bus_match_node_type_from_string;
970 + + bus_kernel_create;
971 + + service_name_is_valid;
972 + + signature_is_valid;
973 + + signature_is_pair;
974 + + signature_is_single;
975 + + namespace_complex_pattern;
976 + + namespace_simple_pattern;
977 + + path_complex_pattern;
981 + diff --git a/src/libsystemd-bus/sd-bus.c b/src/libsystemd-bus/sd-bus.c
982 + index 2f084c2..b53d8fb 100644
983 + --- a/src/libsystemd-bus/sd-bus.c
984 + +++ b/src/libsystemd-bus/sd-bus.c
985 + @@ -89,7 +89,7 @@ static void bus_free(sd_bus *b) {
989 + -int sd_bus_new(sd_bus **ret) {
990 + +_public_ int sd_bus_new(sd_bus **ret) {
994 + @@ -116,7 +116,7 @@ int sd_bus_new(sd_bus **ret) {
998 + -int sd_bus_set_address(sd_bus *bus, const char *address) {
999 + +_public_ int sd_bus_set_address(sd_bus *bus, const char *address) {
1003 + @@ -136,7 +136,7 @@ int sd_bus_set_address(sd_bus *bus, const char *address) {
1007 + -int sd_bus_set_fd(sd_bus *bus, int input_fd, int output_fd) {
1008 + +_public_ int sd_bus_set_fd(sd_bus *bus, int input_fd, int output_fd) {
1011 + if (bus->state != BUS_UNSET)
1012 + @@ -151,7 +151,7 @@ int sd_bus_set_fd(sd_bus *bus, int input_fd, int output_fd) {
1016 + -int sd_bus_set_exec(sd_bus *bus, const char *path, char *const argv[]) {
1017 + +_public_ int sd_bus_set_exec(sd_bus *bus, const char *path, char *const argv[]) {
1021 + @@ -182,7 +182,7 @@ int sd_bus_set_exec(sd_bus *bus, const char *path, char *const argv[]) {
1025 + -int sd_bus_set_bus_client(sd_bus *bus, int b) {
1026 + +_public_ int sd_bus_set_bus_client(sd_bus *bus, int b) {
1029 + if (bus->state != BUS_UNSET)
1030 + @@ -192,7 +192,7 @@ int sd_bus_set_bus_client(sd_bus *bus, int b) {
1034 + -int sd_bus_set_negotiate_fds(sd_bus *bus, int b) {
1035 + +_public_ int sd_bus_set_negotiate_fds(sd_bus *bus, int b) {
1038 + if (bus->state != BUS_UNSET)
1039 + @@ -202,7 +202,7 @@ int sd_bus_set_negotiate_fds(sd_bus *bus, int b) {
1043 + -int sd_bus_set_server(sd_bus *bus, int b, sd_id128_t server_id) {
1044 + +_public_ int sd_bus_set_server(sd_bus *bus, int b, sd_id128_t server_id) {
1047 + if (!b && !sd_id128_equal(server_id, SD_ID128_NULL))
1048 + @@ -215,7 +215,7 @@ int sd_bus_set_server(sd_bus *bus, int b, sd_id128_t server_id) {
1052 + -int sd_bus_set_anonymous(sd_bus *bus, int b) {
1053 + +_public_ int sd_bus_set_anonymous(sd_bus *bus, int b) {
1056 + if (bus->state != BUS_UNSET)
1057 + @@ -742,7 +742,7 @@ static int bus_start_fd(sd_bus *b) {
1058 + return bus_socket_take_fd(b);
1061 + -int sd_bus_start(sd_bus *bus) {
1062 + +_public_ int sd_bus_start(sd_bus *bus) {
1066 + @@ -768,7 +768,7 @@ int sd_bus_start(sd_bus *bus) {
1067 + return bus_send_hello(bus);
1070 + -int sd_bus_open_system(sd_bus **ret) {
1071 + +_public_ int sd_bus_open_system(sd_bus **ret) {
1075 + @@ -805,7 +805,7 @@ fail:
1079 + -int sd_bus_open_user(sd_bus **ret) {
1080 + +_public_ int sd_bus_open_user(sd_bus **ret) {
1084 + @@ -855,7 +855,7 @@ fail:
1088 + -void sd_bus_close(sd_bus *bus) {
1089 + +_public_ void sd_bus_close(sd_bus *bus) {
1093 + @@ -867,7 +867,7 @@ void sd_bus_close(sd_bus *bus) {
1094 + bus->input_fd = bus->output_fd = -1;
1097 + -sd_bus *sd_bus_ref(sd_bus *bus) {
1098 + +_public_ sd_bus *sd_bus_ref(sd_bus *bus) {
1102 + @@ -877,7 +877,7 @@ sd_bus *sd_bus_ref(sd_bus *bus) {
1106 + -sd_bus *sd_bus_unref(sd_bus *bus) {
1107 + +_public_ sd_bus *sd_bus_unref(sd_bus *bus) {
1111 + @@ -890,14 +890,14 @@ sd_bus *sd_bus_unref(sd_bus *bus) {
1115 + -int sd_bus_is_open(sd_bus *bus) {
1116 + +_public_ int sd_bus_is_open(sd_bus *bus) {
1120 + return bus->state != BUS_UNSET && bus->input_fd >= 0;
1123 + -int sd_bus_can_send(sd_bus *bus, char type) {
1124 + +_public_ int sd_bus_can_send(sd_bus *bus, char type) {
1128 + @@ -919,7 +919,7 @@ int sd_bus_can_send(sd_bus *bus, char type) {
1129 + return bus_type_is_valid(type);
1132 + -int sd_bus_get_server_id(sd_bus *bus, sd_id128_t *server_id) {
1133 + +_public_ int sd_bus_get_server_id(sd_bus *bus, sd_id128_t *server_id) {
1137 + @@ -1025,7 +1025,7 @@ static int dispatch_rqueue(sd_bus *bus, sd_bus_message **m) {
1141 + -int sd_bus_send(sd_bus *bus, sd_bus_message *m, uint64_t *serial) {
1142 + +_public_ int sd_bus_send(sd_bus *bus, sd_bus_message *m, uint64_t *serial) {
1146 + @@ -1126,7 +1126,7 @@ static int timeout_compare(const void *a, const void *b) {
1150 + -int sd_bus_send_with_reply(
1151 + +_public_ int sd_bus_send_with_reply(
1153 + sd_bus_message *m,
1154 + sd_bus_message_handler_t callback,
1155 + @@ -1199,7 +1199,7 @@ int sd_bus_send_with_reply(
1159 + -int sd_bus_send_with_reply_cancel(sd_bus *bus, uint64_t serial) {
1160 + +_public_ int sd_bus_send_with_reply_cancel(sd_bus *bus, uint64_t serial) {
1161 + struct reply_callback *c;
1164 + @@ -1246,7 +1246,7 @@ int bus_ensure_running(sd_bus *bus) {
1168 + -int sd_bus_send_with_reply_and_block(
1169 + +_public_ int sd_bus_send_with_reply_and_block(
1171 + sd_bus_message *m,
1173 + @@ -1372,7 +1372,7 @@ int sd_bus_send_with_reply_and_block(
1177 + -int sd_bus_get_fd(sd_bus *bus) {
1178 + +_public_ int sd_bus_get_fd(sd_bus *bus) {
1181 + if (bus->input_fd < 0)
1182 + @@ -1383,7 +1383,7 @@ int sd_bus_get_fd(sd_bus *bus) {
1183 + return bus->input_fd;
1186 + -int sd_bus_get_events(sd_bus *bus) {
1187 + +_public_ int sd_bus_get_events(sd_bus *bus) {
1191 + @@ -1412,7 +1412,7 @@ int sd_bus_get_events(sd_bus *bus) {
1195 + -int sd_bus_get_timeout(sd_bus *bus, uint64_t *timeout_usec) {
1196 + +_public_ int sd_bus_get_timeout(sd_bus *bus, uint64_t *timeout_usec) {
1197 + struct reply_callback *c;
1200 + @@ -1883,7 +1883,7 @@ null_message:
1204 + -int sd_bus_process(sd_bus *bus, sd_bus_message **ret) {
1205 + +_public_ int sd_bus_process(sd_bus *bus, sd_bus_message **ret) {
1208 + /* Returns 0 when we didn't do anything. This should cause the
1209 + @@ -1985,7 +1985,7 @@ static int bus_poll(sd_bus *bus, bool need_more, uint64_t timeout_usec) {
1210 + return r > 0 ? 1 : 0;
1213 + -int sd_bus_wait(sd_bus *bus, uint64_t timeout_usec) {
1214 + +_public_ int sd_bus_wait(sd_bus *bus, uint64_t timeout_usec) {
1218 + @@ -1999,7 +1999,7 @@ int sd_bus_wait(sd_bus *bus, uint64_t timeout_usec) {
1219 + return bus_poll(bus, false, timeout_usec);
1222 + -int sd_bus_flush(sd_bus *bus) {
1223 + +_public_ int sd_bus_flush(sd_bus *bus) {
1227 + @@ -2030,7 +2030,7 @@ int sd_bus_flush(sd_bus *bus) {
1231 + -int sd_bus_add_filter(sd_bus *bus, sd_bus_message_handler_t callback, void *userdata) {
1232 + +_public_ int sd_bus_add_filter(sd_bus *bus, sd_bus_message_handler_t callback, void *userdata) {
1233 + struct filter_callback *f;
1236 + @@ -2049,7 +2049,7 @@ int sd_bus_add_filter(sd_bus *bus, sd_bus_message_handler_t callback, void *user
1240 + -int sd_bus_remove_filter(sd_bus *bus, sd_bus_message_handler_t callback, void *userdata) {
1241 + +_public_ int sd_bus_remove_filter(sd_bus *bus, sd_bus_message_handler_t callback, void *userdata) {
1242 + struct filter_callback *f;
1245 + @@ -2147,23 +2147,23 @@ static int bus_remove_object(
1249 + -int sd_bus_add_object(sd_bus *bus, const char *path, sd_bus_message_handler_t callback, void *userdata) {
1250 + +_public_ int sd_bus_add_object(sd_bus *bus, const char *path, sd_bus_message_handler_t callback, void *userdata) {
1251 + return bus_add_object(bus, false, path, callback, userdata);
1254 + -int sd_bus_remove_object(sd_bus *bus, const char *path, sd_bus_message_handler_t callback, void *userdata) {
1255 + +_public_ int sd_bus_remove_object(sd_bus *bus, const char *path, sd_bus_message_handler_t callback, void *userdata) {
1256 + return bus_remove_object(bus, false, path, callback, userdata);
1259 + -int sd_bus_add_fallback(sd_bus *bus, const char *prefix, sd_bus_message_handler_t callback, void *userdata) {
1260 + +_public_ int sd_bus_add_fallback(sd_bus *bus, const char *prefix, sd_bus_message_handler_t callback, void *userdata) {
1261 + return bus_add_object(bus, true, prefix, callback, userdata);
1264 + -int sd_bus_remove_fallback(sd_bus *bus, const char *prefix, sd_bus_message_handler_t callback, void *userdata) {
1265 + +_public_ int sd_bus_remove_fallback(sd_bus *bus, const char *prefix, sd_bus_message_handler_t callback, void *userdata) {
1266 + return bus_remove_object(bus, true, prefix, callback, userdata);
1269 + -int sd_bus_add_match(sd_bus *bus, const char *match, sd_bus_message_handler_t callback, void *userdata) {
1270 + +_public_ int sd_bus_add_match(sd_bus *bus, const char *match, sd_bus_message_handler_t callback, void *userdata) {
1274 + @@ -2190,7 +2190,7 @@ int sd_bus_add_match(sd_bus *bus, const char *match, sd_bus_message_handler_t ca
1278 + -int sd_bus_remove_match(sd_bus *bus, const char *match, sd_bus_message_handler_t callback, void *userdata) {
1279 + +_public_ int sd_bus_remove_match(sd_bus *bus, const char *match, sd_bus_message_handler_t callback, void *userdata) {
1283 + @@ -2211,7 +2211,7 @@ int sd_bus_remove_match(sd_bus *bus, const char *match, sd_bus_message_handler_t
1287 + -int sd_bus_emit_signal(
1288 + +_public_ int sd_bus_emit_signal(
1291 + const char *interface,
1292 + @@ -2238,7 +2238,7 @@ int sd_bus_emit_signal(
1293 + return sd_bus_send(bus, m, NULL);
1296 + -int sd_bus_call_method(
1297 + +_public_ int sd_bus_call_method(
1299 + const char *destination,
1301 + @@ -2268,7 +2268,7 @@ int sd_bus_call_method(
1302 + return sd_bus_send_with_reply_and_block(bus, m, 0, error, reply);
1305 + -int sd_bus_reply_method_return(
1306 + +_public_ int sd_bus_reply_method_return(
1308 + sd_bus_message *call,
1309 + const char *types, ...) {
1310 + @@ -2302,7 +2302,7 @@ int sd_bus_reply_method_return(
1311 + return sd_bus_send(bus, m, NULL);
1314 + -int sd_bus_reply_method_error(
1315 + +_public_ int sd_bus_reply_method_error(
1317 + sd_bus_message *call,
1318 + const sd_bus_error *e) {
1322 *** /dev/null 2013-07-09 15:36:51.773521412 +0300
1323 --- SOURCES/0001-systemd-bus-export-additional-forgotten-symbols.patch 2013-08-16 14:17:03.251343617 +0300
1327 + From a102e7847a3f9358717a8d864a7285b123fdb171 Mon Sep 17 00:00:00 2001
1328 + From: Krisztian Litkey <kli@iki.fi>
1329 + Date: Fri, 16 Aug 2013 14:16:27 +0300
1330 + Subject: [PATCH 1/1] systemd-bus: export additional forgotten symbols.
1333 + src/libsystemd-bus/libsystemd-bus.sym | 1 +
1334 + 1 file changed, 1 insertion(+)
1336 + diff --git a/src/libsystemd-bus/libsystemd-bus.sym b/src/libsystemd-bus/libsystemd-bus.sym
1337 + index 15a8747..ee6bb53 100644
1338 + --- a/src/libsystemd-bus/libsystemd-bus.sym
1339 + +++ b/src/libsystemd-bus/libsystemd-bus.sym
1340 + @@ -116,6 +116,7 @@ global:
1341 + sd_bus_message_get_serial;
1342 + sd_bus_message_get_reply_serial;
1343 + sd_bus_message_get_no_reply;
1344 + + sd_bus_message_get_destination;
1345 + sd_bus_message_get_path;
1346 + sd_bus_message_get_interface;
1347 + sd_bus_message_get_member;