Commit Graph
67177 Commits
Author SHA1 Message Date
Yu Watanabe 1ec6c448c5 udev-builtin-net_id: make names_mac() self-contained
The MAC address is only used by names_mac() and ieee_oui(). Let's parse
it in names_mac() and drop it from LinkInfo.

No functional changes, just refactoring.
2023-07-29 22:14:23 +09:00
Yu Watanabe 01455a0723 udev-builtin-net_id: split out get_ifname_prefix()
No functional changes, just refactoring.
2023-07-29 22:14:23 +09:00
Yu Watanabe 2a62da02cc udev-builtin-net_id: swap arguments for streq() and friends 2023-07-29 22:14:23 +09:00
Yu Watanabe ac13209e2c udev-builtin-net_id: drop unused value from NetNameType 2023-07-29 22:14:23 +09:00
Yu Watanabe 4445242a1e chase: propagate error in dir_fd_is_root()
Otherwise, if it fails, chaseat() may return unexpected result and
triggers an assertion in chase().
2023-07-29 22:09:32 +09:00
Yu Watanabe 83c57d8cde chase: check root path in more detail
In chaseat() we call dir_fd_is_root() several places, and the final
result depends on it. If the root path specified to `chase()` is not
normalized but points to "/", e.g. "/../", assertions in `chaseat()` or
`chase()` may be triggered.
2023-07-29 22:09:28 +09:00
Yu Watanabe 4de5b4e375 chase: carefully handle result of extracting parent directory
Should not change any behavior.
2023-07-29 21:58:30 +09:00
Yu Watanabe 1c13bdf342 chase: add two more assertions
When 'need_absolute' is true, 'done' should always contain "/" at the
beginning, and thus should not be NULL.
2023-07-29 21:58:30 +09:00
Yu Watanabe b7e957d30f chase: drop CHASE_AT_RESOLVE_IN_ROOT earlier
The flag will be anyway dropped in chaseat(), but let's shortcut.
2023-07-29 21:58:29 +09:00
Yu Watanabe 5f0bae7bff chase: fix CHASE_STEP with ".." 2023-07-29 21:58:29 +09:00
Yu Watanabe 00a050b395 chase: reuse "done" to open fd of starting point
For readability that 'done' and 'fd' are always consistent with each other.

- dir_fd == AT_FDCWD:
  - path is absolute:
    - previous: fd = open("/")
    - current:  fd = openat(AT_FDCWD, "/")
  - path is relative:
    - previous: fd = openat(AT_FDCWD, ".")
    - current:  fd = openat(AT_FDCWD, ".")
- dir_fd >= 0:
  - dir_fd points to "/":
    - previous: fd = openat(dir_fd, ".")
    - current:  fd = openat(dir_fd, "/")
  - dir_fd does not point to "/":
    - previous: fd = openat(dir_fd, ".")
    - current:  fd = openat(dir_fd, ".")

Hence, this should not change any behavior. Just refactoring.
2023-07-29 21:58:29 +09:00
Yu Watanabe ae85704760 Merge pull request #28562 from yuwata/ukify-option-length
ukify: check option length
2023-07-29 21:41:27 +09:00
Yu Watanabe 73a89c5601 Merge pull request #28563 from keszybz/configure-meson
configure: update meson invocation
2023-07-29 21:40:58 +09:00
Zbigniew Jędrzejewski-Szmek 79ce5f940e labeller: add build-system label 2023-07-29 14:11:14 +02:00
Zbigniew Jędrzejewski-Szmek 4f3c90acfe configure: update meson invocation
New meson says:
WARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated.

Inspired by https://github.com/systemd/systemd/issues/28482.
2023-07-29 14:08:06 +02:00
Mike Yuan 7893a547eb gpt-auto: don't mount ESP if there's an fstab entry for it
Follow-up for #28511

Fixes #28550
2023-07-29 20:06:41 +08:00
Mike Yuan 24c0078a84 fstab-util: add fstab_has_node 2023-07-29 20:00:55 +08:00
Luca Boccassi e72b28eb7a Merge pull request #28557 from bluca/utils
utils: add serialize_bool_elide() and send/receive helpers for FD array
2023-07-29 12:39:06 +01:00
Luca Boccassi fc3fe92bc8 Merge pull request #28508 from yuwata/network-next-dhcp4
network: several cleanups and fixes for DHCPv4 client
2023-07-29 12:15:38 +01:00
Yu Watanabe e3c04a5c84 test-ukify: add tests for an empty argument 2023-07-29 19:57:35 +09:00
Yu Watanabe 3adc3b799a Merge pull request #28409 from yuwata/network-dhcp4-drop-duid-only
network,dhcp4: drop "duid-only" option support in ClientIdentifier=
2023-07-29 19:55:57 +09:00
Luca Boccassi 942c40c64c serialize: add serialize_bool_elide() helper
In many case we serialize into objects that have been zero-initialized.
To save some time and resources when there are a lot of booleans, add a
helper that serializes only when the boolean is true.
2023-07-29 11:25:05 +01:00
Luca Boccassi 598d2428e1 socket-util: add send/receive helpers for FD array 2023-07-29 11:25:05 +01:00
Sven Joachim b4e8c6d972 mkosi: set CONFIG_AUTOFS_FS rather than CONFIG_AUTOFS4_FS
Since Linux 4.18 CONFIG_AUTOFS4_FS just enables CONFIG_AUTOFS_FS, its
description in fs/autofs/Kconfig reads:

	   This name exists for people to just automatically pick up the
	   new name of the autofs Kconfig option. All it does is select
	   the new option name.

	   It will go away in a release or two as people have
	   transitioned to just plain AUTOFS_FS.
2023-07-29 11:18:25 +01:00
Yu Watanabe dc3f9b5e10 NEWS: mention about the removal of duid-only option 2023-07-29 18:51:40 +09:00
Yu Watanabe d8f19e03c0 network,dhcp: drop support of ClientIdentifier=duid-only
The setting has not been never worked, not tested, and should not been
used. As the option is RFC incompliant. Let's drop it.

Closes #25562.
2023-07-29 18:51:09 +09:00
Yu Watanabe f0876c7ab9 ukify: check option length
Follow-up for df4a46733a.
2023-07-29 18:48:32 +09:00
Yu Watanabe dfecd67f30 Merge pull request #28558 from bluca/docs
Update docs/RELEASE.md and NEWS
2023-07-29 18:36:14 +09:00
Luca Boccassi c405b91ff0 NEWS: open for v255 business 2023-07-28 23:44:17 +01:00
Luca Boccassi fdacce7421 docs: note that Github Pages configuration has to be updated after a release 2023-07-28 23:42:20 +01:00
Luca Boccassi b739b46919 Merge pull request #28391 from ssahani/rp-filter
networkd: allow setting rp_filter for an interface
2023-07-28 21:59:04 +01:00
Luca Boccassi dbc69b29b0 Merge pull request #28552 from bluca/test_execute
test-execute: measure, count and log test runs
2023-07-28 20:48:41 +01:00
Luca Boccassi b6349ffdc2 test-execute: count and log the number of individual tests actually executed 2023-07-28 19:35:38 +01:00
Luca Boccassi b0d3095fd6 Drop split-usr and unmerged-usr support
As previously announced, execute order 66:

https://lists.freedesktop.org/archives/systemd-devel/2022-September/048352.html

The meson options split-usr, rootlibdir and rootprefix become no-ops
that print a warning if they are set to anything other than the
default values. We can remove them in a future release.
2023-07-28 19:34:03 +01:00
Luca Boccassi 791a84ad51 test-execute: measure and log time elapsed while running tests
In order to get a good approximation of latencies when starting
services, timestamp before/after running the test cases and print
the difference. This allows to measure while ignoring the setup/shutdown
time for the test harness.
2023-07-28 16:43:13 +01:00
Luca Boccassi 1108285baa Merge pull request #28551 from mrc0mmand/unit-cleanup-set
core: free the strings in the set as well during unit cleanup
2023-07-28 13:57:01 +01:00
Dmitry V. Levin 5cfc190520 nspawn,shared: cleanup use of ERRNO_IS_SECCOMP_FATAL()
Given that ERRNO_IS_SECCOMP_FATAL() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the arguments passed to ERRNO_IS_SECCOMP_FATAL() are the
values returned by external libseccomp function seccomp_load() which is
not expected to return any positive values, but let's be consistent
anyway and move ERRNO_IS_SECCOMP_FATAL() invocations to the branches
where the return values are known to be negative.
2023-07-28 12:28:35 +00:00
Daan De Meyer 7ccb171c4c Merge pull request #28359 from keszybz/ret-gather
Add RET_GATHER macro to make continue-but-remember-first-error functions easier
2023-07-28 14:28:35 +02:00
Dmitry V. Levin 0d16fab986 homework: cleanup use of ERRNO_IS_DEVICE_ABSENT()
Given that ERRNO_IS_DEVICE_ABSENT() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the arguments passed to ERRNO_IS_DEVICE_ABSENT()
are the values returned by external cryptsetup functions
sym_crypt_init_by_name() and sym_crypt_deactivate_by_name() which are
not expected to return any positive values, but let's be consistent
anyway and move ERRNO_IS_DEVICE_ABSENT() invocations to the branches
where the return values are known to be negative.
2023-07-28 12:28:35 +00:00
Dmitry V. Levin 1553f9b1bc test: cleanup use of ERRNO_IS_PRIVILEGE()
Given that ERRNO_IS_PRIVILEGE() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the arguments passed to ERRNO_IS_PRIVILEGE() are the values
returned by procfs_get_pid_max() and procfs_get_threads_max() which are
not expected to return any positive values, but let's be consistent
anyway and move ERRNO_IS_PRIVILEGE() invocations to the branches where
the return values are known to be negative.
2023-07-28 12:28:35 +00:00
Dmitry V. Levin 7a0b6d312b userdb: cleanup use of ERRNO_IS_PRIVILEGE()
Given that ERRNO_IS_PRIVILEGE() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the argument passed to ERRNO_IS_PRIVILEGE() is the value
returned by json_parse_file() which is not expected to return any positive
values, but let's be consistent anyway and move the ERRNO_IS_PRIVILEGE()
invocation to the branch where the return value is known to be negative.
2023-07-28 12:28:35 +00:00
Dmitry V. Levin f5d6b78666 coredumpctl: cleanup use of ERRNO_IS_PRIVILEGE()
Given that ERRNO_IS_PRIVILEGE() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the argument passed to ERRNO_IS_PRIVILEGE() is the value
returned by access_fd() which is not expected to return any positive
values, but let's be consistent anyway and move the ERRNO_IS_PRIVILEGE()
invocation to the branch where the return value is known to be negative.
2023-07-28 12:28:35 +00:00
Dmitry V. Levin 5cf4c468a4 execute: cleanup use of ERRNO_IS_PRIVILEGE()
Given that ERRNO_IS_PRIVILEGE() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the arguments passed to ERRNO_IS_PRIVILEGE() are the values
returned by set_oom_score_adjust() and set_coredump_filter() which are
not expected to return any positive values, but let's be consistent
anyway and move the ERRNO_IS_PRIVILEGE() invocations to the branches
where the return values are known to be negative.
2023-07-28 12:28:35 +00:00
Dmitry V. Levin 08b8e9130e btrfs-util,tmpfiles: cleanup use of ERRNO_IS_NOT_SUPPORTED()
Given that ERRNO_IS_NOT_SUPPORTED() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the arguments passed to ERRNO_IS_NOT_SUPPORTED() are the
values returned by btrfs_subvol_make_fd() which is not expected to
return any positive values, but let's be consistent anyway and move
ERRNO_IS_NOT_SUPPORTED() invocations to the branches where
the return values are known to be negative.
2023-07-28 12:28:35 +00:00
Dmitry V. Levin 6ce691c309 repart: cleanup use of ERRNO_IS_NOT_SUPPORTED()
Given that ERRNO_IS_NOT_SUPPORTED() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the arguments passed to ERRNO_IS_NOT_SUPPORTED() are the
values returned by efi_get_variable_string() and efi_set_variable()
which are not expected to return any positive values, but let's be
consistent anyway and move ERRNO_IS_NOT_SUPPORTED() invocations
to the branches where the return values are known to be negative.
2023-07-28 12:28:35 +00:00
Dmitry V. Levin 92a702b114 nspawn: cleanup use of ERRNO_IS_NOT_SUPPORTED()
Given that ERRNO_IS_NOT_SUPPORTED() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the argument passed to ERRNO_IS_NOT_SUPPORTED() is the
value returned by remount_idmap() which is not expected to return
any positive values, but let's be consistent anyway and move the
ERRNO_IS_NOT_SUPPORTED() invocation to the branch where
the return value is known to be negative.
2023-07-28 12:28:35 +00:00
Dmitry V. Levin 1209bf754c logind: cleanup use of ERRNO_IS_NOT_SUPPORTED()
Given that ERRNO_IS_NOT_SUPPORTED() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the argument passed to ERRNO_IS_NOT_SUPPORTED() is the
value returned by efi_loader_get_entries() which is not expected to
return any positive values, but let's be consistent anyway and move
the ERRNO_IS_NOT_SUPPORTED() invocation to the branch where
the return value is known to be negative.
2023-07-28 12:28:35 +00:00
Dmitry V. Levin d9e1f42401 homework: cleanup use of ERRNO_IS_NOT_SUPPORTED()
Given that ERRNO_IS_NOT_SUPPORTED() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the argument passed to ERRNO_IS_NOT_SUPPORTED() is the
value returned by home_update_quota_auto() which is not expected to
return any positive values, but let's be consistent anyway and move
the ERRNO_IS_NOT_SUPPORTED() invocation to the branch where
the return value is known to be negative.
2023-07-28 12:28:35 +00:00
Dmitry V. Levin fbce715195 cryptsetup: cleanup use of ERRNO_IS_NOT_SUPPORTED()
Given that ERRNO_IS_NOT_SUPPORTED() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the argument passed to ERRNO_IS_NOT_SUPPORTED() is the
value returned by find_tpm2_auto_data() which is not expected to return
any positive values, but let's be consistent anyway and move the
ERRNO_IS_NOT_SUPPORTED() invocation to the branch where
the return value is known to be negative.
2023-07-28 12:28:35 +00:00
Dmitry V. Levin 3dadc118aa bootctl: cleanup use of ERRNO_IS_NOT_SUPPORTED()
Given that ERRNO_IS_NOT_SUPPORTED() also matches positive values,
make sure this macro is not called with arguments that do not have
errno semantics.

In this case the argument passed to ERRNO_IS_NOT_SUPPORTED() is the
value returned by efi_loader_get_entries() which is not expected to
return any positive values, but let's be consistent anyway and move
the ERRNO_IS_NOT_SUPPORTED() invocation to the branch where
the return value is known to be negative.
2023-07-28 12:28:35 +00:00