]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
dbus: hookup runtime property changes for mouns, services, sockets, swaps too
authorLennart Poettering <lennart@poettering.net>
Thu, 27 Jun 2013 21:21:21 +0000 (23:21 +0200)
committerLennart Poettering <lennart@poettering.net>
Thu, 27 Jun 2013 21:21:21 +0000 (23:21 +0200)
12 files changed:
src/core/dbus-mount.c
src/core/dbus-mount.h
src/core/dbus-service.c
src/core/dbus-service.h
src/core/dbus-socket.c
src/core/dbus-socket.h
src/core/dbus-swap.c
src/core/dbus-swap.h
src/core/mount.c
src/core/service.c
src/core/socket.c
src/core/swap.c

index 16b7afe8b7e46847d83b029b56190d8fbf990ae9..ae04ab8c47ac81538b475c4bc92ba16bd04d74d3 100644 (file)
@@ -168,3 +168,31 @@ DBusHandlerResult bus_mount_message_handler(Unit *u, DBusConnection *c, DBusMess
 
         return bus_default_message_handler(c, message, INTROSPECTION, INTERFACES_LIST, bps );
 }
+
+int bus_mount_set_property(
+                Unit *u,
+                const char *name,
+                DBusMessageIter *i,
+                UnitSetPropertiesMode mode,
+                DBusError *error) {
+
+        Mount *m = MOUNT(u);
+        int r;
+
+        assert(name);
+        assert(u);
+        assert(i);
+
+        r = bus_cgroup_set_property(u, &m->cgroup_context, name, i, mode, error);
+        if (r != 0)
+                return r;
+
+        return 0;
+}
+
+int bus_mount_commit_properties(Unit *u) {
+        assert(u);
+
+        unit_realize_cgroup(u);
+        return 0;
+}
index 8597394373ebc44bc70975d0e3538ed276549841..f4ec8b1625b78da7f62c289a38dc726bc915ba23 100644 (file)
@@ -27,5 +27,8 @@
 
 DBusHandlerResult bus_mount_message_handler(Unit *u, DBusConnection *c, DBusMessage *message);
 
+int bus_mount_set_property(Unit *u, const char *name, DBusMessageIter *i, UnitSetPropertiesMode mode, DBusError *error);
+int bus_mount_commit_properties(Unit *u);
+
 extern const char bus_mount_interface[];
 extern const char bus_mount_invalidating_properties[];
index bbac1b816742e7d5577d9c55fbb58d32e8f62b21..867ef7e54c3e6548dde9dfb789fadc84c3e48864 100644 (file)
@@ -161,3 +161,31 @@ DBusHandlerResult bus_service_message_handler(Unit *u, DBusConnection *connectio
 
         return bus_default_message_handler(connection, message, INTROSPECTION, INTERFACES_LIST, bps);
 }
+
+int bus_service_set_property(
+                Unit *u,
+                const char *name,
+                DBusMessageIter *i,
+                UnitSetPropertiesMode mode,
+                DBusError *error) {
+
+        Service *s = SERVICE(u);
+        int r;
+
+        assert(name);
+        assert(u);
+        assert(i);
+
+        r = bus_cgroup_set_property(u, &s->cgroup_context, name, i, mode, error);
+        if (r != 0)
+                return r;
+
+        return 0;
+}
+
+int bus_service_commit_properties(Unit *u) {
+        assert(u);
+
+        unit_realize_cgroup(u);
+        return 0;
+}
index 143aed7ae59aad850fe2cebaab102ff923fe4f1f..9b9f13701cafa72bb93ce8219d2a447572920edd 100644 (file)
@@ -27,5 +27,8 @@
 
 DBusHandlerResult bus_service_message_handler(Unit *u, DBusConnection *c, DBusMessage *message);
 
+int bus_service_set_property(Unit *u, const char *name, DBusMessageIter *i, UnitSetPropertiesMode mode, DBusError *error);
+int bus_service_commit_properties(Unit *u);
+
 extern const char bus_service_interface[];
 extern const char bus_service_invalidating_properties[];
index 7ec4f3392443b9e6840a802ab453625d6133f081..7ef55ec711cfaf41d36a4abe5848a825e748d82b 100644 (file)
@@ -213,3 +213,31 @@ DBusHandlerResult bus_socket_message_handler(Unit *u, DBusConnection *c, DBusMes
 
         return bus_default_message_handler(c, message, INTROSPECTION, INTERFACES_LIST, bps);
 }
+
+int bus_socket_set_property(
+                Unit *u,
+                const char *name,
+                DBusMessageIter *i,
+                UnitSetPropertiesMode mode,
+                DBusError *error) {
+
+        Socket *s = SOCKET(u);
+        int r;
+
+        assert(name);
+        assert(u);
+        assert(i);
+
+        r = bus_cgroup_set_property(u, &s->cgroup_context, name, i, mode, error);
+        if (r != 0)
+                return r;
+
+        return 0;
+}
+
+int bus_socket_commit_properties(Unit *u) {
+        assert(u);
+
+        unit_realize_cgroup(u);
+        return 0;
+}
index 5369b22e5e6cbe72b7d6fadd07051db71429b6df..eb035c1a9440de02e37ee123addbdabd4469e9c4 100644 (file)
@@ -27,5 +27,8 @@
 
 DBusHandlerResult bus_socket_message_handler(Unit *u, DBusConnection *c, DBusMessage *message);
 
+int bus_socket_set_property(Unit *u, const char *name, DBusMessageIter *i, UnitSetPropertiesMode mode, DBusError *error);
+int bus_socket_commit_properties(Unit *u);
+
 extern const char bus_socket_interface[];
 extern const char bus_socket_invalidating_properties[];
index 4ae1cd08e00c3415df2ea59f7984f4d387398d79..0248b4b391d3886b22df6451e2b1ce9f164879d3 100644 (file)
@@ -115,3 +115,31 @@ DBusHandlerResult bus_swap_message_handler(Unit *u, DBusConnection *c, DBusMessa
 
         return bus_default_message_handler(c, message, INTROSPECTION, INTERFACES_LIST, bps);
 }
+
+int bus_swap_set_property(
+                Unit *u,
+                const char *name,
+                DBusMessageIter *i,
+                UnitSetPropertiesMode mode,
+                DBusError *error) {
+
+        Swap *s = SWAP(u);
+        int r;
+
+        assert(name);
+        assert(u);
+        assert(i);
+
+        r = bus_cgroup_set_property(u, &s->cgroup_context, name, i, mode, error);
+        if (r != 0)
+                return r;
+
+        return 0;
+}
+
+int bus_swap_commit_properties(Unit *u) {
+        assert(u);
+
+        unit_realize_cgroup(u);
+        return 0;
+}
index 41fe4447ffdb195e9b402c55e54b31536d9c8ec9..9b586a1ad2436a1f305deba1f807fbd724beb355 100644 (file)
@@ -28,5 +28,8 @@
 
 DBusHandlerResult bus_swap_message_handler(Unit *u, DBusConnection *c, DBusMessage *message);
 
+int bus_swap_set_property(Unit *u, const char *name, DBusMessageIter *i, UnitSetPropertiesMode mode, DBusError *error);
+int bus_swap_commit_properties(Unit *u);
+
 extern const char bus_swap_interface[];
 extern const char bus_swap_invalidating_properties[];
index c71d51bfa409ba678304c94c2c7adf73d19c47be..c1af903b124cbe0bd58dcf32d8a5ce71a4dbd2eb 100644 (file)
@@ -1916,6 +1916,8 @@ const UnitVTable mount_vtable = {
         .bus_interface = "org.freedesktop.systemd1.Mount",
         .bus_message_handler = bus_mount_message_handler,
         .bus_invalidating_properties =  bus_mount_invalidating_properties,
+        .bus_set_property = bus_mount_set_property,
+        .bus_commit_properties = bus_mount_commit_properties,
 
         .enumerate = mount_enumerate,
         .shutdown = mount_shutdown,
index 5fdbdb13a343f42d180d9f9c093b2265f9b76eaa..1dcd5cf44300bbf59dd1e2563b0bee4fcc938b04 100644 (file)
@@ -3883,6 +3883,8 @@ const UnitVTable service_vtable = {
         .bus_interface = "org.freedesktop.systemd1.Service",
         .bus_message_handler = bus_service_message_handler,
         .bus_invalidating_properties =  bus_service_invalidating_properties,
+        .bus_set_property = bus_service_set_property,
+        .bus_commit_properties = bus_service_commit_properties,
 
 #ifdef HAVE_SYSV_COMPAT
         .enumerate = service_enumerate,
index c1bbaec4477402f9eae3a5d29571dd40387155f1..2def0c9eadad80dfeb21ba52321aafc155b1d253 100644 (file)
@@ -2396,6 +2396,8 @@ const UnitVTable socket_vtable = {
         .bus_interface = "org.freedesktop.systemd1.Socket",
         .bus_message_handler = bus_socket_message_handler,
         .bus_invalidating_properties =  bus_socket_invalidating_properties,
+        .bus_set_property = bus_socket_set_property,
+        .bus_commit_properties = bus_socket_commit_properties,
 
         .status_message_formats = {
                 /*.starting_stopping = {
index 0d4b4fa4f90dae63f7d3541dbc2a64ecb4bd20df..825503f3dea2909d010111930fb1daf1e8ffd425 100644 (file)
@@ -1363,6 +1363,8 @@ const UnitVTable swap_vtable = {
         .bus_interface = "org.freedesktop.systemd1.Swap",
         .bus_message_handler = bus_swap_message_handler,
         .bus_invalidating_properties =  bus_swap_invalidating_properties,
+        .bus_set_property = bus_swap_set_property,
+        .bus_commit_properties = bus_swap_commit_properties,
 
         .following = swap_following,
         .following_set = swap_following_set,