]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
3 years agotest-network: add test for IPv6Token=prefixstable 16618/head
Yu Watanabe [Thu, 30 Jul 2020 03:38:17 +0000 (12:38 +0900)] 
test-network: add test for IPv6Token=prefixstable

3 years agonetwork: make prefixstable mode of IPv6Token= can be applied to any received prefixes
Yu Watanabe [Thu, 30 Jul 2020 03:12:23 +0000 (12:12 +0900)] 
network: make prefixstable mode of IPv6Token= can be applied to any received prefixes

Closes #4625.

3 years agoMerge pull request #16928 from poettering/statx-fallback
Zbigniew Jędrzejewski-Szmek [Sat, 5 Sep 2020 20:04:18 +0000 (22:04 +0200)] 
Merge pull request #16928 from poettering/statx-fallback

stat-util: provide single statx() fallback on top of fstatat()

3 years agoselinux: create /run/user/${USERID}/systemd with default context
Christian Göttsche [Sat, 5 Sep 2020 15:42:56 +0000 (17:42 +0200)] 
selinux: create /run/user/${USERID}/systemd with default context

3 years agoselinux: early exit in mac_selinux_maybe_reload if not initialized
Christian Göttsche [Sat, 5 Sep 2020 15:49:48 +0000 (17:49 +0200)] 
selinux: early exit in mac_selinux_maybe_reload if not initialized

Binaries might not initialize SELinux, e.g. when they normally do not
create files with the SELinux default context.
If they, via an internal libary function, call a _label() function,
mac_selinux_maybe_reload() gets called. Since the SELinux status page
has not been opened, selinux_status_updated() will fail with EINVAL.

This affects particularly test binaries.

Just exit early and avoid confusing debug logs.

3 years agoman: fix typo in resolved.conf
George Rawlinson [Sat, 5 Sep 2020 17:57:00 +0000 (05:57 +1200)] 
man: fix typo in resolved.conf

3 years agoMerge pull request #16951 from yuwata/resolve-follow-ups-for-extra-dns-stub-listener
Zbigniew Jędrzejewski-Szmek [Sat, 5 Sep 2020 13:55:22 +0000 (15:55 +0200)] 
Merge pull request #16951 from yuwata/resolve-follow-ups-for-extra-dns-stub-listener

resolve: follow-ups for extra DNS stub listener

3 years agoMerge pull request #16854 from yuwata/sd-bus-error-set-errnofv
Zbigniew Jędrzejewski-Szmek [Sat, 5 Sep 2020 13:47:37 +0000 (15:47 +0200)] 
Merge pull request #16854 from yuwata/sd-bus-error-set-errnofv

sd-bus: rework sd_bus_error_set_errnofv()

3 years agoMerge pull request #16957 from poettering/sd-bus-proto-def-move
Zbigniew Jędrzejewski-Szmek [Sat, 5 Sep 2020 10:06:15 +0000 (12:06 +0200)] 
Merge pull request #16957 from poettering/sd-bus-proto-def-move

three unrelated, minor fixes

3 years agovarlink: properly allocate connection event source 16957/head
Lennart Poettering [Fri, 4 Sep 2020 21:54:11 +0000 (23:54 +0200)] 
varlink: properly allocate connection event source

Let's make sure we keep a reference to the event source

(Note that this code is currently not used, which is why this was never
used: in all cases we do not add listener fds after the event is
attached, but before. In that case this code is not called.)

3 years agoptyfwd: don't set prio if event source that might not exist
Lennart Poettering [Fri, 4 Sep 2020 21:52:39 +0000 (23:52 +0200)] 
ptyfwd: don't set prio if event source that might not exist

We support read-only ptyfwd options, and on those the input event source
won't be allocated. Deal with that and don't invoke a function on it
that will then instantly fail.

3 years agosd-bus: move SD_BUS_MAXIMUM_(SIGNATURE|NAME)_LENGTH to sd-bus-protocol.h
Lennart Poettering [Fri, 4 Sep 2020 21:49:44 +0000 (23:49 +0200)] 
sd-bus: move SD_BUS_MAXIMUM_(SIGNATURE|NAME)_LENGTH to sd-bus-protocol.h

So far we kept all defines directly originating from the spec in
sd-bus-protocol.h, do this for this too.

The precise place doesn't matter much API-wise given that sd-bus.h includes
sd-bus-protocol.h, hence let's just clean this up.

3 years agocore: add [Enable|Disable]UnitFilesWithFlags DBUS methods
Luca Boccassi [Tue, 1 Sep 2020 16:08:29 +0000 (17:08 +0100)] 
core: add [Enable|Disable]UnitFilesWithFlags DBUS methods

The new methods work as the unflavoured ones, but takes flags as a
single uint64_t DBUS parameters instead of different booleans, so
that it can be extended without breaking backward compatibility.
Add new flag to allow adding/removing symlinks in
[/etc|/run]/systemd/system.attached so that portable services
configuration files can be self-contained in those directories, without
affecting the system services directories.
Use the new methods and flags from portablectl --enable.

Useful in case /etc is read-only, with only the portable services
directories being mounted read-write.

3 years agoutil: constify the second argument of set_get()
Yu Watanabe [Fri, 4 Sep 2020 14:17:49 +0000 (23:17 +0900)] 
util: constify the second argument of set_get()

3 years agoresolve: use correct fd for UDP stub listner 16951/head
Yu Watanabe [Fri, 4 Sep 2020 14:08:48 +0000 (23:08 +0900)] 
resolve: use correct fd for UDP stub listner

3 years agoresolve: do not check sender and destination for packet received by extra DNS stub...
Yu Watanabe [Fri, 4 Sep 2020 12:30:37 +0000 (21:30 +0900)] 
resolve: do not check sender and destination for packet received by extra DNS stub listner

3 years agoresolve: use sd_event_source_set_io_fd_own() for stub listners
Yu Watanabe [Fri, 4 Sep 2020 11:52:46 +0000 (20:52 +0900)] 
resolve: use sd_event_source_set_io_fd_own() for stub listners

3 years agoresolve: introduce dns_stub_listener_extra_free() and set it as a key destructor
Yu Watanabe [Fri, 4 Sep 2020 07:41:13 +0000 (16:41 +0900)] 
resolve: introduce dns_stub_listener_extra_free() and set it as a key destructor

3 years agoresolve: adjust error messages
Yu Watanabe [Fri, 4 Sep 2020 07:26:17 +0000 (16:26 +0900)] 
resolve: adjust error messages

3 years agoresolve: do not set IPv4 specific options on IPv6 socket
Yu Watanabe [Fri, 4 Sep 2020 06:22:36 +0000 (15:22 +0900)] 
resolve: do not set IPv4 specific options on IPv6 socket

3 years agoresolve: do not set IP_TTL for extra DNS stub listeners
Yu Watanabe [Fri, 4 Sep 2020 06:10:48 +0000 (15:10 +0900)] 
resolve: do not set IP_TTL for extra DNS stub listeners

3 years agomissing: add IPV6_FREEBIND
Yu Watanabe [Fri, 4 Sep 2020 14:53:18 +0000 (23:53 +0900)] 
missing: add IPV6_FREEBIND

3 years agoMerge pull request #16880 from yuwata/network-dhcp4-cleanups
Lennart Poettering [Fri, 4 Sep 2020 13:54:27 +0000 (15:54 +0200)] 
Merge pull request #16880 from yuwata/network-dhcp4-cleanups

network: DHCPv4 cleanups

3 years agoutil: drop unused socket_addr_port_from_string_auto()
Yu Watanabe [Fri, 4 Sep 2020 06:27:53 +0000 (15:27 +0900)] 
util: drop unused socket_addr_port_from_string_auto()

3 years agoresolve: use in_addr_union to store addresses for extra dns stub listeners
Yu Watanabe [Fri, 4 Sep 2020 06:01:21 +0000 (15:01 +0900)] 
resolve: use in_addr_union to store addresses for extra dns stub listeners

3 years agoresolve: fix indentation
Yu Watanabe [Fri, 4 Sep 2020 05:54:03 +0000 (14:54 +0900)] 
resolve: fix indentation

3 years agoutil: introduce SOCKADDR_LEN() macro
Yu Watanabe [Fri, 4 Sep 2020 10:37:50 +0000 (19:37 +0900)] 
util: introduce SOCKADDR_LEN() macro

3 years agotest: add tests for in_addr_port_from_string_auto()
Yu Watanabe [Fri, 4 Sep 2020 06:42:09 +0000 (15:42 +0900)] 
test: add tests for in_addr_port_from_string_auto()

3 years agotest: move several tests from test-socket-util.c
Yu Watanabe [Fri, 4 Sep 2020 06:53:50 +0000 (15:53 +0900)] 
test: move several tests from test-socket-util.c

3 years agoutil: introduce in_addr_port_to_string()
Yu Watanabe [Fri, 4 Sep 2020 07:15:29 +0000 (16:15 +0900)] 
util: introduce in_addr_port_to_string()

3 years agoutil: make in_addr_ifindex_to_string() an alias of in_addr_port_ifindex_name_to_string()
Yu Watanabe [Fri, 4 Sep 2020 07:14:14 +0000 (16:14 +0900)] 
util: make in_addr_ifindex_to_string() an alias of in_addr_port_ifindex_name_to_string()

3 years agoutil: introduce in_addr_port_from_string_auto()
Yu Watanabe [Fri, 4 Sep 2020 04:40:31 +0000 (13:40 +0900)] 
util: introduce in_addr_port_from_string_auto()

3 years agoresolve: stop extra stub listners before freeing information about them
Yu Watanabe [Fri, 4 Sep 2020 05:29:06 +0000 (14:29 +0900)] 
resolve: stop extra stub listners before freeing information about them

3 years agoresolve: set DNS_STUB_LISTENER_YES if no protocol is specified in DNSStubListenExtra=
Yu Watanabe [Fri, 4 Sep 2020 04:23:39 +0000 (13:23 +0900)] 
resolve: set DNS_STUB_LISTENER_YES if no protocol is specified in DNSStubListenExtra=

3 years agoresolve: Manager::dns_stub_listener_mode is not relevant to extra stub listeners
Yu Watanabe [Fri, 4 Sep 2020 04:21:55 +0000 (13:21 +0900)] 
resolve: Manager::dns_stub_listener_mode is not relevant to extra stub listeners

3 years agoresolve: make DnsStubListenerMode bitfield
Yu Watanabe [Fri, 4 Sep 2020 04:09:02 +0000 (13:09 +0900)] 
resolve: make DnsStubListenerMode bitfield

3 years agoresolve: rename dns_stub_extra_event_source -> event_source
Yu Watanabe [Fri, 4 Sep 2020 04:01:15 +0000 (13:01 +0900)] 
resolve: rename dns_stub_extra_event_source -> event_source

As the name is too redundant.

3 years agoman: update DNSStubListenerExtra=
Yu Watanabe [Fri, 4 Sep 2020 03:58:32 +0000 (12:58 +0900)] 
man: update DNSStubListenerExtra=

3 years agoMerge pull request #16881 from yuwata/network-routing-policy-rule-cleanups
Zbigniew Jędrzejewski-Szmek [Fri, 4 Sep 2020 10:57:20 +0000 (12:57 +0200)] 
Merge pull request #16881 from yuwata/network-routing-policy-rule-cleanups

network: routing policy rule cleanups

3 years agoMerge pull request #16952 from yuwata/resolvectl-log-level-follow-ups
Zbigniew Jędrzejewski-Szmek [Fri, 4 Sep 2020 10:21:15 +0000 (12:21 +0200)] 
Merge pull request #16952 from yuwata/resolvectl-log-level-follow-ups

resolvectl: update help message

3 years agotest: add tests for sd_bus_error_set_errnof() 16854/head
Yu Watanabe [Fri, 4 Sep 2020 03:17:22 +0000 (12:17 +0900)] 
test: add tests for sd_bus_error_set_errnof()

3 years agosd-bus: use _cleanup_free_ macro in sd_bus_error_set_errnofv()
Yu Watanabe [Fri, 4 Sep 2020 03:02:46 +0000 (12:02 +0900)] 
sd-bus: use _cleanup_free_ macro in sd_bus_error_set_errnofv()

No functional change.

3 years agonetwork: fixes gateway assignment through DHCPv4
Yu Watanabe [Wed, 26 Aug 2020 13:31:01 +0000 (22:31 +0900)] 
network: fixes gateway assignment through DHCPv4

This fixes the following issue:
- If a DHCP lease does not contains router option, then routes with
`Gateway=_dhcp` setting introduce unexpected results.

This also makes several failure paths critical. And adjust warnings when
classless routes are provided.

3 years agobash-completion: resolvectl: support 'log-level' command 16952/head
Yu Watanabe [Fri, 4 Sep 2020 08:03:28 +0000 (17:03 +0900)] 
bash-completion: resolvectl: support 'log-level' command

3 years agoresolvectl: add 'log-level' to help message
Yu Watanabe [Fri, 4 Sep 2020 07:58:32 +0000 (16:58 +0900)] 
resolvectl: add 'log-level' to help message

Follow-up for df9578498f3f566409fcb71229d9fc99e4ab0568.

3 years agoresolved: ttl/hopcount sockopt is not a boolean
Lennart Poettering [Thu, 3 Sep 2020 21:52:27 +0000 (23:52 +0200)] 
resolved: ttl/hopcount sockopt is not a boolean

These are integer values, hence specify them as integers, not as
booleans.

3 years agosd-bus: drop unnecessary free()
Amitanand.Chikorde [Wed, 26 Aug 2020 10:01:49 +0000 (15:31 +0530)] 
sd-bus: drop unnecessary free()

As `e->message` here is always NULL.

3 years agoman: mention that 'networkctl reconfigure' does not reload configs 16880/head
Yu Watanabe [Fri, 28 Aug 2020 04:58:00 +0000 (13:58 +0900)] 
man: mention that 'networkctl reconfigure' does not reload configs

3 years agonetwork: configure DHCP routes after DHCP address is ready
Yu Watanabe [Fri, 28 Aug 2020 04:45:42 +0000 (13:45 +0900)] 
network: configure DHCP routes after DHCP address is ready

3 years agonetwork: dhcp4: reset counter only when the lease address is new
Yu Watanabe [Thu, 27 Aug 2020 21:54:11 +0000 (06:54 +0900)] 
network: dhcp4: reset counter only when the lease address is new

3 years agosd-ipv4acd: introduce sd_ipv4acd_get_address()
Yu Watanabe [Thu, 27 Aug 2020 21:56:33 +0000 (06:56 +0900)] 
sd-ipv4acd: introduce sd_ipv4acd_get_address()

3 years agonetwork: dhcp4: stop IPv4ACD before assigning new address
Yu Watanabe [Thu, 27 Aug 2020 21:38:43 +0000 (06:38 +0900)] 
network: dhcp4: stop IPv4ACD before assigning new address

3 years agosd-ipv4acd: do not call callback in sd_ipv4acd_stop() when it is already stopped
Yu Watanabe [Fri, 4 Sep 2020 00:01:03 +0000 (09:01 +0900)] 
sd-ipv4acd: do not call callback in sd_ipv4acd_stop() when it is already stopped

3 years agonetwork: voidify return value of sd_ipv4acd_stop()
Yu Watanabe [Thu, 3 Sep 2020 23:54:21 +0000 (08:54 +0900)] 
network: voidify return value of sd_ipv4acd_stop()

3 years agonetwork: logs about unknown key 16881/head
Yu Watanabe [Fri, 28 Aug 2020 04:00:25 +0000 (13:00 +0900)] 
network: logs about unknown key

3 years agonetwork: honor already specified family when parsing from= or to= in serialized rule
Yu Watanabe [Fri, 28 Aug 2020 03:58:49 +0000 (12:58 +0900)] 
network: honor already specified family when parsing from= or to= in serialized rule

3 years agonetwork: do not reallocate buffer
Yu Watanabe [Fri, 28 Aug 2020 03:53:08 +0000 (12:53 +0900)] 
network: do not reallocate buffer

3 years agonetwork: serialize InvertRule= in [RoutingPolicyRule]
Yu Watanabe [Fri, 28 Aug 2020 03:47:44 +0000 (12:47 +0900)] 
network: serialize InvertRule= in [RoutingPolicyRule]

3 years agonetwork: add whitespace after family= and priority= in serialized routing policy...
Yu Watanabe [Fri, 28 Aug 2020 03:34:36 +0000 (12:34 +0900)] 
network: add whitespace after family= and priority= in serialized routing policy rule

This also makes priority= serialized only when its value is non-zero.

3 years agonetwork: downgrade error level when the error is ignored
Yu Watanabe [Thu, 3 Sep 2020 23:44:14 +0000 (08:44 +0900)] 
network: downgrade error level when the error is ignored

3 years agonetwork: move routing_policy_rule_read_full_file()
Yu Watanabe [Fri, 28 Aug 2020 03:27:32 +0000 (12:27 +0900)] 
network: move routing_policy_rule_read_full_file()

3 years agoMerge pull request #16044 from ssahani/resolved-interface
Zbigniew Jędrzejewski-Szmek [Thu, 3 Sep 2020 17:06:05 +0000 (19:06 +0200)] 
Merge pull request #16044 from ssahani/resolved-interface

systemd-resolved: allow configurable bind address

3 years agoMerge pull request #16945 from poettering/udev-test-selinux
Lennart Poettering [Thu, 3 Sep 2020 16:39:28 +0000 (18:39 +0200)] 
Merge pull request #16945 from poettering/udev-test-selinux

fix udev-test when used with selinux

3 years agoudev-test: don't mix alloca() and regular C stack allocation in one expression 16945/head
Lennart Poettering [Thu, 3 Sep 2020 14:56:47 +0000 (16:56 +0200)] 
udev-test: don't mix alloca() and regular C stack allocation in one expression

3 years agoudev-test: use SYNTHETIC_ERRNO() where useful
Lennart Poettering [Thu, 3 Sep 2020 14:56:30 +0000 (16:56 +0200)] 
udev-test: use SYNTHETIC_ERRNO() where useful

3 years agoudev-test: use mount_verbose() instead of mount(), to make debugging easier
Lennart Poettering [Thu, 3 Sep 2020 14:56:07 +0000 (16:56 +0200)] 
udev-test: use mount_verbose() instead of mount(), to make debugging easier

3 years agoudev-test: make sure we run udev tests with selinux assumed off
Lennart Poettering [Thu, 3 Sep 2020 14:53:22 +0000 (16:53 +0200)] 
udev-test: make sure we run udev tests with selinux assumed off

This is cleaner that way given that we create our own half-virtualizes
device tree, and really shouldn't pull selinux labelling and access
control into that, we can only lose, in particular as our overmounted
/sys/ actually lacks /sys/fs/selinux.

(This fixes udev test woes introduced by #16821 where suddenly the test
would fail because libselinux assumed selinux was on, but selinuxfs
wasn't actually available)

3 years agostat-util: provide single fallback implementation of statx() 16928/head
Lennart Poettering [Tue, 1 Sep 2020 16:42:01 +0000 (18:42 +0200)] 
stat-util: provide single fallback implementation of statx()

This simplifies things quite a bit, and is reusable wherever we want to
use statx() later on. Not sure why I didn't do it like this right from
the beginning...

3 years agostat-util: add new macros for declaring statx variable
Lennart Poettering [Tue, 1 Sep 2020 16:24:44 +0000 (18:24 +0200)] 
stat-util: add new macros for declaring statx variable

Let's deal with the msan initialization issue once for all cases instead
of over and over again.

3 years agoMerge pull request #16915 from poettering/cryptsetup-dlopen
Lennart Poettering [Thu, 3 Sep 2020 12:57:29 +0000 (14:57 +0200)] 
Merge pull request #16915 from poettering/cryptsetup-dlopen

pid1,repart,growfs: make libcryptsetup a dlopen() style dep

3 years agoMerge pull request #16821 from cgzones/selinux_status
Lennart Poettering [Thu, 3 Sep 2020 12:55:08 +0000 (14:55 +0200)] 
Merge pull request #16821 from cgzones/selinux_status

 selinux: use SELinux status page

3 years agoMerge pull request #16940 from keszybz/socket-enotconn-cleanup
Lennart Poettering [Thu, 3 Sep 2020 12:51:02 +0000 (14:51 +0200)] 
Merge pull request #16940 from keszybz/socket-enotconn-cleanup

Cleanup socket enotconn handling

3 years agoresolve: allow configurable bind address 16044/head
Susant Sahani [Sat, 29 Aug 2020 07:12:10 +0000 (07:12 +0000)] 
resolve: allow configurable bind address

3 years agohwdb: Add Adesso AKB-805MAC keyboard, mfd by Ortek
Glen Whitney [Thu, 3 Sep 2020 00:38:38 +0000 (17:38 -0700)] 
hwdb: Add Adesso AKB-805MAC keyboard, mfd by Ortek

3 years agofirstboot: don't create/modify passwd and shadow if not asked
afg [Tue, 1 Sep 2020 21:47:49 +0000 (05:47 +0800)] 
firstboot: don't create/modify passwd and shadow if not asked

3 years agocore/socket: use _cleanup_ to close the connection fd 16940/head
Zbigniew Jędrzejewski-Szmek [Wed, 2 Sep 2020 16:17:14 +0000 (18:17 +0200)] 
core/socket: use _cleanup_ to close the connection fd

Removing the gotos would lead to a lot of duplicated code, so I left them
as they were.

3 years agocore/socket: fold socket_instantiate_service() into socket_enter_running()
Zbigniew Jędrzejewski-Szmek [Wed, 2 Sep 2020 16:04:10 +0000 (18:04 +0200)] 
core/socket: fold socket_instantiate_service() into socket_enter_running()

socket_instantiate_service() was doing unit_ref_set(), and the caller was
immediately doing unit_ref_unset(). After we get rid of this, it doesn't seem
worth it to have two functions.

3 years agocore/socket: we may get ENOTCONN from socket_instantiate_service()
Zbigniew Jędrzejewski-Szmek [Tue, 1 Sep 2020 21:50:01 +0000 (23:50 +0200)] 
core/socket: we may get ENOTCONN from socket_instantiate_service()

This means that the connection was aborted before we even got to figure out
what the service name will be. Let's treat this as a non-event and close the
connection fd without any further messages.

Code last changed in 934ef6a5.
Reported-by: Thiago Macieira <thiago.macieira@intel.com>
With the patch:
systemd[1]: foobar.socket: Incoming traffic
systemd[1]: foobar.socket: Got ENOTCONN on incoming socket, assuming aborted connection attempt, ignoring.
...

Also, when we get ENOMEM, don't give the hint about missing unit.

3 years agohomed: remember the secret even when the for_state is FIXATING_FOR_ACQUIRE
Gibeom Gwon [Wed, 26 Aug 2020 13:56:01 +0000 (22:56 +0900)] 
homed: remember the secret even when the for_state is FIXATING_FOR_ACQUIRE

Remember the secret if the for_state is FIXATING_FOR_ACTIVATION or
FIXATING_FOR_ACQUIRE. This fixes login failures when logging in
to an unfixated user.

3 years agoupdate TODO 16915/head
Lennart Poettering [Mon, 31 Aug 2020 16:22:54 +0000 (18:22 +0200)] 
update TODO

3 years agoshared: make libcryptsetup dep dlopen
Lennart Poettering [Fri, 28 Aug 2020 19:27:45 +0000 (21:27 +0200)] 
shared: make libcryptsetup dep dlopen

Let's make libcryptsetup a dlopen() style dep for PID 1 (i.e. for
RootImage= and stuff), systemd-growfs and systemd-repart. (But leave to
be a regulra dep in systemd-cryptsetup, systemd-veritysetup and
systemd-homed since for them the libcryptsetup support is not auxiliary
but pretty much at the core of what they do.)

This should be useful for container images that want systemd in the
payload but don't care for the cryptsetup logic since dm-crypt and stuff
isn't available in containers anyway.

Fixes: #8249
3 years agoshared: rename crypt-util.c → cryptsetup-util.c
Lennart Poettering [Fri, 28 Aug 2020 19:26:33 +0000 (21:26 +0200)] 
shared: rename crypt-util.c → cryptsetup-util.c

"crypt-util.c" is such a generic name, let's avoid that, in particular
as libc's/libcrypt's crypt() function is so generically named too that
one might thing this is about that. Let's hence be more precise, and
make clear that this is about cryptsetup, and nothing else.

We already had cryptsetup-util.[ch] in src/cryptsetup/ doing keyfile
management. To avoid the needless confusion, let's rename that file to
cryptsetup-keyfile.[ch].

3 years agoselinux/systemctl: create unit file with default context on edit
Christian Göttsche [Tue, 1 Sep 2020 15:45:11 +0000 (17:45 +0200)] 
selinux/systemctl: create unit file with default context on edit

3 years agoimport: make sure gnu tar complains on tar files with trailing garbage
Lennart Poettering [Tue, 1 Sep 2020 18:08:49 +0000 (20:08 +0200)] 
import: make sure gnu tar complains on tar files with trailing garbage

By default GNU tar will only read the first archive if multiple archives
are concatenated and ignore the rest. If an archive contains trailing
garbage this will hence not be recognized by tar as error, it simply
stops reading when the first archive is done (which might escalate to
SIGPIPE when invoked via a pipe).

Let's add --ignore-zeros to the tar command line when extracting. This
means:

1) if a tar archive was concatenated (i.e. generated with tar -A) we'll
   process it correctly.

2) if a tar archive contains trailing garbage tar will now generate an
   error message about it, instead of just throwing EPIPE, which makes
   things easier to debug as broken files are not silently processed.

I think it's OK for gnu tar to ignore trailing garbage when dealing with
classic tapes drives, i.e. mediums that do not have a size limit
built-in. However, this is not what we are dealing with: we are dealing
with OS images here, that hopefully someone generated with a clean build
system, that were signed and validated and hence should not contain
trailing garbage.  Hence it's better to refuse and complain thant to
silently eat up like for classic tape drives.

Fixes: #16605
3 years agonspawn: let's make LinkJournal an extended boolean
Lennart Poettering [Tue, 1 Sep 2020 21:26:50 +0000 (23:26 +0200)] 
nspawn: let's make LinkJournal an extended boolean

Let's accept the usual boolean parameters for LinkJournal. It's
confusing otherwise.

Previously we'd accept "no" but not the other values we typically accept
for "false". We'd not accept any values for "true".

With this change we'll accept all true and false values and will do
something somewhat reasonable: any false value is treated like "no"
previously was reated. And any true value is now treated like "auto".

We don't document the new values, since this logic is mostly redundant,
and it's probably better if people consider this an enum rather than a
bool.

Fixes: #16888
3 years agoMerge pull request #16882 from weblate/weblate-systemd-master
Zbigniew Jędrzejewski-Szmek [Wed, 2 Sep 2020 06:55:40 +0000 (08:55 +0200)] 
Merge pull request #16882 from weblate/weblate-systemd-master

Translations update from Weblate

3 years agoMerge pull request #16853 from poettering/udev-current-tag2
Zbigniew Jędrzejewski-Szmek [Wed, 2 Sep 2020 06:12:56 +0000 (08:12 +0200)] 
Merge pull request #16853 from poettering/udev-current-tag2

udev: make uevents "sticky"

3 years agocoredump: don't convert s → µs twice
Lennart Poettering [Tue, 1 Sep 2020 18:29:28 +0000 (20:29 +0200)] 
coredump: don't convert s → µs twice

We already append 000000 early on when parsing the cmdline args, let's
not do that a second time.

Fixes: #16919
3 years agofirstboot: fill empty color if ansi_color unavailable from os-release
afg [Tue, 1 Sep 2020 21:20:25 +0000 (05:20 +0800)] 
firstboot: fill empty color if ansi_color unavailable from os-release

3 years agoshared: Introduce socket_addr_port_from_string_auto
Susant Sahani [Fri, 28 Aug 2020 10:39:40 +0000 (10:39 +0000)] 
shared: Introduce socket_addr_port_from_string_auto

3 years agoMerge pull request #16925 from cgzones/selinux_create_label
Zbigniew Jędrzejewski-Szmek [Tue, 1 Sep 2020 20:19:52 +0000 (22:19 +0200)] 
Merge pull request #16925 from cgzones/selinux_create_label

selinux/core: create several file objects with default SELinux context

3 years agoMerge pull request #16911 from keszybz/userdb-json-invalid-utf8
Lennart Poettering [Tue, 1 Sep 2020 18:34:22 +0000 (20:34 +0200)] 
Merge pull request #16911 from keszybz/userdb-json-invalid-utf8

Deal properly with invalid utf-8 in userdb entries

3 years agoMerge pull request #16922 from keszybz/ordered-set-ensure-allocated
Zbigniew Jędrzejewski-Szmek [Tue, 1 Sep 2020 17:44:28 +0000 (19:44 +0200)] 
Merge pull request #16922 from keszybz/ordered-set-ensure-allocated

Ordered set ensure allocated

3 years agoman: document the new libudev APIs 16853/head
Lennart Poettering [Wed, 26 Aug 2020 16:30:52 +0000 (18:30 +0200)] 
man: document the new libudev APIs

3 years agoNEWS: explain the "bind"/"unbind" situation a bit
Lennart Poettering [Thu, 13 Dec 2018 18:13:59 +0000 (19:13 +0100)] 
NEWS: explain the "bind"/"unbind" situation a bit

3 years agologind: always check current tag list before using a device
Lennart Poettering [Thu, 13 Dec 2018 17:36:57 +0000 (18:36 +0100)] 
logind: always check current tag list before using a device

3 years agologind: only apply ACLs for device currently tagged with "uaccess"
Lennart Poettering [Thu, 13 Dec 2018 17:35:06 +0000 (18:35 +0100)] 
logind: only apply ACLs for device currently tagged with "uaccess"

This is about security, hence let's be particularly careful here: only
devices currenlty tagged with "uaccess" will get ACL management, and
it's not sufficient if they once were (though that is used for
filtering).

3 years agocore: make sure to recheck current udev tag "systemd" before considering a device...
Lennart Poettering [Thu, 13 Dec 2018 17:32:03 +0000 (18:32 +0100)] 
core: make sure to recheck current udev tag "systemd" before considering a device ready

Let's ensure that a device once tagged can become active/inactive simply
by toggling the current tag.

Note that this means that a device once tagged with "systemd" will
always have a matching .device unit. However, the active/inactive state
of the unit reflects whether it is currently tagged that way (and
doesn't have SYSTEMD_READY=0 set).

Fixes: #7587
3 years agotest: add test for new "sticky" tags logic
Lennart Poettering [Thu, 13 Dec 2018 16:22:01 +0000 (17:22 +0100)] 
test: add test for new "sticky" tags logic

3 years agolibudev: also expose API to check for current tags in libudev
Lennart Poettering [Thu, 13 Dec 2018 17:08:45 +0000 (18:08 +0100)] 
libudev: also expose API to check for current tags in libudev