systemd/.git
4 years agopam: fix typo try_authtok → use_authtok
Lennart Poettering [Wed, 12 May 2021 08:33:27 +0000 (10:33 +0200)]
pam: fix typo try_authtok → use_authtok

This was a copy/paste mistae apparently, there's not "try_authtok" and
this was supposed to copy what Fedora uses, which uses "use_authtok"
correctly. Hence adjust this.

Fixes: #19369

4 years agoMerge pull request #19533 from yuwata/network-queue
Zbigniew Jędrzejewski-Szmek [Wed, 12 May 2021 10:12:22 +0000 (12:12 +0200)]
Merge pull request #19533 from yuwata/network-queue

network: introduce queue to configure address, route, etc

4 years agoMerge pull request #18986 from poettering/oomd-varlink-fix
Zbigniew Jędrzejewski-Szmek [Wed, 12 May 2021 09:36:32 +0000 (11:36 +0200)]
Merge pull request #18986 from poettering/oomd-varlink-fix

varlink ref fix

4 years agoMerge pull request #19506 from xnox/ship-stub-elf
Zbigniew Jędrzejewski-Szmek [Wed, 12 May 2021 07:45:36 +0000 (09:45 +0200)]
Merge pull request #19506 from xnox/ship-stub-elf

boot/efi: install ELF linux.elf.stub in addition to PE linux.efi.stub

4 years agoMerge pull request #19581 from yuwata/specifier-refuse-too-long-results
Lennart Poettering [Wed, 12 May 2021 07:42:08 +0000 (09:42 +0200)]
Merge pull request #19581 from yuwata/specifier-refuse-too-long-results

specifier: refuse too long results

4 years agonetlink,network: drop "const" from opaque object parameters in supposed-to-be-public...
Lennart Poettering [Tue, 11 May 2021 15:08:00 +0000 (17:08 +0200)]
netlink,network: drop "const" from opaque object parameters in supposed-to-be-public APIs

This drops the "const" specifier from the opaque object parameters to
various functions in our API.

This effectively reverts #19292 and more.

Why drop this? Our public APIs should not leak too much information
about how stuff is implemented internally. In our public APIs we
shouldn't give too many guarantees we don#t want to necessarily keep.
Specifically: in many cases it makes sense that getters actually
generate/parse/allocate data on the fly, storing/caching the result
internally, to speed things up, do things lazily or to track memory
allocations so that they can be freed later. Doing this means we need to
change the objects, even though the getters are semantically a read
operation.

We want to retain the freedom that we can change things around
internally. By exposing the objects as "const" we remove a good chunk of
that, for little gain.

See sd_bus_creds_get_description() for a real example of a getter that
implicitly caches and thus modifies the relevant object.

This removes the "const" decorators from sd-dhcp and sd-netlink, two
APIs that we intend to make public eventually even though they still are
not, leaving us the chance to still fix this before it becomes set in
stone.

4 years agotest-network: wait for the interfaces are configured after reloading .network files
Yu Watanabe [Wed, 5 May 2021 14:05:02 +0000 (23:05 +0900)]
test-network: wait for the interfaces are configured after reloading .network files

4 years agotest-network: wait for the intreface is configured if it is expected
Yu Watanabe [Wed, 5 May 2021 14:04:24 +0000 (23:04 +0900)]
test-network: wait for the intreface is configured if it is expected

4 years agonetwork: make route_configure() return all created routes
Yu Watanabe [Thu, 29 Apr 2021 14:18:29 +0000 (23:18 +0900)]
network: make route_configure() return all created routes

4 years agonetwork: make log_route_debug() show multipath routes and Gateway=_dhcp4 or _ipv6ra
Yu Watanabe [Thu, 29 Apr 2021 14:30:51 +0000 (23:30 +0900)]
network: make log_route_debug() show multipath routes and Gateway=_dhcp4 or _ipv6ra

4 years agonetwork: use request queue to configure addresses, routes, and nexthops
Yu Watanabe [Wed, 5 May 2021 13:46:44 +0000 (22:46 +0900)]
network: use request queue to configure addresses, routes, and nexthops

Why is this necessary? Several examples below.

- When a route sets prefsrc, then the address must be already assigned
  (see issue #19285), and also it must be ready if IPv6.
- When a route or nexthop sets gateway, then the address must be reachable.
- When a route sets nexthop ID, then the corresponding nexthop must be
  assigned.
- When a route sets multipath routes on another interface, then the
  interface must exist and be ready to configure.
- When configuring address, the same address must not be under removing
  (see issue #18108).
Etc,. etc,...

So, this makes all requests about addresses, routes, and nethops are once
stored in the queue, and will be processed when they are ready to configure.

Fixes #18108 and #19285.

4 years agonetwork: use request queue to configure neighbors
Yu Watanabe [Fri, 7 May 2021 07:05:31 +0000 (16:05 +0900)]
network: use request queue to configure neighbors

4 years agonetwork: use request queue to configure routing policy rules
Yu Watanabe [Fri, 7 May 2021 06:57:13 +0000 (15:57 +0900)]
network: use request queue to configure routing policy rules

4 years agonetwork: introduce link_is_ready_to_configure() helper function
Yu Watanabe [Fri, 7 May 2021 06:45:28 +0000 (15:45 +0900)]
network: introduce link_is_ready_to_configure() helper function

This will be used in later commits.

4 years agonetwork: add skeleton of request queue
Yu Watanabe [Fri, 7 May 2021 06:39:16 +0000 (15:39 +0900)]
network: add skeleton of request queue

This will be used in later commits.

4 years agonetwork: nexthop: add NextHop object before sending netlink request
Yu Watanabe [Fri, 7 May 2021 11:52:49 +0000 (20:52 +0900)]
network: nexthop: add NextHop object before sending netlink request

Otherwise, if nexthop_add() fails, then assertion about nexthop_messages in
static_nexthop_handler() will be triggered.

4 years agonetwork: split out common part of route or address handlers
Yu Watanabe [Fri, 7 May 2021 08:32:51 +0000 (17:32 +0900)]
network: split out common part of route or address handlers

4 years agonetwork: change order of dropping network configs
Yu Watanabe [Fri, 7 May 2021 07:35:42 +0000 (16:35 +0900)]
network: change order of dropping network configs

As routes may requires nexthops and addresses, nexthops may requires
addresses.

4 years agonetwork: simplify and rename routing_policy_rule_copy()
Yu Watanabe [Thu, 6 May 2021 20:16:32 +0000 (05:16 +0900)]
network: simplify and rename routing_policy_rule_copy()

4 years agonetwork: introduce route_dup()
Yu Watanabe [Thu, 6 May 2021 19:47:26 +0000 (04:47 +0900)]
network: introduce route_dup()

The function will be used in later commits.

4 years agosd-netlink: introduce multipath_route_dup()
Yu Watanabe [Thu, 6 May 2021 19:45:02 +0000 (04:45 +0900)]
sd-netlink: introduce multipath_route_dup()

The function will be used in later commits.

4 years agonetwork: introduce manager_address_is_reachable()
Yu Watanabe [Thu, 6 May 2021 19:37:58 +0000 (04:37 +0900)]
network: introduce manager_address_is_reachable()

The function will be used in later commits.

4 years agonetwork: introduce link_has_route()
Yu Watanabe [Thu, 6 May 2021 19:31:20 +0000 (04:31 +0900)]
network: introduce link_has_route()

The function will be used in later commits.

4 years agonetwork: delay resolving interface specifier in MultiPathRoute=
Yu Watanabe [Thu, 6 May 2021 19:29:52 +0000 (04:29 +0900)]
network: delay resolving interface specifier in MultiPathRoute=

The interface may not exist when .network files are loaded.

4 years agonetwork: introduce manager_has_address()
Yu Watanabe [Thu, 6 May 2021 19:03:21 +0000 (04:03 +0900)]
network: introduce manager_has_address()

The function will be used in later commits.

4 years agoordered-set: introduce ordered_set_clear/free_with_destructor()
Yu Watanabe [Mon, 26 Apr 2021 14:52:40 +0000 (23:52 +0900)]
ordered-set: introduce ordered_set_clear/free_with_destructor()

4 years agohashmap,set: make hashmap_clear_with_destructor() or friends safer
Yu Watanabe [Sat, 8 May 2021 06:32:52 +0000 (15:32 +0900)]
hashmap,set: make hashmap_clear_with_destructor() or friends safer

4 years agonetwork: use IPV4_ADDRESS_FMT_STR/VAL macros and in6_addr_to_string() or friends
Yu Watanabe [Thu, 6 May 2021 08:15:01 +0000 (17:15 +0900)]
network: use IPV4_ADDRESS_FMT_STR/VAL macros and in6_addr_to_string() or friends

4 years agoin-addr-util: move IPV4_ADDRESS_FMT_STR/VAL macros from networkd-address.h
Yu Watanabe [Thu, 6 May 2021 07:21:18 +0000 (16:21 +0900)]
in-addr-util: move IPV4_ADDRESS_FMT_STR/VAL macros from networkd-address.h

4 years agoin-addr-util: introduce in6_addr_to_string() or friends
Yu Watanabe [Thu, 6 May 2021 07:17:47 +0000 (16:17 +0900)]
in-addr-util: introduce in6_addr_to_string() or friends

4 years agonetwork: use in6_addr_is_link_local() or friends
Yu Watanabe [Thu, 6 May 2021 07:11:33 +0000 (16:11 +0900)]
network: use in6_addr_is_link_local() or friends

4 years agonetwork: rename routing_policy_rule_configure_internal() and make it take callback
Yu Watanabe [Mon, 26 Apr 2021 07:10:39 +0000 (16:10 +0900)]
network: rename routing_policy_rule_configure_internal() and make it take callback

4 years agonetwork: make nexthop_configure() take callback
Yu Watanabe [Mon, 26 Apr 2021 07:05:04 +0000 (16:05 +0900)]
network: make nexthop_configure() take callback

4 years agonetwork: make neighbor_configure() take callback
Yu Watanabe [Mon, 26 Apr 2021 07:04:07 +0000 (16:04 +0900)]
network: make neighbor_configure() take callback

4 years agotree-wide: refuse too long strings earlier in specifier_printf()
Yu Watanabe [Sun, 9 May 2021 16:46:48 +0000 (01:46 +0900)]
tree-wide: refuse too long strings earlier in specifier_printf()

We usually call specifier_printf() and then check the validity of
the result. In many cases, validity checkers, e.g. path_is_valid(),
refuse too long strings. This makes specifier_printf() refuse such
long results earlier.

Moreover, unit_full_string() and description field in sysuser now
refuse results longer than LONG_LINE_MAX. config_parse() already
refuses the line longer than LONG_LINE_MAX. Hence, it should be ok
to set the same value as the maximum length of the resolved string.

4 years agodns-domain: use DNS_LABEL_MAX at one more place
Yu Watanabe [Wed, 12 May 2021 01:12:18 +0000 (10:12 +0900)]
dns-domain: use DNS_LABEL_MAX at one more place

4 years agocreds-util: introduce CREDENTIAL_NAME_MAX
Yu Watanabe [Wed, 12 May 2021 01:20:47 +0000 (10:20 +0900)]
creds-util: introduce CREDENTIAL_NAME_MAX

4 years agofd-util: introduce FDNAME_MAX
Yu Watanabe [Wed, 12 May 2021 01:19:19 +0000 (10:19 +0900)]
fd-util: introduce FDNAME_MAX

4 years agogpt: introduce GPT_LAVEL_MAX
Yu Watanabe [Wed, 12 May 2021 01:16:36 +0000 (10:16 +0900)]
gpt: introduce GPT_LAVEL_MAX

4 years agotest: move test_specifier_printf() to test-specifier.c
Yu Watanabe [Sun, 9 May 2021 15:13:14 +0000 (00:13 +0900)]
test: move test_specifier_printf() to test-specifier.c

4 years agospecifier: rename variable
Yu Watanabe [Sun, 9 May 2021 12:39:34 +0000 (21:39 +0900)]
specifier: rename variable

4 years agospecifier: use SD_ID128_STRING_MAX
Yu Watanabe [Sun, 9 May 2021 12:23:32 +0000 (21:23 +0900)]
specifier: use SD_ID128_STRING_MAX

4 years agocore: don't accidentally unref a varlink connection twice
Lennart Poettering [Fri, 12 Mar 2021 21:21:58 +0000 (22:21 +0100)]
core: don't accidentally unref a varlink connection twice

Let's make sure that our close handler unrefs a connection again that we
are already unreffing a few stack frames up by invalidating the pointer
first, and dropping the ref counter only after that.

Replaces: 39ad3f1c092b5dffcbb4b1d12eb9ca407f010a3c

Fixes: #18025

4 years agoRevert "varlink: avoid using dangling ref in varlink_close_unref()"
Lennart Poettering [Fri, 12 Mar 2021 21:21:40 +0000 (22:21 +0100)]
Revert "varlink: avoid using dangling ref in varlink_close_unref()"

This reverts commit 39ad3f1c092b5dffcbb4b1d12eb9ca407f010a3c.

4 years agobootctl: same entry path check case-insensitive
zsien [Mon, 10 May 2021 07:42:54 +0000 (15:42 +0800)]
bootctl: same entry path check case-insensitive

Some motherboards convert the path to uppercase under certain circumstances
(e.g. after booting into the Boot Menu in the ASUS ROG STRIX B350-F GAMING).

4 years agohwdb: keyboard: D330 Touchpad toggle keymap
howl [Mon, 10 May 2021 22:24:11 +0000 (00:24 +0200)]
hwdb: keyboard: D330 Touchpad toggle keymap

I have also seen that VIOS LTH17 has the exact same correction and it's also a SIPODEV composite hid device also through usb. In the D330 is a detachable keyboard. It's possible that a very generic way to apply this to at least affected sipodev keyboard could be found using the device ids, but needs info to do that and ensure all sipodev keyboard with the pertinent ids need it.

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
4 years agohwdb: sensor: D330-IGM use pvr instead cvr
howl [Mon, 10 May 2021 22:31:28 +0000 (00:31 +0200)]
hwdb: sensor: D330-IGM use pvr instead cvr

We use pvr match for efifb pitch and drm orientation quirk and in touchpad toggle keymap. Also seems most consistent with the devices here.

While at it, correct a typo, 81H3 and 81MD are product names not numbers, my bad.

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
4 years agoMerge pull request #19562 from keszybz/flag-manips
Yu Watanabe [Tue, 11 May 2021 05:34:07 +0000 (14:34 +0900)]
Merge pull request #19562 from keszybz/flag-manips

Fix flag manipulations in cryptsetup

4 years agounit-def: ensure UnitType enum fits any errno value
Lennart Poettering [Mon, 10 May 2021 16:43:07 +0000 (18:43 +0200)]
unit-def: ensure UnitType enum fits any errno value

This is a follow-up for #19514 which changed unit_name_to_instance() to
return ENOMEM as a UnitType enum, even though the enum didn't
necessarily have range for that.

Let's extend the range explicitly, so that we can cover the full errno
range in it.

4 years agobootctl: extend --make-machine-id-directory= documentation a bit
Lennart Poettering [Mon, 10 May 2021 17:03:49 +0000 (19:03 +0200)]
bootctl: extend --make-machine-id-directory= documentation a bit

The directory might not be created in the ESP but in the extended boot
loader partition, hence don#t claim otherwise.

Also, give a brief reason why the concept exists at all.

Link up machine-id man page.

Follow-up for: 6a3fff75baad94d9ebff1a6c7d1fb35448c44a81

4 years agotest-user-util: fix line break confusion
Lennart Poettering [Mon, 10 May 2021 17:19:02 +0000 (19:19 +0200)]
test-user-util: fix line break confusion

This fixes some line-break confusion introduced by #11199
(c6cecb744b53561efd329309af7d02a3f9979ed1). It also restores a test with
GID_INVALID that was dropped, presumably by accident.

4 years agoMerge pull request #19575 from poettering/hwdb-whitespace-fix-again
Yu Watanabe [Tue, 11 May 2021 05:31:35 +0000 (14:31 +0900)]
Merge pull request #19575 from poettering/hwdb-whitespace-fix-again

hwdb: remove trailing whitespace

4 years agoman: remove some trailing whitespace
Lennart Poettering [Mon, 10 May 2021 21:08:58 +0000 (23:08 +0200)]
man: remove some trailing whitespace

4 years agohwdb: remove trailing whitespace
Lennart Poettering [Mon, 10 May 2021 21:03:52 +0000 (23:03 +0200)]
hwdb: remove trailing whitespace

4 years agohwdb: add accel matrix for One-netbook OneMix 3s (#19549)
gitm0 [Mon, 10 May 2021 20:20:58 +0000 (16:20 -0400)]
hwdb: add accel matrix for One-netbook OneMix 3s (#19549)

4 years agoMerge pull request #19570 from poettering/userdb-followup-fixlets
Lennart Poettering [Mon, 10 May 2021 20:06:32 +0000 (22:06 +0200)]
Merge pull request #19570 from poettering/userdb-followup-fixlets

two minor userdb fixes

4 years agoMerge pull request #19568 from poettering/userdbctl-dropin
Lennart Poettering [Mon, 10 May 2021 20:06:07 +0000 (22:06 +0200)]
Merge pull request #19568 from poettering/userdbctl-dropin

userdbctl: add new --with-varlink= and --with-drop-in= flags

4 years agotest-efi-create-disk: support /boot/efi
Zbigniew Jędrzejewski-Szmek [Mon, 10 May 2021 18:35:31 +0000 (20:35 +0200)]
test-efi-create-disk: support /boot/efi

Most of our tools allow EFI mount to be on /boot/efi. Do the same here.

4 years agotest-efi-create-disk: shellcheckify
Zbigniew Jędrzejewski-Szmek [Mon, 10 May 2021 18:29:08 +0000 (20:29 +0200)]
test-efi-create-disk: shellcheckify

4 years agomeson: rework test-efi-disk.img creation to not require variables
Zbigniew Jędrzejewski-Szmek [Mon, 10 May 2021 18:28:14 +0000 (20:28 +0200)]
meson: rework test-efi-disk.img creation to not require variables

The primary goal is to make the name of the custom_target() rule match
the output file again. Having them different is confusing.

4 years agocryptsetup: fix flags check
Zbigniew Jędrzejewski-Szmek [Mon, 10 May 2021 13:04:10 +0000 (15:04 +0200)]
cryptsetup: fix flags check

FLAGS_SET() checks if *all* the bits are set. In this case we want to check
if *any* are. FLAGS_SET() was added in cde2f8605e0c3842f9a87785dd758f955f2d04ba,
but not a bug then yet, because with just one bit, both options are equivalent.
But when more bits were added later, this stopped being correct.

4 years agocryptsetup: initialize variable
Zbigniew Jędrzejewski-Szmek [Mon, 10 May 2021 13:02:34 +0000 (15:02 +0200)]
cryptsetup: initialize variable

Fixup for cde2f8605e0c3842f9a87785dd758f955f2d04ba. Use PIN+PV because the
status quo ante was that we turned off "uv" and left "up" and "clientPin" in
its default values, which with yubikeys (i.e. the most popular hardware) meant
both "up" and "clientPin" were enabled by default.

Coverity CID#1453085.

4 years agouserdb: initialize .synthesize_root/.synthesize_nobody in generic code
Lennart Poettering [Wed, 5 May 2021 20:27:37 +0000 (22:27 +0200)]
userdb: initialize .synthesize_root/.synthesize_nobody in generic code

Let's initialize this at the same place for any iterator allocated. (Yes
not all types of iterator objects need this, but it's still nice to
share this trivial code at one place).

4 years agouserdb: return ESRCH if we didn't find a single varlink service
Lennart Poettering [Wed, 5 May 2021 20:06:34 +0000 (22:06 +0200)]
userdb: return ESRCH if we didn't find a single varlink service

Clearly communicate to callers that we didn't find a single varlink
service, when a lookup is attempted. Note that the fallback's to NSS,
drop-ins and synthesis might eat up this error again, but we should
really make this case reasonably recognizable, in particular as our
various tools already handle this condition correctly and print a nice
message then.

4 years agoman: document new userdbctl features
Lennart Poettering [Fri, 7 May 2021 10:18:07 +0000 (12:18 +0200)]
man: document new userdbctl features

4 years agouserdbctl: add two new switches --with-dropin=/--with-varlink=
Lennart Poettering [Thu, 6 May 2021 14:38:38 +0000 (16:38 +0200)]
userdbctl: add two new switches --with-dropin=/--with-varlink=

These directly correspond to the underlying flags. They are useful for
testing.

4 years agoMerge pull request #19548 from poettering/userdb-dropin
Lennart Poettering [Mon, 10 May 2021 15:53:45 +0000 (17:53 +0200)]
Merge pull request #19548 from poettering/userdb-dropin

userdb: add support for loading user/group records from JSON drop-ins

4 years agodocs: link info about static user/group drop-in files from the relevant specs
Lennart Poettering [Mon, 10 May 2021 12:57:18 +0000 (14:57 +0200)]
docs: link info about static user/group drop-in files from the relevant specs

4 years agoman: document new userdbd features
Lennart Poettering [Fri, 7 May 2021 10:17:57 +0000 (12:17 +0200)]
man: document new userdbd features

4 years agoman: update nss-systemd documentation with new features
Lennart Poettering [Fri, 7 May 2021 10:16:49 +0000 (12:16 +0200)]
man: update nss-systemd documentation with new features

4 years agouserdbd: also listen on a varlink socket io.systemd.DropIn
Lennart Poettering [Thu, 6 May 2021 14:38:28 +0000 (16:38 +0200)]
userdbd: also listen on a varlink socket io.systemd.DropIn

Let's explicitly support looking things up via dropin as a varlink
service.

4 years agouserdb: optionally read user/group/membership "dropins", too
Lennart Poettering [Fri, 30 Apr 2021 21:10:59 +0000 (23:10 +0200)]
userdb: optionally read user/group/membership "dropins", too

4 years agoMerge pull request #19542 from yuwata/unit-after-socket
Zbigniew Jędrzejewski-Szmek [Mon, 10 May 2021 12:44:15 +0000 (14:44 +0200)]
Merge pull request #19542 from yuwata/unit-after-socket

network, timesync, resolve: check bus is ready before emitting property change or signal

4 years agoMerge pull request #19556 from lucasrangit/network-wifi-interface-type-typos
Zbigniew Jędrzejewski-Szmek [Mon, 10 May 2021 11:55:07 +0000 (13:55 +0200)]
Merge pull request #19556 from lucasrangit/network-wifi-interface-type-typos

network: update documentation and examples to use correct interface type and lookup command

4 years agoman: network: use `networkctl list` instead of `status` to list network interface...
Lucas Magasweran [Mon, 10 May 2021 08:11:28 +0000 (10:11 +0200)]
man: network: use `networkctl list` instead of `status` to list network interface type

To determine the network interface type for use in the `Type=` directive, it is more concise to use the `list` command. Whereas, the `status` command requires an interface parameter.

For example, on a RaspberryPi 4 the following shows that the `wlan0` interface type `wlan` is more coveniently listed by the `list` command.

```
root@raspberrypi4-64:~# networkctl list
IDX LINK  TYPE     OPERATIONAL SETUP
  1 lo    loopback carrier     unmanaged
  2 eth0  ether    routable    configured
  3 wlan0 wlan     off         unmanaged

3 links listed.
```

Whereas the `networkctl status` command doesn't include this information.

```
root@raspberrypi4-64:~# networkctl status
●   State: routable
  Address: 192.168.1.141 on eth0
           fd8b:8779:b7a4::f43 on eth0
           fd8b:8779:b7a4:0:dea6:32ff:febe:d1ce on eth0
           fe80::dea6:32ff:febe:d1ce on eth0
  Gateway: 192.168.1.1 (CZ.NIC, z.s.p.o.) on eth0
      DNS: 192.168.1.1

May 07 14:17:18 raspberrypi4-64 systemd-networkd[212]: eth0: Gained carrier
May 07 14:17:19 raspberrypi4-64 systemd-networkd[212]: eth0: Gained IPv6LL
May 07 14:17:19 raspberrypi4-64 systemd-networkd[212]: eth0: DHCPv6 address fd8b:8779:b7a4::f43/128 timeout preferred -1 valid -1
May 07 14:17:21 raspberrypi4-64 systemd-networkd[212]: eth0: DHCPv4 address 192.168.1.141/24 via 192.168.1.1
```

To get the interface type using the `status` command you need to specify an additional argument.

```
root@raspberrypi4-64:~# networkctl status wlan0
● 3: wlan0
                     Link File: /lib/systemd/network/99-default.link
                  Network File: n/a
                          Type: wlan
                         State: off (unmanaged)
                          Path: platform-fe300000.mmcnr
                        Driver: brcmfmac
                    HW Address: dc:a6:32:be:d1:cf (Raspberry Pi Trading Ltd)
                           MTU: 1500 (min: 68, max: 1500)
                         QDisc: noop
  IPv6 Address Generation Mode: eui64
          Queue Length (Tx/Rx): 1/1
```

4 years agoresolve: remove RRs from zones before an update
Roman Beranek [Fri, 30 Apr 2021 13:51:44 +0000 (15:51 +0200)]
resolve: remove RRs from zones before an update

During an update of RRs, the records of each DNS-SD service are
replaced with new ones. However the old RRs can only be removed from
the mDNS scopes as long as they remain accessible from the DnssdService
structures, otherwise they remain stuck there.

Therefore the removal must take place before the update.

4 years agoWider range of options for selecting entries for systemd-journal-gatewayd
Samuel BF [Thu, 29 Apr 2021 19:45:53 +0000 (21:45 +0200)]
Wider range of options for selecting entries for systemd-journal-gatewayd

Introducing --user, --system, --merge and --file flags, like for journalctl
and systemd-journal-upload.

4 years agonetwork: examples: use wlan for Type instead of wifi
Lucas Magasweran [Mon, 10 May 2021 08:09:56 +0000 (10:09 +0200)]
network: examples: use wlan for Type instead of wifi

4 years agohwdb: Add Asus TP550LA
Harsh Barsaiyan [Sun, 9 May 2021 08:59:50 +0000 (14:29 +0530)]
hwdb: Add Asus TP550LA

4 years agoboot/efi: add --build-id=sha1 to ELF efi objects
Dimitri John Ledkov [Wed, 5 May 2021 16:07:48 +0000 (17:07 +0100)]
boot/efi: add --build-id=sha1 to ELF efi objects

As it is not nice to ship ELF binary without a note.gnu.build-id set.

4 years agoboot/efi: install ELF linux.elf.stub in addition to PE linux.efi.stub
Dimitri John Ledkov [Tue, 4 May 2021 17:03:04 +0000 (18:03 +0100)]
boot/efi: install ELF linux.elf.stub in addition to PE linux.efi.stub

Binutils for non-x86 architectures currently does not support PE binaries. Thus
linux.efi.stub is useless on those, as one cannot use any tooling to add
linux/cmdline/splash sections to it. In addition to PE linux.efi.stub also
install ELF linux.elf.stub, such that one can use objcopy ELF target to copy in
linux/cmdline/splash sections and then convert the result to a PE binary.

4 years agoMerge pull request #19436 from xnox/sbat
Dimitri John Ledkov [Mon, 10 May 2021 08:30:16 +0000 (09:30 +0100)]
Merge pull request #19436 from xnox/sbat

boot: add optional EFI SBAT support

4 years agoMerge pull request #19545 from poettering/nss-systemd-shadow
Lennart Poettering [Mon, 10 May 2021 07:46:49 +0000 (09:46 +0200)]
Merge pull request #19545 from poettering/nss-systemd-shadow

nss-systemd: also expose shadow/gshadow entries from userdb records

4 years agoMerge pull request #19298 from bluca/cryptsetup_nopass
Luca Boccassi [Sun, 9 May 2021 12:49:55 +0000 (13:49 +0100)]
Merge pull request #19298 from bluca/cryptsetup_nopass

cryptsetup: add 'headless' parameter to skip password/pin query, allow pin-less enroll on FIDO2, support user presence/verification flags

4 years agoMerge pull request #19552 from yuwata/fix-typo-and-coverty-issues
Luca Boccassi [Sun, 9 May 2021 12:36:17 +0000 (13:36 +0100)]
Merge pull request #19552 from yuwata/fix-typo-and-coverty-issues

Fix typo and coverity issues

4 years agotree-wide: fix typo
Yu Watanabe [Sun, 9 May 2021 05:36:19 +0000 (14:36 +0900)]
tree-wide: fix typo

4 years agouserdb: shorten code a bit
Yu Watanabe [Sun, 9 May 2021 05:33:20 +0000 (14:33 +0900)]
userdb: shorten code a bit

Hopefully fixes CID#1452937.

4 years agotest: add one more assertion to make Coverty happy
Yu Watanabe [Sun, 9 May 2021 05:16:11 +0000 (14:16 +0900)]
test: add one more assertion to make Coverty happy

Fixes CID#1452934.

4 years agonetworkd: correct batman-adv setting name (GatewayBandwidth) (#19539)
Jörg Deckert [Sat, 8 May 2021 12:39:32 +0000 (14:39 +0200)]
networkd: correct batman-adv setting name (GatewayBandwidth) (#19539)

Co-authored-by: Jörg Deckert <jdeckert@unitas-network.de>
4 years agonss-systemd: synthesize NSS shadow/gshadow records from userdb, as well
Lennart Poettering [Wed, 5 May 2021 14:11:26 +0000 (16:11 +0200)]
nss-systemd: synthesize NSS shadow/gshadow records from userdb, as well

This ensures we not only synthesize regular paswd/group records of
userdb records, but shadow records as well. This should make sure that
userdb can be used as comprehensive superset of the classic
passwd/group/shadow/gshadow functionality.

4 years agonss-systemd: set USERDB_SUPPRESS_SHADOW flag when looking up user records
Lennart Poettering [Wed, 5 May 2021 13:53:07 +0000 (15:53 +0200)]
nss-systemd: set USERDB_SUPPRESS_SHADOW flag when looking up user records

Setting the flags means we won#t try to read the data from /etc/shadow
when reading a user record, thus slightly making conversion quicker and
reducing the chance of generating MAC faults, because we needlessly
access a privileged resource. Previously, passing the flag didn't
matter, when converting our JSON records to NSS since the flag only had
an effect on whether to use NSS getspnam() and related calls or not. But
given that we turn off NSS anyway as backend for this conversion (since
we want to avoid NSS loops, where we turn NSS data to our JSON user
records, and then to NSS forever and ever) it was unnecessary to pass
it.

This changed in one of the previous commits however, where we added
support for reading user definitions from drop-in files, with separate
drop-in files for the shadow data.

4 years agostring-util: explicitly cast character to unsigned
Yu Watanabe [Sat, 8 May 2021 05:56:31 +0000 (14:56 +0900)]
string-util: explicitly cast character to unsigned

This also adds comment why we cast to unsigned.

Follow-up for 7971f9030ae4bebe0d4a6845ed31584f8ab18103.

Addresses the comment https://github.com/systemd/systemd/pull/19544#discussion_r628472794.

4 years agorfc3046 implementation
Yegor Alexeyev [Wed, 21 Apr 2021 03:51:07 +0000 (06:51 +0300)]
rfc3046 implementation

4 years agoresolve: check that bus is ready before emitting signal or property change
Yu Watanabe [Fri, 7 May 2021 16:56:24 +0000 (01:56 +0900)]
resolve: check that bus is ready before emitting signal or property change

4 years agotimesync: check that bus is ready before emitting property change
Yu Watanabe [Fri, 7 May 2021 16:55:08 +0000 (01:55 +0900)]
timesync: check that bus is ready before emitting property change

4 years agonetwork: check that bus is ready at one more place
Yu Watanabe [Fri, 7 May 2021 16:54:07 +0000 (01:54 +0900)]
network: check that bus is ready at one more place

4 years agolocal-addresses: wrap long comment
Yu Watanabe [Fri, 7 May 2021 16:10:31 +0000 (01:10 +0900)]
local-addresses: wrap long comment

Follow-up for 54e6f97bc9931679aa9b895546621b15e0f464a4.

4 years agoMerge pull request #19438 from poettering/nspawn-uidmap
Lennart Poettering [Fri, 7 May 2021 22:12:20 +0000 (00:12 +0200)]
Merge pull request #19438 from poettering/nspawn-uidmap

nspawn: add support for kernel 5.12 ID mapping mounts

4 years agoMerge pull request #19538 from poettering/userdbd-simplify-nss-listing
Lennart Poettering [Fri, 7 May 2021 22:12:01 +0000 (00:12 +0200)]
Merge pull request #19538 from poettering/userdbd-simplify-nss-listing

userdbd: refactoring to simplify NSS user listing

4 years agoupdate TODO
Lennart Poettering [Tue, 27 Apr 2021 16:33:23 +0000 (18:33 +0200)]
update TODO