summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-10-01Update TODODavid Herrmann
Remove "logind fbdev removal" as it is no longer supported.
2013-10-01logind: remove fbdev session-device supportDavid Herrmann
fbdev does not support access-handover so it is quite useless to route it through logind. If compositors want to use it they ought to open it themselves. It's highly recommended to be ignored entirely, though. fbdev is about to be deprecated in the kernel.
2013-10-01logind: run with CAP_SYS_ADMINDavid Herrmann
DRM Master access requires CAP_SYS_ADMIN, yay! Add it to the capability bounding set for systemd-logind. As CAP_SYS_ADMIN actually allows a huge set of actions, this mostly renders the restriction-set useless. Anyway, patches are already pending to reduce the restriction on the kernel side. But these won't really make it into any stable-release so for now we're stuck with CAP_SYS_ADMIN.
2013-10-01logind: send PropertyChanged during deactivationDavid Herrmann
We only send the PropertyChanged signal for the to-be-activated session but not for the to-be-deactivated one. Fix that so both listeners get notified about the new state.
2013-10-01logind: check whether first drmSetMaster succeededDavid Herrmann
The initial drmSetMaster may fail if there is an active master already. We must not assume that all existing clients comply to logind rules. We check for this during session-activation already but didn't during device setup. Fix this by checking the return code. As drmSetMaster has had horrible return codes in the past (0 for failure? EINVAL for denied access, ..) we need to be quite pedantic. To guarantee an open file-descriptor we need to close the device and reopen it without master if setting master failed first.
2013-10-01logind: fix session-device dbus notifyDavid Herrmann
Had this fix lying around here for some time. Thanks to missing type-checking for va-args we passed in the actual major/minor values instead of pointers to it. Fix it by saving the values on the stack first and passing in the pointers.
2013-10-01kernel-install: add compat with 'installkernel'Tom Gundersen
If 'kernel-install' is called as 'installkernel' it will be compatible with the syntax used by the kernel's build system. This means it can be called by doing 'make install' in a kernel build directory, if the correct symlink has been installed (which we don't do by default yet). [Edit harald@redhat.com: removed basename and use shift]
2013-10-01update TODOLennart Poettering
2013-10-01core: whenever a new PID is passed to us, make sure we watch itLennart Poettering
2013-10-01util.c: ignore pollfd.revent for loop_read/loop_writeChen Jie
Let read()/write() report any error/EOF.
2013-10-01units: Add SHELL environment variableEvan Callicoat
With the advent of systemd --user sessions, it's become very interesting to spawn X as a user unit, as well as accompanying processes that may have previously been in a .xinitrc/.xsession, or even just to replace a collection of XDG/GDM/KDM/etc session files with independent systemd --user units. The simplest case here would be to login on a tty, with the traditional /usr/sbin/login "login manager". However, systemd --user (spawned by user@.service) is at the top level of the slice for the user, and does not inherit any environment variables from the login process. Given the number of common applications which rely on SHELL being set in the environment, it seems like the cleanest way to provide this variable is to set it to %s in the user@.service. Ideally in the long-term, applications which rely on SHELL being set should be fixed to just grab it from getpwnam() or similar, but until that becomes more common, I propose this simple change to make user sessions a little bit nicer out of the box.
2013-10-01build-sys: don't fallback to upstart defaultsLennart Poettering
2013-10-01systemctl: remove legacy upstart compatibilityCristian Rodríguez
2013-10-01smack-setup: fix path to Smack/CIPSO mappingsPatrick McCarty
The correct path to the dir with CIPSO mappings is /etc/smack/cipso.d/; /etc/smack/cipso is a file that can include these mappings as well, though it is no longer supported in upstream libsmack.
2013-10-01Revert "build-sys: link libsystemd-login with libsystemd-label.la"Kay Sievers
Systemd-logind does not pull in cg_create(), if we unconditionally link this, all users of systemd-logind qill need the label stuff and therefore link against selinux. It is probably a build-system issue, or something that need to be sorted out in a differnt way than linking not needed libs. This reverts commit ceadabb102b05b237bfab11e1f742975ee4daeb1.
2013-10-01Update TODOLennart Poettering
2013-10-01hashmap: size hashmap bucket array dynamicallyLennart Poettering
Instead of fixing the hashmap bucket array to 127 entries dynamically size it, starting with a smaller one of 31. As soon as a fill level of 75% is reached, quadruple the size, and so on. This should siginficantly optimize the lookup time in large tables (from O(n) back to O(1)), and save memory on smaller tables (which most are).
2013-10-01local: fix memory leak when putting together locale settingsLennart Poettering
Also, we need to use proper strv_env_xyz() calls when putting together the environment array, since otherwise settings won't be properly overriden. And let's get rid of strv_appendf(), is overkill and there was only one user.
2013-10-01main: don't free fds array twiceLennart Poettering
2013-10-01logs-show.c: show all messages for a sliceZbigniew Jędrzejewski-Szmek
2013-10-01build-sys: link libsystemd-login with libsystemd-label.laMichał Górny
libsystemd-login.la uses cg_create() that currently seems to be a part of libsystemd-label.la. However, it doesn't link against that library and it seems that none of the (unconditional) libraries it uses do. In the end, people end up getting «undefined reference to `cg_create'» when trying to build e.g. dbus.
2013-09-30man: mention the systemd homepage from systemd(1)Lennart Poettering
2013-09-30update TODOLennart Poettering
2013-09-30man: link cgroups api docs from relevant man pagesLennart Poettering
2013-09-29set IgnoreOnIsolate=true for systemd-cryptsetup@.serviceAndrey Borzenkov
When crypttab contains noauto, cryptsetup service does not have any explicit dependencies. If service is started later manually (directly or via mount dependency) it will be stopped on isolate. mount units already have IgnoreOnIsolate set by default. Set it by default for cryptsetup units as well.
2013-09-29Fix buffer overrun when enumerating filesZbigniew Jędrzejewski-Szmek
https://bugs.freedesktop.org/show_bug.cgi?id=69887 Based-on-a-patch-by: Hans Petter Jansson <hpj@copyleft.no>
2013-09-28kmod-static-nodes: condition execution on modules.devnameDave Reisner
2013-09-27Add a bit more explicit message, to help confused usersMichael Scherer
Seeing http://www.happyassassin.net/2013/09/27/further-sysadmin-adventures-wheres-my-freeipa-badge/ it seems that the default message is a bit confusing for people who never encountered it before, so adding a link to the manpage could help them.
2013-09-27kernel-install: avoid using 'cp --preserve'Tom Gundersen
Force 0644 and root:root instead, to avoid problems with fat filesystems.
2013-09-27build-sys: restore detection of sphinxZbigniew Jędrzejewski-Szmek
2013-09-27Do not use unitialized variable and remove duplicated lineZbigniew Jędrzejewski-Szmek
2013-09-27Update TODOLennart Poettering
2013-09-27swap: properly expose timeout property on the busLennart Poettering
2013-09-27dbus: fix introspection for TimerSlackNSecLennart Poettering
2013-09-27systemctl: make sure set-property mangles unit namesLennart Poettering
2013-09-27man: drop references to "cgroup" wher appropriateLennart Poettering
Since cgroups are mostly now an implementation detail of systemd lets deemphasize it a bit in the man pages. This renames systemd.cgroup(5) to systemd.resource-control(5) and uses the term "resource control" rather than "cgroup" where appropriate. This leaves the word "cgroup" in at a couple of places though, like for example systemd-cgtop and systemd-cgls where cgroup stuff is at the core of what is happening.
2013-09-26core: drop some out-of-date references to cgroup settingsLennart Poettering
2013-09-26logind: never consider a closing session relevant for PK checksLennart Poettering
https://bugzilla.redhat.com/show_bug.cgi?id=1010215
2013-09-26main: set umask before creating any filesMike Gilbert
This avoids a problem when we inherit a non-zero umask from the initramfs. This would cause /run/systemd to be created with the wrong mode.
2013-09-26logind: if a user is sitting in front of the computer and can shutdown the ↵Lennart Poettering
machine anyway he should also be able to reboot it
2013-09-26core: rework how we match mount units against each otherLennart Poettering
Previously to automatically create dependencies between mount units we matched every mount unit agains all others resulting in O(n^2) complexity. On setups with large amounts of mount units this might make things slow. This change replaces the matching code to use a hashtable that is keyed by a path prefix, and points to a set of units that require that path to be around. When a new mount unit is installed it is hence sufficient to simply look up this set of units via its own file system paths to know which units to order after itself. This patch also changes all unit types to only create automatic mount dependencies via the RequiresMountsFor= logic, and this is exposed to the outside to make things more transparent. With this change we still have some O(n) complexities in place when handling mounts, but that's currently unavoidable due to kernel APIs, and still substantially better than O(n^2) as before. https://bugs.freedesktop.org/show_bug.cgi?id=69740
2013-09-26unit-name: when escaping a path consider the empty path identical to the ↵Lennart Poettering
root dir
2013-09-26util: properly handle the root dir in PATH_FOREACH_PREFIXLennart Poettering
Also add PATH_FOREACH_PREFIX_MORE which includes the specified dir itself in the iteration
2013-09-26cgroup: when referencing cgroup controller trees allow omission of the pathLennart Poettering
2013-09-26Move part of logind.c into a separate fileZbigniew Jędrzejewski-Szmek
liblogind-core.la was underlinked, missing a few functions defined in logind.c. They are moved to a new file, logind-core.c, and this file is linked into liblogind-core.la. In addition, logind-acl.c is attached to the liblogind-core.la, instead of systemd-logind directly.
2013-09-26Move functions around to fix underlinking in test-machine-tablesZbigniew Jędrzejewski-Szmek
2013-09-26build-sys: add ./configure --enable-address-sanitizerZbigniew Jędrzejewski-Szmek
Enabling address sanitizer seems like a useful thing, but is quite tricky. Proper flags have to be passed to CPPFLAGS, CFLAGS and LDFLAGS, but passing them on the commandline doesn't work because we tests are done with ld directly, and not with libtool like in real linking. We might want to fix this, but let's add a handy way to enable address checking anyway.
2013-09-26journald: accept EPOLLERR from /dev/kmsgZbigniew Jędrzejewski-Szmek
Also print out unexpected epoll events explictly.
2013-09-26test-hashmap: fix access to uninitialized memoryZbigniew Jędrzejewski-Szmek
2013-09-26execute.c: little modernizationZbigniew Jędrzejewski-Szmek