platform/upstream/systemd.git
5 years agocore: never propagate reload failure to service result
Lennart Poettering [Wed, 17 Jul 2019 17:16:33 +0000 (19:16 +0200)]
core: never propagate reload failure to service result

Fixes: #11238

5 years agoMerge pull request #13047 from niedbalski/fix-5552-pr
Lennart Poettering [Wed, 17 Jul 2019 17:27:16 +0000 (19:27 +0200)]
Merge pull request #13047 from niedbalski/fix-5552-pr

resolved: add new option to only cache positive answers

5 years agoMerge pull request #13086 from yuwata/network-dhcp6-cleanups
Lennart Poettering [Wed, 17 Jul 2019 17:26:46 +0000 (19:26 +0200)]
Merge pull request #13086 from yuwata/network-dhcp6-cleanups

network: dhcp6 cleanups

5 years agoMerge pull request #13093 from keszybz/two-assert-cc-cleanups
Frantisek Sumsal [Wed, 17 Jul 2019 15:53:35 +0000 (15:53 +0000)]
Merge pull request #13093 from keszybz/two-assert-cc-cleanups

Two assert_cc cleanups

5 years agoresolved: switch cache option to a tri-state option (systemd#5552).
Jorge Niedbalski [Fri, 12 Jul 2019 19:34:24 +0000 (15:34 -0400)]
resolved: switch cache option to a tri-state option (systemd#5552).

Change the resolved.conf Cache option to a tri-state "no, no-negative, yes" values.

If a lookup returns SERVFAIL systemd-resolved will cache the result for 30s (See 201d995),
however, there are several use cases on which this condition is not acceptable (See systemd#5552 comments)
and the only workaround would be to disable cache entirely or flush it , which isn't optimal.

This change adds the 'no-negative' option when set it avoids putting in cache
negative answers but still works the same heuristics for positive answers.

Signed-off-by: Jorge Niedbalski <jnr@metaklass.org>
5 years agonetwork: update state file after dhcp6 events
Yu Watanabe [Wed, 17 Jul 2019 14:12:07 +0000 (23:12 +0900)]
network: update state file after dhcp6 events

E.g. DNS servers may be received from DHCPv6 server. If the link is
already in configured state, the DNS servers are not written in the
state file.

5 years agoRevert "test-network: extend sleep time"
Yu Watanabe [Wed, 17 Jul 2019 14:03:01 +0000 (23:03 +0900)]
Revert "test-network: extend sleep time"

This reverts commit 7d7bb5c8613b774bf77c531f46d31ee20d7a1b1e.

Still the CIs are flaky and the commit just slow down them.

5 years agoman: fix wrong section name
Yu Watanabe [Wed, 17 Jul 2019 01:07:42 +0000 (10:07 +0900)]
man: fix wrong section name

5 years agonetwork: fix use after free()
Yu Watanabe [Wed, 17 Jul 2019 01:21:07 +0000 (10:21 +0900)]
network: fix use after free()

The hashmap will be accessed by client_stop().

5 years agonetwork: drop unnecessary line breaks
Yu Watanabe [Wed, 17 Jul 2019 00:46:36 +0000 (09:46 +0900)]
network: drop unnecessary line breaks

5 years agonetwork: drop fallback mechanism to assign DHCPv6 addresses with IFA_F_NOPREFIXROUTE
Yu Watanabe [Wed, 17 Jul 2019 00:40:06 +0000 (09:40 +0900)]
network: drop fallback mechanism to assign DHCPv6 addresses with IFA_F_NOPREFIXROUTE

The flag IFA_F_NOPREFIXROUTE was introduced in kernel-3.14. But even if
the kernel does not support the flag, it should be just ignored. So, it
is not necessary to do the fallback logic. Moreover, the current logic
is not a fallback mechanism but just retrying. So, it should not work.
Let's drop that.

5 years agoMerge pull request #13080 from keszybz/firstboot-fixes
Lennart Poettering [Wed, 17 Jul 2019 12:43:15 +0000 (14:43 +0200)]
Merge pull request #13080 from keszybz/firstboot-fixes

Firstboot fixes

5 years agotest/TEST-16: don't copy systemd-notify or lib from $BUILD_DIR
Dan Streetman [Sun, 14 Jul 2019 04:24:28 +0000 (00:24 -0400)]
test/TEST-16: don't copy systemd-notify or lib from $BUILD_DIR

On Ubuntu CI, these don't exist because it tests installed
binaries, not just-built binaries.

5 years agoRewrite IN_SET()
Zbigniew Jędrzejewski-Szmek [Thu, 11 Jul 2019 08:17:28 +0000 (10:17 +0200)]
Rewrite IN_SET()

This restores proper speed with asan builds with gcc 9.1.1.
Fixes #12997.

$ rpm -q gcc
gcc-9.1.1-2.fc31.x86_64

$ time ASAN_OPTIONS=strict_string_checks=1:detect_stack_use_after_return=1:check_initialization_order=1:strict_init_order=1 UBSAN_OPTIONS=print_stacktrace=1:print_summary=1:halt_on_error=1 build-rawhide-sanitize/test-conf-parser

(old) 86.99s user 20.22s system 361% cpu 29.635 total
(new)  3.05s user  0.29s system  99% cpu  3.377 total

Size is increased a bit:

$ size build/systemd
(old) 1683421  246100    1208 1930729  1d75e9 build/systemd
(new) 1688237  246100    1208 1935545  1d88b9 build/systemd

... but that's <0.1%, so we don't really care.

5 years agoMerge pull request #13092 from keszybz/coverity-fixes
Lennart Poettering [Wed, 17 Jul 2019 12:18:49 +0000 (14:18 +0200)]
Merge pull request #13092 from keszybz/coverity-fixes

Coverity fixes

5 years agoMerge pull request #13091 from poettering/nspawn-copy
Lennart Poettering [Wed, 17 Jul 2019 12:10:06 +0000 (14:10 +0200)]
Merge pull request #13091 from poettering/nspawn-copy

nspawn: allow nspawn's copy operation to be abortable via C-c

5 years agoDrop trailing slash from assert_cc() definition
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 10:45:42 +0000 (12:45 +0200)]
Drop trailing slash from assert_cc() definition

We use assert_cc(...); almost everywhere. Let's always require that.

https://github.com/systemd/systemd/issues/12997#issuecomment-510103988

5 years agobasic/macro: drop do {} while(0) from assert_not_reached
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 10:27:33 +0000 (12:27 +0200)]
basic/macro: drop do {} while(0) from assert_not_reached

log_assert_failed_unreachable is just a normal function call, no need to wrap
it.

https://github.com/systemd/systemd/issues/12997#issuecomment-510103988

5 years agoMerge pull request #12675 from yuwata/network-set-dns
Lennart Poettering [Wed, 17 Jul 2019 10:07:39 +0000 (12:07 +0200)]
Merge pull request #12675 from yuwata/network-set-dns

resolvectl: support to modify interfaces managed by networkd

5 years agofirstboot: actually accept empty input to mean skip
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 16:48:15 +0000 (18:48 +0200)]
firstboot: actually accept empty input to mean skip

We'd loop if the input was empty. We need to return to the caller.

5 years agofirstboot: fix hang waiting for second Enter on input
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 16:35:34 +0000 (18:35 +0200)]
firstboot: fix hang waiting for second Enter on input

The comment explains the reason: we'd wait for the second \n
and then ungetc() it. Then the buffered \n would cause a problem
when the next prompt was issued, so in effect it wasn't possible
to answer the second question.

5 years agofirstboot: only list all options on demand
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 15:17:29 +0000 (17:17 +0200)]
firstboot: only list all options on demand

The user most likely knows the name of their locale/keymap/whatever,
and paging through multiple pages of output has little benefit.

The header that was printed before is now not printed anymore. But
now it's obvious from the context what we are printing, so we don't
need to print the header.

5 years agofirstboot: use free_and_strdup, free_and_replace
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 15:16:42 +0000 (17:16 +0200)]
firstboot: use free_and_strdup, free_and_replace

5 years agomount-util: bind_remount: avoid calling statvfs
Jakob Unterwurzacher [Tue, 16 Jul 2019 21:09:07 +0000 (23:09 +0200)]
mount-util: bind_remount: avoid calling statvfs

The commit
"util: Do not clear parent mount flags when setting up namespaces"
introduced a statvfs call read the flags of the original mount
and have them applied to the bind mount.

This has two problems:

(1) The mount flags returned by statvfs(2) do not match the flags
accepted by mount(2). For example, the value 4096 means ST_RELATIME
when returned by statvfs(2), but means MS_BIND when passed to mount(2).

(2) A call to statvfs blocks indefinitely when ran against a disconnected
network drive ( https://github.com/systemd/systemd/issues/12667 ).

We already use libmount to parse `/proc/self/mountinfo` but did not use the
mount flag information from there. This patch changes that to use the mount
flags parsed by libmount instead of calling statvfs. Only if getting the
flags through libmount fails we call statvfs.

Fixes https://github.com/systemd/systemd/issues/12667

5 years agosd-device: voidify and simplify calls to ordered_hashmap_iterate()
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 09:30:04 +0000 (11:30 +0200)]
sd-device: voidify and simplify calls to ordered_hashmap_iterate()

Coverity CID#1402356 and CID#1402335.

5 years agosd-bus: voidify two calls to hashmap_iterate()
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 09:20:36 +0000 (11:20 +0200)]
sd-bus: voidify two calls to hashmap_iterate()

Coverity CID#1402304 and CID#1402307.

5 years agotest-networkd-conf: add missing assert
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 09:16:53 +0000 (11:16 +0200)]
test-networkd-conf: add missing assert

The test would not pass before, because EXTRACT_UNQUOTE|EXTRACT_RETAIN_ESCAPE
didn't work (we'd get "KEY3=val with \\quotation\\" as the last string. Now we
are only doing EXTRACT_UNQUOTE, so we get the expected "KEY3=val with \"quotation\"".

Coverity CID#1402781.

5 years agoshared/conf-parser,networkd: EXTRACT_UNQUOTE|EXTRACT_RETAIN_ESCAPE → EXTRACT_UNQUOTE
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 09:13:20 +0000 (11:13 +0200)]
shared/conf-parser,networkd: EXTRACT_UNQUOTE|EXTRACT_RETAIN_ESCAPE → EXTRACT_UNQUOTE

It's hard to even say what exactly this combination means. Escaping is
necessary when quoting to have quotes within the string. So the escaping of
quote characters is inherently tied to quoting. When unquoting, it seems
natural to remove escaping which was done for the quoting purposes. But with
both flags we would be expected to re-add this escaping after unqouting? Or
maybe keep the escaping which is not necessary for quoting but otherwise
present? This all seems too complicated, let's just forbid such usage and
always fully unescape when unquoting.

5 years agonspawn: fix misplaced parenthesis and merge two error handling paths
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 08:14:34 +0000 (10:14 +0200)]
nspawn: fix misplaced parenthesis and merge two error handling paths

I don't think we need to provide the two separate error messages,
let's shorten the code a bit by merging them.

Coverity CID#1402320.

5 years agonspawn: fix memleak in argument parsing
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 08:09:18 +0000 (10:09 +0200)]
nspawn: fix memleak in argument parsing

Coverity CID#1402297.

5 years agocoredumpctl: check return value
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 08:02:13 +0000 (10:02 +0200)]
coredumpctl: check return value

retrieve() allocates memory, so it may fail.
Coverity CID#1402338.

5 years agocoredumpctl: use free_and_replace in one more place
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 08:01:24 +0000 (10:01 +0200)]
coredumpctl: use free_and_replace in one more place

5 years agoshared: voidify call to loop_write() and trim duplicate code
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 07:49:01 +0000 (09:49 +0200)]
shared: voidify call to loop_write() and trim duplicate code

Coverity CID#1402375.

5 years agoshared: fix assert call
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 07:39:39 +0000 (09:39 +0200)]
shared: fix assert call

Fixup for 3572d3df8f8. Coverity CID#1403013.

5 years agocore: ExecCondition= for services
Anita Zhang [Sat, 29 Jun 2019 00:02:30 +0000 (17:02 -0700)]
core: ExecCondition= for services

Closes #10596

5 years agonspawn: make use of SIGINT handling when copying files
Lennart Poettering [Wed, 17 Jul 2019 08:59:29 +0000 (10:59 +0200)]
nspawn: make use of SIGINT handling when copying files

Fixes: #13079

5 years agobtrfs-util: expose SIGINT behaviour in snapshot copy fallback, too
Lennart Poettering [Wed, 17 Jul 2019 08:58:49 +0000 (10:58 +0200)]
btrfs-util: expose SIGINT behaviour in snapshot copy fallback, too

5 years agocopy: optionally check for SIGINT regularly, and abort operation safely
Lennart Poettering [Wed, 17 Jul 2019 08:58:22 +0000 (10:58 +0200)]
copy: optionally check for SIGINT regularly, and abort operation safely

5 years agoMerge pull request #12927 from fbuihuu/coredump-cleanup-part-2
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 07:14:20 +0000 (09:14 +0200)]
Merge pull request #12927 from fbuihuu/coredump-cleanup-part-2

Coredump cleanup part 2

5 years agoMerge pull request #13082 from ddstreet/minor
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2019 06:44:01 +0000 (08:44 +0200)]
Merge pull request #13082 from ddstreet/minor

Minor fixes in test framework

5 years agotest/test-functions: fix install_dmeventd to correctly install bin/libs
Dan Streetman [Sun, 14 Jul 2019 03:03:26 +0000 (23:03 -0400)]
test/test-functions: fix install_dmeventd to correctly install bin/libs

5 years agoFree up some resources on Azure Pipelines
Evgeny Vereshchagin [Wed, 17 Jul 2019 02:48:02 +0000 (02:48 +0000)]
Free up some resources on Azure Pipelines

Let's drop the tests we also run on CentOS CI to free up some resources
for something more useful.

5 years agotest/test-functions: instmods call to find should use -type f
Dan Streetman [Sun, 14 Jul 2019 01:39:03 +0000 (21:39 -0400)]
test/test-functions: instmods call to find should use -type f

without using -type f, the logs print an error such as:

E:  E: modprobe: FATAL: Module asymmetric_keys not found in directory /lib/modules/4.15.0-54-generic

while this doesn't appear to cause problems, it can be extremely
distracting when trying to debug real failures.

5 years agotest: when stripping binaries, ignore case in suppressing "File format not recognized"
Dan Streetman [Sat, 13 Jul 2019 17:29:48 +0000 (13:29 -0400)]
test: when stripping binaries, ignore case in suppressing "File format not recognized"

The grep -v matches all lowercase, but "file" is captialized; just ignore case so
it's suppressed for either all lowercase or capital File.

5 years agotest: ignore errors during test cleanup, so cleanup can finish
Dan Streetman [Fri, 12 Jul 2019 18:09:48 +0000 (14:09 -0400)]
test: ignore errors during test cleanup, so cleanup can finish

Also move TESTDIR and STATEFILE removal into test_cleanup

5 years agotest: add create_empty_image_rootdir() to simplify testcase setup
Dan Streetman [Fri, 12 Jul 2019 15:47:26 +0000 (11:47 -0400)]
test: add create_empty_image_rootdir() to simplify testcase setup

Almost all tests were manually mounting/unmounting $TESTDIR/root
from the loopback image; this moves all that into test-functions
so the test setup functions are simplier.

Also add test_setup_cleanup() function, to cleanup what is mounted
by create_empty_image_rootdir()

5 years agotest-network: drop warn_about_firewalld() as it is not necessary any more
Yu Watanabe [Tue, 16 Jul 2019 01:12:35 +0000 (10:12 +0900)]
test-network: drop warn_about_firewalld() as it is not necessary any more

5 years agotest-network: stop firewalld in setUpModule()
Yu Watanabe [Tue, 16 Jul 2019 01:12:05 +0000 (10:12 +0900)]
test-network: stop firewalld in setUpModule()

5 years agotest-network: add tests for link state file vs resolvectl or timedatectl
Yu Watanabe [Mon, 3 Jun 2019 22:05:07 +0000 (07:05 +0900)]
test-network: add tests for link state file vs resolvectl or timedatectl

5 years agoresolve: fix memleak
Yu Watanabe [Fri, 12 Jul 2019 05:19:36 +0000 (14:19 +0900)]
resolve: fix memleak

5 years agobash-completion: support ntp-servers and revert command for timedatectl
Yu Watanabe [Tue, 28 May 2019 03:48:46 +0000 (12:48 +0900)]
bash-completion: support ntp-servers and revert command for timedatectl

5 years agotimedatectl: add 'ntp-servers' and 'revert' commands to modify link NTP servers
Yu Watanabe [Tue, 28 May 2019 03:07:47 +0000 (12:07 +0900)]
timedatectl: add 'ntp-servers' and 'revert' commands to modify link NTP servers

5 years agoresolvectl: support networkd managed interfaces
Yu Watanabe [Mon, 27 May 2019 01:50:52 +0000 (10:50 +0900)]
resolvectl: support networkd managed interfaces

Closes #9808.

5 years agonetwork: implement DBus methods to set DNS related properties
Yu Watanabe [Sun, 26 May 2019 23:52:27 +0000 (08:52 +0900)]
network: implement DBus methods to set DNS related properties

5 years agoresolve: expose dns_server_address_valid()
Yu Watanabe [Sun, 26 May 2019 23:35:28 +0000 (08:35 +0900)]
resolve: expose dns_server_address_valid()

5 years agonetwork: introduce GetLinkByName and GetLinkByIndex bus methods
Yu Watanabe [Fri, 12 Jul 2019 02:11:08 +0000 (11:11 +0900)]
network: introduce GetLinkByName and GetLinkByIndex bus methods

5 years agonetwork: implement ListLinks DBus method
Yu Watanabe [Sun, 26 May 2019 20:35:52 +0000 (05:35 +0900)]
network: implement ListLinks DBus method

5 years agonetwork: move manager dbus prototypes to networkd-manager-bus.h
Yu Watanabe [Tue, 2 Jul 2019 14:26:03 +0000 (23:26 +0900)]
network: move manager dbus prototypes to networkd-manager-bus.h

5 years agoMerge pull request #13069 from yuwata/network-do-not-set-routes-when-carrier-lost
Yu Watanabe [Tue, 16 Jul 2019 21:56:32 +0000 (06:56 +0900)]
Merge pull request #13069 from yuwata/network-do-not-set-routes-when-carrier-lost

network: do not configure routes when dropping addresses

5 years agopid1: make sure to restore correct default values for some rlimits
Franck Bui [Wed, 10 Jul 2019 15:00:46 +0000 (17:00 +0200)]
pid1: make sure to restore correct default values for some rlimits

Commit fb39af4ce42d7ef9af63009f271f404038703704 forgot to restore the default
rlimit values (RLIMIT_NOFILE and RLIMIT_MEMLOCK) while PID1 is reloading.

This patch extracts the code in charge of initializing the default values for
those rlimits in order to create dedicated functions, which take care of their
initialization.

These functions are then called in parse_configuration() so we make sure that
the default values for these rlimits get restored every time PID1 is reloading
its configuration.

5 years agoMerge pull request #12851 from evverx/test-01-basic-asan
Frantisek Sumsal [Tue, 16 Jul 2019 18:51:59 +0000 (18:51 +0000)]
Merge pull request #12851 from evverx/test-01-basic-asan

tests: run TEST-01-BASIC under ASAN+UBSan again

5 years agoMerge pull request #13077 from poettering/activate-n-fds
Frantisek Sumsal [Tue, 16 Jul 2019 18:46:30 +0000 (18:46 +0000)]
Merge pull request #13077 from poettering/activate-n-fds

activate: move array allocation to heap

5 years agoMerge pull request #13076 from keszybz/pr/13062
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 18:02:26 +0000 (20:02 +0200)]
Merge pull request #13076 from keszybz/pr/13062

Timer formatting fixes

5 years agotest-network: extend sleep time
Yu Watanabe [Tue, 16 Jul 2019 16:01:07 +0000 (01:01 +0900)]
test-network: extend sleep time

Even if addresses provided by DHCP is assigned, the state file may not
be written yet, or resolved may not receive the state change signal
yet, or resolved may not process the signal yet...

5 years agonetwork: do not configure routes when dropping addresses
Yu Watanabe [Tue, 16 Jul 2019 04:02:38 +0000 (13:02 +0900)]
network: do not configure routes when dropping addresses

Follow-up for 4ff296b02411bb4f0dc38f48cbab06f8645d2a08.

5 years agocoredump: (void)ify all calls of iovw_put_string_field() where we ignore failure...
Franck Bui [Fri, 5 Jul 2019 13:35:47 +0000 (15:35 +0200)]
coredump: (void)ify all calls of iovw_put_string_field() where we ignore failure on purpose

All those calls are dealing with optional metadata.

5 years agocoredump: gather all process metadata in iovecs first and then cache them
Franck Bui [Thu, 27 Jun 2019 16:23:01 +0000 (18:23 +0200)]
coredump: gather all process metadata in iovecs first and then cache them

Now we first gather all process metadata and populate the process info cache
with them. In this way, the cache only references metadata recorded in iovecs[]
so there's no need to bother freeing (part of) cached metadata later.

The other advantage is that the coredump handler mode and the service mode are
more similar as the cache is populated in the same way for both cases.

It also renames the array indexes so it becomes clear which metadata are passed
by the kernel and which ones are retrieved from the runtime environment.

5 years agocoredump: use 'input_fd' name for the pipe fd passed by the kernel everywhere
Franck Bui [Fri, 28 Jun 2019 04:52:07 +0000 (06:52 +0200)]
coredump: use 'input_fd' name for the pipe fd passed by the kernel everywhere

'input_fd' variable name is used mostly everywhere except in process_socket()
where it's named 'coredump_fd', which is pretty confusing since 'coredump_fd'
is used for the coredump filename in submit_coredump().

So let's use 'input_fd' consistently as name for the pipe fd passed by the
kernel.

No functional changes.

5 years agoMerge pull request #13038 from poettering/pam-fixes
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 15:09:29 +0000 (17:09 +0200)]
Merge pull request #13038 from poettering/pam-fixes

tmpfiles factory PAM tweaks

5 years agotests: bump up QEMU_MEM
Evgeny Vereshchagin [Tue, 16 Jul 2019 15:01:26 +0000 (15:01 +0000)]
tests: bump up QEMU_MEM

5 years agotests: run TEST-01-BASIC under ASAN+UBSan again
Evgeny Vereshchagin [Tue, 16 Jul 2019 15:01:04 +0000 (15:01 +0000)]
tests: run TEST-01-BASIC under ASAN+UBSan again

Not that `journalctl --flush` is no longer flaky, it should be
safe to bring the test back.

5 years agoMerge pull request #12925 from yuwata/network-generator
Lennart Poettering [Tue, 16 Jul 2019 14:23:42 +0000 (16:23 +0200)]
Merge pull request #12925 from yuwata/network-generator

network-generator: introduce new tool systemd-network-generator

5 years agoMerge pull request #13074 from poettering/format-tree-many
Lennart Poettering [Tue, 16 Jul 2019 14:03:54 +0000 (16:03 +0200)]
Merge pull request #13074 from poettering/format-tree-many

table_add_many() improvements

5 years agoMerge pull request #13073 from poettering/variety-galore
Lennart Poettering [Tue, 16 Jul 2019 13:59:31 +0000 (15:59 +0200)]
Merge pull request #13073 from poettering/variety-galore

Variety galore

5 years agojournal: properly read unaligned le64 integers
Lennart Poettering [Tue, 16 Jul 2019 13:22:26 +0000 (15:22 +0200)]
journal: properly read unaligned le64 integers

Fixes: #13051

Replaces: #13064

5 years agoactivate: move array allocation to heap
Lennart Poettering [Tue, 16 Jul 2019 12:52:07 +0000 (14:52 +0200)]
activate: move array allocation to heap

In theory 'n' could get quite large, and some sanitizers notice that,
let's hence avoid the stack, and use the heap instead.

Moreover, there's no need to include the first 3 fds in the array,
close_all() excludes those anyway.

See: #13064

5 years agowait-online: change log level
Yu Watanabe [Tue, 16 Jul 2019 01:21:18 +0000 (10:21 +0900)]
wait-online: change log level

During boot, systemd-networkd-wait-online writes following logs many
times:
```
systemd-networkd-wait-online[753]: lo: link is ignored
```

5 years agoMerge pull request #13067 from yuwata/news-network-section
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 12:38:24 +0000 (14:38 +0200)]
Merge pull request #13067 from yuwata/news-network-section

NEWS: update section name

5 years agodoc: update explanation of IPv6AcceptRA=
Yu Watanabe [Tue, 16 Jul 2019 01:46:27 +0000 (10:46 +0900)]
doc: update explanation of IPv6AcceptRA=

5 years agotree-wide: use lowercase table headers
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 11:32:51 +0000 (13:32 +0200)]
tree-wide: use lowercase table headers

https://github.com/systemd/systemd/pull/13062#discussion_r303847484
> the formatter uppercases them anyway, and this way the JSON output of the
> formatter is nicer as it uses the table header fields 1:1 for the json
> output.

5 years agopid1: split out another helper func for two similar code paths
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 11:08:41 +0000 (13:08 +0200)]
pid1: split out another helper func for two similar code paths

5 years agopid1: split out helper func for two similar code paths
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 10:54:05 +0000 (12:54 +0200)]
pid1: split out helper func for two similar code paths

5 years agorun: move comment to appropriate place
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 10:22:37 +0000 (12:22 +0200)]
run: move comment to appropriate place

5 years agosystemctl: print non-elapsing timers as "n/a" not "(null)"
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 10:16:24 +0000 (12:16 +0200)]
systemctl: print non-elapsing timers as "n/a" not "(null)"

TimersCalendar={ OnCalendar=1970-01-01 00:00:00 UTC ; next_elapse=(null) }
 ↓
TimersCalendar={ OnCalendar=1970-01-01 00:00:00 UTC ; next_elapse=n/a }

5 years agoMerge pull request #13062 from yuwata/analyze-use-table
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2019 11:28:34 +0000 (13:28 +0200)]
Merge pull request #13062 from yuwata/analyze-use-table

systemd-analyze: use Table

5 years agoanalyze: port over one part of systemd-analyze to use new table_add_many() concepts
Lennart Poettering [Tue, 16 Jul 2019 10:45:38 +0000 (12:45 +0200)]
analyze: port over one part of systemd-analyze to use new table_add_many() concepts

5 years agoformat-table: add some minimal testing for new table_add_many() features
Lennart Poettering [Tue, 16 Jul 2019 10:45:13 +0000 (12:45 +0200)]
format-table: add some minimal testing for new table_add_many() features

5 years agoformat-table: add ability to set cell attributes within table_add_many()
Lennart Poettering [Tue, 16 Jul 2019 10:43:42 +0000 (12:43 +0200)]
format-table: add ability to set cell attributes within table_add_many()

table_add_many() is so much shorter and easier to read than
table_add_cell() with its accessors. Let's teach table_add_many() more
tricks, so that reverting to table_add_cell() is not needed that often
anymore.

5 years agotest: make sure colors don't confuse our test
Lennart Poettering [Tue, 16 Jul 2019 10:42:43 +0000 (12:42 +0200)]
test: make sure colors don't confuse our test

5 years agoformat-table: fix parameter name
Lennart Poettering [Tue, 16 Jul 2019 10:42:19 +0000 (12:42 +0200)]
format-table: fix parameter name

5 years agoshared: no need to check result of strndupa()
Lennart Poettering [Tue, 16 Jul 2019 10:09:02 +0000 (12:09 +0200)]
shared: no need to check result of strndupa()

5 years agotree-wide: use empty-to-root a bit more
Lennart Poettering [Tue, 16 Jul 2019 10:08:47 +0000 (12:08 +0200)]
tree-wide: use empty-to-root a bit more

5 years agocryptsetup: no need to zero-initialize zero-initialized structures
Lennart Poettering [Tue, 16 Jul 2019 09:54:12 +0000 (11:54 +0200)]
cryptsetup: no need to zero-initialize zero-initialized structures

5 years agoMerge pull request #13063 from keszybz/cgroup-path-fixes
Lennart Poettering [Tue, 16 Jul 2019 09:53:31 +0000 (11:53 +0200)]
Merge pull request #13063 from keszybz/cgroup-path-fixes

Cgroup path fixes

5 years agoNEWS: update section name
Yu Watanabe [Tue, 16 Jul 2019 01:30:47 +0000 (10:30 +0900)]
NEWS: update section name

5 years agoMerge pull request #13058 from yuwata/network-enter-failed
Yu Watanabe [Tue, 16 Jul 2019 00:38:39 +0000 (09:38 +0900)]
Merge pull request #13058 from yuwata/network-enter-failed

network: make link enter failed state when a configuration fails

5 years agoanalyze: fix formatting of timestamps with 0 µs
Zbigniew Jędrzejewski-Szmek [Mon, 15 Jul 2019 17:11:16 +0000 (19:11 +0200)]
analyze: fix formatting of timestamps with 0 µs

There is a rule that "%.0d" formats 0 as "". There is no such rule for
"%0d" and 0 :(. The output had an extra 0 if usec was 0.

5 years agotree-wide: drop duplicated blank lines
Yu Watanabe [Sun, 14 Jul 2019 16:59:14 +0000 (01:59 +0900)]
tree-wide: drop duplicated blank lines

```
$ for i in */*.[ch] */*/*.[ch]; do sed -e '/^$/ {N; s/\n$//g}' -i $i; done
$ git checkout HEAD -- basic/linux shared/linux
```

5 years agoApply empty_to_root() in three more spots for safety
Zbigniew Jędrzejewski-Szmek [Mon, 15 Jul 2019 16:16:03 +0000 (18:16 +0200)]
Apply empty_to_root() in three more spots for safety

5 years agopid1: fix GetUnitProcesses
Zbigniew Jędrzejewski-Szmek [Mon, 15 Jul 2019 15:29:56 +0000 (17:29 +0200)]
pid1: fix GetUnitProcesses

This effectively reverts one chunk of 657ee2d82b73818d0ee8c3c5962c1cb2dbd52b76.

For a while I couldn't figure out why 'systemctl status -- -.slice' fails to
list any processes...