]>
git.ipfire.org Git - thirdparty/systemd.git/log
Lennart Poettering [Wed, 6 Mar 2019 18:47:06 +0000 (19:47 +0100)]
bus-unit-util: split out code that shows a unit's process tree
The code is complex enough to deserve its own .c file. Let's split this
out.
Lennart Poettering [Wed, 6 Mar 2019 18:38:45 +0000 (19:38 +0100)]
shared: split out code to wait for jobs to complet into its own source file
It's complex enough and quite a few functions. Let's hence split this
out.
No code change, just some rearranging of source files.
Lennart Poettering [Wed, 6 Mar 2019 18:23:38 +0000 (19:23 +0100)]
systemctl: drop unnecessary {}
Lennart Poettering [Wed, 6 Mar 2019 18:22:33 +0000 (19:22 +0100)]
systemctl: use strv_consume() where appropriate
Lennart Poettering [Wed, 6 Mar 2019 18:21:48 +0000 (19:21 +0100)]
systemctl: minimize scope of 'p'
Lennart Poettering [Wed, 6 Mar 2019 18:20:08 +0000 (19:20 +0100)]
execute: use path_join() where appropriate
Lennart Poettering [Wed, 6 Mar 2019 18:19:38 +0000 (19:19 +0100)]
bus-unit-util: insist on full initialization
Lennart Poettering [Wed, 6 Mar 2019 18:18:37 +0000 (19:18 +0100)]
bus-unit-util: never call into log_job_error_with_service_result() if we are not a service
The call can't handle non-services, hence don't bother.
Lennart Poettering [Wed, 6 Mar 2019 18:16:25 +0000 (19:16 +0100)]
bus-unit-util: move explanations array to inner scope
It's specific to service units, hence let's minimize the scope since it
has no validity outside of the log message generation for service units.
Lennart Poettering [Wed, 6 Mar 2019 18:16:03 +0000 (19:16 +0100)]
bus-unit-util: use structure initialization
Lennart Poettering [Wed, 6 Mar 2019 18:15:22 +0000 (19:15 +0100)]
bus-unit-util: use free_and_strdup() where we can
Lennart Poettering [Wed, 6 Mar 2019 17:55:13 +0000 (18:55 +0100)]
systemctl: refactor code to watch unit ActiveState a bit
let's split out one function, to make this reusable
Lennart Poettering [Tue, 12 Mar 2019 19:41:14 +0000 (20:41 +0100)]
tests: add tests for embedded newlines in /proc/cmdline
Prompted by: #7097
Lennart Poettering [Tue, 12 Mar 2019 19:13:29 +0000 (20:13 +0100)]
bootspec: don't log in boot_entries_load_config_auto() about no ESP
Let's do it in the caller instead. That way, logind can stay silent
about it.
Fixes: #11950
Frantisek Sumsal [Wed, 13 Mar 2019 09:07:44 +0000 (10:07 +0100)]
test: avoid double-fsck'ing of the rootfs on Arch
Since systemd 206 the combination of systemd and mkinitcpio
causes, under certain conditions, the rootfs to be double fsck'd.
Symptoms:
```
:: performing fsck on '/dev/sda1'
systemd: clean, 3523/125488 files, 141738/501760 blocks
********************** WARNING **********************
* *
* The root device is not configured to be mounted *
* read-write! It may be fsck'd again later. *
* *
*****************************************************
<snip>
[ OK ] Started File System Check on Root Device
```
This occurs when neither 'ro' or 'rw', or only 'ro' is present
on the kernel command line. The solution is to mount the roofs
as read-write on the kernel command line, so systemd knows to not fsck
it again.
Lennart Poettering [Wed, 13 Mar 2019 11:29:25 +0000 (12:29 +0100)]
man: clarify that sd_journal_seek_head() seeks *before* the first entry
Zbigniew Jędrzejewski-Szmek [Wed, 13 Mar 2019 16:02:14 +0000 (17:02 +0100)]
Merge pull request #11986 from poettering/util-split
some splitting up of util.[ch]
Tobias Jungel [Sun, 10 Mar 2019 20:25:24 +0000 (21:25 +0100)]
networkd: Add bridge port capabilities
This PR adds the configuration switches for multicast flooding, neighbor
suppression and learning of a bridge port.
Adam Jackson [Tue, 12 Mar 2019 19:22:13 +0000 (20:22 +0100)]
login: mark nomodeset fb devices as master-of-seat
When 'nomodeset' is specified, there's no DRM driver to take over from
efifb. This means no device will be marked as a seat master, so gdm will
never find a sufficiently active seat to start on.
I'm not aware of an especially good way to detect this through a proper
kernel API, so check for the word 'nomodeset' on the command line and
allow fbdev devices to be seat masters if found.
For https://bugzilla.redhat.com/show_bug.cgi?id=
1683197 .
Lennart Poettering [Wed, 13 Mar 2019 11:14:47 +0000 (12:14 +0100)]
util: split out sorting related calls to new sort-util.[ch]
Lennart Poettering [Wed, 13 Mar 2019 11:02:21 +0000 (12:02 +0100)]
util: split out memcmp()/memset() related calls into memory-util.[ch]
Just some source rearranging.
Lennart Poettering [Wed, 13 Mar 2019 10:35:47 +0000 (11:35 +0100)]
util: split out some stuff into a new file limits-util.[ch]
Lennart Poettering [Wed, 13 Mar 2019 10:21:49 +0000 (11:21 +0100)]
util: split out namespace related stuff into a new namespace-util.[ch] pair
Just some minor reorganiztion.
Frantisek Sumsal [Tue, 12 Mar 2019 21:44:25 +0000 (22:44 +0100)]
test: don't overwrite TESTDIR if already set
Lennart Poettering [Wed, 13 Mar 2019 09:15:27 +0000 (10:15 +0100)]
Merge pull request #11861 from yuwata/network-verify-2
network: config parser updates and wireguard refactoring
Lennart Poettering [Wed, 13 Mar 2019 09:10:43 +0000 (10:10 +0100)]
Merge pull request #11893 from yuwata/wait-online-take-operstate
wait-online: optionally take required minimum operational state
Lennart Poettering [Wed, 13 Mar 2019 08:57:18 +0000 (09:57 +0100)]
Merge pull request #11283 from yuwata/fix-11276
core/namespace: introduce new mount mode READWRITE_IMPLICIT
Yu Watanabe [Mon, 11 Mar 2019 05:04:06 +0000 (14:04 +0900)]
cryptsetup: add same-cpu-crypt and submit-from-crypt-cpus options
Closes #11946.
Lennart Poettering [Wed, 13 Mar 2019 08:36:57 +0000 (09:36 +0100)]
Merge pull request #11933 from keszybz/coverity
Minor tweaks to boot/efi code inspired by coverity
Yu Watanabe [Wed, 6 Mar 2019 15:16:54 +0000 (00:16 +0900)]
wait-online: use log_link_debug() or friends
Yu Watanabe [Wed, 6 Mar 2019 14:54:57 +0000 (23:54 +0900)]
network: move log_link_debug() or friends to log-link.h
Yu Watanabe [Wed, 6 Mar 2019 14:47:29 +0000 (23:47 +0900)]
man: update wait-online and RequiredForOnline= setting
Yu Watanabe [Wed, 6 Mar 2019 14:46:33 +0000 (23:46 +0900)]
wait-online: support $REQUIRED_OPER_STATE_FOR_ONLINE= in state file
This also make wait-online optionally take operstate in -i option,
and adds '--operstate' option to wait-online which also takes operstate.
Also, this contains huge refactoring for wait-online.
Yu Watanabe [Wed, 6 Mar 2019 05:45:17 +0000 (14:45 +0900)]
sd-network: add sd_network_link_get_required_operstate_for_online()
It reads $REQUIRED_OPER_STATE_FOR_ONLINE in serialized link data.
Yu Watanabe [Wed, 6 Mar 2019 05:29:49 +0000 (14:29 +0900)]
network: make RequiredForOnline= also take operational state
This will be used by systemd-networkd-wait-online.
Yu Watanabe [Tue, 5 Mar 2019 06:15:40 +0000 (15:15 +0900)]
hashmap: add hashmap_free_free_keyp and friend
Yu Watanabe [Tue, 5 Mar 2019 05:41:56 +0000 (14:41 +0900)]
network: introduce 'degraded-carrier' operstate to order all states
Previously, 'degraded' state is ambiguous for bonding or bridge master:
1. one or more slave interfaces does not have carrier,
2. no link local address is assigned to the master,
3. combination of the above two.
This makes the above case 1 and 3 are in the new 'degraded-carrier'
state, and makes 'degraded' state as all slaves are active but no
link local address on master.
Yu Watanabe [Tue, 5 Mar 2019 05:39:57 +0000 (14:39 +0900)]
network: move LinkOperationalState and relevant functions to network-util.[ch]
Yu Watanabe [Wed, 13 Mar 2019 05:26:38 +0000 (14:26 +0900)]
test-network: wait more and fix wrong operational state
Closes #11977.
Yu Watanabe [Mon, 4 Mar 2019 05:42:03 +0000 (14:42 +0900)]
test-network: add test for WireGuard.PrivateKeyFile=
Yu Watanabe [Mon, 4 Mar 2019 05:19:21 +0000 (14:19 +0900)]
wireguard: add PrivateKeyFile= option
Closes #11878.
Yu Watanabe [Mon, 4 Mar 2019 05:31:36 +0000 (14:31 +0900)]
wireguard: check whether PrivateKey= and PublicKey= are set
Yu Watanabe [Tue, 5 Mar 2019 03:35:43 +0000 (12:35 +0900)]
wireguard: drop unused arguments and rename parse_wireguard_key()
Yu Watanabe [Mon, 4 Mar 2019 05:12:03 +0000 (14:12 +0900)]
wireguard: do not log wireguard key
It may be PrivateKey=.
Yu Watanabe [Fri, 1 Mar 2019 06:41:47 +0000 (15:41 +0900)]
wireguard: reuse sd_event_source object
Yu Watanabe [Thu, 28 Feb 2019 08:12:02 +0000 (17:12 +0900)]
wireguard: use NetworkConfigSection to manage [WireGuardPeer] sections
This also contains huge refactoring of wireguard support.
Yu Watanabe [Fri, 1 Mar 2019 06:21:22 +0000 (15:21 +0900)]
test-network: add tests for invalid Address sections
Yu Watanabe [Fri, 1 Mar 2019 08:39:45 +0000 (17:39 +0900)]
test: make network_verify() public and use it in test-networkd-conf
Yu Watanabe [Fri, 1 Mar 2019 04:27:47 +0000 (13:27 +0900)]
network: drop sections contain invalid settings in network_verify()
If e.g., an [Address] section has an invalid setting, then
previously assigned settings in the section is freed, and
only later settings are stored. That may cause partially broken
section stored in Network object.
This makes if an invalid setting is found, then set 'invalid' flag
instead of freeing it. And invalid sections are dropped later by
network_verify().
Yu Watanabe [Fri, 1 Mar 2019 04:19:53 +0000 (13:19 +0900)]
network: make all xxx_new_static() static
These functions are called from only config parsers, and the parsers are
in the same files. So, let's make them static.
Yu Watanabe [Tue, 5 Mar 2019 01:51:57 +0000 (10:51 +0900)]
network: add IPv4LL route right after .network file is parsed
Previously, the route is added when the .network config is assigned
to a Link. So, if multiple links match the .network file, the route
entry becomes duplicated in the corresponding Network object.
Yu Watanabe [Thu, 28 Feb 2019 07:30:14 +0000 (16:30 +0900)]
network: move NetworkConfigSection and related functions to networkd-util.[ch]
Yu Watanabe [Thu, 28 Feb 2019 07:18:57 +0000 (16:18 +0900)]
network: use ltype to determine netdev kind in config_parse_stacked_netdev()
Yu Watanabe [Fri, 28 Dec 2018 07:30:21 +0000 (16:30 +0900)]
test: add a testcase for ProtectHome=tmpfs vs ProtectSystem=strict
Yu Watanabe [Sat, 29 Dec 2018 10:59:15 +0000 (19:59 +0900)]
core/namespace: logs mount mode when the entry is dropped
Yu Watanabe [Fri, 28 Dec 2018 07:11:52 +0000 (16:11 +0900)]
core/namespace: introduce new mount mode READWRITE_IMPLICIT
ProtectSystem=strict or ProtectKernelTunable=yes create implicit
read-write mounts, but they are not overridable by TemporaryFileSystem=.
This makes such implicit read-write mounts use the new mount mode.
So, they can be override by TemproraryFileSystem= now.
A typical usecase is that ProtectSystem=strict and ProtectHome=tmpfs.
Fixes #11276.
Lennart Poettering [Tue, 12 Mar 2019 17:33:14 +0000 (18:33 +0100)]
Merge pull request #11919 from poettering/login-simplify
various fixes to $HOME and $SHELL validation
Lennart Poettering [Tue, 12 Mar 2019 14:53:05 +0000 (15:53 +0100)]
update TODO
Lennart Poettering [Mon, 11 Mar 2019 17:28:06 +0000 (18:28 +0100)]
login: drop redundant newline
Lennart Poettering [Tue, 12 Mar 2019 14:52:06 +0000 (15:52 +0100)]
user-util: extra paranoia, make sure $SHELL can't be fucked with in suid programs
It's better to be safe than sorry, let's not allow overriding of the
user shell in suid binaries. Similar for $USER.
Lennart Poettering [Thu, 7 Mar 2019 10:00:40 +0000 (11:00 +0100)]
execute: no need to synthesize $HOME for uid==0 again, get_home_dir() already does that
Lennart Poettering [Thu, 7 Mar 2019 10:00:13 +0000 (11:00 +0100)]
execute: simplify paths we set as HOME/SHELL for invoked programs
Lennart Poettering [Thu, 7 Mar 2019 09:54:11 +0000 (10:54 +0100)]
user-util: simplify paths retrieved from $HOME and $SHELL
Let's add some extra paranoia, after #11910
Lennart Poettering [Thu, 7 Mar 2019 09:53:23 +0000 (10:53 +0100)]
user-util: be more strict when reading $HOME and $SHELL
Lennart Poettering [Thu, 7 Mar 2019 09:52:35 +0000 (10:52 +0100)]
user-util: paranoia — add overflow check on ERANGE loop
Lennart Poettering [Thu, 7 Mar 2019 09:45:14 +0000 (10:45 +0100)]
user-util: use SYNTHETIC_ERRNO() where we can
Lennart Poettering [Thu, 7 Mar 2019 09:44:59 +0000 (10:44 +0100)]
path-util: minimize variable scope
Lennart Poettering [Thu, 7 Mar 2019 09:37:04 +0000 (10:37 +0100)]
path-util: check validity before normalization in path_simplify_and_warn()
As the normalization check includes a validation check the order
matters.
Lennart Poettering [Thu, 7 Mar 2019 09:32:48 +0000 (10:32 +0100)]
user-util: filter out invalid user record data a bit more thorougly
Lennart Poettering [Thu, 7 Mar 2019 09:31:26 +0000 (10:31 +0100)]
logind: normalize home path when creating user object
Triggered by: #11910
Zbigniew Jędrzejewski-Szmek [Tue, 12 Mar 2019 14:08:20 +0000 (15:08 +0100)]
Merge pull request #11964 from mrc0mmand/even-more-fuzzers
fuzz: add fuzzers for calendar & time expressions
Davide Cavalca [Wed, 27 Feb 2019 16:19:07 +0000 (11:19 -0500)]
meson: scope more git invocations with current_source_dir()
Zbigniew Jędrzejewski-Szmek [Tue, 12 Mar 2019 13:29:14 +0000 (14:29 +0100)]
Merge pull request #11927 from poettering/network-namespace-path
Add NetworkNamespacePath= to unit files
Sylvain Plantefève [Thu, 7 Mar 2019 22:10:46 +0000 (23:10 +0100)]
po: update French translation
Zbigniew Jędrzejewski-Szmek [Fri, 8 Mar 2019 13:37:26 +0000 (14:37 +0100)]
shared/bootspec: avoid going through -1 when calculating array index
Coverity was complaining in CID#
1399407 that config->entries might be used
while NULL. Let's add an assert to make sure it's not.
Also, let's quit early if we have no entries to loop through. The code was
not incorrect, but it's cleaner to avoid any negative indices.
Zbigniew Jędrzejewski-Szmek [Fri, 8 Mar 2019 13:16:40 +0000 (14:16 +0100)]
boot: avoid 32-bit calculation for a 64-bit lvalue
Coverity CID#
1399116 :
> Potentially overflowing expression
> gpt_header_buffer.gpt_header.SizeOfPartitionEntry * gpt_header_buffer.gpt_header.NumberOfPartitionEntries
> with type unsigned int (32 bits, unsigned) is evaluated using 32-bit
> arithmetic, and then used in a context that expects an expression of type
> UINTN (64 bits, unsigned).
Let's import the ALIGN_TO macro to sd-boot and use it to avoid the issue.
Zbigniew Jędrzejewski-Szmek [Tue, 12 Mar 2019 12:17:33 +0000 (13:17 +0100)]
Merge pull request #11943 from yuwata/device-action-seqnum-cleanups
sd-device: store parsed SEQNUM and ACTION string
Frantisek Sumsal [Mon, 11 Mar 2019 18:57:09 +0000 (19:57 +0100)]
fuzz: add a fuzzer for time utils
Frantisek Sumsal [Mon, 11 Mar 2019 18:56:34 +0000 (19:56 +0100)]
fuzz: add a fuzzer for calendarspec
Yu Watanabe [Mon, 11 Mar 2019 04:26:29 +0000 (13:26 +0900)]
bash-completion: also suggest units in reloading or activating
Closes #11942.
Zbigniew Jędrzejewski-Szmek [Tue, 12 Mar 2019 10:21:06 +0000 (11:21 +0100)]
Merge pull request #11897 from mrc0mmand/parallelize-TEST-24-UNIT-TESTS
test: parallelize tasks in TEST-24-UNIT-TESTS
Evgeny Vereshchagin [Mon, 11 Mar 2019 20:05:13 +0000 (21:05 +0100)]
lgtm: replace the query used for looking for fgets with a more general query
to make it easier to comlain about `strtok` :-)
Inspired by https://github.com/systemd/systemd/pull/11963, which, in turn,
was prompted by https://github.com/systemd/systemd/pull/11555.
Yu Watanabe [Tue, 12 Mar 2019 03:20:13 +0000 (12:20 +0900)]
udev: fix memleak in 'udevadm trigger --settle'
Fixes #11966.
Yu Watanabe [Mon, 11 Mar 2019 18:53:22 +0000 (03:53 +0900)]
test: wait for a while active state of .device is updated
Lennart Poettering [Mon, 11 Mar 2019 14:58:52 +0000 (15:58 +0100)]
efivars: make sure efi_loader_entry_name_valid() is always compiled in
The string validation should always be done correctly, and not fail just
because EFI is turned off. After all an EFI loader entry name string
remains properly formatted regardless if EFI is on or off...
Fixes: #11948
Yu Watanabe [Sat, 9 Mar 2019 02:07:26 +0000 (11:07 +0900)]
libudev: use device_get_seqnum() and device_get_action()
Yu Watanabe [Sat, 9 Mar 2019 01:45:48 +0000 (10:45 +0900)]
login: use device_is_in_action()
Yu Watanabe [Sat, 9 Mar 2019 01:37:12 +0000 (10:37 +0900)]
network: use device_get_action()
Yu Watanabe [Sat, 9 Mar 2019 01:28:11 +0000 (10:28 +0900)]
core/device: use device_get_action()
Yu Watanabe [Sat, 9 Mar 2019 01:20:42 +0000 (10:20 +0900)]
udevadm-test: check action string earlier
The string will be checked later in device_new_from_synthetic_event(),
but let's check it earlier in parse_argv().
Yu Watanabe [Sat, 9 Mar 2019 01:14:38 +0000 (10:14 +0900)]
udevadm: use device_get_action()
Yu Watanabe [Sat, 9 Mar 2019 01:09:40 +0000 (10:09 +0900)]
udev: refuse to modify SEQNUM by udev rules
Yu Watanabe [Sat, 9 Mar 2019 01:08:03 +0000 (10:08 +0900)]
udevd: use device_get_action() and device_get_seqnum()
Yu Watanabe [Sat, 9 Mar 2019 01:45:15 +0000 (10:45 +0900)]
util: introduce device_for_action()
It will be used in later commits.
Yu Watanabe [Fri, 8 Mar 2019 08:25:00 +0000 (17:25 +0900)]
sd-device: store parsed ACTION= and SEQNUM= udev properties
Lennart Poettering [Mon, 11 Mar 2019 17:04:22 +0000 (18:04 +0100)]
Merge pull request #11960 from mrc0mmand/more-fuzzers
fuzz: introduce more fuzzers
Clemens Gruber [Mon, 11 Mar 2019 14:25:20 +0000 (15:25 +0100)]
network: introduce TripleSampling= option in CAN section
When enabled, three samples are used to determine the value of a
received bit by majority rule.
This patch adds support for the TripleSampling= option in the [CAN]
section of .network files.
Yu Watanabe [Fri, 8 Mar 2019 03:34:56 +0000 (12:34 +0900)]
test-network: add tests for issue #11921
Zbigniew Jędrzejewski-Szmek [Mon, 11 Mar 2019 13:27:29 +0000 (14:27 +0100)]
nspawn: fix memleak uncovered by fuzzer
Also use TAKE_PTR as appropriate.
Frantisek Sumsal [Mon, 11 Mar 2019 11:56:10 +0000 (12:56 +0100)]
fuzz: add a memleak reproducer for fuzz-nspawn-settings