]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
11 months agosystemctl-enable: warn if disabled/masked units has active triggering units 29333/head
Mike Yuan [Tue, 26 Sep 2023 15:21:23 +0000 (23:21 +0800)] 
systemctl-enable: warn if disabled/masked units has active triggering units

Closes #311

11 months agosystemctl-start: suppress the triggering unit warning when --no-warn
Mike Yuan [Tue, 26 Sep 2023 15:01:52 +0000 (23:01 +0800)] 
systemctl-start: suppress the triggering unit warning when --no-warn

11 months agosystemctl: clean up check_triggering_units
Mike Yuan [Tue, 26 Sep 2023 14:26:07 +0000 (22:26 +0800)] 
systemctl: clean up check_triggering_units

Preparation for #311

11 months agosystemctl: make unit_is_masked always query manager
Mike Yuan [Wed, 27 Sep 2023 15:43:47 +0000 (23:43 +0800)] 
systemctl: make unit_is_masked always query manager

11 months agosystemctl: don't duplicate string needlessly
Mike Yuan [Tue, 26 Sep 2023 13:46:15 +0000 (21:46 +0800)] 
systemctl: don't duplicate string needlessly

11 months agosystemctl: reflect that statically enabled units can be in .upholds/
Mike Yuan [Tue, 26 Sep 2023 13:41:29 +0000 (21:41 +0800)] 
systemctl: reflect that statically enabled units can be in .upholds/

Follow-up for 38f901791f3c4b1cbd04b71323bbef2fdab65f83

11 months agoMerge pull request #29353 from YHNdnzj/nft-followup
Luca Boccassi [Wed, 27 Sep 2023 20:02:43 +0000 (21:02 +0100)] 
Merge pull request #29353 from YHNdnzj/nft-followup

man/org.freedesktop.systemd1: add version info for NFTSet

11 months agoMerge pull request #29265 from YHNdnzj/sleep-util-refactor
Mike Yuan [Wed, 27 Sep 2023 19:06:48 +0000 (03:06 +0800)] 
Merge pull request #29265 from YHNdnzj/sleep-util-refactor

sleep-util: split into three and first round of cleanups

11 months agoman/org.freedesktop.systemd1: add version info for NFTSet 29353/head
Mike Yuan [Wed, 27 Sep 2023 19:04:28 +0000 (03:04 +0800)] 
man/org.freedesktop.systemd1: add version info for NFTSet

Follow-up for dc7d69b3c1eb4aa78a5ba2791c6e146a365c4092

11 months agocore/unit: use RET_GATHER in one more function
Mike Yuan [Wed, 27 Sep 2023 19:00:13 +0000 (03:00 +0800)] 
core/unit: use RET_GATHER in one more function

11 months agotest: testing for core NFTSet= feature
Topi Miettinen [Wed, 6 Sep 2023 18:48:02 +0000 (21:48 +0300)] 
test: testing for core NFTSet= feature

11 months agocore: add user and group to NFTSet=
Topi Miettinen [Sun, 22 May 2022 12:17:24 +0000 (15:17 +0300)] 
core: add user and group to NFTSet=

The benefit of using this setting is that user and group IDs, especially dynamic and random
IDs used by DynamicUser=, can be used in firewall configuration easily.

Example:

```
[Service]
NFTSet=user:inet:filter:serviceuser
```

Corresponding NFT rules:

```
table inet filter {
        set serviceuser {
                typeof meta skuid
        }
        chain service_output {
                meta skuid @serviceuser accept
                drop
        }
}
```

```
$ cat /etc/systemd/system/dunft.service
[Service]
DynamicUser=yes
NFTSet=user:inet:filter:serviceuser
ExecStart=/bin/sleep 1000

[Install]
WantedBy=multi-user.target
$ sudo nft list set inet filter serviceuser
table inet filter {
        set serviceuser {
                typeof meta skuid
                elements = { 64864 }
        }
}
$ ps -n --format user,group,pid,command -p `systemctl show dunft.service -P MainPID`
    USER    GROUP     PID COMMAND
   64864    64864   55158 /bin/sleep 1000
```

11 months agocore: firewall integration of cgroups with NFTSet=
Topi Miettinen [Sat, 2 Sep 2023 18:55:36 +0000 (21:55 +0300)] 
core: firewall integration of cgroups with NFTSet=

New directive `NFTSet=` provides a method for integrating dynamic cgroup IDs
into firewall rules with NFT sets. The benefit of using this setting is to be
able to use control group as a selector in firewall rules easily and this in
turn allows more fine grained filtering. Also, NFT rules for cgroup matching
use numeric cgroup IDs, which change every time a service is restarted, making
them hard to use in systemd environment.

This option expects a whitespace separated list of NFT set definitions. Each
definition consists of a colon-separated tuple of source type (only "cgroup"),
NFT address family (one of "arp", "bridge", "inet", "ip", "ip6", or "netdev"),
table name and set name. The names of tables and sets must conform to lexical
restrictions of NFT table names. The type of the element used in the NFT filter
must be "cgroupsv2". When a control group for a unit is realized, the cgroup ID
will be appended to the NFT sets and it will be be removed when the control
group is removed.  systemd only inserts elements to (or removes from) the sets,
so the related NFT rules, tables and sets must be prepared elsewhere in
advance.  Failures to manage the sets will be ignored.

If the firewall rules are reinstalled so that the contents of NFT sets are
destroyed, command systemctl daemon-reload can be used to refill the sets.

Example:

```
table inet filter {
...
        set timesyncd {
                type cgroupsv2
        }

        chain ntp_output {
                socket cgroupv2 != @timesyncd counter drop
                accept
        }
...
}
```

/etc/systemd/system/systemd-timesyncd.service.d/override.conf
```
[Service]
NFTSet=cgroup:inet:filter:timesyncd
```

```
$ sudo nft list set inet filter timesyncd
table inet filter {
        set timesyncd {
                type cgroupsv2
                elements = { "system.slice/systemd-timesyncd.service" }
        }
}
```

11 months agoupdate TODO
Lennart Poettering [Wed, 27 Sep 2023 17:08:56 +0000 (19:08 +0200)] 
update TODO

11 months agoMerge pull request #29345 from poettering/measured-uki-condition
Lennart Poettering [Wed, 27 Sep 2023 14:39:46 +0000 (16:39 +0200)] 
Merge pull request #29345 from poettering/measured-uki-condition

pid1: introduce ConditionSecurity=measured-uki

11 months agosleep-config: add explanatory comment on "modes" 29265/head
Mike Yuan [Sun, 24 Sep 2023 10:28:54 +0000 (18:28 +0800)] 
sleep-config: add explanatory comment on "modes"

11 months agosleep-config: several cleanups
Mike Yuan [Thu, 21 Sep 2023 06:59:26 +0000 (14:59 +0800)] 
sleep-config: several cleanups

* Rename free_sleep_config to sleep_config_free
* Rearrange functions
* Make SleepConfig.modes and .states only contain
  operations that needs configuration
* Add missing assert

11 months agosleep/battery-capacity: rearrange functions
Mike Yuan [Thu, 21 Sep 2023 05:45:05 +0000 (13:45 +0800)] 
sleep/battery-capacity: rearrange functions

11 months agosleep/battery-capacity: drop unused error-handling
Mike Yuan [Thu, 21 Sep 2023 05:43:31 +0000 (13:43 +0800)] 
sleep/battery-capacity: drop unused error-handling

11 months agosleep/battery-capacity: don't report we have trip alarm if no battery is found
Mike Yuan [Wed, 20 Sep 2023 13:49:31 +0000 (21:49 +0800)] 
sleep/battery-capacity: don't report we have trip alarm if no battery is found

11 months agosleep-util: split into sleep-config and hibernate-util
Mike Yuan [Wed, 27 Sep 2023 13:35:45 +0000 (21:35 +0800)] 
sleep-util: split into sleep-config and hibernate-util

11 months agosleep-util: split battery-capacity into sleep/
Mike Yuan [Wed, 27 Sep 2023 13:35:19 +0000 (21:35 +0800)] 
sleep-util: split battery-capacity into sleep/

This is only used by sleep.c. Let's start shrinking down
the "mixed" sleep-util.

11 months agosleep: rebreak lines in check_wakeup_type
Mike Yuan [Fri, 22 Sep 2023 14:52:56 +0000 (22:52 +0800)] 
sleep: rebreak lines in check_wakeup_type

11 months agosleep-util: move check_wakeup_type to sleep/sleep
Mike Yuan [Wed, 20 Sep 2023 13:19:07 +0000 (21:19 +0800)] 
sleep-util: move check_wakeup_type to sleep/sleep

11 months agoMerge pull request #29134 from nabijaczleweli/short-iso-timestamp
Luca Boccassi [Wed, 27 Sep 2023 13:42:27 +0000 (14:42 +0100)] 
Merge pull request #29134 from nabijaczleweli/short-iso-timestamp

journalctl -o short-iso[-precise]: timezone as +02:00 instead of +0200

11 months agoMerge pull request #29296 from yuwata/sd-journal-several-cleanups-for-boot-id
Zbigniew Jędrzejewski-Szmek [Wed, 27 Sep 2023 12:56:48 +0000 (14:56 +0200)] 
Merge pull request #29296 from yuwata/sd-journal-several-cleanups-for-boot-id

11 months agotest: introduce TEST-09-REBOOT
Frantisek Sumsal [Sat, 23 Sep 2023 16:17:04 +0000 (18:17 +0200)] 
test: introduce TEST-09-REBOOT

To test stuff involving state preserved across (multiple) reboots, like
journal boot IDs.

12 months agoMerge pull request #29296 from keszybz/make-cryptsetup-offical-and-add-docs
Luca Boccassi [Wed, 27 Sep 2023 12:31:11 +0000 (13:31 +0100)] 
Merge pull request #29296 from keszybz/make-cryptsetup-offical-and-add-docs

Make cryptsetup offical and add docs

12 months agounits/blockdev@.target: conflict with umount.target
Mike Yuan [Tue, 26 Sep 2023 22:26:38 +0000 (06:26 +0800)] 
units/blockdev@.target: conflict with umount.target

Follow-up for d120ce478dc0043c89899799b5c1aaf62901bea9

blockdev@.target is used as a synchronization point between
the mount unit and corresponding systemd-cryptsetup@.service.
After the mentioned commit, it doesn't get a stop job enqueued
during shutdown, and thus the stop job for systemd-cryptsetup@.service
could be run before the mount unit is stopped.

Therefore, let's make blockdev@.target conflict with umount.target,
which is also what systemd-cryptsetup@.service does.

Fixes #29336

12 months agoupdate TODO 29345/head
Lennart Poettering [Wed, 27 Sep 2023 10:17:18 +0000 (12:17 +0200)] 
update TODO

12 months agoefi-loader: add caching to efi_measured_uki()
Lennart Poettering [Wed, 27 Sep 2023 10:14:56 +0000 (12:14 +0200)] 
efi-loader: add caching to efi_measured_uki()

EFI variable access is slow, hence let's avoid it if there's no need.
Let's cache the result of efi_measured_uki() so that we don't have to go
to the EFI variables each time.

This only caches in the yes/no case. If we encounter an error we don't
cache, so that we go to disk again.

This should optimize things a bit given we now have a bunch of services
which are conditioned with this at boot.

12 months agounits: move units over to ConditionSecurity=measured-uki
Lennart Poettering [Wed, 27 Sep 2023 10:13:26 +0000 (12:13 +0200)] 
units: move units over to ConditionSecurity=measured-uki

12 months agocondition: add ConditionSecurity=measured-uki
Lennart Poettering [Wed, 27 Sep 2023 10:08:41 +0000 (12:08 +0200)] 
condition: add ConditionSecurity=measured-uki

We have various services that should only run in a measured UKI
environment. Let's add an explicit high-level check for that.

12 months agoefi-loader: rename efi_stub_measured() → efi_measured_uki()
Lennart Poettering [Wed, 27 Sep 2023 09:50:14 +0000 (11:50 +0200)] 
efi-loader: rename efi_stub_measured() → efi_measured_uki()

Let's say "uki" rather than "stub", since that is just too generic, and
we shouldn't limit us to our own stub anyway, but generally define a
concept of a "measured UKI", which is a UKI that measures its part to
PCR 11.

This is mostly preparation for exposing this check to the user via
ConditionSecurity=.

12 months agondisc: Also set link hoplimit
Susant Sahani [Fri, 8 Sep 2023 09:00:38 +0000 (14:30 +0530)] 
ndisc: Also set link hoplimit

The per route hop limit does not place the hop limit in the IPv6 header.
https://github.com/systemd/systemd/issues/28437#issuecomment-1711055181

12 months agoRevert "userdbd: Order systemd-userdbd.service after systemd-remount-fs.service"
Lennart Poettering [Tue, 5 Sep 2023 08:17:41 +0000 (10:17 +0200)] 
Revert "userdbd: Order systemd-userdbd.service after systemd-remount-fs.service"

This reverts commit 9dd88582813b6dbeea6ce336f70cae681e6cbfc6.

12 months agofix typo in NEWS
Christian Hesse [Wed, 27 Sep 2023 07:16:06 +0000 (09:16 +0200)] 
fix typo in NEWS

Looks like `-a change` is a typo and should have been `-c change` to
match on the action.

12 months agopo: Translated using Weblate (Hungarian)
Balázs Úr [Wed, 27 Sep 2023 01:36:03 +0000 (03:36 +0200)] 
po: Translated using Weblate (Hungarian)

Currently translated at 100.0% (227 of 227 strings)

Co-authored-by: Balázs Úr <balazs@urbalazs.hu>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/master/hu/
Translation: systemd/main

12 months agoupdate-dbus-docs: Test that items are documented in the History section
Abderrahim Kitouni [Sun, 24 Sep 2023 08:13:45 +0000 (09:13 +0100)] 
update-dbus-docs: Test that items are documented in the History section

This also adds an ignore list, which currently contains the whole API as of
version 250, since that's the base we used for dbus interfaces.

See d9d2d16aeaf7c18a7b2486cd7c2db484c99050df

12 months agonetwork: Rename json_append_one() and move to json.h
Daan De Meyer [Tue, 26 Sep 2023 14:47:52 +0000 (16:47 +0200)] 
network: Rename json_append_one() and move to json.h

12 months agojournal: Stop trying to open runtime journal once flushed
Daan De Meyer [Tue, 26 Sep 2023 13:59:23 +0000 (15:59 +0200)] 
journal: Stop trying to open runtime journal once flushed

Once we've flushed the runtime journal to /var, stop trying to open
it since that will just fail with ENOENT all the time.

12 months agomeson: Fix version script handling
Jan Janssen [Tue, 26 Sep 2023 13:14:38 +0000 (15:14 +0200)] 
meson: Fix version script handling

Build targets should have a link dependency on the version scripts they
use. This also uses absolute paths in anticipation for meson 1.3
needlessly deprecating file to string conversions.

12 months agosystemd-hwdb: fix unsigned and signed comparison problem
huyubiao [Tue, 26 Sep 2023 06:46:55 +0000 (14:46 +0800)] 
systemd-hwdb: fix unsigned and signed comparison problem
...
uint8_t c;
struct trie_node *child;

for (p = 0; (c = trie->strings->buf[node->prefix_off + p]); p++) {
        _cleanup_free_ struct trie_node *new_child = NULL;
        _cleanup_free_ char *s = NULL;
        ssize_t off;
if (c == search[i + p])
        continue;
...
When '®' is present in search, c is 194, search[i + p] is -62, c is not equal to search[i + p], but c should be equal to search[i + p].

12 months agoman: rename systemd-cryptsetup@.service → systemd-cryptsetup 29296/head
Zbigniew Jędrzejewski-Szmek [Sat, 23 Sep 2023 11:43:55 +0000 (13:43 +0200)] 
man: rename systemd-cryptsetup@.service → systemd-cryptsetup

We already had the other name as alias, so this just changes what is the "main"
name. The text is adjusted to describe the command briefly.

12 months agoTEST-70: use new cryptsetup path
Zbigniew Jędrzejewski-Szmek [Fri, 22 Sep 2023 16:50:37 +0000 (18:50 +0200)] 
TEST-70: use new cryptsetup path

12 months agomeson: add comments to compat symlinks
Zbigniew Jędrzejewski-Szmek [Tue, 26 Sep 2023 15:03:15 +0000 (17:03 +0200)] 
meson: add comments to compat symlinks

12 months agomeson: move systemd-cryptsetup to /usr/bin
Zbigniew Jędrzejewski-Szmek [Fri, 22 Sep 2023 16:47:05 +0000 (18:47 +0200)] 
meson: move systemd-cryptsetup to /usr/bin

This was requested, though I think an issue was never filed. If people are
supposed to invoke it, even for testing, then it's reasonable to make it
"public".

12 months agocryptsetup: fail with error if extraneous arguments are specified
Zbigniew Jędrzejewski-Szmek [Sat, 23 Sep 2023 09:59:55 +0000 (11:59 +0200)] 
cryptsetup: fail with error if extraneous arguments are specified

So far the program would silently ignore those… I think it's better to fail.

12 months agocryptsetup: add parse_argv() and implement --version
Zbigniew Jędrzejewski-Szmek [Sat, 23 Sep 2023 09:56:13 +0000 (11:56 +0200)] 
cryptsetup: add parse_argv() and implement --version

All public programs are expected to have that. The --help output is adjusted to
follow the usual style (highlighting, listing of options). The OPTIONS
positional argument is renamed to "CONFIG", because we now also have "OPTIONS…"
to describe the non-positional options.

12 months agocryptenroll: align tables
Zbigniew Jędrzejewski-Szmek [Fri, 22 Sep 2023 18:36:44 +0000 (20:36 +0200)] 
cryptenroll: align tables

12 months agoman/crypttab: fix indentation
Zbigniew Jędrzejewski-Szmek [Fri, 22 Sep 2023 16:37:55 +0000 (18:37 +0200)] 
man/crypttab: fix indentation

12 months agoman/crypttab: add a more comprehensive example of encrypted device setup
Zbigniew Jędrzejewski-Szmek [Fri, 22 Sep 2023 16:37:49 +0000 (18:37 +0200)] 
man/crypttab: add a more comprehensive example of encrypted device setup

12 months agoman/crypttab: do not recommend using /dev/sdX symlinks in /etc/crypttab
Zbigniew Jędrzejewski-Szmek [Fri, 22 Sep 2023 16:27:10 +0000 (18:27 +0200)] 
man/crypttab: do not recommend using /dev/sdX symlinks in /etc/crypttab

This is just wrong. Quering the symlink names with udevadm is not the
easiest, but I think that's the safest way for a documented example.

12 months agoman/cryptenroll: link to crypttab(5) for examples
Zbigniew Jędrzejewski-Szmek [Fri, 22 Sep 2023 15:55:39 +0000 (17:55 +0200)] 
man/cryptenroll: link to crypttab(5) for examples

I was missing an example of how to use cryptenroll. We have that, but in
another page. Instead of repeating, let's just direct the user to the right
place.

Also, reformat synopsis to the "official" non-nested syntax.

12 months agojournalctl -o short-iso[-precise]: timezone as +02:00 instead of +0200 29134/head
наб [Fri, 8 Sep 2023 15:28:57 +0000 (17:28 +0200)] 
journalctl -o short-iso[-precise]: timezone as +02:00 instead of +0200

12 months agojournalctl.1: move --truncate-newline to the options instead of the -o values list
наб [Fri, 8 Sep 2023 15:30:17 +0000 (17:30 +0200)] 
journalctl.1: move --truncate-newline to the options instead of the -o values list

12 months agoadd support for hp pavilion gaming 15 lid switch (#29304)
beh_10257 [Tue, 26 Sep 2023 12:32:03 +0000 (12:32 +0000)] 
add support for hp pavilion gaming 15 lid switch (#29304)

Tested together with kernel patch: https://lore.kernel.org/linux-acpi/20230920130506.8595-1-hdegoede@redhat.com/
but the d7 key is still interpreted as a wlan key switch, so an hwdb update is needed.

Raw dmi:

dmi:bvnInsyde:bvrF.45:bd07/07/2023:br15.45:efr2.51:svnHP:pnHPPavilionGamingLaptop15-dk1xxx:pvrType1ProductConfigId:rvnHP:rn8742:rvr02.51:cvnHP:ct10:cvrChassisVersion:sku20T68EA#BH4::

Related to: https://github.com/systemd/systemd/issues/28942

12 months agoRevert "man: Add /usr/local/lib path to Synopsis section for modules-load"
Lennart Poettering [Tue, 26 Sep 2023 08:05:20 +0000 (10:05 +0200)] 
Revert "man: Add /usr/local/lib path to Synopsis section for modules-load"

This reverts commit 17811767687fcee3b96333f724c5cdf3df11ae86.

12 months agoudev: raise RLIMIT_NOFILE as high as we can
Lennart Poettering [Tue, 26 Sep 2023 07:52:05 +0000 (09:52 +0200)] 
udev: raise RLIMIT_NOFILE as high as we can

We might need a lot of fds on large systems, hence raise RLIMIT_NOFILE
to what the service manager allows us, which is quite a lot these days.

udev already sets FORK_RLIMIT_NOFILE_SAFE when forking of chilren, thus
ensuring that forked off processes get their RLIMIT_NOFILE soft limit
reset to 1K for compat with crappy old select().

Replaces: #29298
Fixes: #28583
12 months agovarlink: remove duplicate varlink_clear_current()
Lennart Poettering [Tue, 26 Sep 2023 07:38:12 +0000 (09:38 +0200)] 
varlink: remove duplicate varlink_clear_current()

12 months agocore/service: log the next restart usec only when we're arming timer
Mike Yuan [Mon, 25 Sep 2023 15:23:29 +0000 (23:23 +0800)] 
core/service: log the next restart usec only when we're arming timer

service_restart_usec_next() is also called when querying
'RestartUSecNext' dbus property. Let's avoid the redundant
logging triggered every time user does a 'systemctl status'.

12 months agoman: Add /usr/local/lib path to Synopsis section for modules-load
Raul Cheleguini [Tue, 26 Sep 2023 01:57:05 +0000 (22:57 -0300)] 
man: Add /usr/local/lib path to Synopsis section for modules-load

12 months agotest: add test case that journal file with unreferenced _BOOT_ID data
Yu Watanabe [Sun, 24 Sep 2023 17:57:31 +0000 (02:57 +0900)] 
test: add test case that journal file with unreferenced _BOOT_ID data

For issue #29275.

12 months agosd-journal: always fallback to find entry by realtime
Yu Watanabe [Sun, 24 Sep 2023 17:00:41 +0000 (02:00 +0900)] 
sd-journal: always fallback to find entry by realtime

Consider the following situation:
- There are two journal files (x and y), that contains entries for two boots (X and Y).
- The journal file x contains entries of the boot X, and y contains
  entries of Y.
- Nevertheless x does not contains entries of boot Y, it contains
  the _BOOT_ID= data object of boot Y. Of course, the data object is not
  referenced by any entries in the journal file x.

In such situation, when the current location of sd_journal is the head
of journal y, that is, the first entry of the boot Y,
sd_journal_previous() failed without this change, and
'journalctl --boot -NUM' for boot X failed.

Fixes #29275.

12 months agotest: add tests for journal_find_boot_by_offset() and friends
Yu Watanabe [Sat, 23 Sep 2023 06:14:18 +0000 (15:14 +0900)] 
test: add tests for journal_find_boot_by_offset() and friends

12 months agologs-show: use sd_journal_step_one()
Yu Watanabe [Sat, 23 Sep 2023 18:31:14 +0000 (03:31 +0900)] 
logs-show: use sd_journal_step_one()

12 months agologs-show: move journal_find_boot_by_offset() and friends from journalctl.c
Yu Watanabe [Sat, 23 Sep 2023 00:55:45 +0000 (09:55 +0900)] 
logs-show: move journal_find_boot_by_offset() and friends from journalctl.c

12 months agojournalctl: several cleanups for find_boot_by_offset()/_by_id()
Yu Watanabe [Sat, 23 Sep 2023 00:35:55 +0000 (09:35 +0900)] 
journalctl: several cleanups for find_boot_by_offset()/_by_id()

- their names are prefixed with "journal_",
- make them not directly use global variables,
- simplifies the loop counter in find_boot_by_offset().

12 months agosd-journal: refuse to write entry without boot ID
Yu Watanabe [Fri, 22 Sep 2023 19:14:31 +0000 (04:14 +0900)] 
sd-journal: refuse to write entry without boot ID

To make journal entries always contain valid boot ID.

12 months agosd-journal: boot_id is always non-NULL
Yu Watanabe [Fri, 22 Sep 2023 17:42:31 +0000 (02:42 +0900)] 
sd-journal: boot_id is always non-NULL

The two callers of journal_file_append_entry_internal() always pass
non-NULL boot ID.

12 months agosd-journal: also verify tail_entry_boot_id and friends in journal_file_verify_header()
Yu Watanabe [Fri, 22 Sep 2023 18:14:40 +0000 (03:14 +0900)] 
sd-journal: also verify tail_entry_boot_id and friends in journal_file_verify_header()

Then, we can drop the redundant check in journal_file_read_tail_timestamp().

12 months agotest: fix header verification
Yu Watanabe [Fri, 22 Sep 2023 17:28:04 +0000 (02:28 +0900)] 
test: fix header verification

12 months agoman: document SystemState's possible values
Luca Boccassi [Mon, 25 Sep 2023 18:14:58 +0000 (19:14 +0100)] 
man: document SystemState's possible values

12 months agoman: add version information for udev functions
Abderrahim Kitouni [Tue, 19 Sep 2023 08:04:56 +0000 (09:04 +0100)] 
man: add version information for udev functions

12 months agoMerge pull request #29314 from YHNdnzj/firstboot-fixup
Luca Boccassi [Mon, 25 Sep 2023 21:29:24 +0000 (22:29 +0100)] 
Merge pull request #29314 from YHNdnzj/firstboot-fixup

Small fixups for first boot

12 months agoMerge pull request #29309 from poettering/resolved-varlink-tweaks
Lennart Poettering [Mon, 25 Sep 2023 21:27:33 +0000 (23:27 +0200)] 
Merge pull request #29309 from poettering/resolved-varlink-tweaks

resolved: minor varlink API tweaks

12 months agooomd: correct listening sockets
Lennart Poettering [Mon, 25 Sep 2023 16:10:50 +0000 (18:10 +0200)] 
oomd: correct listening sockets

So, unfortunately oomd uses "io.system." rather than "io.systemd." as
prefix for its sockets. This is a mistake, and doesn't match the
Varlink interface naming or anything else in oomd.

hence, let's fix that.

Given that this is an internal protocol between PID1 and oomd let's
simply change this without retaining compat.

12 months agovarlink: move O_NONBLOCK setting to varlink_server_listen_fd(), and set O_CLOEXEC too
Lennart Poettering [Mon, 25 Sep 2023 14:04:01 +0000 (16:04 +0200)] 
varlink: move O_NONBLOCK setting to varlink_server_listen_fd(), and set O_CLOEXEC too

Let's move setting of O_NONBLOCK into varlink_server_listen_fd() and out
of varlink_server_create_listen_fd_socket(). The latter has two callers:
varlink_server_listen_fd() and varlink_server_listen_address(), which
guarantees O_CLOEXEC+O_NONBLOCK anyway, hence no neet to repeat the
logic.

12 months agoMerge pull request #29315 from poettering/strgrowpad0
Lennart Poettering [Mon, 25 Sep 2023 21:26:47 +0000 (23:26 +0200)] 
Merge pull request #29315 from poettering/strgrowpad0

string-util: make strgrowpad0() safer

12 months agoMerge pull request #29308 from aafeijoo-suse/dissect-fix
Luca Boccassi [Mon, 25 Sep 2023 18:16:08 +0000 (19:16 +0100)] 
Merge pull request #29308 from aafeijoo-suse/dissect-fix

dissect: fix man and bash-completion

12 months agorepart: add extra safety check that the verity signature fits in the partition we... 29315/head
Lennart Poettering [Mon, 25 Sep 2023 17:07:09 +0000 (19:07 +0200)] 
repart: add extra safety check that the verity signature fits in the partition we want to write

12 months agostring-util: make strgrowpad0() a bit safer
Lennart Poettering [Mon, 25 Sep 2023 17:06:06 +0000 (19:06 +0200)] 
string-util: make strgrowpad0() a bit safer

Let#s make sure we never shorten the allocation leaving an invalid
string (i.e. a memory allocation without a trailing NUL) around.

12 months agoman/systemd-firstboot: /etc/ empty -> unpopulated 29314/head
Mike Yuan [Mon, 25 Sep 2023 17:01:57 +0000 (01:01 +0800)] 
man/systemd-firstboot: /etc/ empty -> unpopulated

We use the phrase "unpopulated" in systemd.unit(5) too.
And "/etc/ is empty" is simply spurious.

12 months agocore/main: log that we assume first boot if failed to read machine-id
Mike Yuan [Mon, 25 Sep 2023 17:00:23 +0000 (01:00 +0800)] 
core/main: log that we assume first boot if failed to read machine-id

12 months agoalloc-util: remove duplicate empty line
Lennart Poettering [Fri, 22 Sep 2023 20:21:45 +0000 (22:21 +0200)] 
alloc-util: remove duplicate empty line

12 months agoresolved: rename varlink function to match exposed method name 29309/head
Lennart Poettering [Fri, 22 Sep 2023 20:38:06 +0000 (22:38 +0200)] 
resolved: rename varlink function to match exposed method name

12 months agoresolved: also expose interface index in server JSON data
Lennart Poettering [Fri, 22 Sep 2023 20:37:37 +0000 (22:37 +0200)] 
resolved: also expose interface index in server JSON data

12 months agoMerge pull request #29301 from poettering/pcr-extend-rename
Lennart Poettering [Mon, 25 Sep 2023 16:28:03 +0000 (18:28 +0200)] 
Merge pull request #29301 from poettering/pcr-extend-rename

rename pcrphase binary to pcrextend

12 months agoman: briefly document that we are now keeping an event log in userspace for out measu... 29301/head
Lennart Poettering [Mon, 25 Sep 2023 09:09:34 +0000 (11:09 +0200)] 
man: briefly document that we are now keeping an event log in userspace for out measurements

12 months agopcrextend: make PCR index configurable
Lennart Poettering [Mon, 25 Sep 2023 08:51:56 +0000 (10:51 +0200)] 
pcrextend: make PCR index configurable

Let's make the tool a tiny bit more generic by allowing the PCR index to
measure into to be configurable.

12 months agopcrphase: rename binary to pcrextend
Lennart Poettering [Mon, 25 Sep 2023 08:38:01 +0000 (10:38 +0200)] 
pcrphase: rename binary to pcrextend

The tool initially just measured the boot phase, but was subsequently
extended to measure file system and machine IDs, too. At AllSystemsGo
there were request to add more, and make the tool generically
accessible.

Hence, let's rename the binary (but not the pcrphase services), to make
clear the tool is not just measureing the boot phase, but a lot of other
things too.

The tool is located in /usr/lib/ and still relatively new, hence let's
just rename the binary and be done with it, while keeping the unit names
stable.

While we are at it, also move the tool out of src/boot/ and into its own
src/pcrextend/ dir, since it's not really doing boot related stuff
anymore.

12 months agobash-completion: add missing commands and options to systemd-dissect 29308/head
Antonio Alvarez Feijoo [Mon, 25 Sep 2023 14:46:11 +0000 (16:46 +0200)] 
bash-completion: add missing commands and options to systemd-dissect

12 months agotest: enable debug logs for the user instances as well
Frantisek Sumsal [Mon, 25 Sep 2023 11:25:27 +0000 (13:25 +0200)] 
test: enable debug logs for the user instances as well

To make debugging [0], hopefully, easier.

[0] https://github.com/systemd/systemd/issues/28504

12 months agoMerge pull request #29303 from abderrahim/syntax-fixes
Luca Boccassi [Mon, 25 Sep 2023 14:23:48 +0000 (15:23 +0100)] 
Merge pull request #29303 from abderrahim/syntax-fixes

man: a couple of small fixes

12 months agoman/systemd-dissect: various fixes
Antonio Alvarez Feijoo [Mon, 25 Sep 2023 14:16:41 +0000 (16:16 +0200)] 
man/systemd-dissect: various fixes

- Add synopsis to `--discover` and `--validate` options.
- `-l` is for `--list`, not for `--mtree`.

12 months agoman: fix docbook syntax for function docs 29303/head
Abderrahim Kitouni [Mon, 25 Sep 2023 12:14:13 +0000 (13:14 +0100)] 
man: fix docbook syntax for function docs

This fixes sd_bus_error_add_map and man/sd_uid_get_state

12 months agoman/kernel-command-line: don't refer early_core_pattern to systemd
Abderrahim Kitouni [Mon, 25 Sep 2023 12:12:46 +0000 (13:12 +0100)] 
man/kernel-command-line: don't refer early_core_pattern to systemd

It is defined later in the same file

12 months agodocs/FDS: add missing article and reword sentence
Zbigniew Jędrzejewski-Szmek [Fri, 22 Sep 2023 13:14:40 +0000 (15:14 +0200)] 
docs/FDS: add missing article and reword sentence

12 months agoupdate TODO
Lennart Poettering [Mon, 25 Sep 2023 10:23:12 +0000 (12:23 +0200)] 
update TODO

12 months agomkosi: Run meson and ninja as the user invoking mkosi
Daan De Meyer [Mon, 25 Sep 2023 09:02:13 +0000 (11:02 +0200)] 
mkosi: Run meson and ninja as the user invoking mkosi

Latest mkosi sets $MKOSI_UID and $MKOSI_GID to the uid/gid of the
user running mkosi. Let's make use of this to run meson setup and
ninja as the user running mkosi, so that if we execute git as a
subprocess during meson setup, it doesn't complain about unsafe
directories. This also makes sure all the build artifacts are owned
on the host by the user running mkosi.