]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
4 years agomeson: bump version numbers for v244 v244-rc1
Zbigniew Jędrzejewski-Szmek [Fri, 22 Nov 2019 13:41:10 +0000 (14:41 +0100)] 
meson: bump version numbers for v244

4 years agoMerge pull request #14099 from keszybz/machine-ref-unref-fix
Zbigniew Jędrzejewski-Szmek [Fri, 22 Nov 2019 13:33:27 +0000 (14:33 +0100)] 
Merge pull request #14099 from keszybz/machine-ref-unref-fix

Fix for the issue when machine cannot be started second time, and better nspawn logging

4 years agosystemd-tmpfiles: don't install timer when service isn't installed either
Pascal de Bruijn [Fri, 22 Nov 2019 08:20:20 +0000 (09:20 +0100)] 
systemd-tmpfiles: don't install timer when service isn't installed either

Fixes: systemd-tmpfiles-clean.timer: Refusing to start, unit
systemd-tmpfiles-clean.service to trigger not loaded.

4 years agoMerge pull request #14109 from poettering/varlink-tweaks
Zbigniew Jędrzejewski-Szmek [Fri, 22 Nov 2019 13:30:16 +0000 (14:30 +0100)] 
Merge pull request #14109 from poettering/varlink-tweaks

varlink: fix more/continues method calls, and correctly apply method call timeout

4 years agovarlink: fix enablement of varlink timeout event source 14109/head
Lennart Poettering [Thu, 21 Nov 2019 11:14:58 +0000 (12:14 +0100)] 
varlink: fix enablement of varlink timeout event source

4 years agovarlink: drop too much whitespace
Lennart Poettering [Thu, 21 Nov 2019 11:14:44 +0000 (12:14 +0100)] 
varlink: drop too much whitespace

4 years agovarlink: port varlink code over to use getdtablesize() for sizing number of concurren...
Lennart Poettering [Tue, 20 Aug 2019 12:07:09 +0000 (14:07 +0200)] 
varlink: port varlink code over to use getdtablesize() for sizing number of concurrent connections

Use the official glibc API for determining this parameter. In most other
cases in our tree it's better to go directly for RLIMIT_NOFILE since
it's semantically what we want, but for this case it appears more
appropriate to use the friendlier, shorter, explicit API.

4 years agovarlink: move connection fds > fd2
Lennart Poettering [Thu, 15 Aug 2019 07:34:05 +0000 (09:34 +0200)] 
varlink: move connection fds > fd2

We want to use this code in NSS modules, and we never know the execution
environment we are run in there, hence let's move our fds up to ensure
we won't step into dangerous fd territory.

This is similar to how we already do it in sd-bus for client connection
fds.

4 years agovarlink: fix support for more/continues method calls
Lennart Poettering [Wed, 7 Aug 2019 10:44:13 +0000 (12:44 +0200)] 
varlink: fix support for more/continues method calls

4 years agomachine: fold machine_stop_scope() into machine_stop() 14099/head
Zbigniew Jędrzejewski-Szmek [Thu, 21 Nov 2019 13:54:11 +0000 (14:54 +0100)] 
machine: fold machine_stop_scope() into machine_stop()

No functional change.

4 years agomachined: simplify reference handling for units
Zbigniew Jędrzejewski-Szmek [Thu, 21 Nov 2019 13:41:32 +0000 (14:41 +0100)] 
machined: simplify reference handling for units

Before, we'd unref from machine_stop_unit, still keeping the unit name around,
and only forget the name later, when garbage collecting. If we didn't call
manager_stop_unit(), then we wouldn't do the unref. Let's unref at the same
point where we do garbage collection, so that it is always true that
iff we have the name generated with AddRef=1, then have a reference to the unit,
and as soon as we forget the name, we drop the reference.

This should fix the issue when repeated systemd-nspawn --register=yes fails
with "scope already exists" error.

Incidentally, this fixes an error in the code path where r was used instead of q.

4 years agomachine: simplify machine_start_scope()
Zbigniew Jędrzejewski-Szmek [Thu, 21 Nov 2019 13:32:51 +0000 (14:32 +0100)] 
machine: simplify machine_start_scope()

It is called from only one place, and we can make things simpler by calculating the
necessary stuff directly in the function. No functional change.

4 years agomachine: make machine_start_scope() static
Zbigniew Jędrzejewski-Szmek [Thu, 21 Nov 2019 12:44:33 +0000 (13:44 +0100)] 
machine: make machine_start_scope() static

Having this function which is called only from one place in a separate file
makes the code harder to follow. In preparation for subsequent changes, let's
make it static.

4 years agonspawn: log syscalls we cannot add at debug level
Zbigniew Jędrzejewski-Szmek [Wed, 20 Nov 2019 18:02:36 +0000 (19:02 +0100)] 
nspawn: log syscalls we cannot add at debug level

Without out at least a debug log line it is hard to figure out when something
goes wrong.

Reduce scope of a variable while at it.

4 years agoman: use <constant> for capability names in nspawn page
Zbigniew Jędrzejewski-Szmek [Wed, 20 Nov 2019 17:35:26 +0000 (18:35 +0100)] 
man: use <constant> for capability names in nspawn page

4 years agonspawn: dump capability list with --capabilities=help
Zbigniew Jędrzejewski-Szmek [Wed, 20 Nov 2019 17:33:32 +0000 (18:33 +0100)] 
nspawn: dump capability list with --capabilities=help

4 years agoNEWS: add contributors for v244
Zbigniew Jędrzejewski-Szmek [Fri, 22 Nov 2019 08:33:59 +0000 (09:33 +0100)] 
NEWS: add contributors for v244

4 years agomailmap: update
Zbigniew Jędrzejewski-Szmek [Fri, 22 Nov 2019 08:33:40 +0000 (09:33 +0100)] 
mailmap: update

4 years agoMerge pull request #14081 from poettering/xattr-list-rework
Zbigniew Jędrzejewski-Szmek [Fri, 22 Nov 2019 08:18:24 +0000 (09:18 +0100)] 
Merge pull request #14081 from poettering/xattr-list-rework

xattr-util rework and addition of flistxattr_malloc() helper plus test

4 years agoMerge pull request #14105 from keszybz/man-directives-cleanup
Zbigniew Jędrzejewski-Szmek [Fri, 22 Nov 2019 08:06:28 +0000 (09:06 +0100)] 
Merge pull request #14105 from keszybz/man-directives-cleanup

Man formatting and sorting fixes

4 years agohwdb: Dell venue 10 pro 5055 accel mount matrix (#14104)
ksbex [Fri, 22 Nov 2019 07:51:44 +0000 (02:51 -0500)] 
hwdb: Dell venue 10 pro 5055 accel mount matrix (#14104)

4 years agoman: sort options without "=" in the directives index 14105/head
Zbigniew Jędrzejewski-Szmek [Thu, 21 Nov 2019 21:02:07 +0000 (22:02 +0100)] 
man: sort options without "=" in the directives index

Some options would appear twice in the index, e.g. --collect= and
--collect. Some man pages use one form, some the other, and the argument
might be mandatory for some commands but not others. Anyway, let's display
them as one entry, to reduce the total number of items listed.

4 years agoman: fix a few bogus entries in directives index
Zbigniew Jędrzejewski-Szmek [Thu, 21 Nov 2019 19:33:26 +0000 (20:33 +0100)] 
man: fix a few bogus entries in directives index

When wrong element types are used, directives are sometimes placed in the wrong
section. Also, strip part of text starting with "'", which is used in a few
places and which is displayed improperly in the index.

4 years agoman: change noindex="true" to index="false"
Zbigniew Jędrzejewski-Szmek [Thu, 21 Nov 2019 19:22:12 +0000 (20:22 +0100)] 
man: change noindex="true" to index="false"

We nowadays prefer positive options over negative.

4 years agoman: use <command> not <option> for commands in resolvectl(1)
Zbigniew Jędrzejewski-Szmek [Thu, 21 Nov 2019 19:18:42 +0000 (20:18 +0100)] 
man: use <command> not <option> for commands in resolvectl(1)

4 years agobootctl: make 'random-seed' handle inability to write system token EFI variable grace...
Lennart Poettering [Tue, 19 Nov 2019 15:33:22 +0000 (16:33 +0100)] 
bootctl: make 'random-seed' handle inability to write system token EFI variable gracefully

Apparently some firmwares don't allow us to write this token, and refuse
it with EINVAL. We should normally consider that a fatal error, but not
really in the case of "bootctl random-seed" when called from the
systemd-boot-system-token.service since it's called as "best effort"
service after boot on various systems, and hence we shouldn't fail
loudly.

Similar, when we cannot find the ESP don't fail either, since there are
systems (arch install ISOs) that carry a boot loader capable of the
random seed logic but don't mount it after boot.

Fixes: #13603
4 years agoresolve: rename define fixing a typo
Zbigniew Jędrzejewski-Szmek [Tue, 19 Nov 2019 09:15:57 +0000 (10:15 +0100)] 
resolve: rename define fixing a typo

4 years agoMerge pull request #14093 from poettering/cgroups-delegate-xattr
Zbigniew Jędrzejewski-Szmek [Wed, 20 Nov 2019 22:53:03 +0000 (23:53 +0100)] 
Merge pull request #14093 from poettering/cgroups-delegate-xattr

mark delegated cgroups via xattr, and visualize the cut points in cgls

4 years agoupdate TODO 14093/head
Lennart Poettering [Wed, 20 Nov 2019 16:49:38 +0000 (17:49 +0100)] 
update TODO

4 years agocgls: visually separate processes from cgroups
Lennart Poettering [Wed, 20 Nov 2019 16:44:54 +0000 (17:44 +0100)] 
cgls: visually separate processes from cgroups

Let's show them in grey, since we generally want to focus on showing the
cgroups much less than the processes in them.

4 years agocgls: show delegation boundaries by underlining the cgroup in the output
Lennart Poettering [Wed, 20 Nov 2019 16:43:09 +0000 (17:43 +0100)] 
cgls: show delegation boundaries by underlining the cgroup in the output

This should help visualize where one manager's territory begins and
another's starts. Do this by underlining (since it's a "cut" point an
underline made most sense to me). Since underlining is not visible on
the console let's also show an ellipses for all lines that are
delegation boundaries.

Unfortunately this all is not as useful as it appears. The
"trusted.delegate" xattr is only visible to roo, which means
"systemd-cgls" has be called as root to show the boundaries.
Unfortunately cgroupfs doesn't support unprivileged xattrs on cgroups.

4 years agocore: set "trusted.delegate" xattr on cgroups that are delegation boundaries
Lennart Poettering [Wed, 20 Nov 2019 16:42:02 +0000 (17:42 +0100)] 
core: set "trusted.delegate" xattr on cgroups that are delegation boundaries

Let's mark cgroups that are delegation boundaries to us. This can then
be used by tools such as "systemd-cgls" to show where the next manager
takes over.

4 years agocgroup-util: add new cg_remove_xattr() for removing xattr from cgroup
Lennart Poettering [Wed, 20 Nov 2019 16:41:48 +0000 (17:41 +0100)] 
cgroup-util: add new cg_remove_xattr() for removing xattr from cgroup

4 years agoMerge pull request #14090 from poettering/clonenewns-fix
Lennart Poettering [Wed, 20 Nov 2019 16:27:56 +0000 (17:27 +0100)] 
Merge pull request #14090 from poettering/clonenewns-fix

make sure systemd-logind.service can start if unshare() is blocked

4 years agoupdate NEWS
Lennart Poettering [Wed, 20 Nov 2019 11:47:52 +0000 (12:47 +0100)] 
update NEWS

4 years agoMerge pull request #14036 from keszybz/systectl-add-logs-and-watchdogs
Zbigniew Jędrzejewski-Szmek [Wed, 20 Nov 2019 15:15:09 +0000 (16:15 +0100)] 
Merge pull request #14036 from keszybz/systectl-add-logs-and-watchdogs

Systemctl add log-level, log-target, service-watchdogs commands

4 years agoMerge pull request #14074 from keszybz/rename-system-options
Zbigniew Jędrzejewski-Szmek [Wed, 20 Nov 2019 15:13:46 +0000 (16:13 +0100)] 
Merge pull request #14074 from keszybz/rename-system-options

Rename system-options

4 years agocore: don't insist on ProtectHostname= if unshare() is blocked 14090/head
Lennart Poettering [Wed, 20 Nov 2019 11:27:28 +0000 (12:27 +0100)] 
core: don't insist on ProtectHostname= if unshare() is blocked

Previously we'd only skip ProtectHostname= if kernel support for
namespaces was lacking. With this change we also accept if unshare()
fails because it is blocked.

4 years agocore: be more lenient when checking whether sandboxing is necessary
Lennart Poettering [Wed, 20 Nov 2019 11:23:17 +0000 (12:23 +0100)] 
core: be more lenient when checking whether sandboxing is necessary

In some containers unshare() is made unavailable entirely. Let's deal
with this that more gracefully and disable our sandboxing of services
then, so that we work in a container, under the assumption the container
manager is then responsible for sandboxing if we can't do it ourselves.

Previously, we'd insist on sandboxing as soon as any form of BindPath=
is used. With this change we only insist on it if we have a setting like
that where source and destination differ, i.e. there's a mapping
established that actually rearranges things, and thus would result in
systematically different behaviour if skipped (as opposed to mappings
that just make stuff read-only/writable that otherwise arent').

(Let's also update a test that intended to test for this behaviour with
a more specific configuration that still triggers the behaviour with
this change in place)

Fixes: #13955
(For testing purposes unshare() can easily be blocked with
systemd-nspawn --system-call-filter=~unshare.)

4 years agoerrno-util: add ERRNO_IS_PRIVILEGE() helper
Lennart Poettering [Wed, 20 Nov 2019 11:22:40 +0000 (12:22 +0100)] 
errno-util: add ERRNO_IS_PRIVILEGE() helper

4 years agoid128: fix initializer element is not constant
Anita Zhang [Wed, 20 Nov 2019 05:50:51 +0000 (21:50 -0800)] 
id128: fix initializer element is not constant

Was getting:

  ../src/id128/id128.c:15:1: error: initializer element is not constant
   static sd_id128_t arg_app = SD_ID128_NULL;
    ^
when building on CentOS 7.

Other parts of the code initialize `static sd_id128_t` to {} and this
was the original setting before a19fdd66c22 anyways.

4 years agotest: make sure our tests get exclusive TTY access
Lennart Poettering [Tue, 19 Nov 2019 17:54:47 +0000 (18:54 +0100)] 
test: make sure our tests get exclusive TTY access

This sould make our test suite a bit more robust if it is slow running.
A few of our test services use StandardOutput=tty or StandardError=tty
in the tests in order to connect test services to the container console.
This gets into conflict with the container getty which wants exclusive
access to the console. Since the container getty is started with
Type=idle it typically gets started after a timeout only if the TTY is
already used, which hence introduces a race: if the test finishes
earlier all is good, if not, then the test gets kicked off the TTY which
then causes bash to abort since it cannot write any error messages
anymore.

Let's fix this hence: all tests that connect to the tty are now
synchronized to getty-pre.target, so they finish before any getty is
started.

4 years agoMerge pull request #14085 from poettering/ask-password-api
Lennart Poettering [Tue, 19 Nov 2019 23:54:28 +0000 (00:54 +0100)] 
Merge pull request #14085 from poettering/ask-password-api

make sure asking for a pw works in a container too if keyctl() and friends are blocked

4 years agopam_systemd: prolong method call timeout when allocating session
Lennart Poettering [Mon, 19 Aug 2019 13:15:13 +0000 (15:15 +0200)] 
pam_systemd: prolong method call timeout when allocating session

Starting a session might involve starting the user@.service instance,
hence let's make the bus call timeout substantially longer.

Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=83828
4 years agoMerge pull request #14078 from poettering/cryptsetup-fixlets
Zbigniew Jędrzejewski-Szmek [Tue, 19 Nov 2019 19:46:53 +0000 (20:46 +0100)] 
Merge pull request #14078 from poettering/cryptsetup-fixlets

trivial cryptsetup fixlets (mostly: use more STR_IN_SET())

4 years agoMerge pull request #14079 from poettering/pam-systemd-fixlets
Zbigniew Jędrzejewski-Szmek [Tue, 19 Nov 2019 19:45:15 +0000 (20:45 +0100)] 
Merge pull request #14079 from poettering/pam-systemd-fixlets

trivial pam_systemd fixlets

4 years agoudev: do not propagate error in executing PROGRAM and IMPORT{program}
Yu Watanabe [Mon, 18 Nov 2019 11:56:33 +0000 (20:56 +0900)] 
udev: do not propagate error in executing PROGRAM and IMPORT{program}

Also, this adds more logs.

Fixes #14027.

4 years agoask-password: skip kernel keyring logic if we see EPERM 14085/head
Lennart Poettering [Tue, 19 Nov 2019 17:47:31 +0000 (18:47 +0100)] 
ask-password: skip kernel keyring logic if we see EPERM

Let's improve compat with container managers that block the keyring
logic and return EPERM for them.

4 years agoerrno: add new ERRNO_IS_NOT_SUPPORTED() helper
Lennart Poettering [Mon, 15 Jul 2019 11:32:03 +0000 (13:32 +0200)] 
errno: add new ERRNO_IS_NOT_SUPPORTED() helper

4 years agotest-copy: test that xattrs are properly copied 14081/head
Lennart Poettering [Tue, 19 Nov 2019 14:16:46 +0000 (15:16 +0100)] 
test-copy: test that xattrs are properly copied

4 years agocopy: port over to flistxattr_malloc() and fgetxattr_malloc()
Lennart Poettering [Tue, 19 Nov 2019 11:29:19 +0000 (12:29 +0100)] 
copy: port over to flistxattr_malloc() and fgetxattr_malloc()

4 years agoxattr-util: add flistxattr_malloc() that returns a NULSTR
Lennart Poettering [Thu, 14 Nov 2019 13:51:04 +0000 (14:51 +0100)] 
xattr-util: add flistxattr_malloc() that returns a NULSTR

4 years agoxattr-util: modernize getxattr_malloc() a bit
Lennart Poettering [Thu, 14 Nov 2019 13:50:22 +0000 (14:50 +0100)] 
xattr-util: modernize getxattr_malloc() a bit

Let's use automatic cleanup/TAKE_PTR where appropriate

4 years agoupdate TODO
Lennart Poettering [Tue, 19 Nov 2019 14:42:55 +0000 (15:42 +0100)] 
update TODO

4 years agoMerge pull request #14080 from poettering/table-uid-pid
Zbigniew Jędrzejewski-Szmek [Tue, 19 Nov 2019 14:35:25 +0000 (15:35 +0100)] 
Merge pull request #14080 from poettering/table-uid-pid

format-table: introduce TABLE_UID/TABLE_GID to match TABLE_PID and use it

4 years agocryptsetup: use STR_IN_SET() where appropriate 14078/head
Lennart Poettering [Wed, 21 Aug 2019 08:45:42 +0000 (10:45 +0200)] 
cryptsetup: use STR_IN_SET() where appropriate

Note that this slightly changes behaviour: "none" is only allowed as
option, if it's the only option specified, but not in combination with
other options. I think this makes more sense, since it's the choice when
no options shall be specified.

4 years agocryptsetup: minor coding style clean-ups
Lennart Poettering [Wed, 21 Aug 2019 08:40:04 +0000 (10:40 +0200)] 
cryptsetup: minor coding style clean-ups

4 years agopam_systemd: add one more assert 14079/head
Lennart Poettering [Tue, 13 Aug 2019 12:14:42 +0000 (14:14 +0200)] 
pam_systemd: add one more assert

4 years agopam_systemd: don't use PAM_SYSTEM_ERR for something that isn't precisely a system...
Lennart Poettering [Tue, 13 Aug 2019 12:14:47 +0000 (14:14 +0200)] 
pam_systemd: don't use PAM_SYSTEM_ERR for something that isn't precisely a system error

It's not really clear which PAM errors to use for which conditions, but
something called PAM_SYSTEM_ERR should probably not be used when the
error is not the result of some system call failure.

4 years agopam-systemd: voidify pam_get_item() calls
Lennart Poettering [Mon, 12 Aug 2019 14:39:55 +0000 (16:39 +0200)] 
pam-systemd: voidify pam_get_item() calls

4 years agopam-systemd: remove duplicate error logging
Lennart Poettering [Mon, 12 Aug 2019 14:39:40 +0000 (16:39 +0200)] 
pam-systemd: remove duplicate error logging

4 years agologin: port tables over to use TABLE_UID/TABLE_PID 14080/head
Lennart Poettering [Wed, 7 Aug 2019 12:50:01 +0000 (14:50 +0200)] 
login: port tables over to use TABLE_UID/TABLE_PID

4 years agoformat-table: add UID/GID output support to format-table.h
Lennart Poettering [Wed, 7 Aug 2019 10:50:42 +0000 (12:50 +0200)] 
format-table: add UID/GID output support to format-table.h

4 years agopam-systemd: include PAM error code in all our log messages where that makes sense
Lennart Poettering [Mon, 12 Aug 2019 14:38:21 +0000 (16:38 +0200)] 
pam-systemd: include PAM error code in all our log messages where that makes sense

4 years agoNEWS: SendRawOption= -> SendOption=
Yu Watanabe [Tue, 19 Nov 2019 10:28:07 +0000 (19:28 +0900)] 
NEWS: SendRawOption= -> SendOption=

4 years agoMerge pull request #14064 from yuwata/network-unify-send-option-and-send-raw-option
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 21:21:37 +0000 (22:21 +0100)] 
Merge pull request #14064 from yuwata/network-unify-send-option-and-send-raw-option

network: unify SendOption= and SendRawOption=

4 years agoMerge pull request #14030 from keszybz/path-no-trigger
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 21:20:07 +0000 (22:20 +0100)] 
Merge pull request #14030 from keszybz/path-no-trigger

Fix spurious triggering of PathExists=

4 years agoMerge pull request #14007 from keszybz/tasks-max-dynamic
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 21:18:33 +0000 (22:18 +0100)] 
Merge pull request #14007 from keszybz/tasks-max-dynamic

Calculate fractional TasksMax= before actual use

4 years agoRename "system-options" to "systemd-efi-options" 14074/head
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 18:47:50 +0000 (19:47 +0100)] 
Rename "system-options" to "systemd-efi-options"

This makes the naming more consistent: we now have
bootctl systemd-efi-options,
$SYSTEMD_EFI_OPTIONS
and the SystemdOptions EFI variable.

(SystemdEFIOptions would be redundant, because it is only used in the context
of efivars, and users don't interact with that name directly.)

bootctl is adjusted to use 2sp indentation, similarly to systemctl and other
programs.

Remove the prefix with the old name from 'bootctl systemd-efi-options' output,
since it's redundant and we don't want the old name anyway.

4 years agoNEWS: fix antique typo
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 18:44:54 +0000 (19:44 +0100)] 
NEWS: fix antique typo

4 years agobootctl: update --help text
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 17:19:16 +0000 (18:19 +0100)] 
bootctl: update --help text

4 years agocore/path: minor simplification
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 17:15:44 +0000 (18:15 +0100)] 
core/path: minor simplification

4 years agoman: add entry about SpeedMeter=
Yu Watanabe [Mon, 18 Nov 2019 15:03:35 +0000 (00:03 +0900)] 
man: add entry about SpeedMeter=

Closes #14002.

4 years agoudev: silence warning about PROGRAM+= or IMPORT+= rules
Yu Watanabe [Mon, 18 Nov 2019 10:28:11 +0000 (19:28 +0900)] 
udev: silence warning about PROGRAM+= or IMPORT+= rules

Closes #14062.

4 years agoman: add entry for systemd-id128 --uuid
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 14:24:23 +0000 (15:24 +0100)] 
man: add entry for systemd-id128 --uuid

4 years agosystemctl: whitespace optimization of --help 14036/head
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 15:41:13 +0000 (16:41 +0100)] 
systemctl: whitespace optimization of --help

Move the explanation of options three columns to the right: then almost
all options fit and we do not need to break lines so often.

When a multi-line explanation precedes a section break, i.e. there is a
half-line on the right side, do not use an empty space. This saves a line,
and actually looks visually better because the text is still clearly
separated, but we don't get the big vertical white space.

4 years agoanalyze: deprecate the commands moved to systemctl
Zbigniew Jędrzejewski-Szmek [Fri, 15 Nov 2019 08:57:24 +0000 (09:57 +0100)] 
analyze: deprecate the commands moved to systemctl

This just removes the commands from --help and the man pages, everything works
as before.

4 years agosystemctl: add service-watchdogs command
Zbigniew Jędrzejewski-Szmek [Fri, 15 Nov 2019 09:14:57 +0000 (10:14 +0100)] 
systemctl: add service-watchdogs command

The rationale is the same as for log-level/log-target: this controls the behaviour
of the manager, and belongs in systemctl.

4 years agoanalyze: adjust the description of the default verb
Zbigniew Jędrzejewski-Szmek [Fri, 15 Nov 2019 08:55:43 +0000 (09:55 +0100)] 
analyze: adjust the description of the default verb

4 years agosystemctl: add log-level and log-target commands
Zbigniew Jędrzejewski-Szmek [Fri, 15 Nov 2019 08:39:50 +0000 (09:39 +0100)] 
systemctl: add log-level and log-target commands

This copies the commands log-level and log-target (to query and set the current
settings) from systemd-analyze to systemctl, essentially reverting
a65615ca5d78be0dcd7d9c9b4a663fa75f758606. Controllling the log level settings
of the manager is basic functionality, that should be available even if
systemd-analyze (which is more of an analysis tool) is not installed. This is
like dmesg and journalctl, which should be available even if a debugger and
more advanced tools to analyze the kernel are not available. (Note that dmesg
is used to control the log level too, not just to browse the kernel logs.)

I chose to copy&paste the methods from analyze.c to the new location. There
isn't enough code to share, because acquire_bus() in both places has a
different signature despite the same name, so the only part that is common
is the invocation of sd_bus_set_property().

4 years agoudevadm: ignore EROFS and return earlier
Yu Watanabe [Mon, 18 Nov 2019 09:47:16 +0000 (18:47 +0900)] 
udevadm: ignore EROFS and return earlier

Fixes #14060.

4 years agonetwork: unify config_parse_dhcp_server_option_data() and config_parse_dhcp_send_option() 14064/head
Yu Watanabe [Mon, 18 Nov 2019 09:29:29 +0000 (18:29 +0900)] 
network: unify config_parse_dhcp_server_option_data() and config_parse_dhcp_send_option()

4 years agodhcp: remove struct sd_dhcp_raw_option
Yu Watanabe [Mon, 18 Nov 2019 09:14:18 +0000 (18:14 +0900)] 
dhcp: remove struct sd_dhcp_raw_option

sd_dhcp_raw_option and sd_dhcp_option are essentially equivalent.

4 years agonetwork: rename SendRawOption= to SendOption=
Yu Watanabe [Mon, 18 Nov 2019 08:33:58 +0000 (17:33 +0900)] 
network: rename SendRawOption= to SendOption=

As DHCPv4.SendOption= and DHCPServer.SendRawOption= take the same
format.

4 years agoMerge pull request #14040 from poettering/root-mount-deps
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 14:29:35 +0000 (15:29 +0100)] 
Merge pull request #14040 from poettering/root-mount-deps

root mount dep fixes

4 years agonetwork: add more error logs
Yu Watanabe [Sun, 17 Nov 2019 13:39:42 +0000 (22:39 +0900)] 
network: add more error logs

4 years agoMerge pull request #14046 from poettering/id128-uuid
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 14:19:43 +0000 (15:19 +0100)] 
Merge pull request #14046 from poettering/id128-uuid

add "-u" switch to systemd-uuid for outputting ids in UUID format

4 years agotree-wide: clean up --help texts a bit
Lennart Poettering [Fri, 15 Nov 2019 17:38:44 +0000 (18:38 +0100)] 
tree-wide: clean up --help texts a bit

This cleans up and unifies the outut of --help texts a bit:

1. Highlight the human friendly description string, not the command
   line via ANSI sequences. Previously both this description string and
   the brief command line summary was marked with the same ANSI
   highlight sequence, but given we auto-page to less and less does not
   honour multi-line highlights only the command line summary was
   affectively highlighted. Rationale: for highlighting the description
   instead of the command line: the command line summary is relatively
   boring, and mostly the same for out tools, the description on the
   other hand is pregnant, important and captions the whole thing and
   hence deserves highlighting.

2. Always suffix "Options" with ":" in the help text

3. Rename "Flags" →  "Options" in one case

4. Move commands to the top in a few cases

5. add coloring to many more help pages

6. Unify on COMMAND instead of {COMMAND} in the command line summary.
   Some tools did it one way, others the other way. I am not sure what
   precisely {} is supposed to mean, that uppercasing doesn't, hence
   let's simplify and stick to the {}-less syntax

And minor other tweaks.

4 years agocore/path: fix spurious triggering of PathExists= on restart/reload 14030/head
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 13:20:05 +0000 (14:20 +0100)] 
core/path: fix spurious triggering of PathExists= on restart/reload

Our handling of the condition was inconsistent. Normally, we'd only fire when
the file was created (or removed and subsequently created again). But on restarts,
we'd do a "recheck" from path_coldplug(), and if the file existed, we'd
always trigger. Daemon restarts and reloads should not be observeable, in
the sense that they should not trigger units which were already triggered and
would not be started again under normal circumstances.

Note that the mechanism for checks is racy: we get a notification from inotify,
and by the time we check, the file could have been created and removed again,
or removed and created again. It would be better if we inotify would give as
an unambiguous signal that the file was created, but it doesn't: IN_DELETE_SELF
triggers on inode removal, not directory entry, so we need to include IN_ATTRIB,
which obviously triggers on other conditions.

Fixes #12801.

4 years agocore/path: serialize the previous_exists state
Zbigniew Jędrzejewski-Szmek [Mon, 18 Nov 2019 13:13:05 +0000 (14:13 +0100)] 
core/path: serialize the previous_exists state

Without that we are prone to generate spurious events after daemon
reload/restart.

4 years agoMerge pull request #14056 from yuwata/dhcp-debug-logs
Yu Watanabe [Mon, 18 Nov 2019 09:49:45 +0000 (18:49 +0900)] 
Merge pull request #14056 from yuwata/dhcp-debug-logs

dhcp: add debug logs and propagate error in restarting client

4 years agoMerge pull request #14055 from yuwata/network-send-option-takes-type-field
Zbigniew Jędrzejewski-Szmek [Sun, 17 Nov 2019 18:17:38 +0000 (19:17 +0100)] 
Merge pull request #14055 from yuwata/network-send-option-takes-type-field

network: make SendOption= also take type field

4 years agosd-dhcp-client: anonymize DHCPDISCOVER (fixes #13992)
Serge [Sat, 16 Nov 2019 12:22:35 +0000 (15:22 +0300)] 
sd-dhcp-client: anonymize DHCPDISCOVER (fixes #13992)

According to RFC7844 section 3 the DHCPDISCOVER message should not contain option 50 («Requested IP Address») when Anonymize is true

4 years agodhcp6: add debug logs 14056/head
Yu Watanabe [Sun, 17 Nov 2019 14:57:50 +0000 (23:57 +0900)] 
dhcp6: add debug logs

4 years agodhcp4: propagate error in restarting DHCPv4 client
Yu Watanabe [Sun, 17 Nov 2019 14:52:46 +0000 (23:52 +0900)] 
dhcp4: propagate error in restarting DHCPv4 client

4 years agodhcp4: add debug logs
Yu Watanabe [Sun, 17 Nov 2019 14:48:46 +0000 (23:48 +0900)] 
dhcp4: add debug logs

4 years agonetwork: make SendOption= also take type field 14055/head
Yu Watanabe [Sun, 17 Nov 2019 14:09:53 +0000 (23:09 +0900)] 
network: make SendOption= also take type field

This makes SendOption= and SendRawOption= takes values in the same
format.

4 years agonetwork: rename DHCPRawOption to DHCPOptionDataType
Yu Watanabe [Sun, 17 Nov 2019 13:59:58 +0000 (22:59 +0900)] 
network: rename DHCPRawOption to DHCPOptionDataType

And moves the definition from networkd-dhcp-server.[ch] to networkd-dhcp-common.[ch].

4 years agonetwork: fix logged error value
Yu Watanabe [Sun, 17 Nov 2019 13:51:06 +0000 (22:51 +0900)] 
network: fix logged error value

4 years agonetwork: fix indentation
Yu Watanabe [Sun, 17 Nov 2019 13:45:38 +0000 (22:45 +0900)] 
network: fix indentation