platform/upstream/systemd.git
9 years agounit: use weaker dependencies between mount and device units in --user mode
Lennart Poettering [Wed, 25 Feb 2015 21:05:14 +0000 (22:05 +0100)]
unit: use weaker dependencies between mount and device units in --user mode

When running in user mode unmounting of mount units when a device
vanishes is unlikely to work, and even if it would work is already done
by PID 1 anyway. HEnce, when creating implicit dependencies between
mount units and their backing devices, created a Wants= type dependency
in --user mode, but leave a BindsTo= dependency in --system mode.

9 years agonspawn: make kill signal to use for PID 1 configurable
Lennart Poettering [Wed, 25 Feb 2015 21:04:48 +0000 (22:04 +0100)]
nspawn: make kill signal to use for PID 1 configurable

9 years agomachined,machinectl: add calls for changing container/VM quotas
Lennart Poettering [Tue, 24 Feb 2015 22:50:37 +0000 (23:50 +0100)]
machined,machinectl: add calls for changing container/VM quotas

9 years agojournal: make skipping of exhausted journal files effective again
Michal Schmidt [Tue, 24 Feb 2015 18:45:17 +0000 (19:45 +0100)]
journal: make skipping of exhausted journal files effective again

Commit 668c965af "journal: skipping of exhausted journal files is bad if
direction changed" fixed a correctness issue, but it also significantly
limited the cases where the optimization that skips exhausted journal
files could apply.
As a result, some journalctl queries are much slower in v219 than in v218.
(e.g. queries where a "--since" cutoff should have quickly eliminated
older journal files from consideration, but didn't.)

If already in the initial iteration find_location_with_matches() finds
no entry, the journal file's location is not updated. This is fine,
except that:
 - We must update at least f->last_direction. The optimization relies on
   it. Let's separate that from journal_file_save_location() and update
   it immediately after the direction checks.
 - The optimization was conditional on "f->current_offset > 0", but it
   would always be 0 in this scenario. This check is unnecessary for the
   optimization.

9 years agohwdb: Update database of Bluetooth company identifiers
Marcel Holtmann [Wed, 25 Feb 2015 06:27:49 +0000 (07:27 +0100)]
hwdb: Update database of Bluetooth company identifiers

9 years agopo: update Polish translation
Piotr Drąg [Thu, 19 Feb 2015 15:18:10 +0000 (16:18 +0100)]
po: update Polish translation

https://bugs.freedesktop.org/show_bug.cgi?id=89230

9 years agopo: update Italian translation
Daniele Medri [Thu, 19 Feb 2015 16:03:51 +0000 (17:03 +0100)]
po: update Italian translation

9 years agopo: simplify one sentence
Zbigniew Jędrzejewski-Szmek [Wed, 25 Feb 2015 04:55:35 +0000 (23:55 -0500)]
po: simplify one sentence

9 years agopo: fix typo in French translation
Zbigniew Jędrzejewski-Szmek [Wed, 25 Feb 2015 04:53:59 +0000 (23:53 -0500)]
po: fix typo in French translation

Was already fixed elsewhere in 6be9b3606872037d1d48a81fbe045af8b64cea85.

9 years agosystemd: add getrandom syscall numbers for MIPS
Aaro Koskinen [Mon, 23 Feb 2015 14:01:31 +0000 (16:01 +0200)]
systemd: add getrandom syscall numbers for MIPS

Add getrandom syscall numbers for MIPS. Based on Linux 3.17 kernel
(commit 42944521af97a3b25516f15f3149aec3779656dc, "MIPS: Wire up new
syscalls getrandom and memfd_create").

9 years agobootchart: svg: fix checking of list end
Aaro Koskinen [Tue, 24 Feb 2015 16:32:31 +0000 (18:32 +0200)]
bootchart: svg: fix checking of list end

If we have less samples than expected, systemd-bootchart will crash.

9 years agobuild-sys: fail if gnuefi files are not found
Zbigniew Jędrzejewski-Szmek [Tue, 24 Feb 2015 22:35:49 +0000 (17:35 -0500)]
build-sys: fail if gnuefi files are not found

The build would fail later anyway, so it is better to bail
out early.

Also check for the second bios file only if the first one was not
found. I'm not sure which one is preferred. If the other one, the
order should be flipped.

9 years agobootctl: fix mem leaks
Thomas Hindoe Paaboel Andersen [Tue, 24 Feb 2015 22:57:47 +0000 (23:57 +0100)]
bootctl: fix mem leaks

CID#1271347/1271348

9 years agomachined: fix check if host directory could be opened
Thomas Hindoe Paaboel Andersen [Tue, 24 Feb 2015 19:47:53 +0000 (20:47 +0100)]
machined: fix check if host directory could be opened

CID#1271351

9 years agoacl-util: avoid freeing uninitialized pointer
Thomas Hindoe Paaboel Andersen [Tue, 24 Feb 2015 19:40:07 +0000 (20:40 +0100)]
acl-util: avoid freeing uninitialized pointer

CID#1271344/1271345

9 years agounits: add missing unit file
Lennart Poettering [Tue, 24 Feb 2015 17:46:33 +0000 (18:46 +0100)]
units: add missing unit file

9 years agoimportd: enable btrfs quota in /var/lib/machines, if necessary
Lennart Poettering [Tue, 24 Feb 2015 17:43:37 +0000 (18:43 +0100)]
importd: enable btrfs quota in /var/lib/machines, if necessary

9 years agomachined/machinectl: when "machinectl image-status" is used without arguments show...
Lennart Poettering [Tue, 24 Feb 2015 17:23:40 +0000 (18:23 +0100)]
machined/machinectl: when "machinectl image-status" is used without arguments show statistics about pool

9 years agoshared: fix wrong assertion in barrier_set_role()
Cristian Rodríguez [Fri, 20 Feb 2015 18:14:56 +0000 (15:14 -0300)]
shared: fix wrong assertion in barrier_set_role()

 assert(b->pipe[0] >= 0 && b->pipe[0] >= 0);

Test the same condition twice, pretty sure we mean

 assert(b->pipe[0] >= 0 && b->pipe[1] >= 0);

9 years agobuild: make sure to test for -Wflag instead of -Wno-flag
David Herrmann [Tue, 24 Feb 2015 16:49:48 +0000 (17:49 +0100)]
build: make sure to test for -Wflag instead of -Wno-flag

gcc does not support testing for negated warnings. See here for details:
    https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63499

This patch changes CC_CHECK_FLAG_APPEND to always test for the non-negated
warnings.

9 years agomachined: actually open up methods to unprivileged clients on dbus1
Lennart Poettering [Tue, 24 Feb 2015 16:26:40 +0000 (17:26 +0100)]
machined: actually open up methods to unprivileged clients on dbus1

Many of machined's operations are now opened up to unprivileged clients
via PolicyKit. Open up the dbus policy so that we can actually make
these calls.

kdbus doesn't reuqire this, hence this wasn't noticed before.

9 years agoimportd: create a loopback btrfs file system for /var/lib/machines, if necessary
Lennart Poettering [Tue, 24 Feb 2015 16:23:53 +0000 (17:23 +0100)]
importd: create a loopback btrfs file system for /var/lib/machines, if necessary

When manipulating container and VM images we need efficient and atomic
directory snapshots and file copies, as well as disk quota. btrfs
provides this, legacy file systems do not. Hence, implicitly create a
loopback file system in /var/lib/machines.raw and mount it to
/var/lib/machines, if that directory is not on btrfs anyway.

This is done implicitly and transparently the first time the user
invokes "machinectl import-xyz".

This allows us to take benefit of btrfs features for container
management without actually having the rest of the system use btrfs.

The loopback is sized 500M initially. Patches to grow it dynamically are
to follow.

9 years agoid128: add new sd_id128_is_null() call
Lennart Poettering [Mon, 23 Feb 2015 23:10:35 +0000 (00:10 +0100)]
id128: add new sd_id128_is_null() call

9 years agoimport: print nice warning if we need btrfs but /var/lib/machines is not btrfs
Lennart Poettering [Thu, 19 Feb 2015 15:19:15 +0000 (16:19 +0100)]
import: print nice warning if we need btrfs but /var/lib/machines is not btrfs

9 years agotest-hashmap: fix gcc5 warning
Daniel Mack [Tue, 24 Feb 2015 15:24:14 +0000 (16:24 +0100)]
test-hashmap: fix gcc5 warning

gcc5 spits out a warning about test-hashmap.c:

  CC       src/test/test-hashmap.o
src/test/test-hashmap.c: In function ‘test_string_compare_func’:
src/test/test-hashmap.c:76:79: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]

9 years agoshared/unit-name: fix gcc5 warning
Daniel Mack [Tue, 24 Feb 2015 15:18:43 +0000 (16:18 +0100)]
shared/unit-name: fix gcc5 warning

Fix the following gcc5 warning:

  CC       src/shared/libsystemd_shared_la-unit-name.lo
src/shared/unit-name.c: In function 'unit_name_is_valid':
src/shared/unit-name.c:102:34: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]
                 if (!template_ok == TEMPLATE_VALID && at+1 == e)
                                  ^

9 years agosystemctl: bump NOFILE only for systemctl_main
Zbigniew Jędrzejewski-Szmek [Tue, 24 Feb 2015 15:10:04 +0000 (10:10 -0500)]
systemctl: bump NOFILE only for systemctl_main

It is not necessary when running as telinit, etc.

https://bugzilla.redhat.com/show_bug.cgi?id=1184712

9 years agobuild: add -Wno-format-signedness
David Herrmann [Tue, 24 Feb 2015 14:59:06 +0000 (15:59 +0100)]
build: add -Wno-format-signedness

gcc5 introduced this option (gcc4 silently ignores it, which is fine).
Given that gcc5 thinks 'unsigned char'/'unsigned short' is promoted to
'int' for var-args, stuff like this spits out warnings:
    uint8_t x;
    printf("%" PRIu8", x);

gcc5 promots 'x' to 'int', instead of 'unsigned int' and thus gets a
signedness-warnings as it expects an 'unsigned int'.

glibc states otherwise: unsigneds are always promoted to 'unsigned int'.
Until gcc and glibc figure this out, lets just ignore that warning (which
is totally useless in its current form).

9 years agobootchart: fix default init path
Martin Pitt [Tue, 24 Feb 2015 13:30:10 +0000 (14:30 +0100)]
bootchart: fix default init path

Commit 6e1bf7ab99 used the wrong directory; we need rootlibexecdir, not
rootlibdir, as the latter is something like /lib/x86_64-linux-gnu/ on
multi-arch systems.

https://launchpad.net/bugs/1423867

9 years agosd-bus: test-bus-kernel-benchmark: don't rely on fixed unique names
Daniel Mack [Tue, 24 Feb 2015 13:01:36 +0000 (14:01 +0100)]
sd-bus: test-bus-kernel-benchmark: don't rely on fixed unique names

The kernel part of kdbus does not allow userspace to make any assumption on
which unique address the first user on the bus will get.

Instead, use sd_bus_get_unique_name() to get the server's address.

9 years agotest-time: test "infinity" parsing in nanoseconds
Daniel Mack [Tue, 24 Feb 2015 12:27:10 +0000 (13:27 +0100)]
test-time: test "infinity" parsing in nanoseconds

9 years agoshared/time-util: fix gcc5 warning
Daniel Mack [Tue, 24 Feb 2015 12:26:09 +0000 (13:26 +0100)]
shared/time-util: fix gcc5 warning

  CC       src/shared/libsystemd_shared_la-time-util.lo
src/shared/time-util.c: In function 'parse_nsec':
src/shared/time-util.c:789:25: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]
                 if (!*s != 0)
                         ^

9 years agosd-bus: sync kdbus.h
Daniel Mack [Tue, 24 Feb 2015 11:10:13 +0000 (12:10 +0100)]
sd-bus: sync kdbus.h

Follow two small changes in the kdbus API:

 * Flags are now returned in cmd->return_flags by KDBUS_CMD_NAME_ACQUIRE

 * struct kdbus_item_list has been dropped. The information stored in
   this struct was redundant since awhile already, as all commands
   report their returned slice size anyway.

9 years agosystemctl: support auditd.service better
Zbigniew Jędrzejewski-Szmek [Sat, 7 Feb 2015 16:35:37 +0000 (11:35 -0500)]
systemctl: support auditd.service better

We would print the filename header before trying to open the file. But since
the header was printed to stdout, and the error to stderr, the error would appear
on the terminal before the header. It is cleaner to open the file first, then
and only then print the header.

Also exit on first error. We shouldn't report success if we were unable to open
a file.

9 years agosystemctl: check validity of PID we received
Zbigniew Jędrzejewski-Szmek [Sat, 7 Feb 2015 16:16:04 +0000 (11:16 -0500)]
systemctl: check validity of PID we received

9 years agoresolved: use == for comparing unsigned against zero
Zbigniew Jędrzejewski-Szmek [Fri, 6 Feb 2015 16:30:19 +0000 (11:30 -0500)]
resolved: use == for comparing unsigned against zero

9 years agotmpfiles: avoid creating duplicate acl entries
Zbigniew Jędrzejewski-Szmek [Tue, 24 Feb 2015 04:19:54 +0000 (23:19 -0500)]
tmpfiles: avoid creating duplicate acl entries

https://bugs.freedesktop.org/show_bug.cgi?id=89202
https://bugs.debian.org/778656

Status quo ante can be restored with:
  getfacl -p /var/log/journal/`cat /etc/machine-id`|grep -v '^#'|sort -u|sudo setfacl --set-file=- /var/log/journal/`cat /etc/machine-id`

9 years agolibsystemd: revert one hunk of duplicate ifdef removal
Zbigniew Jędrzejewski-Szmek [Tue, 24 Feb 2015 01:03:55 +0000 (20:03 -0500)]
libsystemd: revert one hunk of duplicate ifdef removal

This change exposed a bug in kernel headers:

/usr/include/linux/if_bridge.h:184:20: error: field 'ip6' has incomplete type
    struct in6_addr ip6;
                    ^
/usr/include/linux/if_tunnel.h:76:19: error: field 'prefix' has incomplete type
  struct in6_addr  prefix;
                   ^

9 years agoman: explain time units in tmpfiles
Zbigniew Jędrzejewski-Szmek [Mon, 23 Feb 2015 23:59:17 +0000 (18:59 -0500)]
man: explain time units in tmpfiles

https://bugzilla.redhat.com/show_bug.cgi?id=1195294

9 years agosd-bus, shared: fix includes
Daniel Mack [Mon, 23 Feb 2015 23:42:13 +0000 (00:42 +0100)]
sd-bus, shared: fix includes

Include <sys/socket.h> from util.h and bus-message.h in order to
build errors like the ones below on kdbus enabled systems.

./src/shared/util.h:976:32: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from src/libsystemd/sd-bus/bus-kernel.c:37:0:
./src/shared/util.h:1081:28: warning: 'struct msghdr' declared inside parameter list
 void cmsg_close_all(struct msghdr *mh);
                            ^
  CC       src/libsystemd/sd-bus/libsystemd_la-bus-creds.lo
In file included from src/libsystemd/sd-bus/bus-creds.c:25:0:
./src/shared/util.h:976:32: warning: 'struct ucred' declared inside parameter list
 int getpeercred(int fd, struct ucred *ucred);
                                ^

9 years agoremove unused includes
Thomas Hindoe Paaboel Andersen [Sat, 14 Feb 2015 08:44:31 +0000 (09:44 +0100)]
remove unused includes

This patch removes includes that are not used. The removals were found with
include-what-you-use which checks if any of the symbols from a header is
in use.

9 years agonspawn: fix whitespace and typo in partition table blurb
Jan Synacek [Mon, 23 Feb 2015 14:22:40 +0000 (15:22 +0100)]
nspawn: fix whitespace and typo in partition table blurb

9 years agopo: update French translation
Sylvain Plantefève [Thu, 19 Feb 2015 22:31:51 +0000 (23:31 +0100)]
po: update French translation

9 years agobuild-sys: bootctl depends on HAVE_BLKID
Marcel Holtmann [Sun, 22 Feb 2015 09:28:34 +0000 (10:28 +0100)]
build-sys: bootctl depends on HAVE_BLKID

9 years agologind: fix a typo in a polkit description
Piotr Drąg [Thu, 19 Feb 2015 15:12:38 +0000 (16:12 +0100)]
logind: fix a typo in a polkit description

9 years agoREADME: add pkg-config to required deps for autogen
Peter Waller [Mon, 22 Dec 2014 12:33:19 +0000 (12:33 +0000)]
README: add pkg-config to required deps for autogen

Otherwise, several macros are undefined.

9 years agoman: make bootup graph consistent
Chris Morin [Wed, 4 Feb 2015 19:54:34 +0000 (14:54 -0500)]
man: make bootup graph consistent

9 years agobuild-sys: update gitignore
Kay Sievers [Fri, 20 Feb 2015 14:42:32 +0000 (15:42 +0100)]
build-sys: update gitignore

9 years agoshared: handle unnamed sockets in socket_address_equal()
Michal Schmidt [Fri, 20 Feb 2015 01:25:16 +0000 (02:25 +0100)]
shared: handle unnamed sockets in socket_address_equal()

Make sure we don't inspect sun_path of unnamed sockets.
Since we cannot know if two unnamed sockets' adresses refer to the same
socket, just return false.

9 years agoshared: avoid semi-duplicating socket_address_equal()
Michal Schmidt [Fri, 20 Feb 2015 01:13:03 +0000 (02:13 +0100)]
shared: avoid semi-duplicating socket_address_equal()

Just call socket_address_equal() from socket_address_matches_fd()
instead of implementing similar comparing of addresses.

9 years agoshared: use SocketAddress in socket_address_matches_fd()
Michal Schmidt [Fri, 20 Feb 2015 01:04:05 +0000 (02:04 +0100)]
shared: use SocketAddress in socket_address_matches_fd()

Cleanup. No behavior change.

9 years agocore, shared: in deserializing, match same files reached via different paths
Michal Schmidt [Thu, 19 Feb 2015 22:12:38 +0000 (23:12 +0100)]
core, shared: in deserializing, match same files reached via different paths

When dbus.socket is updated like this:
-ListenStream=/var/run/dbus/system_bus_socket
+ListenStream=/run/dbus/system_bus_socket
... and daemon-reload is performed, bad things happen.
During deserialization systemd does not recognize that the two paths
refer to the same named socket and replaces the socket file with a new
one. As a result, applications hang when they try talking to dbus.

Fix this by finding a match not only when the path names are equal, but
also when they point to the same inode.
In socket_address_equal() it is necessary to move the address size
comparison into the abstract sockets branch. For path name sockets the
comparison must not be done and for other families it is redundant
(their sizes are constant and checked by socket_address_verify()).

FIFOs and special files can also have multiple pathnames, so compare the
inodes for them as well. Note that previously the pathname checks used
streq_ptr(), but the paths cannot be NULL.

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1186018

9 years agobus: sync with kdbus.git (ABI break)
David Herrmann [Thu, 19 Feb 2015 19:02:40 +0000 (20:02 +0100)]
bus: sync with kdbus.git (ABI break)

This syncs up the new KDBUS_CMD_CONN_INFO behavior:
 - attach-flags are passed in .attach_flags, instead of directly merged
   with the command flags.

9 years agoman: add newlines to the pull-raw example in machinectl(1)
Benjamin Franzke [Thu, 19 Feb 2015 12:10:18 +0000 (13:10 +0100)]
man: add newlines to the pull-raw example in machinectl(1)

They were removed in commit 798d3a52 ("Reindent man pages to 2ch").

9 years agonspawn: chown basic device nodes to userns root
Lennart Poettering [Thu, 19 Feb 2015 11:03:39 +0000 (12:03 +0100)]
nspawn: chown basic device nodes to userns root

9 years agonspawn: fix build on non-selinux systems
Lennart Poettering [Thu, 19 Feb 2015 11:03:12 +0000 (12:03 +0100)]
nspawn: fix build on non-selinux systems

9 years agonspawn: add basic user namespacing support
Lennart Poettering [Thu, 19 Feb 2015 10:30:18 +0000 (11:30 +0100)]
nspawn: add basic user namespacing support

(This is incomplete, /proc and /sys are still owned by root from outside
the container, not inside)

9 years agosysv-generator: fix wrong "Overwriting existing symlink" warnings
Martin Pitt [Thu, 19 Feb 2015 10:06:24 +0000 (11:06 +0100)]
sysv-generator: fix wrong "Overwriting existing symlink" warnings

Fix result testing of is_symlink() to ignore negative results, which happen if
the file name does not exist at all. In this case we do not want a warning and
unlink the non-existing link.

https://bugs.debian.org/778700

9 years agosystemd-sysv-generator test: Adjust to dropped runlevelN.target mapping
Martin Pitt [Thu, 19 Feb 2015 08:09:57 +0000 (09:09 +0100)]
systemd-sysv-generator test: Adjust to dropped runlevelN.target mapping

Commit d5d8429a dropped the explicit runlevelN.target mapping. Adjust the tests
accordingly to explicitly state the expected targets instead of runlevels.

9 years agohwdb: fix ThinkPad X* Tablet special keys
Lubomir Rintel [Wed, 18 Feb 2015 20:02:01 +0000 (21:02 +0100)]
hwdb: fix ThinkPad X* Tablet special keys

ThinkPad tablet firmware has DMI product name and version reversed:

Handle 0x0001, DMI type 1, 27 bytes
System Information
        Manufacturer: LENOVO
        Product Name: 7762AS1
        Version: ThinkPad X61 Tablet
        Serial Number: LKZCDH2
        UUID: 6ADBC681-4FC9-11CB-844F-B47CB9210BE2
        Wake-up Type: Power Switch
        SKU Number: Not Specified
        Family: ThinkPad X61 Tablet

9 years agopo: update Russian translation
Sergey Ptashnick [Thu, 19 Feb 2015 00:32:42 +0000 (03:32 +0300)]
po: update Russian translation

Add strings for fsckd.

9 years agoupdate TODO
Lennart Poettering [Wed, 18 Feb 2015 22:35:51 +0000 (23:35 +0100)]
update TODO

9 years agonspawn: when connected to pipes for stdin/stdout, pass them as-is to PID 1
Lennart Poettering [Wed, 18 Feb 2015 22:32:55 +0000 (23:32 +0100)]
nspawn: when connected to pipes for stdin/stdout, pass them as-is to PID 1

Previously we always invoked the container PID 1 on /dev/console of the
container. With this change we do so only if nspawn was invoked
interactively (i.e. its stdin/stdout was connected to a TTY). In all other
cases we directly pass through the fds unmodified.

This has the benefit that nspawn can be added into shell pipelines.

https://bugs.freedesktop.org/show_bug.cgi?id=87732

9 years agosystemd-boot: fix alignment of version in table
Thomas Hindoe Paaboel Andersen [Wed, 18 Feb 2015 21:18:12 +0000 (22:18 +0100)]
systemd-boot: fix alignment of version in table

9 years agoeverywhere: remove configurability of sysv runlevel to target mapping
Lennart Poettering [Wed, 18 Feb 2015 19:17:49 +0000 (20:17 +0100)]
everywhere: remove configurability of sysv runlevel to target mapping

With this change runlevel 2, 3, 4 are mapped to multi-user.target for
good, and 5 to graphical.target. This was already the previous mapping
but is now no longer reconfigurable, but hard-coded into the core.

This should generally simplify things, but also fix one bug: the
sysv-generator previously generated symlinks to runlevel[2-5].target
units, which possibly weren't picked up if these aliases were otherwise
only referenced by the real names "multi-user.target" and
"graphical.target".

We keep compat aliases "runlevel[2345].target" arround for cases where
this target name is explicitly requested.

9 years agoupdate TODO
Lennart Poettering [Wed, 18 Feb 2015 18:39:54 +0000 (19:39 +0100)]
update TODO

9 years agorun: if we fail to set a property assignment then really fail
Lennart Poettering [Wed, 18 Feb 2015 18:39:40 +0000 (19:39 +0100)]
run: if we fail to set a property assignment then really fail

9 years agonspawn: add support for --property= to set scope properties
Lennart Poettering [Wed, 18 Feb 2015 18:38:55 +0000 (19:38 +0100)]
nspawn: add support for --property= to set scope properties

This is similar to systemd-run's --property= setting.

9 years agoshared: introduce cmsg_close_all() call
Lennart Poettering [Wed, 18 Feb 2015 18:20:47 +0000 (19:20 +0100)]
shared: introduce cmsg_close_all() call

The call iterates through cmsg list and closes all fds passed via
SCM_RIGHTS.

This patch also ensures the call is used wherever appropriate, where we
might get spurious fds sent and we should better close them, then leave
them lying around.

9 years agosystemctl: allow interactive authorization for all bus calls
Lennart Poettering [Wed, 18 Feb 2015 17:54:38 +0000 (18:54 +0100)]
systemctl: allow interactive authorization for all bus calls

Make use of the new sd_bus_set_allow_interactive_authorization() call to
globally enable interactive authorization. Also, turn on PK agent for
more calls.

This allows us to make use of the sd_bus_call_method() convencience
helper at more places.

9 years agosystemctl: let's make use of FOREACH_STRING() where we can
Lennart Poettering [Wed, 18 Feb 2015 17:27:32 +0000 (18:27 +0100)]
systemctl: let's make use of FOREACH_STRING() where we can

9 years agocore: rework policykit hookup
Lennart Poettering [Wed, 18 Feb 2015 16:40:57 +0000 (17:40 +0100)]
core: rework policykit hookup

- Always issue selinux access check as early as possible, and PK check
  as late as possible.

- Introduce a new policykit action for altering environment

- Open most remaining bus calls to unprivileged clients via PK

9 years agopo: Update German translation
Martin Pitt [Wed, 18 Feb 2015 16:09:15 +0000 (17:09 +0100)]
po: Update German translation

9 years agoAdd mock fsck process
Didier Roche [Mon, 26 Jan 2015 16:46:36 +0000 (17:46 +0100)]
Add mock fsck process

9 years agoAdd man page and references to it.
Didier Roche [Mon, 26 Jan 2015 16:34:59 +0000 (17:34 +0100)]
Add man page and references to it.

Add man page explaining the plymouth theme protocol, usage of the daemon
as well as the socket activation part.
Adapt existing fsck man page.

9 years agoAdd fsckd service and socket, retarget systemd-fsck
Didier Roche [Mon, 26 Jan 2015 16:30:00 +0000 (17:30 +0100)]
Add fsckd service and socket, retarget systemd-fsck

systemd-fsckd can be socket-activated by systemd-fsck process. Reflect that
in the different unit files.

9 years agoRefresh po files
Didier Roche [Mon, 26 Jan 2015 16:23:08 +0000 (17:23 +0100)]
Refresh po files

Also, add new plymouth fsckd translated strings in french.
Refreshed with "make update-po".

9 years agoTranslate fsckd messages for plymouth
Didier Roche [Mon, 26 Jan 2015 16:12:54 +0000 (17:12 +0100)]
Translate fsckd messages for plymouth

For plymouth themes not supporting i18n (like .script), send translated
messages to display to user, which is equivalent to the sent machine
readable data.

9 years agoAdd gettext support
Didier Roche [Thu, 29 Jan 2015 15:12:58 +0000 (16:12 +0100)]
Add gettext support

9 years agoConnect to plymouth and support cancellation of in progress fsck
Didier Roche [Thu, 5 Feb 2015 16:08:18 +0000 (17:08 +0100)]
Connect to plymouth and support cancellation of in progress fsck

Try to connect and send to plymouth (if running) some checked report progress,
using direct plymouth protocole.

Update message is the following:
fsckd:<num_devices>:<progress>:<string>
* num_devices corresponds to the current number of devices being checked (int)
* progress corresponds to the current minimum percentage of all devices being
  checked (float, from 0 to 100)
* string is a translated message ready to be displayed by the plymouth theme
  displaying the information above. It can be overriden by plymouth themes
  supporting i18n.

Grab in fsckd plymouth watch key Control+C, and propagate this cancel request
to systemd-fsck which will terminate fsck.

Send a message to signal to user what key we are grabbing for fsck cancel.

Message is: fsckd-cancel-msg:<string>
Where string is a translated string ready to be displayed by the plymouth theme
indicating that Control+C can be used to cancel current checks. It can be
overriden (matching only fsckd-cancel-msg prefix) for themes supporting i18n.

9 years agosystemd-fsck: always connect to systemd-fsckd
Didier Roche [Mon, 26 Jan 2015 15:01:11 +0000 (16:01 +0100)]
systemd-fsck: always connect to systemd-fsckd

Remove the plymouth running or show-status checks from systemd-fsck. Instead,
always connect to systemd-fsckd socket, and let this one decide if we display
progress or not.

9 years agofsckd daemon for inter-fsckd communication
Didier Roche [Wed, 4 Feb 2015 15:42:47 +0000 (16:42 +0100)]
fsckd daemon for inter-fsckd communication

Add systemd-fsckd multiplexer which accepts multiple systemd-fsck
instances to connect to it and sends progress report. systemd-fsckd then
computes and writes to /dev/console the number of devices currently being
checked and the minimum fsck progress. This will be used for interactive
progress report and cancelling in plymouth.

systemd-fsckd stops on idle when no systemd-fsck is connected.

Make the necessary changes to systemd-fsck to connect to the systemd-fsckd
socket.

9 years agotest: utf8 - fix utf16 tests on BE machines
Tom Gundersen [Wed, 18 Feb 2015 13:33:50 +0000 (14:33 +0100)]
test: utf8 - fix utf16 tests on BE machines

9 years agogummiboot/sd-boot/systemd-boot: rename galore
Tom Gundersen [Tue, 17 Feb 2015 19:12:50 +0000 (20:12 +0100)]
gummiboot/sd-boot/systemd-boot: rename galore

What used to be gummiboot, was renamed sd-boot when it was merged into
systemd. Let's try to be a bit more consistent with the rest of systemd
and rename it again as follows:

The EFI bootloader is now called 'systemd-bootx64.efi', and its sources are in
'src/boot/efi/'. The drop-in directory where bootctl will find EFI loaders
is now /usr/lib/systemd/boot/efi/.

9 years agoMakefile.am:efi_cflags compile with gcc v5
Harald Hoyer [Wed, 18 Feb 2015 13:45:12 +0000 (14:45 +0100)]
Makefile.am:efi_cflags compile with gcc v5

Set -std=gnu90 to let efibind.h define the standard types.

[tomegun: retyped the patch as the originl would not apply]

9 years agoupdate TODO
Lennart Poettering [Wed, 18 Feb 2015 12:08:23 +0000 (13:08 +0100)]
update TODO

9 years agologind: open up most bus calls for unpriviliged processes, using PolicyKit
Lennart Poettering [Wed, 18 Feb 2015 11:55:25 +0000 (12:55 +0100)]
logind: open up most bus calls for unpriviliged processes, using PolicyKit

Also, allow clients to alter their own objects without any further
priviliges. i.e. this allows clients to kill and lock their own sessions
without involving PK.

9 years agomachinectl: issue all bus commands while allowing interactive auth
Lennart Poettering [Wed, 18 Feb 2015 10:42:03 +0000 (11:42 +0100)]
machinectl: issue all bus commands while allowing interactive auth

9 years agomachined: open up most of machined's commands to unprivileged clients via PolicyKit
Lennart Poettering [Wed, 18 Feb 2015 10:41:28 +0000 (11:41 +0100)]
machined: open up most of machined's commands to unprivileged clients via PolicyKit

9 years agosd-bus: allow setting a per-connection default value for the "allow-interactive-authe...
Lennart Poettering [Tue, 17 Feb 2015 19:30:33 +0000 (20:30 +0100)]
sd-bus: allow setting a per-connection default value for the "allow-interactive-authentication" message flag

Most of our client tools want to set this bit for all their method
calls, even though it defaults to off in sd-bus, and rightfully so.
Hence, to simplify thing, introduce a per sd_bus-object flag that sets
the default value for all messages created on the connection.

9 years agoimport: remove unused variable
Thomas Hindoe Paaboel Andersen [Tue, 17 Feb 2015 19:06:13 +0000 (20:06 +0100)]
import: remove unused variable

9 years agomachined: make "machinectl copy-to" and "machinectl copy-from" server side operations
Lennart Poettering [Tue, 17 Feb 2015 18:22:03 +0000 (19:22 +0100)]
machined: make "machinectl copy-to" and "machinectl copy-from" server side operations

This way, any bus client can make use of these calls.

9 years agomachined: various simplifications
Lennart Poettering [Tue, 17 Feb 2015 17:54:33 +0000 (18:54 +0100)]
machined: various simplifications

9 years agobus: sync with kdbus
David Herrmann [Tue, 17 Feb 2015 17:05:32 +0000 (18:05 +0100)]
bus: sync with kdbus

Pull in new kdbus changes, namely:
 - EOVERFLOW is replaces by KDBUS_RECV_RETURN_DROPPED_MSGS
 - ENOMSG is merged with EAGAIN for consistency

9 years agobus: don't rely on static IDs in tests
David Herrmann [Tue, 17 Feb 2015 17:03:50 +0000 (18:03 +0100)]
bus: don't rely on static IDs in tests

We should never put any constraints on the IDs returned by the kernel. Use
sd_bus_get_unique_name() to retrieve the ID of a peer.

9 years agobuild-sys: add missing HAVE_GNUEFI condition
Kay Sievers [Tue, 17 Feb 2015 17:01:10 +0000 (18:01 +0100)]
build-sys: add missing HAVE_GNUEFI condition

9 years agomachined: move logic for bind mounting into containers from machinectl to machined
Lennart Poettering [Tue, 17 Feb 2015 16:19:57 +0000 (17:19 +0100)]
machined: move logic for bind mounting into containers from machinectl to machined

This extends the bus interface, adding BindMountMachine() for bind
mounting directories from the host into the container.

9 years agobootctl: add sd-boot support
Kay Sievers [Sun, 8 Feb 2015 16:18:30 +0000 (17:18 +0100)]
bootctl: add sd-boot support

9 years agosd-boot: add EFI boot manager and stub loader
Kay Sievers [Sun, 8 Feb 2015 11:25:35 +0000 (12:25 +0100)]
sd-boot: add EFI boot manager and stub loader

9 years agotmpfiles: Fix parse_acl error message
Martin Pitt [Tue, 17 Feb 2015 11:47:51 +0000 (12:47 +0100)]
tmpfiles: Fix parse_acl error message

parse_acl() returns the error instead of setting errno.