chiark / gitweb /
loginctl: avoid segfault for kill-session and kill-user commands
authorLennart Poettering <lennart@poettering.net>
Sun, 22 Apr 2012 00:03:08 +0000 (02:03 +0200)
committerLennart Poettering <lennart@poettering.net>
Sun, 22 Apr 2012 00:04:12 +0000 (02:04 +0200)
As reported by Mantas Mikulėnas.

http://lists.freedesktop.org/archives/systemd-devel/2012-April/004993.html

src/login/loginctl.c

index 3ec8057d3bdf3d5cbdc5f7d7ca873babfd5b492a..18f56f0124a795fbcc429b3488968050b6d66a3e 100644 (file)
@@ -1260,7 +1260,7 @@ static int kill_session(DBusConnection *bus, char **args, unsigned n) {
                 if (!dbus_message_append_args(m,
                                               DBUS_TYPE_STRING, &args[i],
                                               DBUS_TYPE_STRING, &arg_kill_who,
                 if (!dbus_message_append_args(m,
                                               DBUS_TYPE_STRING, &args[i],
                                               DBUS_TYPE_STRING, &arg_kill_who,
-                                              DBUS_TYPE_INT32, arg_signal,
+                                              DBUS_TYPE_INT32, &arg_signal,
                                               DBUS_TYPE_INVALID)) {
                         log_error("Could not append arguments to message.");
                         ret = -ENOMEM;
                                               DBUS_TYPE_INVALID)) {
                         log_error("Could not append arguments to message.");
                         ret = -ENOMEM;
@@ -1464,7 +1464,7 @@ static int kill_user(DBusConnection *bus, char **args, unsigned n) {
                 u = (uint32_t) uid;
                 if (!dbus_message_append_args(m,
                                               DBUS_TYPE_UINT32, &u,
                 u = (uint32_t) uid;
                 if (!dbus_message_append_args(m,
                                               DBUS_TYPE_UINT32, &u,
-                                              DBUS_TYPE_INT32, arg_signal,
+                                              DBUS_TYPE_INT32, &arg_signal,
                                               DBUS_TYPE_INVALID)) {
                         log_error("Could not append arguments to message.");
                         ret = -ENOMEM;
                                               DBUS_TYPE_INVALID)) {
                         log_error("Could not append arguments to message.");
                         ret = -ENOMEM;