systemd/.git
23 months agooomd: make use of new JSON_DISPATCH_ENUM_DEFINE() macro
Lennart Poettering [Fri, 5 Jan 2024 10:50:47 +0000 (11:50 +0100)]
oomd: make use of new JSON_DISPATCH_ENUM_DEFINE() macro

23 months agouser-record: port over to JSON_DISPATCH_ENUM_DEFINE()
Lennart Poettering [Fri, 5 Jan 2024 11:06:52 +0000 (12:06 +0100)]
user-record: port over to JSON_DISPATCH_ENUM_DEFINE()

23 months agotest: add unit test for JSON_DISPATCH_ENUM_DEFINE()
Lennart Poettering [Fri, 5 Jan 2024 11:00:35 +0000 (12:00 +0100)]
test: add unit test for JSON_DISPATCH_ENUM_DEFINE()

23 months agojson: add macro for automatically defining a dispatcher for an enum
Lennart Poettering [Mon, 4 Dec 2023 17:12:10 +0000 (18:12 +0100)]
json: add macro for automatically defining a dispatcher for an enum

23 months agoupdate TODO
Lennart Poettering [Fri, 5 Jan 2024 10:09:00 +0000 (11:09 +0100)]
update TODO

23 months agoMerge pull request #30772 from yuwata/test-network-improvements
Frantisek Sumsal [Fri, 5 Jan 2024 10:09:14 +0000 (11:09 +0100)]
Merge pull request #30772 from yuwata/test-network-improvements

test-network: add more test cases and several cleanups

23 months agotest: fix typo
Yu Watanabe [Fri, 5 Jan 2024 10:07:37 +0000 (19:07 +0900)]
test: fix typo

Follow-up for 995bf013a1959d4fb5aed8b135740490888fc196.

23 months agoman: fix typo
Yu Watanabe [Fri, 5 Jan 2024 10:06:06 +0000 (19:06 +0900)]
man: fix typo

Follow-up for 7d93e4af8088fae7b50eb638c6e297fb8371e307.

23 months agovpick: fix typo
Yu Watanabe [Fri, 5 Jan 2024 10:03:24 +0000 (19:03 +0900)]
vpick: fix typo

Follow-up for 76511c1bd32a262c76d462919083925c47cbd212.

23 months agologin: noone -> no one
Yu Watanabe [Fri, 5 Jan 2024 10:02:07 +0000 (19:02 +0900)]
login: noone -> no one

Follow-up for 59afe07c217c73e3c7c19fb06aef2ff7bf609fd2.

23 months agocore/dbus-manager: fix typo
Yu Watanabe [Fri, 5 Jan 2024 10:00:58 +0000 (19:00 +0900)]
core/dbus-manager: fix typo

Follow-up for 84c01612de805d88875d4d91cfcf73cf10f99447.

23 months agostring-util: fix typo
Yu Watanabe [Fri, 5 Jan 2024 09:59:11 +0000 (18:59 +0900)]
string-util: fix typo

Follow-up for 63566c6b6ffbb747727db4d6f78c28547430d54f.

23 months agoTODO: fix typo
Yu Watanabe [Fri, 5 Jan 2024 09:57:49 +0000 (18:57 +0900)]
TODO: fix typo

Follow-up for 97c493f2140b207ace89e9e028949ceb254fbfc6.

23 months agoMerge pull request #30728 from polarina/noda
Lennart Poettering [Fri, 5 Jan 2024 10:04:11 +0000 (11:04 +0100)]
Merge pull request #30728 from polarina/noda

Assign noDA attribute to TPM2 objects not dependant on a PIN

23 months agocore: Add %D specifier for $XDG_DATA_HOME
Adrian Vovk [Thu, 28 Dec 2023 23:12:06 +0000 (18:12 -0500)]
core: Add %D specifier for $XDG_DATA_HOME

We already have specifiers that resolve to $XDG_STATE_HOME, and
$XDG_CONFIG_HOME. $XDG_DATA_HOME is in a similar vein.

It allows units belonging to the user service manager to correctly look
into ~/.local/share. I imagine this would be most useful inside of
condition checks (i.e. only run a service on session startup if some
data is not found in ~/.local/share) or in the inotify monitoring of a
.path unit

23 months agonetwork: do not make the implied default have the first priority
Yu Watanabe [Thu, 4 Jan 2024 16:10:56 +0000 (01:10 +0900)]
network: do not make the implied default have the first priority

Follow-up for b732606950f8726c0280080c7d055a714c2888f5 and
6706ce2fd2a13df0ae5e469b72d688eaf643dac4.

If Network.ignore_carrier_loss_set flag is set, then the timeout value
is always used, hence the logic implemented by
b732606950f8726c0280080c7d055a714c2888f5 never worked.

23 months agocore/cgroup: use designated initializer more, make dup source const
Mike Yuan [Thu, 4 Jan 2024 12:26:00 +0000 (20:26 +0800)]
core/cgroup: use designated initializer more, make dup source const

23 months agoMerge pull request #30731 from poettering/logind-user-early
Lennart Poettering [Fri, 5 Jan 2024 09:01:30 +0000 (10:01 +0100)]
Merge pull request #30731 from poettering/logind-user-early

logind: rework the special casing we give root's sessions

23 months agoUse .d path for PCRLOCK_KERNEL_*_PATH
Alberto Planas [Thu, 4 Jan 2024 14:12:22 +0000 (15:12 +0100)]
Use .d path for PCRLOCK_KERNEL_*_PATH

Fix the path for the generated.pcrlock files for the cmdline and initrd
cases.  Without it the tool complains with:

    Failed to parse component file /var/lib/pcrlock.d/720-kernel-initrd.pcrlock, ignoring: Is a directory

Signed-off-by: Alberto Planas <aplanas@suse.com>
23 months agoMerge pull request #30753 from aafeijoo-suse/special-refactor
Lennart Poettering [Fri, 5 Jan 2024 09:00:03 +0000 (10:00 +0100)]
Merge pull request #30753 from aafeijoo-suse/special-refactor

tree-wide: use defines from special.h in some missing places

23 months agoMerge pull request #30769 from AdrianVovk/statx-timestamp
Lennart Poettering [Fri, 5 Jan 2024 08:59:40 +0000 (09:59 +0100)]
Merge pull request #30769 from AdrianVovk/statx-timestamp

stat-util: Add statx version of timespec_load

23 months agoMerge pull request #30743 from bluca/coverity
Luca Boccassi [Fri, 5 Jan 2024 08:27:21 +0000 (09:27 +0100)]
Merge pull request #30743 from bluca/coverity

Assorted coverity fixes

23 months agoMerge pull request #30774 from mrc0mmand/test-tweaks
Luca Boccassi [Fri, 5 Jan 2024 08:26:42 +0000 (09:26 +0100)]
Merge pull request #30774 from mrc0mmand/test-tweaks

test: install correct kpartx udev rules (again) and dump cores of sanitized binaries

23 months agoMerge pull request #30759 from mrc0mmand/resolved-followup
Luca Boccassi [Fri, 5 Jan 2024 08:26:19 +0000 (09:26 +0100)]
Merge pull request #30759 from mrc0mmand/resolved-followup

resolve: initialize `r` during OOM

2 years agojournalctl: add --exclude-identifier option
Sergei Zhmylev [Mon, 11 Dec 2023 19:23:47 +0000 (22:23 +0300)]
journalctl: add --exclude-identifier option

2 years agocreds-util: automatically append NUL byte to decrypted creds
Lennart Poettering [Tue, 21 Nov 2023 08:59:46 +0000 (09:59 +0100)]
creds-util: automatically append NUL byte to decrypted creds

Both as safety net and as convenience feature of a string is contained
in the credential

2 years agocreds: rename "tpm2-absent" encryption to "null" encryption
Lennart Poettering [Mon, 20 Nov 2023 15:22:33 +0000 (16:22 +0100)]
creds: rename "tpm2-absent" encryption to "null" encryption

This is what it is after all: encryption with a NULL key. This is more
descriptive, but also relevant since we want to use this kind of
credentials in a different context soon: for carrying pcrlock data into
a UKI. In that case we don#t want encryption, since the pcrlock data is
intended to help unlocking secrets, hence should not be a secret itself.

This only changes the code labels and the way this is labelled in the
output. We retain compat with the old name.

2 years agofind-esp: adjust parameter indentating to our usual coding style
Lennart Poettering [Mon, 20 Nov 2023 16:42:38 +0000 (17:42 +0100)]
find-esp: adjust parameter indentating to our usual coding style

2 years agologind: use unlink_and_free() at once more place
Lennart Poettering [Wed, 29 Nov 2023 10:21:21 +0000 (11:21 +0100)]
logind: use unlink_and_free() at once more place

2 years agojson: drop redundant check
Lennart Poettering [Thu, 4 Jan 2024 14:17:19 +0000 (15:17 +0100)]
json: drop redundant check

The same check is done exactly one line later, because this is one of
the things that json_variant_is_regular() checks.

As per: https://github.com/systemd/systemd/pull/30578/commits/fa9a6db478e3f0f2753e4633af6d0d4881707c2b#r1441792019

2 years agoMerge pull request #30749 from poettering/tmpfiles-verb-fix
Lennart Poettering [Thu, 4 Jan 2024 21:55:23 +0000 (22:55 +0100)]
Merge pull request #30749 from poettering/tmpfiles-verb-fix

tmpfiles: correctly apply globbing when cleaning 'x' lines

2 years agoMerge pull request #30758 from YHNdnzj/vpick-not-ptr
Lennart Poettering [Thu, 4 Jan 2024 21:54:41 +0000 (22:54 +0100)]
Merge pull request #30758 from YHNdnzj/vpick-not-ptr

vpick: trivial follow-up

2 years agoci: build with -O2 and -Wmaybe-uninitialized
Frantisek Sumsal [Thu, 4 Jan 2024 16:51:40 +0000 (17:51 +0100)]
ci: build with -O2 and -Wmaybe-uninitialized

According to the comment in meson.build this should be a supported
configuration, so let's test it in the CI as well.

2 years agoshared: initialize a couple of values explicitly
Frantisek Sumsal [Thu, 4 Jan 2024 16:50:13 +0000 (17:50 +0100)]
shared: initialize a couple of values explicitly

As gcc has trouble figuring this itself with -O2 and -Wmaybe-initialized.

2 years agoresolve: initialize `r` during OOM
Frantisek Sumsal [Thu, 4 Jan 2024 15:48:10 +0000 (16:48 +0100)]
resolve: initialize `r` during OOM

Otherwise we'd use some garbage value in the error path.

../src/resolve/resolved-dns-query.c: In function ‘dns_query_accept’:
../src/resolve/resolved-dns-query.c:944:27: error: ‘r’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
  944 |         q->answer_errno = -r;
      |                           ^~
cc1: all warnings being treated as errors

Follow-up for 9ca133e97a0.

2 years agotest: allow sanitized binaries to dump a core
Frantisek Sumsal [Thu, 4 Jan 2024 19:31:32 +0000 (20:31 +0100)]
test: allow sanitized binaries to dump a core

If a binary built with ASan crashes for a reason unrelated to ASan
stuff, we're left with pretty much nothing, as there is neither an ASan
trace nor a coredump. Let's make this slightly more debug-able by
allowing such binaries to dump a core, but without the huge shadow map
(we should be actually fine by just setting disable_coredump=0, since
use_madv_dontdump defaults to true, but let's play it safe and not
potentially dump a 16+ TB core file).

2 years agotest: install correct kpartx udev rules on Ubuntu
Frantisek Sumsal [Thu, 4 Jan 2024 19:28:37 +0000 (20:28 +0100)]
test: install correct kpartx udev rules on Ubuntu

Follow-up for 519f0074cf.

2 years agotest-network: add test case about replacing nexthop
Yu Watanabe [Tue, 2 Jan 2024 19:40:48 +0000 (04:40 +0900)]
test-network: add test case about replacing nexthop

2 years agotest-network: merge three tests for neighbor
Yu Watanabe [Tue, 2 Jan 2024 19:40:54 +0000 (04:40 +0900)]
test-network: merge three tests for neighbor

To speed up tests.

2 years agotest-network: show monotonic timestamp and drop hopstname from logs
Yu Watanabe [Tue, 2 Jan 2024 19:41:01 +0000 (04:41 +0900)]
test-network: show monotonic timestamp and drop hopstname from logs

2 years agotmpfiles: Use statx_timestamp_load
Adrian Vovk [Thu, 4 Jan 2024 17:49:34 +0000 (12:49 -0500)]
tmpfiles: Use statx_timestamp_load

This is a new utility function recently added. Let's use it.

2 years agostat-util: Add statx version of timespec_load
Adrian Vovk [Thu, 4 Jan 2024 17:48:39 +0000 (12:48 -0500)]
stat-util: Add statx version of timespec_load

statx_timestamp is, for all intents and purposes, the same as a struct
timespec. So, we can trivially convert it and call timespec_load on it.

This commit adds helper functions that do just that.

2 years agotmpfiles: add --purge switch
Luca Boccassi [Wed, 12 Oct 2022 22:46:28 +0000 (23:46 +0100)]
tmpfiles: add --purge switch

Any file/directory created by a tmpfiles.d will be deleted. Useful for
purge/factory reset patterns.

2 years agoAssign noDA attribute to TPM2 objects not dependant on a PIN
Gabríel Arthúr Pétursson [Wed, 3 Jan 2024 15:59:14 +0000 (15:59 +0000)]
Assign noDA attribute to TPM2 objects not dependant on a PIN

All the keys are high-entropy keys that cannot be practically
bruteforced and thus don't require protection from dictionary attacks.
With the exception of PINs, of course, which are low-entropy and user
provided.

Note that a new enrollment is required for unlocking while in DA
lockdown to function. Existing enrollments are subject to DA lockout.

Fixes: #30330

2 years agoshared/vpick: don't say "ptr" for TAKE_PICK_RESULT (struct)
Mike Yuan [Thu, 4 Jan 2024 15:31:37 +0000 (23:31 +0800)]
shared/vpick: don't say "ptr" for TAKE_PICK_RESULT (struct)

2 years agovpick-tool: sort includes
Mike Yuan [Thu, 4 Jan 2024 15:30:53 +0000 (23:30 +0800)]
vpick-tool: sort includes

2 years agologind: rework the special casing we give root's sessions
Lennart Poettering [Mon, 27 Nov 2023 17:19:50 +0000 (18:19 +0100)]
logind: rework the special casing we give root's sessions

Let's add an explicit session class "user-early" for this, so that
change of behaviour on logind is primarily bound to the "class"
property, and not some explicit root checks. This has the benefit that
we can be more fine grained with implying this class: only do so for tty
sessions, not others.

2 years agologind: explain session class types a bit
Lennart Poettering [Mon, 27 Nov 2023 17:18:57 +0000 (18:18 +0100)]
logind: explain session class types a bit

2 years agoMerge pull request #30744 from poettering/logind-trivial-tweaks
Lennart Poettering [Thu, 4 Jan 2024 15:02:20 +0000 (16:02 +0100)]
Merge pull request #30744 from poettering/logind-trivial-tweaks

logind: 3 trivial cleanups

2 years agologind: do TTY idle logic only for sessions marked as "tty"
Lennart Poettering [Wed, 29 Nov 2023 10:09:20 +0000 (11:09 +0100)]
logind: do TTY idle logic only for sessions marked as "tty"

Otherwise things might be weird, because background sessions might
become "idle", wich doesn#t really make much sense.

This shouldn't change much in 99% of the cases, but slightly corrects
behaviour as it ensures only "primary"/"foreground" sessions get the
idle logic, i.e. where a user exists that could actually make it
non-idle.

2 years agoupdate TODO
Lennart Poettering [Fri, 24 Nov 2023 12:24:49 +0000 (13:24 +0100)]
update TODO

2 years agologind: don't make idle action timer accuracy more coarse than timeout
Lennart Poettering [Wed, 29 Nov 2023 10:07:08 +0000 (11:07 +0100)]
logind: don't make idle action timer accuracy more coarse than timeout

If we allow the timer accuracy to grow larger then the timeout itself
things are very confusing, because people might set a 1s time-out and we
turn that into 30s.

Hence, let's just cut off the 30s accuracy to the time-out itself, so
that we stay close to what users configured.

2 years agoMerge pull request #30739 from poettering/pam-util-many
Yu Watanabe [Thu, 4 Jan 2024 14:28:34 +0000 (23:28 +0900)]
Merge pull request #30739 from poettering/pam-util-many

pam-util: add pam_get_item_many() to shorten some code

2 years agohomed: when empty username is passed to bus calls, operate on client's UID
Lennart Poettering [Fri, 13 May 2022 22:03:01 +0000 (00:03 +0200)]
homed: when empty username is passed to bus calls, operate on client's UID

2 years agohomed: fix home_count_bad_authentication() counting
Lennart Poettering [Tue, 28 Nov 2023 08:52:17 +0000 (09:52 +0100)]
homed: fix home_count_bad_authentication() counting

We want to cover not only regular bad password entries, but also bad
recovery key entries. Hence let's move the list of errors into the
function, and add more.

2 years agohomed: tone down log message about bad passwords a bit
Lennart Poettering [Tue, 28 Nov 2023 08:59:30 +0000 (09:59 +0100)]
homed: tone down log message about bad passwords a bit

We usually start out out authentication cycles with an "empty" password
attempt, to give homed the chance to authenticated via any plugged in
tokens. Hence frequently the first attempt will just fail, which is no
reason to complain about.

2 years agoMerge pull request #30610 from YHNdnzj/logind-serialize-pidref
Yu Watanabe [Thu, 4 Jan 2024 14:25:18 +0000 (23:25 +0900)]
Merge pull request #30610 from YHNdnzj/logind-serialize-pidref

logind: serialize session leader pidfd to fdstore

2 years agorun: use SPECIAL_USER_SLICE
Antonio Alvarez Feijoo [Thu, 4 Jan 2024 14:22:54 +0000 (15:22 +0100)]
run: use SPECIAL_USER_SLICE

2 years agotree-wide: use SPECIAL_BASIC_TARGET
Antonio Alvarez Feijoo [Thu, 4 Jan 2024 14:22:42 +0000 (15:22 +0100)]
tree-wide: use SPECIAL_BASIC_TARGET

2 years agonetwork/route: make the route section invalid when an invalid MTUBytes= is specified
Yu Watanabe [Tue, 2 Jan 2024 19:42:22 +0000 (04:42 +0900)]
network/route: make the route section invalid when an invalid MTUBytes= is specified

We usually set the invalid flag for a section if a setting in the section has
an invalid value. Let's also do the same thing for MTUBytes= in [Route].

2 years agoMerge pull request #30578 from bluca/polkit-varlink
Lennart Poettering [Thu, 4 Jan 2024 14:15:45 +0000 (15:15 +0100)]
Merge pull request #30578 from bluca/polkit-varlink

varlink: add glue to allow authenticating varlink connections via polkit

2 years agoupdate-man-rules: skip over standard-conf.xml
Frantisek Sumsal [Thu, 4 Jan 2024 10:31:11 +0000 (11:31 +0100)]
update-man-rules: skip over standard-conf.xml

bc6fdcbf5d switched its doctype to refentry, so the script started
picking it up and complaining that it's missing required stuff. Since
this file is only included from other man pages, let's skip it when
putting together a list of valid targets.

Resolves: #30715
Follow-up for: bc6fdcbf5d

2 years agoMerge pull request #30736 from YHNdnzj/loginctl-self
Lennart Poettering [Thu, 4 Jan 2024 14:02:05 +0000 (15:02 +0100)]
Merge pull request #30736 from YHNdnzj/loginctl-self

man/loginctl: some improvements

2 years agohomed: add missing bus call to homed access policy
Lennart Poettering [Mon, 27 Nov 2023 16:10:35 +0000 (17:10 +0100)]
homed: add missing bus call to homed access policy

2 years agopam_systemd: drop unnecessary strempty() of 'tty' variable
Lennart Poettering [Mon, 27 Nov 2023 16:22:54 +0000 (17:22 +0100)]
pam_systemd: drop unnecessary strempty() of 'tty' variable

This probably predates our introduction of streq_ptr(). Let's drop this
now however, as we actually want this to be NULL, further down, and
handle that just fine. In particular as all the special cases we have
explicitly set this to NULL anyway.

No real change in behaviour, just some normalization of handling.

2 years agotmpfiles: 'x' takes globs, hence clean it with globbing
Lennart Poettering [Thu, 4 Jan 2024 13:58:40 +0000 (14:58 +0100)]
tmpfiles: 'x' takes globs, hence clean it with globbing

2 years agotmpfiles: always list tmpfiles line types in same order
Lennart Poettering [Thu, 4 Jan 2024 13:57:59 +0000 (14:57 +0100)]
tmpfiles: always list tmpfiles line types in same order

otherwise it just gets too confusing to follow.

2 years agosd-dhcp-client: add assert_not_reached in switch case
Luca Boccassi [Thu, 4 Jan 2024 11:55:51 +0000 (12:55 +0100)]
sd-dhcp-client: add assert_not_reached in switch case

Tell static analysis that r is always initialised

Follow-up for 1809132064d2fd3479e316b615cd05698984852c

CID#1533109

2 years agoudev: add upper bound of 5 hours to SYSTEMD_UDEV_EXTRA_TIMEOUT_SEC=
Luca Boccassi [Thu, 4 Jan 2024 11:52:25 +0000 (12:52 +0100)]
udev: add upper bound of 5 hours to SYSTEMD_UDEV_EXTRA_TIMEOUT_SEC=

Follow-up for b16c6076cb334c9da9602d4bafbf60381d6d630e

CID#1533111

2 years agodissect: add assert to guide static analysis
Luca Boccassi [Thu, 4 Jan 2024 11:47:18 +0000 (12:47 +0100)]
dissect: add assert to guide static analysis

CID#1533112

2 years agocore: add an assert to guide static analysis
Luca Boccassi [Thu, 4 Jan 2024 11:44:31 +0000 (12:44 +0100)]
core: add an assert to guide static analysis

Follow-up for 4fb0d2dc140c9a2c01c236d2a8dc09a44157e896

CID#1533110

2 years agoexecute: make sure Type=exec and PAMName= work together
Lennart Poettering [Wed, 29 Nov 2023 11:49:37 +0000 (12:49 +0100)]
execute: make sure Type=exec and PAMName= work together

If PAMName= is used we'll spawn a PAM session for the service, and leave
a process around that closes the PAM session eventually. That process
must close the "exec_fd" that we use to implement Type=exec. After all
the logic relies on the fact that execve() will implicitly close the
exec_fd, and the EOF seen on it is hence indication for the service
manager that execve() has worked. But if we keep an fd open in the PAM
service process, then this is not going to work.

Hence close the fd explicitly so that it definitely doesn't stay pinned
in the child.

2 years agoFix typo in verb_make_policy explanation
Alberto Planas [Thu, 4 Jan 2024 12:32:59 +0000 (13:32 +0100)]
Fix typo in verb_make_policy explanation

Signed-off-by: Alberto Planas <aplanas@suse.com>
2 years agopcrlock: Print correct NV index when writing new policy
Gabríel Arthúr Pétursson [Thu, 4 Jan 2024 12:42:04 +0000 (12:42 +0000)]
pcrlock: Print correct NV index when writing new policy

2 years agoMerge pull request #30725 from YHNdnzj/string-util
Mike Yuan [Thu, 4 Jan 2024 12:34:41 +0000 (20:34 +0800)]
Merge pull request #30725 from YHNdnzj/string-util

string-util,strv: follow-ups

2 years agonetwork/netdev: call done() per netdev kind before freeing netdev name or so
Yu Watanabe [Wed, 3 Jan 2024 19:10:31 +0000 (04:10 +0900)]
network/netdev: call done() per netdev kind before freeing netdev name or so

Otherwise, log_netdev_xyz() does not provide netdev name if it is called
in done(). It is hard to debug.

This should not change any effective behavior, at least with the current
implementation of done() per netdev kind.

2 years agotpm2-generator: sort includes
Mike Yuan [Thu, 4 Jan 2024 08:53:45 +0000 (16:53 +0800)]
tpm2-generator: sort includes

2 years agologind: use FOREACH_ARRAY() where appropriate
Lennart Poettering [Mon, 27 Nov 2023 15:55:31 +0000 (16:55 +0100)]
logind: use FOREACH_ARRAY() where appropriate

2 years agopam_systemd_home: minor coding style adjustment
Lennart Poettering [Tue, 28 Nov 2023 14:42:08 +0000 (15:42 +0100)]
pam_systemd_home: minor coding style adjustment

2 years agohomed: add some function parameter assert()s
Lennart Poettering [Mon, 27 Nov 2023 16:10:14 +0000 (17:10 +0100)]
homed: add some function parameter assert()s

2 years agologind: cast various calls that return errors we ignore to (void)
Lennart Poettering [Wed, 29 Nov 2023 10:06:36 +0000 (11:06 +0100)]
logind: cast various calls that return errors we ignore to (void)

2 years agocore: fix cgroup copy
Luca Boccassi [Thu, 4 Jan 2024 11:42:23 +0000 (12:42 +0100)]
core: fix cgroup copy

Follow-up for 84c01612de805d88875d4d91cfcf73cf10f99447

CID#1533113

2 years agocore: fix OOM check
Luca Boccassi [Thu, 4 Jan 2024 11:41:31 +0000 (12:41 +0100)]
core: fix OOM check

Follow-up for 84c01612de805d88875d4d91cfcf73cf10f99447

CID#1533114

2 years agopam_systemd_home: port over to pam_get_item_many()
Lennart Poettering [Tue, 28 Nov 2023 08:31:04 +0000 (09:31 +0100)]
pam_systemd_home: port over to pam_get_item_many()

2 years agopam_systemd: move over to pam_get_item_many()
Lennart Poettering [Tue, 28 Nov 2023 08:30:32 +0000 (09:30 +0100)]
pam_systemd: move over to pam_get_item_many()

2 years agoman/loginctl: document "self" and "auto" special session IDs
Mike Yuan [Thu, 4 Jan 2024 11:08:38 +0000 (19:08 +0800)]
man/loginctl: document "self" and "auto" special session IDs

session-status automatically uses "auto" if no ID is specified,
but show-session shows the manager's properties. Let's document
these special values so that users of show-session can benefit too.

2 years agopam-util: add pam_get_item_many() helper that gets many PAM items at once
Lennart Poettering [Tue, 28 Nov 2023 08:29:58 +0000 (09:29 +0100)]
pam-util: add pam_get_item_many() helper that gets many PAM items at once

Just to shorten a bit of code.

2 years agoman/loginctl: use <literal> to quote possible values of --kill-whom=
Mike Yuan [Thu, 4 Jan 2024 10:59:38 +0000 (18:59 +0800)]
man/loginctl: use <literal> to quote possible values of --kill-whom=

2 years agoTEST-35-LOGIN: enable FileDescriptorStorePreserve= for coldplug test
Mike Yuan [Thu, 4 Jan 2024 09:02:17 +0000 (17:02 +0800)]
TEST-35-LOGIN: enable FileDescriptorStorePreserve= for coldplug test

2 years agoMerge pull request #30513 from rpigott/resolved-ede
Lennart Poettering [Thu, 4 Jan 2024 08:59:19 +0000 (09:59 +0100)]
Merge pull request #30513 from rpigott/resolved-ede

resolved: support RFC 8914 EDE error codes

2 years agostrv: rename strv_endswith to endswith_strv and dedup ENDSWITH_SET
Mike Yuan [Thu, 4 Jan 2024 08:45:54 +0000 (16:45 +0800)]
strv: rename strv_endswith to endswith_strv and dedup ENDSWITH_SET

2 years agostring-util: move startswith_strv to strv
Mike Yuan [Thu, 4 Jan 2024 08:44:15 +0000 (16:44 +0800)]
string-util: move startswith_strv to strv

2 years agostring-util: use strneq
Mike Yuan [Thu, 4 Jan 2024 08:48:42 +0000 (16:48 +0800)]
string-util: use strneq

2 years agostring-util-fundamental: postfix -> suffix, use streq
Mike Yuan [Thu, 4 Jan 2024 08:30:10 +0000 (16:30 +0800)]
string-util-fundamental: postfix -> suffix, use streq

2 years agologind-session: watch pidfd in session_set_leader_consume
Mike Yuan [Sun, 24 Dec 2023 11:06:01 +0000 (19:06 +0800)]
logind-session: watch pidfd in session_set_leader_consume

2 years agologind: serialize session leader pidfd to fdstore
Mike Yuan [Tue, 21 Nov 2023 09:25:23 +0000 (17:25 +0800)]
logind: serialize session leader pidfd to fdstore

2 years agoprocess-util: ensure pidref_is_alive only return ESRCH if not set
Mike Yuan [Sat, 23 Dec 2023 11:08:22 +0000 (19:08 +0800)]
process-util: ensure pidref_is_alive only return ESRCH if not set

2 years agologind-session: use one_zero where appropriate
Mike Yuan [Wed, 3 Jan 2024 04:13:42 +0000 (12:13 +0800)]
logind-session: use one_zero where appropriate

2 years agologind-session: be tolerant if we failed to remove leader from hashmap
Mike Yuan [Tue, 26 Dec 2023 06:20:36 +0000 (14:20 +0800)]
logind-session: be tolerant if we failed to remove leader from hashmap

If something wrong happened before hashmap_put(), session_free()
may be called through gc logic, and the assertion is triggered.

2 years agologind: use RET_GATHER more, return first error
Mike Yuan [Tue, 21 Nov 2023 10:00:48 +0000 (18:00 +0800)]
logind: use RET_GATHER more, return first error