Commit graph

26191 commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek 2a8f53c67b Use unit->id instead of description in messages
v2:
- rename unit_identifier to unit_status_string
2019-07-10 13:35:26 +02:00
Zbigniew Jędrzejewski-Szmek 36cf45078c Add config and kernel commandline option to use short identifiers
No functional change, just docs and configuration and parsing.

v2:
- change ShortIdentifiers=yes|no to StatusUnitFormat=name|description.
2019-07-10 13:35:26 +02:00
Zbigniew Jędrzejewski-Szmek c1d95b713a pid1: tiny simplification
v2:
- use empty_to_root()
2019-07-10 13:35:17 +02:00
Dave Reisner d8c72e87a0 importd: Avoid need for fd translation table
Make use of curl_multi_assign to associate each IO sd_event_source with
a CURL object. This means we always get passed the right event source
and don't need to worry about looking up the associated CURL object,
particularly in the case where the FD has been closed on a REMOVE event.
2019-07-09 10:00:13 +02:00
Yu Watanabe 593aee8f3c network: read sysctl value only once (#12990)
Follow-up for bafa964144.

When the value is changed, networkd needs to be restarted.
2019-07-09 09:56:50 +02:00
Yu Watanabe 8164e30603 util: fix sign-compare warning 2019-07-09 09:54:13 +02:00
Zbigniew Jędrzejewski-Szmek 334c0979f3 pid1: fix serialization/deserialization of commmands with spaces
Fixes #12258.

This is enough to reproduce:
$ systemd-run bash -c 'sleep 10' && systemctl daemon-reload
would result in
Current command vanished from the unit file.

We would serialize as:
ExecStart 0 /usr/bin/bash /usr/bin/bash -c sleep 10000
which of course can't work.
Now we serialize as
ExecStart 0 /usr/bin/bash "/usr/bin/bash" "-c" "sleep 10".
2019-07-09 01:25:35 +02:00
Zbigniew Jędrzejewski-Szmek cd132992bb nspawn: fix abort when we cannot execve
If execve failed, we would die in safe_close(), because master was already
closed by fdset_close_others() on line 3123. IIUC, we don't need to keep the
fd open after sending it, so let's just close it immediately.

Reproducer:
sudo build/systemd-nspawn -M rawhide fooooooo

Fixup for 3acc84ebd9.
2019-07-09 01:24:20 +02:00
Zbigniew Jędrzejewski-Szmek 5350df966a
Merge pull request #12972 from intelfx/cryptsetup-enable-libcryptsetup-debug
cryptsetup: properly handle libcryptsetup debug logging
2019-07-09 00:47:06 +02:00
Ivan Shapovalov ac8bb308b7 growfs: call crypt_set_debug_level() correctly, skip if not needed 2019-07-08 16:04:17 +03:00
Ivan Shapovalov 568a84048e cryptsetup: enable libcryptsetup debug logging if we want it
Even if we set a log callback that would accept debug messages, libcryptsetup
needs debug logging enabled explicitly for it to happen.
2019-07-08 16:02:41 +03:00
Ivan Shapovalov 8c71b2cd44 cryptsetup: set libcryptsetup global log callback too 2019-07-06 13:56:19 +03:00
Ivan Shapovalov df2452c553 basic/log: fix SYSTEMD_LOG_* parsing error messages
(likely a copy-paste gone wrong)
2019-07-06 13:47:06 +03:00
Dan Streetman ac2dce5f36 src/network/networkd-dhcp4.c: set prefsrc for classless or static routes
When a DHCP server provides only a gateway, the networkd-dhcp4 code adds a
default route using that gateway, and sets the just-provided address as
the route's prefsrc; this was added in commit
46b0c76e2c

However, if the DHCP server has also provided classless route(s), these
are used instead of a default route using the provided gateway; the
networkd-dhcp4 code sets up the classless routes, but does not use the
just-provided dhcp address as the prefsrc of the route(s).  Note that
it also doesn't set the prefsrc for static routes, though it should.

If the interface has only the dhcp-provided address, this is not usually
a problem, but if it has another address (e.g. a static address), then
traffic sent through the dhcp-provided gateway might not use the
dhcp-provided source address.  If the gateway router only will route
traffic from the dhcp-provided address, then the dhcp client system's
networking through the router will not work.

Fixes: #12969
2019-07-06 07:36:31 +09:00
Lennart Poettering 1ccbb359a1 login: move file definitions outside of the conditionalization 2019-07-05 17:55:49 +02:00
Zbigniew Jędrzejewski-Szmek 6490a017e2
Merge pull request #12964 from yuwata/network-bridge-vlan-issue-12958
network: fix BridgeVLAN issue
2019-07-05 13:58:21 +02:00
Yu Watanabe 6a54fb8f1e
Merge pull request #12963 from keszybz/analyze-timestamp
systemd-analyze dump fixup
2019-07-05 17:15:00 +09:00
Yu Watanabe 3a1df8c4cb network: fix issue found by UBSan 2019-07-05 16:37:34 +09:00
Yu Watanabe 412ac780ac network: fix the initial value of the counter for brvlan
Fixes #12958.
2019-07-05 16:35:11 +09:00
Yu Watanabe fb721f084c network: re-implement parse_vid_range() 2019-07-05 16:35:06 +09:00
Yu Watanabe 7bbb43a79a network: minor coding-style update 2019-07-05 16:34:01 +09:00
Lennart Poettering 7e69d90c8d varlink: add varlink server to event loop only if there is one 2019-07-04 22:53:49 +02:00
Zbigniew Jędrzejewski-Szmek 3454129571 pid1: use monotonic timestamp in dump if realtime is not available
$ systemd-analyze dump | head -3
Timestamp firmware: (null)
Timestamp loader: (null)
Timestamp kernel: Mon 2019-07-01 17:21:02 CEST

Since this is a debugging interface, it is OK to change the output format.
The user can infer what "Timestamp firmware: 123.456ms" means.
2019-07-04 22:52:25 +02:00
Lennart Poettering e4c5d78e5f portabled: Make use of SYNTHETIC_ERRNO() 2019-07-04 19:45:23 +02:00
Lennart Poettering b67f05dabf fsck: split out fsck return code definitions into a header file of its own
This way we can make use of it from other components too, such as
systemd-homed.
2019-07-05 02:31:12 +09:00
Lennart Poettering a709a3154d dissect: split out DM deferred remove into src/shared/dm-util.c
The function is generally useful, let's split it out so that we can make
use of it later on in systemd-homed.
2019-07-05 02:19:24 +09:00
Zbigniew Jędrzejewski-Szmek 1f65fd4926 basic/time-util: add helper function to check if timestamp is set
No functional change.
2019-07-04 19:12:47 +02:00
Lennart Poettering 52d8bcd131
Merge pull request #12949 from yuwata/sd-netlink-sd-netlink-message-enter-array
sd-netlink: introduce sd_netlink_message_enter_array()
2019-07-04 15:46:02 +02:00
Yu Watanabe 9104009e5e test: add test for sd_netlink_message_enter_array() 2019-07-04 17:36:09 +09:00
Zbigniew Jędrzejewski-Szmek 6ed5ef9819 meson: create /var/log/journal/{,remote/} conditionally
Not everybody has those dirs in the filesystem (and they don't need to).
When creating an installation package using $DESTDIR, it is easy enough to
remove or ignore those directories, but if installing into a real root, it
is ugly to create and remove them. Let's add an option so people can skip
it if they want.

Inspired by #12930.
2019-07-04 10:16:48 +02:00
Yu Watanabe 8fab27472b sd-netlink: add CTRL_ATTR_MCAST_GROUPS 2019-07-04 17:11:14 +09:00
Yu Watanabe 620fd5d433 sd-netlink: drop unnecessary 'else' 2019-07-04 17:11:05 +09:00
Yu Watanabe 5fc5e2f524 sd-netlink: introduce sd_netlink_message_enter_array() 2019-07-04 17:09:11 +09:00
Yu Watanabe 3bbe178466 sd-netlink: fix inverted log message 2019-07-04 13:46:11 +09:00
Yu Watanabe 7810d22171
Merge pull request #12946 from poettering/blockdev-tweaks
three small blockdev-util.[ch] tweaks
2019-07-04 12:36:11 +09:00
Lennart Poettering ed9aa225e8 varlink: allow using varlink_wait() even with a server
This call can be useful even if a server object is declared.

(Originally this was not supported, because a server typically needs to
handle multiple connections, and thus a synchronous wait on one would
starve the others out. But in some cases it might make sense to have
varlink point-to-point connections — i.e. where the server only handles
a single connection ever — and there it makes sense to synchronously
wait on the one connection).
2019-07-04 12:35:52 +09:00
Lennart Poettering ca5e7694bd json: use JSON_VARIANT_ARRAY_FOREACH() where we can 2019-07-04 12:35:35 +09:00
Lennart Poettering 54130b3622 logind: drop old-style header from .sym file in favour of SPDX 2019-07-04 12:35:14 +09:00
Lennart Poettering a0ea1dee7b blockdev-util: let us know if block_get_whole_disk() did anything 2019-07-04 00:01:09 +02:00
Lennart Poettering 51f14fa111 blockdev: filter out invalid block devices early 2019-07-04 00:00:54 +02:00
Lennart Poettering d18b300933 blockdev-util: propagate actual error 2019-07-04 00:00:44 +02:00
Jan Synacek 93912e872f debug-generator: enable custom systemd.debug_shell tty 2019-07-02 09:51:27 +02:00
Zbigniew Jędrzejewski-Szmek 8fabb625ac
Merge pull request #12912 from yuwata/network-move-functions
network: move functions
2019-07-02 09:46:38 +02:00
Zbigniew Jędrzejewski-Szmek 0330cb57ab
Merge pull request #12888 from yuwata/network-udev-property-support
network,udev: add Property= setting in [Match] section
2019-07-01 20:33:24 +02:00
Yu Watanabe 9c69cd7ec0 udev: accept lines which have only PROGRAM=
As PROGRAM= may cause side effect, and users may expect that.
2019-07-01 14:13:31 +02:00
Yu Watanabe 02848aaea8 meson: drop duplicated source 2019-07-01 06:45:00 +09:00
Yu Watanabe f706340979 test: add tests for config_parse_match_{strv,ifnames}() 2019-07-01 01:24:42 +09:00
Yu Watanabe 44005bfb4e network,udev: add Property= setting in [Match] section
Closes #5665.
2019-07-01 01:24:42 +09:00
Yu Watanabe b38de0e9cc network,udev: make net_match_config() take sd_device 2019-07-01 01:24:42 +09:00
Yu Watanabe 54a8423788 network,udev: fix multiple invert matching lines
Previously,
```
[Match]
Name=!aaa
Name=!bbb
```
does not work. This fixes the issue.
2019-07-01 01:24:42 +09:00