}
int manager_add_user_by_name(Manager *m, const char *name, User **_user) {
- uid_t uid = 1000;
- gid_t gid = 1000;
+ uid_t uid;
+ gid_t gid;
int r;
assert(m);
*user = s->user;
#endif // 0
-
return 1;
}
assert(m);
assert(user);
- if (!m->kill_user_processes)
+ if (!m->kill_exclude_users && streq(user, "root"))
return false;
if (strv_contains(m->kill_exclude_users, user))
return false;
- if (strv_isempty(m->kill_only_users))
- return true;
+ if (!strv_isempty(m->kill_only_users))
+ return strv_contains(m->kill_only_users, user);
- return strv_contains(m->kill_only_users, user);
+ return m->kill_user_processes;
}
#if 0 /// UNNEEDED by elogind
m->bus,
"org.freedesktop.systemd1",
"/org/freedesktop/systemd1",
- "org.freedesktop.systemd1.Manager",
+ "org.freedesktop.systemd.Manager",
"StartUnit",
&error,
NULL,
continue;
/* Ignore internal displays: the type is encoded in
- * the sysfs name, as the second dash seperated item
+ * the sysfs name, as the second dash separated item
* (the first is the card name, the last the connector
* number). We implement a whitelist of external
* displays here, rather than a whitelist, to ensure