Commit graph

71784 commits

Author SHA1 Message Date
Frantisek Sumsal beffcd62f8 test: split logs from each test into separate files if requested
If both $ARTIFACT_DIRECTORY and $SPLIT_TEST_LOGS are set, split the
output from each test into a separate log file, so we don't have to load
one ginormous log file when checking the results.
2024-03-12 17:34:55 +01:00
Frantisek Sumsal aec72d7901 test: clean up the integration test runner a bit 2024-03-12 17:34:55 +01:00
Antonio Alvarez Feijoo d3d880e558 homed: fix typo 2024-03-12 16:18:29 +00:00
Frantisek Sumsal b7c7498de8 ci: reduce ASLR entropy
The latest GH Action runners started using 32-bit entropy for ASLR,
which makes it incompatible with llvm-14. This was fixed in later llvm
releases, but these aren't available on Ubuntu Jammy (22.04). Let's
reduce the ASLR entropy to 28-bit, which should make llvm happy again,
until the issue is resolved.

See: https://github.com/actions/runner-images/issues/9491
2024-03-12 16:17:46 +00:00
Lennart Poettering 50a38492c6 update TODO 2024-03-12 14:07:01 +01:00
Piotr Drąg 7b44a24c1b catalog: update Polish translation 2024-03-12 11:37:17 +01:00
Luca Boccassi 121c4eba0a ukify: really add default .sbat for UKIs
This was lost on refactor, and only addons had a default uki
line in the .sbat. Add it back, and differentiate between the
default for UKIs vs the default for addons, so that they can
be revoked separately. These are only defaults and users are
encouraged to provide their own.

Follow-up for a8b645dec8
2024-03-12 11:36:08 +01:00
Yu Watanabe 3fbade30a8
Merge pull request #31716 from evverx/fuzz-lease-save-load
fuzz: save/load DHCP client leases
2024-03-12 19:05:17 +09:00
Lennart Poettering 7cff2b79f0 stat-util: make sure inode_type_to_string() handles anonymous inodes in a reasonable way 2024-03-12 10:45:24 +01:00
Antonio Alvarez Feijoo af9f57e731
logind-inhibit: get rid of basename() in inhibitor_new()
Follow-up to #31594
2024-03-12 10:43:31 +01:00
Antonio Alvarez Feijoo 26ed3ecfe0
logind: place 'ret' param at last
Follow-up to 2454cee32e
2024-03-12 10:39:08 +01:00
Lennart Poettering 1c248d7fb7 stat-util: add explicit helpers for checking if stat/statx is initialized
This is a follow-up for 945a8210c7 and
makes the st_dev check generic, so that we can reuse it some other
places. It also incorporates the non-NULL check now, to be a
comprehensive one-stop solution.

The helper is static inline so that compilers can optimize the redundant
checks away in case it is combined with other checks.
2024-03-12 10:25:48 +01:00
Mike Yuan 72a22e737b
homework-cifs: log correct errno
Follow-up for 606a1f203c
2024-03-12 16:42:49 +08:00
Mike Yuan 0870fc2404
data-fd-util: accept size == SIZE_MAX and translate that to strlen
Like what we already do at other places
2024-03-12 16:42:48 +08:00
Mike Yuan 7799e7d9f0
data-fd-util: some modernization 2024-03-12 16:42:48 +08:00
Mike Yuan faadc90c33
fileio,data-fd-util: use U64_* more 2024-03-12 16:42:48 +08:00
Mike Yuan 8b8edb512a
env-util: remove unneeded DISABLE_WARNING_FORMAT_NONLITERAL
_printf_ is used, so this shouldn't emit a warning
in the first place.
2024-03-12 15:41:51 +08:00
Mike Yuan 5d789ba5a6
Merge pull request #31671 from AdrianVovk/homework-cifs-credentials
homework-cifs: Pass password via fd
2024-03-12 15:40:43 +08:00
Mike Yuan 18eebde33a
Merge pull request #31713 from YHNdnzj/pidref-equal
pidref: use fd_inode_same to compare pidfds
2024-03-12 14:15:36 +08:00
Yu Watanabe 06baee4ea3
Merge pull request #30021 from yuwata/dhcp-client-id-cleanups
dhcp-server: save bound leases to persistent storage, and load it on start
2024-03-12 13:40:09 +09:00
Ross Burton 59e33acc8e tests/run-unit-tests: add option to skip tests
In automated QA environments there may be tests that are known to fail,
and being able to skip them is useful to remove known failures from the
test log.

Signed-off-by: Ross Burton <ross.burton@arm.com>
2024-03-11 23:27:01 +00:00
Luca Boccassi b6fb31be45
Merge pull request #31721 from aafeijoo-suse/service-util-help-fix
shared/service-util: actually use the `bus_introspect` argument in `help()`
2024-03-11 18:13:57 +00:00
Ross Burton 4a052a718a test/run-unit-tests: sort the test cases we're executing
When reading test logs manually it is a lot easier when the tests are
sorted by name rather than by disk order.

Signed-off-by: Ross Burton <ross.burton@arm.com>
2024-03-11 18:11:30 +00:00
Adrian Vovk 606a1f203c
homework-cifs: Pass password via fd
Pass the password into mount.cifs via a file descriptor, rather
than putting it into a plain-text file in /tmp. This uses the $PASSWD_FD
environment variable, which is undocumented but has existed since
forever (initial commit from 2010 [1] has it already)

[1]:
https://git.samba.org/?p=cifs-utils.git;a=blob;f=mount.cifs.c;hb=ce0b1609a9eedce6c5eb20eab287ea44217c0a6a#l1477
2024-03-11 13:07:06 -04:00
Yu Watanabe 1c4411b7ff test-network: add test case for DHCP server lease file 2024-03-12 01:57:17 +09:00
Yu Watanabe 5582b36c38 network/dhcp-server: save leases in state directory
Then, we can read the lease file on restart, and the DHCP server will be
able to manage previously assigned addresses.

To save leases in the state directory /var/lib/systemd/network/, this
adds systemd-networkd-dhcp-server.service, and by default
systemd-networkd does not start the DHCP server without the heler
service started.

Closes #29991.
2024-03-12 01:57:17 +09:00
Yu Watanabe 35b2c1b0c8 fuzz-dhcp-server: also test saving and loading lease file 2024-03-12 01:57:17 +09:00
Yu Watanabe 033f119756 sd-dhcp-server: introduce sd_dhcp_server_set_lease_file() and dhcp_server_{save,load}_leases().
The functionality is not used networkd yet in this commit, but will be
used in later commits.
2024-03-12 01:57:17 +09:00
Yu Watanabe aa8200e971 sd-dhcp-server: also expose lease expiration timestamp in realtime
Here, we use map_clock_usec_raw(), instead of map_clock_usec() to reduce
number of calls of now() -> clock_gettime().
2024-03-12 01:57:17 +09:00
Yu Watanabe 3ecd6fa98b time-util: expose map_clock_usec_internal() as map_clock_usec_raw()
This will be used later.
2024-03-12 01:57:17 +09:00
Yu Watanabe b923ada838 sd-dhcp-server-lease: move functions to build json format
No functional change, just preparation for later commits.
2024-03-12 01:57:17 +09:00
Yu Watanabe 5a2f378362 sd-dhcp-server: refuse invalid hostname in request
Currently, the received hostname is not used for assigning an address to
the host, or options in the subsequent reply message. But, the parsed
hostname is exposed through DBus, and possibly Varlink in the future.
Let's ignore spurious hostname.
2024-03-12 01:57:17 +09:00
Yu Watanabe fa3357b9e8 dhcp-option: refuse control and non-UTF8 characters in string option
We oftem save parsed DHCP options into a file, or expose them
through DBus or Varlink. In such case, control characters or non-UTF8
characters may cause many kind of unexpected errors. In general, a DHCP
message that have string options with spurious characters is mostly
malformed or broken. Let's refuse them.

This also makes dhcp_option_parse_string() do not free 'ret' argument,
to follow our usual coding style. So, callers now need to free the
pre-exisitng string if necessary.

Fixes #31708.
2024-03-12 01:57:17 +09:00
Yu Watanabe c84a5f5eaf test-network: add support for systemd-networkd-persistent-storage.service 2024-03-12 01:57:16 +09:00
Yu Watanabe 91676b6458 networkctl: introduce "persistent-storage" command
Then, this introduces systemd-networkd-persistent-storage.service.

systemd-networkd.service is an early starting service. So, at the time
it is started, the persistent storage for the service may not be ready,
and we cannot use StateDirectory=systemd/network in
systemd-networkd.service.

The newly added systemd-networkd-persistent-storage.service creates the
state directory for networkd, and notify systemd-networkd that the
directory is usable.
2024-03-12 01:57:16 +09:00
Yu Watanabe f90eb08627 network/varlink: introduce io.systemd.Network.SetPersistentStorage method
And make the networkd use state directory.

Currently, the state directory and the method are not used, but will be used later.
2024-03-12 01:57:11 +09:00
Adrian Vovk 58d061b5aa
data-fd-util: Fixup header
inttypes.h doesn't define size_t
2024-03-11 12:24:30 -04:00
Yu Watanabe 83cc18257e test-network: copy system unit files from build or source directory
Addresses https://github.com/systemd/systemd/pull/30021#issuecomment-1971090682.
2024-03-12 01:17:40 +09:00
Yu Watanabe f66045c7d4 test-network: drop unused options and variables
This also renames several variables, and replace RuntimeError with
assert.
2024-03-12 01:14:40 +09:00
Mike Yuan 2f41f10bcd
pidref: use fd_inode_same to compare pidfds 2024-03-11 22:57:50 +08:00
Mike Yuan 945a8210c7
stat-util: struct stat could be initialized with (st_mode & S_IFMT == 0)
For anonymous inodes, the result would be 0, but
the struct stat is initialized obviously.
So let's switch to st_dev for the check, which
is guaranteed to be non-zero.

Also this is completely unnecessary for statx(),
since we check stx_mask first and that on its own
denotes that the struct is initialized.
2024-03-11 22:57:50 +08:00
Mike Yuan 0cdb8df620
stat-util: introduce fd_inode_same 2024-03-11 22:53:08 +08:00
Luca Boccassi 14300cdde4 polkit: update the rest of bus_verify_polkit_async_full() calls to new flags parameter
Looks like the compiler doesn't even notice these were left over
as the types end up matching somehow

Follow-up for 29556b75d8
2024-03-11 14:17:45 +00:00
Lennart Poettering 9f65355b85 fd-util: beef up fd_verify_safe_flags() features
Let's make fd_verify_safe_flags() even more useful:

1. let's return the cleaned up flags (i.e. just the access mode) after
   validation, hiding all the noise, such as O_NOFOLLOW, O_LARGEFILE and
   similar.

2. let's add a "full" version of the call that allows passing additional
   flags that are OK to be set.
2024-03-11 14:49:51 +01:00
Antonio Alvarez Feijoo 4313b99136
shared/service-util: actually use the bus_introspect argument in help()
If `bus_introspect` is false, do not print the `--bus-introspect=PATH` option.

Also, modernize help output.
2024-03-11 13:56:30 +01:00
Luca Boccassi c7edd9f13d
Merge pull request #31711 from YHNdnzj/gpt-auto-has-node
gpt-auto: ignore fstab_has_node failure
2024-03-11 12:40:22 +00:00
Antonio Alvarez Feijoo 65064e2ff0
tree-wide: drop custom formatting for print() help messages
Follow-up for bc556335b1
2024-03-11 13:34:34 +01:00
Lennart Poettering 29556b75d8
polkit: turn "interactive" flag to polkit APIs into a proper flags field (#31715)
This adds for both the D-Bus and the Varlink flavours of our polkit
client api a flags parameter. And then folds the "bool interactive" flag
that the D-Bus version so far had, into a flag, and also adds support
for it in the Varlink API.

Since this means the Varlink API gained another parameter, let's do what
we already did for the D-Bus API and add a _full() version of the API
that has the flags and the good_uid parameter, and one without both.
2024-03-11 11:57:45 +00:00
cpackham-atlnz ed01b92e1c
basic: add PIDFS magic (#31709)
Kernel commit cb12fd8e0dabb9a1c8aef55a6a41e2c255fcdf4b added pidfs.
Update filesystems-gperf.gperf and missing_magic.h accordingly.

This fixes the following error building against a bleeding edge kernel.
```
../src/basic/meson.build:234:8: ERROR: Problem encountered: Unknown filesystems defined in kernel headers:

Filesystem found in kernel header but not in filesystems-gperf.gperf: PID_FS_MAGIC
```
2024-03-11 11:55:36 +00:00
Sergey A b95d4f897f po: Translated using Weblate (Russian)
Currently translated at 100.0% (233 of 233 strings)

Co-authored-by: Sergey A <sw@atrus.ru>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/ru/
Translation: systemd/main
2024-03-11 12:52:08 +01:00