chiark / gitweb /
kdbus: make name acquirement ioctls valgrind clean
authorLennart Poettering <lennart@poettering.net>
Sun, 14 Apr 2013 01:19:51 +0000 (03:19 +0200)
committerLennart Poettering <lennart@poettering.net>
Sun, 14 Apr 2013 01:20:23 +0000 (03:20 +0200)
src/libsystemd-bus/bus-control.c

index 185f77c968d2873e67b1ed5612dc18c63cf2be20..5296029fd64e584aa09ae82f99b30b7fdbce9a00 100644 (file)
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 ***/
 
+#ifdef HAVE_VALGRIND_MEMCHECK_H
+#include <valgrind/memcheck.h>
+#endif
+
 #include <stddef.h>
 #include <errno.h>
 
@@ -68,6 +72,10 @@ int sd_bus_request_name(sd_bus *bus, const char *name, int flags) {
                 n->id = 0;
                 memcpy(n->name, name, l+1);
 
+#ifdef HAVE_VALGRIND_MEMCHECK_H
+                VALGRIND_MAKE_MEM_DEFINED(n, n->size);
+#endif
+
                 r = ioctl(bus->input_fd, KDBUS_CMD_NAME_ACQUIRE, n);
                 if (r < 0)
                         return -errno;
@@ -119,6 +127,9 @@ int sd_bus_release_name(sd_bus *bus, const char *name) {
                 n->id = 0;
                 memcpy(n->name, name, l+1);
 
+#ifdef HAVE_VALGRIND_MEMCHECK_H
+                VALGRIND_MAKE_MEM_DEFINED(n, n->size);
+#endif
                 r = ioctl(bus->input_fd, KDBUS_CMD_NAME_RELEASE, n);
                 if (r < 0)
                         return -errno;