]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
2 years agotest-time-util: add test cases to invalidate "show" and "cancel" 26683/head
Mike Yuan [Mon, 13 Mar 2023 23:16:18 +0000 (07:16 +0800)] 
test-time-util: add test cases to invalidate "show" and "cancel"

Ensure that systemctl reboot --when=show and --when=cancel will not result in ambiguities

2 years agosystemctl: add option --when for scheduled shutdown
Mike Yuan [Sun, 5 Mar 2023 15:27:44 +0000 (23:27 +0800)] 
systemctl: add option --when for scheduled shutdown

Pass an empty string or "cancel" will cancel the action.
Pass "show" will show the scheduled actions.

Replaces #17258

2 years agosystemctl: logind: make logind_schedule_shutdown accept action as param
Mike Yuan [Sun, 5 Mar 2023 15:11:48 +0000 (23:11 +0800)] 
systemctl: logind: make logind_schedule_shutdown accept action as param

2 years agosystemctl: logind: add missing asserts
Mike Yuan [Mon, 13 Mar 2023 22:56:17 +0000 (06:56 +0800)] 
systemctl: logind: add missing asserts

2 years agoMerge pull request #26662 from yuwata/test-execute-network-namespace-path
Daan De Meyer [Tue, 14 Mar 2023 10:16:15 +0000 (11:16 +0100)] 
Merge pull request #26662 from yuwata/test-execute-network-namespace-path

test-execute: add tests for NetworkNamespacePath=

2 years agohwdb: 60-keyboard.hwdb: Fix modalias for Thinkpad X200 Tablet (#26795)
EinBaum [Tue, 14 Mar 2023 08:41:21 +0000 (10:41 +0200)] 
hwdb: 60-keyboard.hwdb: Fix modalias for Thinkpad X200 Tablet (#26795)

This fixes the tablet buttons on the Thinkpad X200 Tablet.
My Lenovo ThinkPad X200 Tablet is called "ThinkPadX200T" instead of "ThinkPadX200Tablet":
```
$ cat /sys/devices/virtual/dmi/id/modalias
dmi:bvnLENOVO:bvr7WET71WW(3.21):bd11/29/2012:br3.33:efr1.6:svnLENOVO:pn7453WVK:pvrThinkPadX200T:rvnLENOVO:rn7453WVK:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:sku:
```
This patch makes both strings work correctly to support the extra tablet keys.

2 years agotest-process-util: port to detach_mount_namespace()
Lennart Poettering [Mon, 13 Mar 2023 14:22:38 +0000 (15:22 +0100)] 
test-process-util: port to detach_mount_namespace()

2 years agoMerge pull request #26767 from yuwata/udev-rule-rework-logging
Yu Watanabe [Tue, 14 Mar 2023 04:14:49 +0000 (13:14 +0900)] 
Merge pull request #26767 from yuwata/udev-rule-rework-logging

udev-rule: rework logging about udev rules

2 years agopo: Translated using Weblate (Punjabi)
A S Alam [Tue, 14 Mar 2023 02:20:31 +0000 (03:20 +0100)] 
po: Translated using Weblate (Punjabi)

Currently translated at 6.2% (12 of 193 strings)

Co-authored-by: A S Alam <amanpreet.alam@gmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/master/pa/
Translation: systemd/main

2 years agonamespace-util: set mounts back to MS_SHARED in detach_mount_namespace()
Lennart Poettering [Mon, 13 Mar 2023 14:16:55 +0000 (15:16 +0100)] 
namespace-util: set mounts back to MS_SHARED in detach_mount_namespace()

For nspawn and services we first turn off two-way propagation of mounts
from host to sandbox via MS_SLAVE, and then set MS_SHARED again, so that
we create a new mount prop peer group again, and that we provide
behaviour similar to what we provide on the host further down the tree.

Let's do the same in detach_mount_namespace(), which we use for the
temporary mounts in the implementation of --image= in various tools.

This doesn't fix any immediate issue, but ensures we expose somewhat
systematic behaviour: whenever we detach mount namespaces we always set
things back to MS_SLAVE in the child.

2 years agocore: rename "mount_flags" → "mount_propagation_flag" internally where appropriate
Lennart Poettering [Mon, 13 Mar 2023 14:14:11 +0000 (15:14 +0100)] 
core: rename "mount_flags" → "mount_propagation_flag" internally where appropriate

ExecContext has a field that controls the mount propagation flag of the
mounts in the resulting namespace. This is exposed as "MountFlags="
which is super confusing, as it suggests one could control more than
propagation, and that it was actually a flags field. It's an enum
though only, and nothing else.

We might want to rename this externally one day, but given the compat
kludges this requires and the fact this is somewhat nichey it might not
be worth it. But internally let's rename it, as it makes things much
easier to grok, in particular as part of the codebase already exposed
the concept as mount_propagation_flag.

No actual code flow changes, just some renaming.

2 years agonamespace: use ERRNO_IS_PRIVILEGE()/ERRNO_IS_NOT_SUPPORTED() where appropriate
Lennart Poettering [Mon, 13 Mar 2023 14:19:56 +0000 (15:19 +0100)] 
namespace: use ERRNO_IS_PRIVILEGE()/ERRNO_IS_NOT_SUPPORTED() where appropriate

2 years agotest: testsuite-26: remove duplicate source
Mike Yuan [Mon, 13 Mar 2023 18:01:43 +0000 (02:01 +0800)] 
test: testsuite-26: remove duplicate source

2 years agouserbd: manager doesn't actually use varlink, only workers do
Lennart Poettering [Tue, 7 Mar 2023 21:51:23 +0000 (22:51 +0100)] 
userbd: manager doesn't actually use varlink, only workers do

2 years agoman: add missing tags in udevadm(8)
Yu Watanabe [Mon, 13 Mar 2023 17:53:09 +0000 (02:53 +0900)] 
man: add missing tags in udevadm(8)

2 years agoexecute: use prctl(PR_SET_MDWE) for MemoryDenyWriteExecute=yes
Topi Miettinen [Sun, 6 Nov 2022 19:12:45 +0000 (21:12 +0200)] 
execute: use prctl(PR_SET_MDWE) for MemoryDenyWriteExecute=yes

On some ARM platforms, the dynamic linker could use PROT_BTI memory protection
flag with `mprotect(..., PROT_BTI | PROT_EXEC)` to enable additional memory
protection for executable pages. But `MemoryDenyWriteExecute=yes` blocks this
with seccomp filter denying all `mprotect(..., x | PROT_EXEC)`.

Newly preferred method is to use prctl(PR_SET_MDWE) on supported kernels. Then
in-kernel implementation can allow PROT_BTI as necessary, without weakening
MDWE. In-kernel version may also be extended to more sophisticated protections
in the future.

2 years agoMerge pull request #26749 from DaanDeMeyer/more-cleanups
Yu Watanabe [Mon, 13 Mar 2023 18:34:37 +0000 (03:34 +0900)] 
Merge pull request #26749 from DaanDeMeyer/more-cleanups

execute: Some modernizations

2 years agoconf: replace config_parse_many_nulstr() with config_parse_config_file()
Franck Bui [Fri, 27 Jan 2023 10:32:27 +0000 (11:32 +0100)] 
conf: replace config_parse_many_nulstr() with config_parse_config_file()

All daemons use a similar scheme to read their main config files and theirs
drop-ins. The main config files are always stored in /etc/systemd directory and
it's easy enough to construct the name of the drop-in directories based on the
name of the main config file.

Hence the new helper does that internally, which allows to reduce and simplify
the args passed previously to config_parse_many_nulstr().

Besides the overall code simplification it results:

  16 files changed, 87 insertions(+), 159 deletions(-)

it allows to identify clearly the locations in the code where configuration
files are parsed.

2 years agoMerge pull request #26781 from mrc0mmand/tests-again
Yu Watanabe [Mon, 13 Mar 2023 18:27:45 +0000 (03:27 +0900)] 
Merge pull request #26781 from mrc0mmand/tests-again

test: add a couple of tests for systemd-path

2 years agohwdb: update 70-mouse.hwdb (#26782)
tofylion [Mon, 13 Mar 2023 18:27:02 +0000 (18:27 +0000)] 
hwdb: update 70-mouse.hwdb (#26782)

Add Logitech G502 X wired and wireless configurations with correct pid and vid.

2 years agonetwork: ipv4acd: update MAC address on change (#26753)
Brett Holman [Mon, 13 Mar 2023 15:21:30 +0000 (09:21 -0600)] 
network: ipv4acd: update MAC address on change (#26753)

Commit 76a86ffdbee2dd9ef0f2b5338e14eb6ba7671456 added function
ipv4acd_update_mac() but invoked ipv4ll_update_mac(), which doesn't
align with debug or commit messages.

2 years agoman: Fix user generator output paths
Daan De Meyer [Mon, 13 Mar 2023 10:26:06 +0000 (11:26 +0100)] 
man: Fix user generator output paths

These are all under $XDG_RUNTIME_DIR/systemd instead of directly
under $XDG_RUNTIME_DIR.

2 years agoudevadm-verify: fix indentation of help message 26767/head
Yu Watanabe [Mon, 13 Mar 2023 12:30:44 +0000 (21:30 +0900)] 
udevadm-verify: fix indentation of help message

2 years agoudevadm: enable colorized logging
Yu Watanabe [Mon, 13 Mar 2023 12:20:29 +0000 (21:20 +0900)] 
udevadm: enable colorized logging

2 years agoudev-rules: inline rule_line_append_token()
Yu Watanabe [Mon, 13 Mar 2023 10:31:40 +0000 (19:31 +0900)] 
udev-rules: inline rule_line_append_token()

2 years agoudev-rules: modernize free functions
Yu Watanabe [Mon, 13 Mar 2023 10:31:20 +0000 (19:31 +0900)] 
udev-rules: modernize free functions

2 years agoudev-rules: do not set 'issues' tag when applying rules to event device
Yu Watanabe [Mon, 13 Mar 2023 11:43:27 +0000 (20:43 +0900)] 
udev-rules: do not set 'issues' tag when applying rules to event device

The tagging is used by `udevadm verify` and the command only parses
udev rules but not apply them.

2 years agoudev-rules: introduce log_event_truncated() helper function
Yu Watanabe [Mon, 13 Mar 2023 12:10:49 +0000 (21:10 +0900)] 
udev-rules: introduce log_event_truncated() helper function

2 years agoudev-rule: rework logging about udev rules
Yu Watanabe [Mon, 13 Mar 2023 11:57:50 +0000 (20:57 +0900)] 
udev-rule: rework logging about udev rules

This makes the loggers take the most relevant object, i.e. when
applying udev rules to a device, the loggers take sd_device and
UdevRuleToken object, and when parsing udev rules, they take
UdevRuleLine or UdevRuleFile object.

To achieve that, this drops 'iterators' in UdevRules or friends named
`current_file` or so. Instead of that, each object now has its
parent object, e.g. UdevRuleToken.rule_line that references the
UdevRuleLine object the token belonging to. And each function previously
took UdevRules object now takes the most relevant object, e.g. UdevRuleToken.

Solves the discussion in https://github.com/systemd/systemd/pull/26698#discussion_r1129261193.

2 years agonamespace: Modernize shareable namespace functions 26749/head
Daan De Meyer [Wed, 8 Mar 2023 14:30:19 +0000 (15:30 +0100)] 
namespace: Modernize shareable namespace functions

2 years agodynamic-user: Revert back to using POSIX locks
Daan De Meyer [Mon, 13 Mar 2023 12:05:19 +0000 (13:05 +0100)] 
dynamic-user: Revert back to using POSIX locks

unposix locks are shared between child and parent after fork() which
is precisely what we don't want in this case so revert back to POSIX
locks which are not shared between parent and child.

2 years agolock-util: Add posix_lock()
Daan De Meyer [Mon, 13 Mar 2023 12:03:32 +0000 (13:03 +0100)] 
lock-util: Add posix_lock()

POSIX locks with the same interface as flock().

2 years agoexecute: Use log_unit_error_errno() instead of log_error_errno()
Daan De Meyer [Fri, 10 Mar 2023 11:25:42 +0000 (12:25 +0100)] 
execute: Use log_unit_error_errno() instead of log_error_errno()

2 years agosystemctl: refuse to acquire dbus connection with --global
Yu Watanabe [Sat, 11 Mar 2023 08:03:37 +0000 (17:03 +0900)] 
systemctl: refuse to acquire dbus connection with --global

Maybe, better to check the runtime scope each verb for better log
message, but this is a good start point to not trigger assertion.

Fixes oss-fuzz#56915 (https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=56915).

Fixes #26402 and #26754.

2 years agotest: add a couple of tests for systemd-path 26781/head
Frantisek Sumsal [Thu, 9 Mar 2023 19:58:21 +0000 (20:58 +0100)] 
test: add a couple of tests for systemd-path

2 years agoMerge pull request #26772 from yuwata/time-util-adjust-formattable-timestamp-max
Luca Boccassi [Sun, 12 Mar 2023 23:06:39 +0000 (23:06 +0000)] 
Merge pull request #26772 from yuwata/time-util-adjust-formattable-timestamp-max

time-util: adjust formattable timestamp max

2 years agoadded a unit test for a function in "argv-utils.c" (#26760)
OMOJOLA JOSHUA [Sun, 12 Mar 2023 23:03:52 +0000 (00:03 +0100)] 
added a unit test for a function in "argv-utils.c" (#26760)

* added a unit test for argv-utils.c

2 years agotest-time-util: do not fail on DST change 26772/head
Yu Watanabe [Sun, 12 Mar 2023 18:47:45 +0000 (03:47 +0900)] 
test-time-util: do not fail on DST change

2 years agotime-util: add note about on DST change
Yu Watanabe [Sun, 12 Mar 2023 18:47:15 +0000 (03:47 +0900)] 
time-util: add note about on DST change

2 years agotest: add more testcases for formatting/parsing timestamp
Yu Watanabe [Sun, 12 Mar 2023 11:59:38 +0000 (20:59 +0900)] 
test: add more testcases for formatting/parsing timestamp

2 years agotime-util: make USEC_TIMESTAMP_FORMATTABLE_MAX for 32bit system off by one day
Yu Watanabe [Sun, 12 Mar 2023 11:57:16 +0000 (20:57 +0900)] 
time-util: make USEC_TIMESTAMP_FORMATTABLE_MAX for 32bit system off by one day

As the same reason why we take one day off for 64bit case.

This also makes both upper bounds always defined for testing.

2 years agoMerge pull request #26775 from DaanDeMeyer/ext-default
Yu Watanabe [Sun, 12 Mar 2023 19:04:09 +0000 (04:04 +0900)] 
Merge pull request #26775 from DaanDeMeyer/ext-default

mkfs-util: Always use "default" usage type for ext filesystems

2 years agoMerge pull request #26776 from YHNdnzj/edit-util-more-cleanup
Yu Watanabe [Sun, 12 Mar 2023 19:01:02 +0000 (04:01 +0900)] 
Merge pull request #26776 from YHNdnzj/edit-util-more-cleanup

edit-util: some more cleanups

2 years agoedit-util: include the correct header 26776/head
Mike Yuan [Sun, 12 Mar 2023 17:44:51 +0000 (01:44 +0800)] 
edit-util: include the correct header

2 years agoedit-util: rename trim_edit_marker to strip_edit_temp_file
Mike Yuan [Sun, 12 Mar 2023 16:39:07 +0000 (00:39 +0800)] 
edit-util: rename trim_edit_marker to strip_edit_temp_file

with some minor cleanups

2 years agoedit-util: always create temp file
Mike Yuan [Sun, 12 Mar 2023 10:06:02 +0000 (18:06 +0800)] 
edit-util: always create temp file

even if neither original_path nor comment_paths is specified.

2 years agoedit-util: minor cleanups
Mike Yuan [Sat, 11 Mar 2023 14:52:39 +0000 (22:52 +0800)] 
edit-util: minor cleanups

Reuse unlink_and_free() and avoid unnecessary
call to rmdir()

2 years agomkfs-util: Redirect mkfs.vfat stdout to /dev/null 26775/head
Daan De Meyer [Sun, 12 Mar 2023 15:20:38 +0000 (16:20 +0100)] 
mkfs-util: Redirect mkfs.vfat stdout to /dev/null

mkfs.vfat does not have a --quiet option so let's redirect its
stdout to /dev/null instead.

2 years agomkfs-util: Don't explicitly enable has_journal for ext3/ext4
Daan De Meyer [Sun, 12 Mar 2023 14:36:08 +0000 (15:36 +0100)] 
mkfs-util: Don't explicitly enable has_journal for ext3/ext4

It's enabled by default anyway and removing it allows merging the ext
conditionals into one.

2 years agomkfs-util: Always use "default" usage type for ext filesystems
Daan De Meyer [Sun, 12 Mar 2023 14:15:35 +0000 (15:15 +0100)] 
mkfs-util: Always use "default" usage type for ext filesystems

If no usage type is explicitly specified, ext will choose one based
on the filesystem size. Let's override this and always use the
"default" usage type so that we can create filesystems that are
initially small but might grow later without opting in to the "small"
usage type.

2 years agoMerge pull request #26756 from yuwata/edit-util-cleanups
Mike Yuan [Sun, 12 Mar 2023 11:23:19 +0000 (19:23 +0800)] 
Merge pull request #26756 from yuwata/edit-util-cleanups

edit-util: several cleanups

2 years agosd-boot: fix incompatible type
Yu Watanabe [Sun, 12 Mar 2023 07:40:18 +0000 (16:40 +0900)] 
sd-boot: fix incompatible type

Fixes the following build error:
```
../src/boot/efi/vmm.c: In function ‘get_smbios_table’:
../src/boot/efi/vmm.c:217:24: error: incompatible types when returning type ‘_Bool’ but ‘const SmbiosHeader *’ was expected
  217 |                 return false;
      |                        ^~~~~
```

2 years agoedit-util: unlink temporary file on failure 26756/head
Yu Watanabe [Sat, 11 Mar 2023 13:20:51 +0000 (22:20 +0900)] 
edit-util: unlink temporary file on failure

Addresses the suggestion
https://github.com/systemd/systemd/pull/26756#discussion_r1133078705.

2 years agoedit-util: fix potentical crash when no edit markers
Yu Watanabe [Sat, 11 Mar 2023 08:38:03 +0000 (17:38 +0900)] 
edit-util: fix potentical crash when no edit markers

This also makes trim_edit_markers() take EditFile as the argument.

2 years agoedit-util: make create_edit_temp_file() take EditFile as the argument
Yu Watanabe [Sat, 11 Mar 2023 08:35:55 +0000 (17:35 +0900)] 
edit-util: make create_edit_temp_file() take EditFile as the argument

No functional changes, just refactoring.

2 years agoedit-util: make EditFile take reference of EditFileContext
Yu Watanabe [Sat, 11 Mar 2023 08:42:34 +0000 (17:42 +0900)] 
edit-util: make EditFile take reference of EditFileContext

No functional change, just preparation for later commits.

2 years agosystemctl-edit: invert one error check
Yu Watanabe [Sat, 11 Mar 2023 08:19:35 +0000 (17:19 +0900)] 
systemctl-edit: invert one error check

2 years agosystemctl-edit: shorten code a bit
Yu Watanabe [Sat, 11 Mar 2023 08:18:29 +0000 (17:18 +0900)] 
systemctl-edit: shorten code a bit

2 years agomkosi: Update to latest
Daan De Meyer [Sat, 11 Mar 2023 12:32:29 +0000 (13:32 +0100)] 
mkosi: Update to latest

2 years agoMerge pull request #26641 from medhefgo/boot-elf2efi
Yu Watanabe [Sat, 11 Mar 2023 08:15:01 +0000 (17:15 +0900)] 
Merge pull request #26641 from medhefgo/boot-elf2efi

boot: Drop gnu-efi / Add elf2efi.py

2 years agoMerge pull request #26303 from YHNdnzj/edit-util
Yu Watanabe [Sat, 11 Mar 2023 08:13:27 +0000 (17:13 +0900)] 
Merge pull request #26303 from YHNdnzj/edit-util

shared: add edit-util (part of which extracted from systemctl-edit)

2 years agoMerge pull request #26739 from ldv-alt/udevadm-verify
Yu Watanabe [Sat, 11 Mar 2023 08:12:57 +0000 (17:12 +0900)] 
Merge pull request #26739 from ldv-alt/udevadm-verify

udevadm verify: introduce --root option

2 years agoMerge pull request #26752 from Foxboron/morten/fix-manpage
Yu Watanabe [Sat, 11 Mar 2023 08:12:47 +0000 (17:12 +0900)] 
Merge pull request #26752 from Foxboron/morten/fix-manpage

src: Fixup copy-paste error for terminal_urlify_man

2 years agoman: Fix pcrphase.service manvolnum from 1 to 8 26752/head
Morten Linderud [Fri, 10 Mar 2023 19:29:56 +0000 (20:29 +0100)] 
man: Fix pcrphase.service manvolnum from 1 to 8

2 years agosrc: Fixup copy-paste error for terminal_urlify_man
Morten Linderud [Fri, 10 Mar 2023 19:20:44 +0000 (20:20 +0100)] 
src: Fixup copy-paste error for terminal_urlify_man

Signed-off-by: Morten Linderud <morten@linderud.pw>
2 years agogenerator: fix comment 26750/head
Yu Watanabe [Fri, 10 Mar 2023 18:32:23 +0000 (03:32 +0900)] 
generator: fix comment

2 years agoedit-util: several cleanups for run_editor 26303/head
Mike Yuan [Sat, 25 Feb 2023 18:09:24 +0000 (02:09 +0800)] 
edit-util: several cleanups for run_editor

run_editor is now switched to heap allocation
for simplicity. The code for child is made into
an individual function for simpler error handling.

2 years agosystemctl: edit: several cleanups
Mike Yuan [Sat, 25 Feb 2023 17:54:10 +0000 (01:54 +0800)] 
systemctl: edit: several cleanups

2 years agoedit-util: introduce EditFileContext
Mike Yuan [Sat, 25 Feb 2023 13:02:17 +0000 (21:02 +0800)] 
edit-util: introduce EditFileContext

This is a rather large change which moves
the add and install logic into edit-util.

We store an EditFile array and the number of
elements, along with the edit markers used in
temporary files and whether to remove the parent
directories of the target files if they're empty
in an EditFileContext object.

Call edit_files_add() to add an file to edit,
and do_edit_files_and_install() to do the actual
editing (through create_edit_temp_file(),
run_editor() and trim_edit_markers()).
After that, edit_file_context_done() can be used
to destroy the object.

2 years agoedit-util: several cleanups to create_edit_temp_file
Mike Yuan [Sat, 25 Feb 2023 13:11:02 +0000 (21:11 +0800)] 
edit-util: several cleanups to create_edit_temp_file

original_path and comment_paths can now be used
together.

Removes reference to "unit"

2 years agoshared: extract edit-util from systemctl-edit
Mike Yuan [Sat, 25 Feb 2023 12:47:13 +0000 (20:47 +0800)] 
shared: extract edit-util from systemctl-edit

2 years agoudev_rules_parse_file: issue diagnostics about duplicate LABEL tokens 26739/head
Dmitry V. Levin [Fri, 10 Mar 2023 08:00:00 +0000 (08:00 +0000)] 
udev_rules_parse_file: issue diagnostics about duplicate LABEL tokens

When a rules contains several LABEL tokens, the parser used to silently
discard all of them besides the last one without any diagnostics at all.
It's time to break the vow of silence and let the parser issue a warning.

2 years agomount: Include After=local-fs-pre.target by default in initrd
Will Fancher [Wed, 8 Feb 2023 03:00:38 +0000 (22:00 -0500)] 
mount: Include After=local-fs-pre.target by default in initrd

Although it may be true that /sysroot and its children don't belong in
local-fs.target, that doesn't mean they shouldn't come after
local-fs-pre.target. For instance, systemd-hibernate-resume@.service needs to
come before /sysroot and its children, but currently that only happens
coincidentally because of the ordering between systemd-fsck@.service and
local-fs-pre.target. As a result, mount units can be mistakenly started
simultaneously with systemd-hibernate-resume@.service, which can cause
corruption and data loss in the worst of cases.

2 years agotestsuite-17.11.sh: check udevadm verify --root
Dmitry V. Levin [Thu, 9 Mar 2023 08:00:00 +0000 (08:00 +0000)] 
testsuite-17.11.sh: check udevadm verify --root

2 years agoudevadm verify: introduce --root option
Dmitry V. Levin [Thu, 9 Mar 2023 08:00:00 +0000 (08:00 +0000)] 
udevadm verify: introduce --root option

When udevadm verify is invoked without positional arguments and loads
all rules files from the system like the udev daemon does, this option
can be used to operate on files underneath the specified root path.

2 years agoudevadm verify: load all rules from the system if no rules were given
Dmitry V. Levin [Thu, 9 Mar 2023 08:00:00 +0000 (08:00 +0000)] 
udevadm verify: load all rules from the system if no rules were given

When udevadm verify is invoked without positional arguments, that is,
when no udev rules files are specified, load all rules files from the system
like the udev daemon does, and verify them.

2 years agotestsuite-17.11.sh: prepare to test udevadm verify --root
Dmitry V. Levin [Thu, 9 Mar 2023 08:00:00 +0000 (08:00 +0000)] 
testsuite-17.11.sh: prepare to test udevadm verify --root

2 years agotestsuite-17.11.sh: create all files in a temporary directory
Dmitry V. Levin [Thu, 9 Mar 2023 08:00:00 +0000 (08:00 +0000)] 
testsuite-17.11.sh: create all files in a temporary directory

Make sure the test would not collide with anything else by moving
all files it created into a temporary directory.

2 years agotestsuite-17.11.sh: robustify unknown user/group checks
Dmitry V. Levin [Thu, 9 Mar 2023 08:00:00 +0000 (08:00 +0000)] 
testsuite-17.11.sh: robustify unknown user/group checks

Use certainly invalid user/group names in the tests that check
unknown user/group diagnostics.

2 years agoMerge pull request #26726 from DaanDeMeyer/cleanups
Daan De Meyer [Fri, 10 Mar 2023 13:22:53 +0000 (14:22 +0100)] 
Merge pull request #26726 from DaanDeMeyer/cleanups

Various small cleanups

2 years agoMerge pull request #26737 from poettering/runtime-scope
Lennart Poettering [Fri, 10 Mar 2023 12:09:40 +0000 (13:09 +0100)] 
Merge pull request #26737 from poettering/runtime-scope

add RuntimeScope enum, replacing LookupScope and various booleans indicating whether we are called in a per-system or per-user context

2 years agoMerge pull request #26747 from poettering/dissect-common-decrypt
Lennart Poettering [Fri, 10 Mar 2023 12:07:22 +0000 (13:07 +0100)] 
Merge pull request #26747 from poettering/dissect-common-decrypt

minor clean-ups for src/dissect/dissect.c

2 years agotest: run script from /tmp, not /run
Luca Boccassi [Thu, 9 Mar 2023 17:08:01 +0000 (17:08 +0000)] 
test: run script from /tmp, not /run

On Debian the test fails because /run is noexec. Simply create the
script in /tmp (and use a BindPath=), as other tests are doing.

Follow-up for 3b7101183cac4b35a8bd6ea2c1de9260c33f977f

2 years agolock-util: Use unposix_lock() in make_lock_file() and release_lock_file() 26726/head
Daan De Meyer [Fri, 10 Mar 2023 10:08:57 +0000 (11:08 +0100)] 
lock-util: Use unposix_lock() in make_lock_file() and release_lock_file()

2 years agouser-util: Use unposix_lock() in take_etc_passwd_lock()
Daan De Meyer [Thu, 9 Mar 2023 11:28:31 +0000 (12:28 +0100)] 
user-util: Use unposix_lock() in take_etc_passwd_lock()

2 years agolock-util: Move to src/basic
Daan De Meyer [Thu, 9 Mar 2023 11:26:25 +0000 (12:26 +0100)] 
lock-util: Move to src/basic

2 years agolock-util: Add CLEANUP_UNPOSIX_UNLOCK()
Daan De Meyer [Wed, 8 Mar 2023 12:00:40 +0000 (13:00 +0100)] 
lock-util: Add CLEANUP_UNPOSIX_UNLOCK()

Also migrate the logic in dynamic-user.c to use the new cleanup
macro.

2 years agolock-util: Add unposix_lock()
Daan De Meyer [Thu, 9 Mar 2023 11:16:54 +0000 (12:16 +0100)] 
lock-util: Add unposix_lock()

Let's add an interface to UNPOSIX locks that mimicks the flock()
interface for BSD locks.

2 years agomeson: Use static library for EFI tests 26641/head
Jan Janssen [Sat, 4 Mar 2023 13:10:35 +0000 (14:10 +0100)] 
meson: Use static library for EFI tests

This also moves them so that fuzz builds do not need pyelftools around.

2 years agoboot: Fix unused function warning
Jan Janssen [Thu, 2 Mar 2023 16:11:52 +0000 (17:11 +0100)] 
boot: Fix unused function warning

2 years agoci: Adjust for new EFI build
Jan Janssen [Thu, 2 Mar 2023 14:41:17 +0000 (15:41 +0100)] 
ci: Adjust for new EFI build

2 years agoboot: Add RISCV32 and LoongArch support
Jan Janssen [Tue, 28 Feb 2023 17:05:18 +0000 (18:05 +0100)] 
boot: Add RISCV32 and LoongArch support

This is completely untested, but should work in theory, as it's just
adding a couple defines according to the specs.

2 years agoboot: Fix debug experience
Jan Janssen [Tue, 28 Feb 2023 16:44:05 +0000 (17:44 +0100)] 
boot: Fix debug experience

2 years agoboot: Bring back bootloader builds
Jan Janssen [Mon, 27 Feb 2023 15:54:48 +0000 (16:54 +0100)] 
boot: Bring back bootloader builds

This adds back sd-boot builds by using meson compile targets directly.
We can do this now, because userspace binaries use the special
dependency that allows us to easily separate flags, so that we don't
pass anything to EFI builds that shouldn't be passed.

Additionally, we pass a bunch of flags to hopefully disable/override any
distro provided flags that should not be used for EFI binaries.

Fixes: #12275
2 years agotree-wide: Drop gnu-efi
Jan Janssen [Sun, 26 Feb 2023 13:09:44 +0000 (14:09 +0100)] 
tree-wide: Drop gnu-efi

This drops all mentions of gnu-efi and its manual build machinery. A
future commit will bring bootloader builds back. A new bootloader meson
option is now used to control whether to build sd-boot and its userspace
tooling.

2 years agomeson: Introduce userspace dep
Jan Janssen [Sun, 26 Feb 2023 10:07:24 +0000 (11:07 +0100)] 
meson: Introduce userspace dep

This will help in a later commit to separate userspace from EFI builds.

2 years agodissect: use a switch statements where appropriate 26747/head
Lennart Poettering [Fri, 10 Mar 2023 10:33:23 +0000 (11:33 +0100)] 
dissect: use a switch statements where appropriate

2 years agodissect: share dissected_image_decrypt_interactively() invocation between actions
Lennart Poettering [Fri, 10 Mar 2023 10:32:20 +0000 (11:32 +0100)] 
dissect: share dissected_image_decrypt_interactively() invocation between actions

Let's invoke dissected_image_decrypt_interactively() at once place only,
instead of in each function separately.

No actual changes, just some minor refactoring.

2 years agoMerge pull request #26331 from ddstreet/tpm2_pcr_read
Lennart Poettering [Fri, 10 Mar 2023 09:24:39 +0000 (10:24 +0100)] 
Merge pull request #26331 from ddstreet/tpm2_pcr_read

Tpm2 pcr read

2 years agolockfile-util: Rename to lock-util
Daan De Meyer [Wed, 8 Mar 2023 11:57:39 +0000 (12:57 +0100)] 
lockfile-util: Rename to lock-util