]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
11 days agodissect: use practical 16 MiB limit instead of SSIZE_MAX 42162/head
TristanInSec [Mon, 18 May 2026 18:39:44 +0000 (14:39 -0400)] 
dissect: use practical 16 MiB limit instead of SSIZE_MAX

As suggested by @yuwata, SSIZE_MAX is still too large and would cause
malloc() to fail anyway. Use a 16 MiB limit which is generous compared
to the typical 4 MiB maximum in cryptsetup (LUKS2_HDR_OFFSET_MAX).

11 days agodissect: guard against ssize_t overflow in LUKS2 header parser
TristanInSec [Mon, 18 May 2026 17:30:02 +0000 (13:30 -0400)] 
dissect: guard against ssize_t overflow in LUKS2 header parser

The json_len variable is ssize_t, but the subtraction
be64toh(header.hdr_len) - LUKS2_FIXED_HDR_SIZE can yield a value
exceeding SSIZE_MAX when hdr_len is a large crafted value. This causes
signed integer overflow and a subsequent oversized malloc() that fails
with -ENOMEM, producing a misleading out-of-memory error.

Add an explicit check against SSIZE_MAX before the cast to ssize_t.

11 days agoerrno-util: include -ENOENT in ERRNO_IS_XATTR_ABSENT()
Ivan Kruglov [Mon, 18 May 2026 10:57:43 +0000 (03:57 -0700)] 
errno-util: include -ENOENT in ERRNO_IS_XATTR_ABSENT()

The getxattr(2) man page only enumerates xattr-specific errors (ENODATA,
ENOTSUP, ERANGE, E2BIG, ...) in its own ERRORS section, but at the
bottom of that section notes that "the errors documented in stat(2) can
also be returned." stat(2) returns -ENOENT when a component of the path
does not exist, so any xattr lookup against a path can fail with -ENOENT
exactly the same way as -ENODATA — both mean "there is nothing here for
me to read." The previous definition of ERRNO_IS_NEG_XATTR_ABSENT()
reflected only the directly-enumerated errors and missed -ENOENT, so
callers that should semantically swallow "the xattr is absent" instead
bubbled -ENOENT up as a hard error.

The most visible consequence on real fleets has been systemd-journald
spamming dmesg with one line per dispatched log message whenever a
unit's cgroup directory cannot be found at the time
client_context_read_log_filter_patterns() is called — typically inside
containers whose journald observes clients whose unit cgroup is no
longer present in its view (cgroup-namespace boundary, unit teardown
race, transient sub-scope already collapsed back to its unit cgroup,
etc.). The same bug pattern lurks at every other cgroup-xattr callsite:
systemd-oomd reading user.oomd_avoid / user.oomd_omit / user.oomd_ooms
on cgroups it is concurrently killing; killall reading
user.survive_final_kill_signal during shutdown; cg_is_delegated() /
cg_has_coredump_receive() / cgroup_get_managed_oom_kill_last(); etc. For
these, "path is gone" is by construction the same answer as "xattr is
not set" — there is no way for the user to have attached an xattr to a
path that does not exist.

A quick survey of non-cgroup callers (src/portable/portable.c,
src/home/{homework-luks,user-record-util}.c,
src/random-seed/random-seed-tool.c, src/basic/os-util.c) confirms they
all operate on fds or on paths whose absence is already the desired
silent-skip outcome, so widening the macro to also fold in -ENOENT does
not change observable behavior at any other site.

Extend test-xattr-util's getxattr_at_malloc test with an explicit
non-existent-path lookup that asserts ERRNO_IS_NEG_XATTR_ABSENT() now
matches, alongside the pre-existing non-existent-xattr (-ENODATA) check.

11 days agodhcp-client: reject messages larger than the maximum UDP payload
Luca Boccassi [Mon, 18 May 2026 11:05:10 +0000 (12:05 +0100)] 
dhcp-client: reject messages larger than the maximum UDP payload

dhcp_message_verify_header() only enforced a lower bound on the input
length, so dhcp_message_parse() happily accepted arbitrarily large
buffers. Such inputs could never have been received via UDP and would
later fail in dhcp_message_build() with -E2BIG once the parsed options'
combined size exceeds UDP_PAYLOAD_MAX_SIZE, which the fuzzer surfaced as
an assertion failure.

Reject inputs above UDP_PAYLOAD_MAX_SIZE up front, so the parse stage
mirrors what the wire format can actually carry.

Follow-up for 8c18bb6547c2138f2f17b921ec06f2c1f7cd17cd

Fixes https://github.com/systemd/systemd/issues/42147

Co-developed-by: Claude Opus 4.7 <noreply@anthropic.com>
11 days agoChores for v261~rc1 (#42157)
Luca Boccassi [Mon, 18 May 2026 14:51:49 +0000 (15:51 +0100)] 
Chores for v261~rc1 (#42157)

11 days agoNEWS: typo fixes
Jörg Behrmann [Mon, 18 May 2026 13:24:54 +0000 (15:24 +0200)] 
NEWS: typo fixes

11 days agoFixes for claude review report (#42152)
Zbigniew Jędrzejewski-Szmek [Mon, 18 May 2026 13:13:24 +0000 (15:13 +0200)] 
Fixes for claude review report (#42152)

11 days agomeson: bump library sonames for v261~rc1 42157/head
Luca Boccassi [Mon, 18 May 2026 11:26:28 +0000 (12:26 +0100)] 
meson: bump library sonames for v261~rc1

11 days agoUpdate po files
Luca Boccassi [Mon, 18 May 2026 11:24:56 +0000 (12:24 +0100)] 
Update po files

ninja -C build systemd-update-po

11 days agoUpdate pot file
Luca Boccassi [Mon, 18 May 2026 11:18:45 +0000 (12:18 +0100)] 
Update pot file

ninja -C build systemd-pot

11 days agoUpdate syscall numbers
Luca Boccassi [Mon, 18 May 2026 11:18:04 +0000 (12:18 +0100)] 
Update syscall numbers

ninja -C build update-syscall-tables update-syscall-header

11 days agoUpdate hwdb autosuspend rules
Luca Boccassi [Mon, 18 May 2026 11:17:23 +0000 (12:17 +0100)] 
Update hwdb autosuspend rules

ninja -C build update-hwdb-autosuspend

11 days agoUpdate hwdb
Luca Boccassi [Mon, 18 May 2026 11:16:44 +0000 (12:16 +0100)] 
Update hwdb

ninja -C build update-hwdb

11 days agoNEWS: add new items for v261~rc1
Luca Boccassi [Mon, 18 May 2026 10:50:07 +0000 (11:50 +0100)] 
NEWS: add new items for v261~rc1

11 days agosysupdate: fix noop assert 42152/head
Zbigniew Jędrzejewski-Szmek [Mon, 18 May 2026 10:33:24 +0000 (12:33 +0200)] 
sysupdate: fix noop assert

Reported by qarmin (Rafał Mikrut).

11 days agorepart: fix bogus errno in error message and returned value
Zbigniew Jędrzejewski-Szmek [Mon, 18 May 2026 10:33:08 +0000 (12:33 +0200)] 
repart: fix bogus errno in error message and returned value

Reported by qarmin (Rafał Mikrut).

11 days agoresolved: add configurable DNS cache size
ishwarbb [Mon, 23 Mar 2026 13:02:40 +0000 (13:02 +0000)] 
resolved: add configurable DNS cache size

Add CacheSize= option to [Resolve] section of resolved.conf to allow
configuring the maximum number of entries in the per-scope DNS cache.
The default remains 4096 entries. Setting this to 0 disables caching
(similar to Cache=no).

CacheSize= is only read when Cache=yes or Cache=no-negative. When
Cache=no, caching is fully disabled regardless of CacheSize=.

Changes:
- Add cache_size field to Manager struct
- Parse CacheSize= from resolved.conf via gperf
- Thread cache_size through dns_cache_put() and helper functions
- Replace hard-coded CACHE_MAX with the configurable cache_size
- When cache_size is 0 or Cache=no, flush cache and skip caching
- Add man page documentation for the new option
- Add unit tests for cache size enforcement

Co-developed-by: Claude <claude@anthropic.com>
11 days agonsresourced: fix typo
Zbigniew Jędrzejewski-Szmek [Mon, 18 May 2026 10:31:55 +0000 (12:31 +0200)] 
nsresourced: fix typo

Reported by qarmin (Rafał Mikrut).

11 days agocoredump: use a fixed string instead a scope-delimited compound literal
Zbigniew Jędrzejewski-Szmek [Mon, 18 May 2026 10:31:46 +0000 (12:31 +0200)] 
coredump: use a fixed string instead a scope-delimited compound literal

The compound literal (const char[]){'.','.','.'} has block scope
(C99 6.5.2.5p6). Once we leave the if and loop back, copy[1].iov_base
formally points into a destroyed object. Works on GCC/Clang in practice,
but is UB.

Let's do the easy thing and use a string.

Reported by qarmin (Rafał Mikrut).

11 days agotree-wide: stop using lambda assignment in Python code (#42145)
Zbigniew Jędrzejewski-Szmek [Mon, 18 May 2026 10:42:02 +0000 (12:42 +0200)] 
tree-wide: stop using lambda assignment in Python code (#42145)

Follow-up for #40758.

11 days agocore/manager: fix (theoretical) fd leak on invalid messages
Zbigniew Jędrzejewski-Szmek [Mon, 18 May 2026 10:30:36 +0000 (12:30 +0200)] 
core/manager: fix (theoretical) fd leak on invalid messages

We'd leak fds on early return. We are sending a message to ourself,
so it's unlikely to fail. But let's keep the logic correct.

Reported by qarmin (Rafał Mikrut).

11 days agocore/dbus-execute: propagate oom in property_get_cpu_affinity
Zbigniew Jędrzejewski-Szmek [Mon, 18 May 2026 10:29:12 +0000 (12:29 +0200)] 
core/dbus-execute: propagate oom in property_get_cpu_affinity

The function already returns errors, so I'm not sure why we ignored
the error in the second call, potentially leaving variables unitialized.
It seems easiest to propagate the error.

Reported by qarmin (Rafał Mikrut).

11 days agobasic/path-util: fix executable_is_good
Zbigniew Jędrzejewski-Szmek [Mon, 18 May 2026 10:28:08 +0000 (12:28 +0200)] 
basic/path-util: fix executable_is_good

Reported by qarmin (Rafał Mikrut).

11 days agosd-json: add sd_json_parse_fd() + flags (#42136)
Luca Boccassi [Mon, 18 May 2026 10:16:48 +0000 (11:16 +0100)] 
sd-json: add sd_json_parse_fd() + flags (#42136)

In particular in the recent LUO work we started to read JSON a lot from
fds, let's add some helpers to make that simpler.

No change in behaviour, just helpers to shorten code.

11 days agotest: add unit test for new sd-json functionality 42136/head
Lennart Poettering [Sun, 17 May 2026 06:46:59 +0000 (08:46 +0200)] 
test: add unit test for new sd-json functionality

11 days agoman: add documentation for new sd-json features
Lennart Poettering [Sun, 17 May 2026 06:56:56 +0000 (08:56 +0200)] 
man: add documentation for new sd-json features

11 days agotree-wide: make use of sd_json_parse_fd() where appropriate
Lennart Poettering [Sun, 17 May 2026 06:00:48 +0000 (08:00 +0200)] 
tree-wide: make use of sd_json_parse_fd() where appropriate

11 days agosd-json: add sd_json_parse_fd() helper
Lennart Poettering [Fri, 15 May 2026 10:22:04 +0000 (12:22 +0200)] 
sd-json: add sd_json_parse_fd() helper

11 days agohomed: port one over one sd_json_parse_file() invocation to SD_JSON_PARSE_SEEK0
Lennart Poettering [Sun, 17 May 2026 06:00:01 +0000 (08:00 +0200)] 
homed: port one over one sd_json_parse_file() invocation to SD_JSON_PARSE_SEEK0

11 days agosd-json: add SD_JSON_PARSE_SEEK0 flag
Lennart Poettering [Thu, 14 May 2026 06:45:35 +0000 (08:45 +0200)] 
sd-json: add SD_JSON_PARSE_SEEK0 flag

11 days agoupdate TODO
Lennart Poettering [Mon, 18 May 2026 06:44:19 +0000 (08:44 +0200)] 
update TODO

11 days agoboot: fix off-by-one truncation when reading efivars
Luca Boccassi [Sun, 17 May 2026 23:17:27 +0000 (00:17 +0100)] 
boot: fix off-by-one truncation when reading efivars

'val' is allocated as 'size + 1', so the NUL terminator must be written
to 'size', rather than 'size - 1'.

Follow-up for fab82756462fd0ce82836e3d95721954d7ab2527

11 days agonetwork/address: drop duplicated address earlier
Yu Watanabe [Sun, 17 May 2026 23:40:44 +0000 (08:40 +0900)] 
network/address: drop duplicated address earlier

network_adjust_dhcp_server() searches network->addresses_by_section,
hence without this change, an address entry picked by
network_adjust_dhcp_server() may be detached and freed by the cleanup
function.

11 days agoci/linter: stop ignoring lambda assignment lint 42145/head
Jörg Behrmann [Wed, 25 Feb 2026 10:05:34 +0000 (11:05 +0100)] 
ci/linter: stop ignoring lambda assignment lint

11 days agotest-network: make masq a proper function
Jörg Behrmann [Wed, 25 Feb 2026 10:00:54 +0000 (11:00 +0100)] 
test-network: make masq a proper function

11 days agotest-network: factor out common functions
Jörg Behrmann [Wed, 25 Feb 2026 09:59:04 +0000 (10:59 +0100)] 
test-network: factor out common functions

11 days agotest-network: factor out common enum
Jörg Behrmann [Wed, 25 Feb 2026 09:43:08 +0000 (10:43 +0100)] 
test-network: factor out common enum

11 days agotest-network: remove unused variable
Jörg Behrmann [Wed, 25 Feb 2026 09:42:31 +0000 (10:42 +0100)] 
test-network: remove unused variable

11 days agohwdb/ids_parser: make text_eol a proper function
Jörg Behrmann [Wed, 25 Feb 2026 09:26:59 +0000 (10:26 +0100)] 
hwdb/ids_parser: make text_eol a proper function

11 days agoukify: factor out method for value parsing in ConfigItem
Jörg Behrmann [Wed, 25 Feb 2026 09:26:15 +0000 (10:26 +0100)] 
ukify: factor out method for value parsing in ConfigItem

11 days agodhcp-message: introduce dhcp_message_{payload,packet}_size()
Yu Watanabe [Sun, 17 May 2026 22:46:19 +0000 (07:46 +0900)] 
dhcp-message: introduce dhcp_message_{payload,packet}_size()

12 days agoIntroduce several more helper functions to read sysfs attributes and use them where...
Yu Watanabe [Sun, 17 May 2026 22:26:44 +0000 (07:26 +0900)] 
Introduce several more helper functions to read sysfs attributes and use them where applicable (#41065)

Let's not use sd_device_get_sysattr_value() unless the result is
sanitized, escaped, or filtered.

12 days agoApply "ruff format" and "ruff check --fix" for all python scripts (#40758)
Yu Watanabe [Sun, 17 May 2026 22:26:11 +0000 (07:26 +0900)] 
Apply "ruff format" and "ruff check --fix" for all python scripts (#40758)

12 days agohwdb: Add keymap for Lenovo 15IRX9 (#42141)
RiskoZS [Sun, 17 May 2026 20:28:52 +0000 (16:28 -0400)] 
hwdb: Add keymap for Lenovo 15IRX9 (#42141)

This adds a mapping for the Fn+F9 key (used to launch Lenovo Vantage
on Windows) on the Lenovo LOQ 15IRX9 gaming laptop.

12 days agodhcp-client: clear overloaded sname/file fields after parsing
Luca Boccassi [Sun, 17 May 2026 17:22:20 +0000 (18:22 +0100)] 
dhcp-client: clear overloaded sname/file fields after parsing

When SD_DHCP_OPTION_OVERLOAD indicates that the sname and/or file header
fields are overloaded with extra DHCP options, dhcp_message_parse() merges
those options into message->options but leaves the raw bytes untouched in
the header. As a result, dhcp_message_build() emits the header (including
the overloaded bytes) verbatim, and the next parse re-parses those bytes,
appending duplicate entries to the options map (each tag's iov list grows).
Subsequent builds then differ from the first, breaking the parse/build
roundtrip.

This was caught by fuzz-dhcp-client, which asserts that two consecutive
build calls produce identical output.

Zero out the overloaded fields after parsing them, since their content has
already been merged into the options map. This makes the roundtrip
idempotent and avoids re-emitting stale overloaded data in the rebuilt
header. The JSON build/parse path was already correct (it omits sname/file
from the JSON when the overload bit is set), so only the binary path needed
fixing.

Fixes https://github.com/systemd/systemd/issues/42139

Co-developed-by: Claude Opus 4.7 <noreply@anthropic.com>
12 days agoudev-builtin-input-id: drop unused value 41065/head
Yu Watanabe [Thu, 12 Mar 2026 05:37:37 +0000 (14:37 +0900)] 
udev-builtin-input-id: drop unused value

12 days agotree-wide: use device_get_sysattr_unsigned() and friends
Yu Watanabe [Wed, 11 Mar 2026 22:07:12 +0000 (07:07 +0900)] 
tree-wide: use device_get_sysattr_unsigned() and friends

12 days agoudev-builtin-usb_id: make set_usb_iftype() and friends return const char*
Yu Watanabe [Sun, 17 May 2026 16:10:17 +0000 (01:10 +0900)] 
udev-builtin-usb_id: make set_usb_iftype() and friends return const char*

12 days agoudev-builtin-usb_id: use device_get_sysattr_unsigned() and friends
Yu Watanabe [Wed, 11 Mar 2026 22:06:00 +0000 (07:06 +0900)] 
udev-builtin-usb_id: use device_get_sysattr_unsigned() and friends

This also fix the parser of bInterfaceClass from safe_atoi() to
safe_atou_full() as it is unsigned hex.

12 days agosd-device: also add device_get_sysattr_streq()
Yu Watanabe [Thu, 12 Mar 2026 00:53:13 +0000 (09:53 +0900)] 
sd-device: also add device_get_sysattr_streq()

12 days agosd-device: also add device_get_sysattr_u8() and _u16()
Yu Watanabe [Thu, 12 Mar 2026 00:48:22 +0000 (09:48 +0900)] 
sd-device: also add device_get_sysattr_u8() and _u16()

12 days agosd-device: use macro to define device_get_sysattr_int() and friends
Yu Watanabe [Thu, 12 Mar 2026 00:26:29 +0000 (09:26 +0900)] 
sd-device: use macro to define device_get_sysattr_int() and friends

12 days agotest: add test cases for device_get_sysattr_int() and friends
Yu Watanabe [Thu, 12 Mar 2026 00:19:34 +0000 (09:19 +0900)] 
test: add test cases for device_get_sysattr_int() and friends

12 days agosd-device: rename argument names for storing result
Yu Watanabe [Thu, 12 Mar 2026 00:00:10 +0000 (09:00 +0900)] 
sd-device: rename argument names for storing result

When a function takes only one argument for storing result, the argument
is not necessary to be named as ret_xyz, but ret should be enough.

12 days agotree-wide: use device_get_sysattr_safe_string()
Yu Watanabe [Wed, 11 Mar 2026 22:00:06 +0000 (07:00 +0900)] 
tree-wide: use device_get_sysattr_safe_string()

The obtained strings are passed to another function, e,g, handled as a
path and opened, printed to the terminal, written to a file, saved to
udev database as udev property, exposed through DBus, passed to logger,
and so on. Hence, these should not contain any malicious characters.

12 days agoudev-builtin-net_id: quote strings in log messages
Yu Watanabe [Sun, 17 May 2026 15:52:29 +0000 (00:52 +0900)] 
udev-builtin-net_id: quote strings in log messages

12 days agoudev-builtin-net_id: use EINVAL when we get unexpected sysattr value
Yu Watanabe [Fri, 13 Mar 2026 20:40:14 +0000 (05:40 +0900)] 
udev-builtin-net_id: use EINVAL when we get unexpected sysattr value

The results are completely ignored or only checked if it is negative or
not. Hence, this does not change anything.

12 days agoudev: drop redundant checks
Yu Watanabe [Wed, 11 Mar 2026 22:16:46 +0000 (07:16 +0900)] 
udev: drop redundant checks

This partially reverts 16325b35fa6ecb25f66534a562583ce3b96d52f3,
as bad characters are already filtered.

12 days agoRevert "udev-builtin-net-id: print cescaped bad attributes"
Yu Watanabe [Wed, 11 Mar 2026 22:14:44 +0000 (07:14 +0900)] 
Revert "udev-builtin-net-id: print cescaped bad attributes"

This reverts commit 7c4047957ef58744ecfad6d277f7c45d430f6d70.

This is not necessary, as bad characters are already filtered.

12 days agoudev: use device_get_sysattr_safe_string() in device_get_sysattr_value_filtered()
Yu Watanabe [Wed, 11 Mar 2026 22:09:44 +0000 (07:09 +0900)] 
udev: use device_get_sysattr_safe_string() in device_get_sysattr_value_filtered()

Then, renamed to device_get_sysattr_safe_string_filtered().

12 days agosd-device: use device_get_sysattr_safe_string()
Yu Watanabe [Wed, 11 Mar 2026 20:44:51 +0000 (05:44 +0900)] 
sd-device: use device_get_sysattr_safe_string()

The read value are exposed by sd_device_get_subsystem() and friends.
Hence, it is better to filter invalid characters.
Of course, these should be always safe unless the kernel is buggy.
But, just for safety.

Note, even if uevent file contains invalid characters, then
device_read_uevent_file() should succeed without parsing the contents.
The caller should fail later with a proper error code if a necessary
field is unset. E.g. sd_device_get_ifindex() should still return -ENOENT
even when uevent file contains an invalid characters.

12 days agosd-device: introduce device_get_sysattr_safe_string()
Yu Watanabe [Wed, 11 Mar 2026 20:39:42 +0000 (05:39 +0900)] 
sd-device: introduce device_get_sysattr_safe_string()

This introduce a helper function that verifies read sysattr value.
Some sysattr value may come from firmware, and kernel may expose unsafe
string. The introduced function should be used when we use the result as
a string.

12 days agostring-util: introduce STRING_ALLOW_NEWLINES switch for string_is_safe()
Yu Watanabe [Sun, 17 May 2026 15:18:23 +0000 (00:18 +0900)] 
string-util: introduce STRING_ALLOW_NEWLINES switch for string_is_safe()

This also make StringSafeFlags defined in basic-forward.h so other
headers can use the enum.

12 days agoemacs: add settings for Python modes 40758/head
Jörg Behrmann [Tue, 24 Feb 2026 17:08:30 +0000 (18:08 +0100)] 
emacs: add settings for Python modes

Both python-mode and python-ts-mode are shipped by Emacs nowadays, with the
latter being the more modern tree-sitter-based one. Even though they are
similar, the newer one doesn't automatically take the older ones settings.

12 days agoci/linter: show diffs for ruff check when possible
Jörg Behrmann [Tue, 24 Feb 2026 17:03:54 +0000 (18:03 +0100)] 
ci/linter: show diffs for ruff check when possible

12 days agoci/linter: run ruff for all python scripts
Yu Watanabe [Thu, 19 Feb 2026 19:19:19 +0000 (04:19 +0900)] 
ci/linter: run ruff for all python scripts

12 days agoproxy-echo: apply "ruff check --fix"
Yu Watanabe [Sun, 17 May 2026 17:51:35 +0000 (02:51 +0900)] 
proxy-echo: apply "ruff check --fix"

12 days agofake-report-server: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Sun, 17 May 2026 17:49:29 +0000 (02:49 +0900)] 
fake-report-server: apply "ruff format" and "ruff check --fix"

12 days agofake-imds: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Sun, 17 May 2026 17:48:35 +0000 (02:48 +0900)] 
fake-imds: apply "ruff format" and "ruff check --fix"

12 days agomerge-bpf-compdb: apply "ruff format"
Yu Watanabe [Sun, 17 May 2026 17:47:09 +0000 (02:47 +0900)] 
merge-bpf-compdb: apply "ruff format"

12 days agoxml_helper: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:12:42 +0000 (02:12 +0900)] 
xml_helper: apply "ruff format"

12 days agoupdate-man-rules: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:12:28 +0000 (02:12 +0900)] 
update-man-rules: apply "ruff format"

12 days agoupdate-dbus-docs: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Thu, 19 Feb 2026 17:12:16 +0000 (02:12 +0900)] 
update-dbus-docs: apply "ruff format" and "ruff check --fix"

12 days agosync-docs: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Thu, 19 Feb 2026 17:12:00 +0000 (02:12 +0900)] 
sync-docs: apply "ruff format" and "ruff check --fix"

12 days agomeson-render-jinja2: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:11:46 +0000 (02:11 +0900)] 
meson-render-jinja2: apply "ruff format"

12 days agomeson-extract-unit-files: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:11:31 +0000 (02:11 +0900)] 
meson-extract-unit-files: apply "ruff format"

12 days agomake-man-index: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:11:19 +0000 (02:11 +0900)] 
make-man-index: apply "ruff format"

12 days agomake-directive-index: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:11:03 +0000 (02:11 +0900)] 
make-directive-index: apply "ruff format"

12 days agolist-discoverable-partitions: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:10:48 +0000 (02:10 +0900)] 
list-discoverable-partitions: apply "ruff format"

12 days agogenerate-gperfs: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:10:14 +0000 (02:10 +0900)] 
generate-gperfs: apply "ruff format"

12 days agogdb-sd_dump_hashmaps: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Thu, 19 Feb 2026 17:10:00 +0000 (02:10 +0900)] 
gdb-sd_dump_hashmaps: apply "ruff format" and "ruff check --fix"

12 days agofind-unused-library-symbols: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Thu, 19 Feb 2026 17:09:45 +0000 (02:09 +0900)] 
find-unused-library-symbols: apply "ruff format" and "ruff check --fix"

12 days agofetch-mkosi: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Thu, 19 Feb 2026 17:09:19 +0000 (02:09 +0900)] 
fetch-mkosi: apply "ruff format" and "ruff check --fix"

This also makes CONFIG is closed when not necessary.

12 days agofetch-distro: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:09:04 +0000 (02:09 +0900)] 
fetch-distro: apply "ruff format"

12 days agoelf2efi: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Thu, 19 Feb 2026 17:08:46 +0000 (02:08 +0900)] 
elf2efi: apply "ruff format" and "ruff check --fix"

12 days agodump-auxv: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:07:28 +0000 (02:07 +0900)] 
dump-auxv: apply "ruff format"

12 days agodbus-exporter: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Thu, 19 Feb 2026 17:06:56 +0000 (02:06 +0900)] 
dbus-exporter: apply "ruff format" and "ruff check --fix"

12 days agocheck-version-history: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Thu, 19 Feb 2026 17:04:33 +0000 (02:04 +0900)] 
check-version-history: apply "ruff format" and "ruff check --fix"

12 days agocheck-efi-alignment: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:04:20 +0000 (02:04 +0900)] 
check-efi-alignment: apply "ruff format"

12 days agocatalog-report: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:03:56 +0000 (02:03 +0900)] 
catalog-report: apply "ruff format"

12 days agoanalyze-dump-sort: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:03:44 +0000 (02:03 +0900)] 
analyze-dump-sort: apply "ruff format"

12 days agoTEST-69-SHUTDOWN: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:03:17 +0000 (02:03 +0900)] 
TEST-69-SHUTDOWN: apply "ruff format"

12 days agotest-udev: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Thu, 19 Feb 2026 17:02:48 +0000 (02:02 +0900)] 
test-udev: apply "ruff format" and "ruff check --fix"

12 days agotest-tmpfiles: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Thu, 19 Feb 2026 17:02:36 +0000 (02:02 +0900)] 
test-tmpfiles: apply "ruff format" and "ruff check --fix"

This also dropped unnecessary existence check for subprocess.run.

12 days agotest-shutdown: apply "ruff format"
Yu Watanabe [Thu, 19 Feb 2026 17:02:20 +0000 (02:02 +0900)] 
test-shutdown: apply "ruff format"

12 days agotest-network: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Thu, 19 Feb 2026 17:02:04 +0000 (02:02 +0900)] 
test-network: apply "ruff format" and "ruff check --fix"

12 days agotest-network: drop old ip command support
Yu Watanabe [Sat, 21 Feb 2026 20:25:49 +0000 (05:25 +0900)] 
test-network: drop old ip command support

12 days agotest-network: assume the test is running with newer udevd
Yu Watanabe [Sat, 21 Feb 2026 20:15:44 +0000 (05:15 +0900)] 
test-network: assume the test is running with newer udevd

12 days agotest-network: drop old kernel support and workaround for fixed kernel bug
Yu Watanabe [Fri, 20 Feb 2026 19:40:36 +0000 (04:40 +0900)] 
test-network: drop old kernel support and workaround for fixed kernel bug

- l3mdev in fib rules is supported since
https://github.com/torvalds/linux/commit/96c63fa7393d0a346acfe5a91e0c7d4c7782641b (v4.8).
- uid range in fib rules is supported since
https://github.com/torvalds/linux/commit/622ec2c9d52405973c9f1ca5116eb1c393adfc7d (v4.10).
- port range and ip proto in fib rules is supported since
https://github.com/torvalds/linux/commit/bfff4862653bb96001ab57c1edd6d03f48e5f035 (v4.17).
- interface alternative name is supported since
https://github.com/torvalds/linux/commit/36fbf1e52bd3ff8a5cb604955eedfc9350c2e6cc (v5.5).
- SRIOV on netdevsim is supported since
https://github.com/torvalds/linux/commit/79579220566cd33fe3b15ce8249c57e10251b258 (4.16).
- nexthop is supported since
https://github.com/torvalds/linux/commit/65ee00a9409f751188a8cdc0988167858eb4a536 (v5.3).
- bridge MDB entries on bridge master is supported since
https://github.com/torvalds/linux/commit/1bc844ee0faa1b92e3ede00bdd948021c78d7088 (v5.4).

12 days agosys-script: apply "ruff format" and "ruff check --fix"
Yu Watanabe [Wed, 25 Feb 2026 15:40:08 +0000 (00:40 +0900)] 
sys-script: apply "ruff format" and "ruff check --fix"