Commit Graph
43648 Commits
Author SHA1 Message Date
Daan De Meyer bbfb25f4b9 creds: Add ImportCredential=
ImportCredential= takes a credential name and searches for a matching
credential in all the credential stores we know about it. It supports
globs which are expanded so that all matching credentials are loaded.
2023-06-08 14:09:18 +02:00
Daan De Meyer 96df2bd84b execute: Make credential_search_path() more flexible
Let's also allow looking up only the encrypted credential search
path.
2023-06-08 11:45:24 +02:00
Balló György 0fb19b9469 kbd-model-map: change the order of Hungarian keymaps
This changes the console layout from 'hu101' to 'hu' when the user calls 'localectl set-x11-keymap hu', because 'hu' is the expected layout instead of 'hu101' for most users.
2023-06-07 14:16:44 +02:00
Daan De Meyer d418c5c926 Merge pull request #27629 from ddstreet/tpm2_verify_sym_params
Tpm2 verify sym params
2023-06-07 13:48:54 +02:00
Zbigniew Jędrzejewski-Szmek 00df55e360 Merge pull request #27882 from DaanDeMeyer/repart-truncate
copy: Add COPY_TRUNCATE
2023-06-07 13:32:11 +02:00
Lennart Poettering d9a5574093 resolved: add comment clarifying why we decompress DNS names when parsing SRV
Fixes: #22838
2023-06-07 13:30:22 +02:00
Zbigniew Jędrzejewski-Szmek d1579f0b70 Merge pull request #27885 from DaanDeMeyer/please-dont-make-me-write-more-openat-helpers
Add more openat like helper functions
2023-06-07 13:25:33 +02:00
Michal Sekletar 159f1b7857 pam: add call to pam_umask
Setting umask for user sessions via UMASK setting in /etc/login.defs is
a well-known feature. Let's make sure that user manager also runs with
this umask value.

Follow-up for 5e37d1930b.
2023-06-07 10:51:45 +02:00
Thorsten Kukuk 403082602d sd-login: add sd_session_get_leader interface 2023-06-07 09:33:36 +01:00
Daan De Meyer 3fa3d612a2 Merge pull request #27925 from DaanDeMeyer/repart-encrypt
repart: Do online encryption when loop devices are available
2023-06-06 21:36:09 +02:00
Luca Boccassi cd8947d0d1 Merge pull request #27938 from keszybz/ukify-build-verb
Add 'ukify build' verb, expand tests
2023-06-06 18:22:45 +01:00
Zbigniew Jędrzejewski-Szmek a3b227d28a ukify: add 'build' verb
The old syntax with linux + initrds as positional arguments is still accepted,
but a warning is emitted. We should remove the support for this after the
next release or so.

Adding a single verb by itself is not very useful, but opens the door to adding
other verbs.
2023-06-06 15:45:57 +02:00
Zbigniew Jędrzejewski-Szmek 320266b961 test_ukify: pass through path to addon stub
Without this, the tests would generally be skipped, since we haven't made a
release with the addon stub yet. But even if the file is there, we always want
to test the freshly-built item.
2023-06-06 15:45:57 +02:00
Zbigniew Jędrzejewski-Szmek 0d66468243 test_ukify: no stinky root needed for signing
C.f. b2efe28658.
2023-06-06 15:41:04 +02:00
Zbigniew Jędrzejewski-Szmek 1df35a4638 ukify: simplify creation of parser
00e5933f57 made all the positional arguments
optional, so let's take advantage of this to simplify variuos callers.
2023-06-06 15:41:01 +02:00
Daan De Meyer a09ae91538 repart: Do online encryption when loop devices are available
Online encryption is much faster then offline encryption when using
cryptsetup. To take advantage of this, when loop devices are available,
let's use online encryption instead off offline encryption to encrypt
partitions.

The online encryption logic is the same logic as was removed in
48a09a8fff, except that it's now
integrated with PartitionTarget to ensure that logic outside of
partition_target_encrypt() has to minimally change regardless of
whether we're doing online or offline encryption.
2023-06-06 15:04:17 +02:00
Daan De Meyer 0bb5653530 Merge pull request #27918 from yuwata/chase-filename
chase: handle root path more carefully in chase_and_open()
2023-06-06 15:01:37 +02:00
Daan De Meyer fab4ef7262 btrfs-util: Add btrfs_subvol_snapshot_at() 2023-06-06 14:44:02 +02:00
Daan De Meyer cf91b9155c chattr-util: Make chattr_full() an openat() style function 2023-06-06 14:42:03 +02:00
Daan De Meyer 77c66be37b btrfs-util: Add btrfs_subvol_set_read_only_at() 2023-06-06 14:42:03 +02:00
Daan De Meyer 5124aa8c03 rm-rf: Add rm_rf_at() 2023-06-06 14:42:03 +02:00
Daan De Meyer 24dbe6039a btrfs-util: Add btrfs_subvol_remove_at()
We also remove btrfs_subvol_remove_fd() because btrfs_subvol_remove_at()
is more general.
2023-06-06 14:42:03 +02:00
Daan De Meyer 8b85333cda test-chase: Add one more test for chase_and_openat() 2023-06-06 14:42:03 +02:00
Daan De Meyer 3c8f449cc8 chase: Allow passing NULL as the empty path to chaseat()
Per coding style, we should accept NULL as the empty path.
2023-06-06 14:42:03 +02:00
Daan De Meyer f5dc1adc71 test-chase: Fix comment 2023-06-06 14:42:03 +02:00
Daan De Meyer 8a65b0b2c9 fd-util: Add path_is_root_at()
A generalization of dir_fd_is_root() that allows passing a path
component.
2023-06-06 14:42:03 +02:00
Daan De Meyer 6d2fd8df0a btrfs-util: Add btrfs_is_subvol_at() 2023-06-06 14:42:03 +02:00
Daan De Meyer b196e17ed4 stat-util: Add is_fs_type_at() 2023-06-06 14:42:03 +02:00
Daan De Meyer f90c1959db stat-util: Follow coding style in xstatfsat()
Allow passing NULL to indicate the empty path per coding style.
2023-06-06 14:42:03 +02:00
Daan De Meyer 23e3357842 fs-util: Allow passing NULL path to xopenat()
We recently codified in the coding style that for openat() style APIs,
an empty path can be passed both as the empty string and as NULL, so
let's make sure we follow that style in xopenat().
2023-06-06 14:42:03 +02:00
Daan De Meyer f9f70e062d copy: Merge copy_directory() and copy_directory_fd() into copy_directory_at()
Let's merge these two into a single function that can handle both
variants and more.
2023-06-06 14:42:03 +02:00
Lennart Poettering a9b837aa34 generators: change TimeoutSec=0 to TimeoutSec=infinity
With these settings we intend to turn off timeouts for possibly
interactive/slow commands. The officially documented way to turn off the
time-outs is to setting them to infinity. So far we set them to zero
here though.

This lead to some confusiong, for example #18224. Let's fix this by
uniformly spelling out TimeoutSec=infinity.

This doesn't change behaviour. It just makes our generated files match
what we document, without relying on historic compat support.

Fixes: #18224
2023-06-06 12:38:16 +01:00
Dan Streetman a47060bb34 tpm2: verify symmetric parms in tpm2_context_new()
This adds tpm2_get_capability_algs(), tpm2_supports_alg(), and
tpm2_test_parms(). These functions allow verifying that the TPM supports
specific algs and parameters.

When creating a new context, this checks if the TPM supports the symmetric algs
we use. If the TPM does not support the symmetric algs and parameters we
require, we log and return error.
2023-06-05 19:58:14 -04:00
Dan Streetman 3a35d6cdd2 tpm2: add tpm2_get_capability(), tpm2_cache_capabilities(), tpm2_capability_pcrs()
This adds a function to query specific capabilities from the TPM. That is then
used in a function to query the allocation of PCRs in the TPM, i.e. which PCR
banks and indexes are available, and caches the PCR allocation when the TPM
context is created.
2023-06-05 18:13:07 -04:00
Lennart Poettering 06390e22c9 cgls/cgtop: spell field/column "CGroup" rather than "Control Group"
In the documentation we usually spell the concept "control group".
Internally in code we usually call it "cgroup" or "CGroup". In systemctl output we
called the field "CGroup" so far, i.e. a capitalized version of the
internal name. This is of course very unsystematic. Let's clean this up
a bit: let's now say:

* in docs, continue to spell it out "control groups"
* in brief output call it "CGroup"
* internally call it "cgroup" or "CGroup"

Fixes: #14429
2023-06-06 03:35:28 +09:00
Yu Watanabe 3db7f3c58c Merge pull request #27912 from mrc0mmand/cryptsetup-tests
test: add a couple more tests for systemd-cryptsetup
2023-06-06 03:34:59 +09:00
Luca Boccassi 9bb4f9f2ff Merge pull request #27926 from DaanDeMeyer/repart-offline
repart: Add --offline argument
2023-06-05 19:11:41 +01:00
Frantisek Sumsal cdece7e30a cryptsetup: avoid calling strv_find() on a NULL pointer
When the header= option comes before any other type= defining one, we
trip over an assertion:

Jun 04 15:45:33 H testsuite-24.sh[752]: + systemctl start systemd-cryptsetup@detached.service
Jun 04 15:45:33 H systemd[1]: Starting systemd-cryptsetup@detached.service...
Jun 04 15:45:33 H systemd-cryptsetup[4641]: Assertion 'name' failed at src/basic/strv.c:21, function strv_find(). Aborting.
...
Jun 04 15:45:33 H systemd-coredump[4643]: Process 4641 (systemd-cryptse) of user 0 dumped core.
...
                                          Stack trace of thread 4641:
                                          #0  0x00007ff9256afe5c __pthread_kill_implementation (libc.so.6 + 0x8ce5c)
                                          #1  0x00007ff92565fa76 raise (libc.so.6 + 0x3ca76)
                                          #2  0x00007ff9256497fc abort (libc.so.6 + 0x267fc)
                                          #3  0x00007ff926076047 log_assert_failed (libsystemd-shared-253.so + 0x276047)
                                          #4  0x00007ff9260ab317 strv_find (libsystemd-shared-253.so + 0x2ab317)
                                          #5  0x0000000000405927 parse_one_option (systemd-cryptsetup + 0x5927)
                                          #6  0x0000000000407793 parse_options (systemd-cryptsetup + 0x7793)
                                          #7  0x000000000040fa0c run (systemd-cryptsetup + 0xfa0c)
                                          #8  0x000000000041137f main (systemd-cryptsetup + 0x1137f)
                                          #9  0x00007ff92564a510 __libc_start_call_main (libc.so.6 + 0x27510)
                                          #10 0x00007ff92564a5c9 __libc_start_main@@GLIBC_2.34 (libc.so.6 + 0x275c9)
                                          #11 0x0000000000403915 _start (systemd-cryptsetup + 0x3915)
                                          ELF object binary architecture: AMD x86-64
2023-06-05 16:50:13 +02:00
Zbigniew Jędrzejewski-Szmek c4fc25463e ukify: make code pylint clean
The linter is imperfect, but it is useful as a very quick
check for typos and other silly mistakes. Add a few annotations
and do one small change to make it think the code is perfect.
2023-06-05 16:07:52 +02:00
Zbigniew Jędrzejewski-Szmek 1ab32e8aaf Merge pull request #27871 from yuwata/udevadm-verify-downgrade-style-issues
udevadm-verify: downgrade log level about style issues
2023-06-05 16:07:19 +02:00
Daan De Meyer fc10b158ef repart: Add --offline argument
This allows the user to explicit configure whether loop devices
should be used to build the image or not.
2023-06-05 13:56:49 +02:00
Lennart Poettering 7f1520c6a1 ac-power: add --low switch to systemd-ac-power tool
This allows checking from shell scripts whether the system is in a low
battery state. It just exposed the code we anyway have in a directly
accessible way.

This is also very useful for testing things.
2023-06-05 12:21:28 +02:00
Lennart Poettering c41e3605ec battery-util: be more careful when determining whether we are in a low battery state
Let's avoid assuming a low battery battery state if in doubt. That
means, handle errors reading battery state gracefully.
2023-06-05 12:20:41 +02:00
Lennart Poettering 319c46483e battery-util: move battery_is_discharging_and_low() to battery-util.[ch]
This moves a first batch of functions from sleep-config.[ch] over to
battery-util.[ch].

In the long run we should probably move even more stuff over, i.e.
anything that deals with the battery sysfs driver interface.

No code change.
2023-06-05 12:19:32 +02:00
Lennart Poettering af4e8e86ec battery-util: split out code that checks AC power state into its own .c/.h pair
No code change, just some splitting out of the relevant code from
udev-util.[ch].

This makes sense on its own, but is also prepartion to move the code
that checks for low battery state into battery-util.[ch], too.
2023-06-05 12:18:21 +02:00
Stefan Roesch 85614c6e2f add support for KSM
This adds support for KSM (kernel samepage merging). It adds a new
boolean parameter called MemoryKSM to enable the feature. The feature
can only be enabled with newer kernels.
2023-06-05 11:22:43 +02:00
Yu Watanabe 308b189511 chase: fix triggering assertion 2023-06-05 10:22:47 +02:00
Yu Watanabe 3991f35fbd chase: handle root path more carefully in chase_and_open()
chase_and_open() may be called with relative root path.
2023-06-05 15:50:46 +09:00
Yu Watanabe c0dff4205b test: move intro() near DEFINE_TEST_MAIN_WITH_INTRO() 2023-06-05 14:49:54 +09:00
Yu Watanabe d7aef22724 test: add more test cases about path_startswith() 2023-06-05 14:49:54 +09:00