]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
3 years agotests: avoid (struct sockaddr*) casts 23321/head
Lennart Poettering [Mon, 9 May 2022 11:56:39 +0000 (13:56 +0200)] 
tests: avoid (struct sockaddr*) casts

We prefer using using union sockaddr_union instead of casting sockaddr
to the correct types.

Coding style, nothing else.

Follow-up for 0dd5ec58faa329410f1f363769209e95b058b7c3.

3 years agosocket-util: don't reference field by macro parameter name
Lennart Poettering [Mon, 9 May 2022 11:55:28 +0000 (13:55 +0200)] 
socket-util: don't reference field by macro parameter name

Let's avoid ambigituies here. (Interesting that the current users
compiled at all, in fact)

3 years agoupdate TODO
Lennart Poettering [Mon, 9 May 2022 10:17:08 +0000 (12:17 +0200)] 
update TODO

3 years agonetwork: set/unset enumerating flag before/after loop
Yu Watanabe [Mon, 9 May 2022 07:30:36 +0000 (16:30 +0900)] 
network: set/unset enumerating flag before/after loop

3 years agoshared: Fix memory leak in bus_append_execute_property()
Daan De Meyer [Mon, 9 May 2022 07:50:32 +0000 (09:50 +0200)] 
shared: Fix memory leak in bus_append_execute_property()

Fixes #23317

3 years agoMerge pull request #23310 from keszybz/suppress-fuzzer-timeouts-and-errors
Yu Watanabe [Mon, 9 May 2022 06:50:29 +0000 (15:50 +0900)] 
Merge pull request #23310 from keszybz/suppress-fuzzer-timeouts-and-errors

Suppress fuzzer timeouts and errors

3 years agoMerge pull request #23311 from keszybz/bootspec-fuzzer
Yu Watanabe [Mon, 9 May 2022 06:46:49 +0000 (15:46 +0900)] 
Merge pull request #23311 from keszybz/bootspec-fuzzer

Fuzzer for bootspec.c and associated fixes

3 years agoshared/calendarspec: reduce scope of variables 23310/head
Zbigniew Jędrzejewski-Szmek [Sun, 8 May 2022 14:21:10 +0000 (16:21 +0200)] 
shared/calendarspec: reduce scope of variables

3 years agoshared/dissect-image: apply standard indentation
Zbigniew Jędrzejewski-Szmek [Sun, 8 May 2022 14:20:04 +0000 (16:20 +0200)] 
shared/dissect-image: apply standard indentation

3 years agobasic/virt: use STRV_FOREACH instead of iteration with ELEMENTSOF
Zbigniew Jędrzejewski-Szmek [Sun, 8 May 2022 10:49:19 +0000 (12:49 +0200)] 
basic/virt: use STRV_FOREACH instead of iteration with ELEMENTSOF

I think it's a bit simpler, we don't have two indexes.

3 years agolibsystemd-network: constify casts
Zbigniew Jędrzejewski-Szmek [Sun, 8 May 2022 10:39:15 +0000 (12:39 +0200)] 
libsystemd-network: constify casts

It is better to not drop the const-ness from the argument.

3 years agotree-wide: drop de-constifying casts for strv iteration
Zbigniew Jędrzejewski-Szmek [Sun, 8 May 2022 10:30:51 +0000 (12:30 +0200)] 
tree-wide: drop de-constifying casts for strv iteration

When the the iterator variable is declared automatically, it "inherits" the
const/non-const status from the argument. We don't need to cast a const
table to non-const. If we had a programming error and tried to modify the
string, the compiler could now catch this.

3 years agofuzz-journal-remote: allow -ENODATA too
Zbigniew Jędrzejewski-Szmek [Sun, 8 May 2022 09:18:14 +0000 (11:18 +0200)] 
fuzz-journal-remote: allow -ENODATA too

It seems that we try to create a new file, which fails with -ENOSPC, and we
later fail when reading a file with ENODATA.  journal_file_open() will return
-ENODATA if the file is too short or if journal_file_verify_header() fails.
We'll unlink a file we newly created if we fail to initialize it immediately
after creation. I'm not sure if the file we fail to open is the one we newly
created and e.g. failed to create the arena and such, or if it's the file we
were trying to rotate away from. Either way, I think we should be OK with
with a non-fully-initialized journal file.

Failed to create rotated journal: No space left on device
Failed to write entry of 2 bytes: No space left on device
sd_journal_open_files(["/tmp/fuzz-journal-remote.vELRpI.journal"]) failed: No data available
Assertion 'IN_SET(r, -ENOMEM, -EMFILE, -ENFILE)' failed at src/journal-remote/fuzz-journal-remote.c:70, function int LLVMFuzzerTestOneInput(const uint8_t *, size_t)(). Aborting.

oss-fuzz-39238: https://oss-fuzz.com/issue/4609851129462784

3 years agofuzz-systemctl-parse-argv: refuse commandlines above 1k entries
Zbigniew Jędrzejewski-Szmek [Sun, 8 May 2022 07:41:32 +0000 (09:41 +0200)] 
fuzz-systemctl-parse-argv: refuse commandlines above 1k entries

oss-fuzz reports timeouts which are created by appending to a very long strv.
The code is indeed not very efficient, but it's designed for normal
command-line use, where we don't expect more than a dozen of entries. The fact
that it is slow with ~100k entries is not particularly interesting.

In the future we could rework the code to have better algorithmic complexity.
But let's at least stop oss-fuzz from wasting more time on such examples.

(My first approach was to set max_len in .options, but apparently this doesn't
work for hongfuzz and and AFL.)

oss-fuzz-34527: https://oss-fuzz.com/issue/5722283944574976

3 years agocore/unit: fix use-after-free
Yu Watanabe [Sun, 8 May 2022 15:56:05 +0000 (00:56 +0900)] 
core/unit: fix use-after-free

Fixes #23312.

3 years agoshared/bootspec: add missing terminator to table 23311/head
Zbigniew Jędrzejewski-Szmek [Sat, 7 May 2022 20:36:06 +0000 (22:36 +0200)] 
shared/bootspec: add missing terminator to table

3 years agofuzz-bootspec: also add loader autoentries
Zbigniew Jędrzejewski-Szmek [Sat, 7 May 2022 09:08:04 +0000 (11:08 +0200)] 
fuzz-bootspec: also add loader autoentries

3 years agofuzz-bootspec: one more test case that was fixed in strv code
Zbigniew Jędrzejewski-Szmek [Fri, 6 May 2022 16:31:09 +0000 (18:31 +0200)] 
fuzz-bootspec: one more test case that was fixed in strv code

3 years agoshared/bootspec: avoid crashing on config without a value
Zbigniew Jędrzejewski-Szmek [Fri, 6 May 2022 15:36:47 +0000 (17:36 +0200)] 
shared/bootspec: avoid crashing on config without a value

3 years agoAdd fuzzer for the bootspec parser
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 17:04:01 +0000 (19:04 +0200)] 
Add fuzzer for the bootspec parser

3 years agoshared/bootspec: also export boot_config_load_type1()
Zbigniew Jędrzejewski-Szmek [Fri, 6 May 2022 12:44:05 +0000 (14:44 +0200)] 
shared/bootspec: also export boot_config_load_type1()

The reallocation of memory and counter incrementation is moved from
the only caller to the function. This way the callers can remain oblivious
of the BootConfig internals.

3 years agoshared/bootspec: expose more parts of the config parsing
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 20:44:35 +0000 (22:44 +0200)] 
shared/bootspec: expose more parts of the config parsing

3 years agoMove printing of boot entries from bootctl.c to shared/
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 14:22:45 +0000 (16:22 +0200)] 
Move printing of boot entries from bootctl.c to shared/

I want to use this for fuzzing, but also later to return jsonified
list of entries from logind.

3 years agoshared/bootspec: add one more assert
Zbigniew Jędrzejewski-Szmek [Fri, 6 May 2022 12:38:16 +0000 (14:38 +0200)] 
shared/bootspec: add one more assert

All callers assume that boot_entry_title() always returns something.
It will, as long as it's not called on an uninitialized entry.

3 years agomeson: sort list of fuzzers
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 16:51:12 +0000 (18:51 +0200)] 
meson: sort list of fuzzers

3 years agodocs/ARCHITECTURE: describe fuzzer locations and use
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 16:35:10 +0000 (18:35 +0200)] 
docs/ARCHITECTURE: describe fuzzer locations and use

3 years agodissect: drop unnecessary {}
Zbigniew Jędrzejewski-Szmek [Sat, 7 May 2022 20:36:23 +0000 (22:36 +0200)] 
dissect: drop unnecessary {}

3 years agobash-completion: resolvectl: add missing options and verb
Yu Watanabe [Sun, 8 May 2022 04:34:11 +0000 (13:34 +0900)] 
bash-completion: resolvectl: add missing options and verb

3 years agohwdb: add rammus accelerometer support
lucagoc [Sat, 7 May 2022 16:30:22 +0000 (18:30 +0200)] 
hwdb: add rammus accelerometer support

3 years agocore/device: Use DEVICE_NOT_FOUND instead of 0.
Daan De Meyer [Sat, 7 May 2022 12:19:40 +0000 (14:19 +0200)] 
core/device: Use DEVICE_NOT_FOUND instead of 0.

Use the enum name instead of the value zero. This is a noop change
as DEVICE_NOT_FOUND == 0.

3 years agoboot: Fix null pointer dereference
Jan Janssen [Sat, 7 May 2022 09:15:33 +0000 (11:15 +0200)] 
boot: Fix null pointer dereference

3 years agoman: fix typo
Yu Watanabe [Sat, 7 May 2022 06:17:56 +0000 (15:17 +0900)] 
man: fix typo

3 years agoMerge pull request #23292 from alexhenrie/dhcpv6
Yu Watanabe [Sat, 7 May 2022 02:42:45 +0000 (11:42 +0900)] 
Merge pull request #23292 from alexhenrie/dhcpv6

network: clarify relationship between RA flags and DHCPv6 modes

3 years agoshared/json: disentangle flag mixup
Zbigniew Jędrzejewski-Szmek [Fri, 6 May 2022 12:37:01 +0000 (14:37 +0200)] 
shared/json: disentangle flag mixup

_DEBUG and _RELAX had the same value… I'm not sure what the effect
of this is.

3 years agonetwork: clarify the relationship between DHCP= and WithoutRA= 23292/head
Alex Henrie [Fri, 6 May 2022 20:01:53 +0000 (14:01 -0600)] 
network: clarify the relationship between DHCP= and WithoutRA=

Just setting DHCP=ipv6 is not enough to get DHCPv6 working without RA.
The WithoutRA option must also be changed from its default of "no".

3 years agonetwork: clarify the relationship between RA flags and DHCPv6 modes
Alex Henrie [Fri, 6 May 2022 20:01:53 +0000 (14:01 -0600)] 
network: clarify the relationship between RA flags and DHCPv6 modes

In the documentation, using the term "managed" for both the RA flag and
the DHCPv6 mode is confusing because the mode is referred to as
"solicit" both in the official DHCPv6 documentation (see RFC 8415) and
in the WithoutRA option.

Furthermore, calling the other RA flag "other information" or "other
address configuration" is confusing because its official name is simply
"other configuration" (see RFC 4861 and RFC 5175) and it isn't used to
assign IP addresses.

Rewrite the documentation for DHCPv6Client and WithoutRA to make it
clear that getting the "managed" RA flag triggers the same kind of DHCP
request as WithoutRA=solicit, whereas getting the "other configuration"
RA flag triggers the same kind of DHCP request as
WithoutRA=information-request.

3 years agoMerge pull request #23291 from yuwata/udev-rule-fix-regression
Yu Watanabe [Fri, 6 May 2022 19:58:20 +0000 (04:58 +0900)] 
Merge pull request #23291 from yuwata/udev-rule-fix-regression

udev: fix parent token handling

3 years agoMerge pull request #23290 from keszybz/three-fixes
Yu Watanabe [Fri, 6 May 2022 19:57:36 +0000 (04:57 +0900)] 
Merge pull request #23290 from keszybz/three-fixes

Three fixes

3 years agoMerge pull request #23272 from keszybz/logind-man-and-rules
Yu Watanabe [Fri, 6 May 2022 19:23:02 +0000 (04:23 +0900)] 
Merge pull request #23272 from keszybz/logind-man-and-rules

Logind man and rules

3 years agotest: add testcase for #23288 23291/head
Yu Watanabe [Fri, 6 May 2022 17:37:48 +0000 (02:37 +0900)] 
test: add testcase for #23288

3 years agoudev: fix parent token handling
Yu Watanabe [Fri, 6 May 2022 17:29:39 +0000 (02:29 +0900)] 
udev: fix parent token handling

This fixes a bug introduced by 03677889f0ef42cdc534bf3b31265a054b20a354.

Fixes #23288.

3 years agobasic/strv: fix splitting of strings with escape characters 23290/head
Zbigniew Jędrzejewski-Szmek [Fri, 6 May 2022 16:23:06 +0000 (18:23 +0200)] 
basic/strv: fix splitting of strings with escape characters

Plain strv_split() should not care if the strings contains backslashes
or quote characters. But extract_first_word() interprets backslashes
unless EXTRACT_RETAIN_ESCAPE is given.

I wonder how it's possible that nobody noticed this before. I think this
code was introduced in 0645b83a40d1c782f173c4d8440ab2fc82a75006.

3 years agoshared/terminal-util: don't use $COLORTERM to force colors
Zbigniew Jędrzejewski-Szmek [Fri, 6 May 2022 16:19:21 +0000 (18:19 +0200)] 
shared/terminal-util: don't use $COLORTERM to force colors

Fixup for a5efbf468c96190c9562bc8121eda32310dfd112: if $COLORTERM was set, we'd
unconditionally turn on colors, which is unexpected and wrong. It even breaks
our own tests when executed in gnome-terminal.

3 years agoREADME: mention kernel requirement for ambient capabilities
Yu Watanabe [Fri, 6 May 2022 05:08:45 +0000 (14:08 +0900)] 
README: mention kernel requirement for ambient capabilities

Closes #23231.

3 years agoresolve: Use sockaddr pointer type for bind()
Khem Raj [Fri, 6 May 2022 03:25:37 +0000 (20:25 -0700)] 
resolve: Use sockaddr pointer type for bind()

bind() expects sockaddr* but SERVER_ADDRESS is sockaddr_in type struct

Fixes errors with clang e.g.

../git/src/resolve/test-resolved-stream.c:112:32: error: incompatible pointer types passing 'struct sockaddr_in *' to parameter of type 'const struct sockaddr *' [-Werror,-Wincompatible-pointer-types]
        assert_se(bind(bindfd, &SERVER_ADDRESS, sizeof(SERVER_ADDRESS)) >= 0);
                               ^~~~~~~~~~~~~~~
../git/src/resolve/test-resolved-stream.c:251:39: error: incompatible pointer types passing 'struct sockaddr_in *' to parameter of type 'const struct sockaddr *' [-Werror,-Wincompatible-pointer-types]
                r = connect(clientfd, &SERVER_ADDRESS, sizeof(SERVER_ADDRESS));

Signed-off-by: Khem Raj <raj.khem@gmail.com>
3 years agouserdbctl: initialize parameter `n` for uid_range_load_userns()
Thomas Weißschuh [Thu, 5 May 2022 23:06:08 +0000 (01:06 +0200)] 
userdbctl: initialize parameter `n` for uid_range_load_userns()

uid_range_load_userns() dereferences the n parameter.

Passing unitialized memory may lead to crashes, for example with version
251rc2-1 on ArchLinux.

3 years agodocs/RELEASE: typo in target name
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 17:49:26 +0000 (19:49 +0200)] 
docs/RELEASE: typo in target name

3 years agoMerge pull request #23277 from keszybz/news-and-hwdb-update v251-rc2
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 17:02:49 +0000 (19:02 +0200)] 
Merge pull request #23277 from keszybz/news-and-hwdb-update

News and hwdb update

3 years agoRevert "shared/install: create relative symlinks for enablement and aliasing"
Zbigniew Jędrzejewski-Szmek [Tue, 12 Apr 2022 20:01:10 +0000 (22:01 +0200)] 
Revert "shared/install: create relative symlinks for enablement and aliasing"

This reverts commit d6c9411072901556176ac130f2ce71a33107aa93.

I still think this is something that needs to be done, but we're hitting some
unexplained failures, e.g. https://github.com/systemd/systemd/issues/22920.
So let's revert this for now, so -rc2 can be released, with a plan to return
to this after a release.

Closes #22920.

3 years agoAmend documentation for LimitNPROC=
Jakob Lell [Sun, 1 May 2022 20:52:39 +0000 (22:52 +0200)] 
Amend documentation for LimitNPROC=

3 years agojournal: Make journal_default_metrics() static
Daan De Meyer [Thu, 5 May 2022 13:40:27 +0000 (15:40 +0200)] 
journal: Make journal_default_metrics() static

Only caller resides in the same file as were it's defined so no
need to have it be public.

3 years agoMerge pull request #23273 from keszybz/bootctl-quiet
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 14:30:53 +0000 (16:30 +0200)] 
Merge pull request #23273 from keszybz/bootctl-quiet

bootctl --quiet and --graceful

3 years agohwdb: run "update-hwdb" 23277/head
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 14:22:42 +0000 (16:22 +0200)] 
hwdb: run "update-hwdb"

3 years agoNEWS: update with final changes
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 14:19:02 +0000 (16:19 +0200)] 
NEWS: update with final changes

3 years agocore: handle lookup paths being symlinks
Andreas Rammhold [Wed, 18 Aug 2021 17:10:08 +0000 (19:10 +0200)] 
core: handle lookup paths being symlinks

With a recent change paths leaving the statically known lookup paths would be
treated differently then those that remained within those. That was done
(AFAIK) to consistently handle alias names. Unfortunately that means that on
some distributions, especially those where /etc/ consists mostly of symlinks,
would trigger that new detection for every single unit in /etc/systemd/system.
The reason for that is that the units directory itself is already a symlink.

Rebased-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
3 years agobootctl: add --quiet 23273/head
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 10:28:32 +0000 (12:28 +0200)] 
bootctl: add --quiet

It's useful for installation scripts and suchlike.
Raised in https://bugzilla.redhat.com/show_bug.cgi?id=2079784#c9.

3 years agobootctl: support --graceful in is-installed
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 10:15:46 +0000 (12:15 +0200)] 
bootctl: support --graceful in is-installed

3 years agomeson: move vconsole rules to rules.d/ 23272/head
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 09:45:42 +0000 (11:45 +0200)] 
meson: move vconsole rules to rules.d/

3 years agomeson: move udev rules to rules.d/
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 09:42:24 +0000 (11:42 +0200)] 
meson: move udev rules to rules.d/

3 years agoTODO: add entry about boot entries on the bus
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 09:02:24 +0000 (11:02 +0200)] 
TODO: add entry about boot entries on the bus

Something like this is needed to allow integration with graphical envs and
fully unprivileged operation.

3 years agoman: deduplicate dbus versioning ref
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 08:53:29 +0000 (10:53 +0200)] 
man: deduplicate dbus versioning ref

3 years agoman: beef up o.fd.login1 page a bit and recommend busctl too
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2022 08:50:26 +0000 (10:50 +0200)] 
man: beef up o.fd.login1 page a bit and recommend busctl too

gdbus is an external program, so it makes sense to recommend busctl.

3 years agoupdate TODO
Lennart Poettering [Thu, 5 May 2022 08:33:51 +0000 (10:33 +0200)] 
update TODO

3 years agoterminal-util: get_color_mode checks COLORTERM
Sonali Srivastava [Wed, 20 Apr 2022 19:28:02 +0000 (00:58 +0530)] 
terminal-util: get_color_mode checks COLORTERM

3 years agoMerge pull request #23246 from medhefgo/check-compilation
Evgeny Vereshchagin [Wed, 4 May 2022 22:53:28 +0000 (01:53 +0300)] 
Merge pull request #23246 from medhefgo/check-compilation

meson: Improve public header tests

3 years agobasic: Add some missing headers to compress.h
Daan De Meyer [Wed, 4 May 2022 14:15:06 +0000 (16:15 +0200)] 
basic: Add some missing headers to compress.h

3 years agoFix placement of TTL TLV in LLDP transmit
Matthijs van Duin [Wed, 4 May 2022 13:18:55 +0000 (15:18 +0200)] 
Fix placement of TTL TLV in LLDP transmit

The LLDP spec (IEEE 802.1AB) requires the three mandatory TLVs (Chassis
ID, Port ID, and TTL) to be the first three TLVs in the packet, in that
specific order, whereas systemd put the TTL near the end of the packet.

This violation caused the ethernet switch in our office to discard these
packets as malformed, and Wireshark's packet parser also chokes on them.

3 years agotimedatectl: fix a memory leak
Evgeny Vereshchagin [Wed, 4 May 2022 11:35:19 +0000 (11:35 +0000)] 
timedatectl: fix a memory leak

```
timedatectl list-timezones --no-pager
...
==164329==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 8192 byte(s) in 1 object(s) allocated from:
    #0 0x7fe8a74b6f8c in reallocarray (/lib64/libasan.so.6+0xaef8c)
    #1 0x7fe8a63485dc in strv_push ../src/basic/strv.c:419
    #2 0x7fe8a6349419 in strv_consume ../src/basic/strv.c:490
    #3 0x7fe8a634958d in strv_extend ../src/basic/strv.c:542
    #4 0x7fe8a643d787 in bus_message_read_strv_extend ../src/libsystemd/sd-bus/bus-message.c:5606
    #5 0x7fe8a643db9d in sd_bus_message_read_strv ../src/libsystemd/sd-bus/bus-message.c:5628
    #6 0x4085fb in list_timezones ../src/timedate/timedatectl.c:314
    #7 0x7fe8a61ef3e1 in dispatch_verb ../src/shared/verbs.c:103
    #8 0x410f91 in timedatectl_main ../src/timedate/timedatectl.c:1025
    #9 0x41111c in run ../src/timedate/timedatectl.c:1043
    #10 0x411242 in main ../src/timedate/timedatectl.c:1046
    #11 0x7fe8a489df1f in __libc_start_call_main (/lib64/libc.so.6+0x40f1f)
```

3 years agoMerge pull request #23261 from poettering/dir-is-empty
Lennart Poettering [Wed, 4 May 2022 14:36:34 +0000 (16:36 +0200)] 
Merge pull request #23261 from poettering/dir-is-empty

dir_is_empty() fixes

3 years agoMerge pull request #23264 from keszybz/shorten-test-names
Yu Watanabe [Wed, 4 May 2022 14:25:47 +0000 (23:25 +0900)] 
Merge pull request #23264 from keszybz/shorten-test-names

Shorten test names

3 years agomeson: Add -Wall and -Wextra to header checks 23246/head
Jan Janssen [Mon, 2 May 2022 09:26:43 +0000 (11:26 +0200)] 
meson: Add -Wall and -Wextra to header checks

This should ensure public headers are free from any warnings.

3 years agomeson: Use meson test suite feature
Jan Janssen [Mon, 2 May 2022 09:12:34 +0000 (11:12 +0200)] 
meson: Use meson test suite feature

This makes it easier to only test a subset of tests without having
to specify them all on the command line:
    meson test -C build --suite headers

3 years agomeson: Remove check-compilation.sh
Jan Janssen [Mon, 2 May 2022 08:55:53 +0000 (10:55 +0200)] 
meson: Remove check-compilation.sh

No need to involve a trivial shell script for this.

We could call the compiler directly, but test() expects arguments
to be passed separately and cc.cmd_array() can contain arguments
itself. Using env is easier than manually slicing the array because
meson has no builtins for that.

3 years agomeson: Exit early with subdir_done()
Jan Janssen [Mon, 2 May 2022 08:37:31 +0000 (10:37 +0200)] 
meson: Exit early with subdir_done()

3 years agoman/networkctl: mention initialized state
Yu Watanabe [Wed, 4 May 2022 12:22:56 +0000 (21:22 +0900)] 
man/networkctl: mention initialized state

Closes #23262.

3 years agotree-wide: drop manually-crafted message for missing variables
Zbigniew Jędrzejewski-Szmek [Wed, 4 May 2022 06:24:06 +0000 (08:24 +0200)] 
tree-wide: drop manually-crafted message for missing variables

Bash will generate a very nice message for us:
/tmp/ff.sh: line 1: SOMEVAR: parameter null or not set

Let's save some keystrokes by not replacing this with our own inferior
messages.

3 years agostat-util: drop dir_is_populated() which is apparently not used 23261/head
Lennart Poettering [Wed, 4 May 2022 09:00:58 +0000 (11:00 +0200)] 
stat-util: drop dir_is_populated() which is apparently not used

3 years agostat-util: fix dir_is_empty() with hidden/backup files
Lennart Poettering [Wed, 4 May 2022 08:53:00 +0000 (10:53 +0200)] 
stat-util: fix dir_is_empty() with hidden/backup files

This is a follow-up for f470cb6d13558fc06131dc677d54a089a0b07359 which in
turn is a follow-up for a068aceafbffcba85398cce636c25d659265087a.

The latter started to honour hidden files when deciding whether a
directory is empty. The former reverted to the old behaviour to fix
issue #23220.

It introduced a bug though: when a directory contains a larger number of
hidden entries the getdents64() buffer will not suffice to read them,
since we just allocate three entries for it (which is definitely enough
if we just ignore the . + .. entries, but not ig we ignore more).

I think it's a bit confusing that dir_is_empty() can return true even if
rmdir() on the dir would return ENOTEMPTY. Hence, let's rework the
function to make it optional whether hidden files are ignored or not.
After all, I looking at the users of this function I am pretty sure in
more cases we want to honour hidden files.

3 years agoMerge pull request #23260 from yuwata/libsystemd-network-raw-size
Zbigniew Jędrzejewski-Szmek [Wed, 4 May 2022 11:11:26 +0000 (13:11 +0200)] 
Merge pull request #23260 from yuwata/libsystemd-network-raw-size

libsystemd-network: two fixlets

3 years agodocs: use lowercase "qemu" and other minor tweaks to test docs 23264/head
Zbigniew Jędrzejewski-Szmek [Wed, 4 May 2022 10:29:31 +0000 (12:29 +0200)] 
docs: use lowercase "qemu" and other minor tweaks to test docs

We used both "qemu" and "QEMU", let's use the lower-case version everywhere
since it's also the name of the binary and the version that people are
most familiar with.

The stuff under test/ is not only for the integeration tests, but also
for various other test-related stuff, so adjust the docs a bit.

3 years agodocs: say that fuzzer input samples should have short names
Zbigniew Jędrzejewski-Szmek [Wed, 4 May 2022 10:21:42 +0000 (12:21 +0200)] 
docs: say that fuzzer input samples should have short names

3 years agofuzz-network-parser: drop ".network" and shorten names
Zbigniew Jędrzejewski-Szmek [Wed, 4 May 2022 08:57:45 +0000 (10:57 +0200)] 
fuzz-network-parser: drop ".network" and shorten names

All fuzzer inputs as .network files. Some had the suffix, others didn't.
So drop it everywhere, and also shorten some other names.

3 years agofuzz: rename test cases for brevity and meaning
Zbigniew Jędrzejewski-Szmek [Wed, 4 May 2022 08:26:10 +0000 (10:26 +0200)] 
fuzz: rename test cases for brevity and meaning

Those long indentifiers make test output very wide, and they are ultimately
not very useful for humans to look at. Let's use some short string to identify
the test failure instead.

3 years agoupdate NEWS for 251-rc2
Lennart Poettering [Wed, 4 May 2022 08:32:10 +0000 (10:32 +0200)] 
update NEWS for 251-rc2

3 years agounits: remove spurious empty line
Lennart Poettering [Wed, 4 May 2022 08:16:53 +0000 (10:16 +0200)] 
units: remove spurious empty line

3 years agosd-lldp: use memcpy_safe() as the buffer size may be zero 23260/head
Yu Watanabe [Wed, 4 May 2022 07:05:04 +0000 (16:05 +0900)] 
sd-lldp: use memcpy_safe() as the buffer size may be zero

3 years agosd-ndisc: drop unused function
Yu Watanabe [Wed, 4 May 2022 07:03:57 +0000 (16:03 +0900)] 
sd-ndisc: drop unused function

3 years agolibsystemd-network: refuse too large raw_size
Yu Watanabe [Wed, 4 May 2022 06:45:13 +0000 (15:45 +0900)] 
libsystemd-network: refuse too large raw_size

Closes #23258.

3 years agoMerge pull request #23205 from DaanDeMeyer/tmpfiles-networkd
Yu Watanabe [Wed, 4 May 2022 02:48:21 +0000 (11:48 +0900)] 
Merge pull request #23205 from DaanDeMeyer/tmpfiles-networkd

tmpfiles: Split networkd entries into a separate file

3 years agoMerge pull request #23257 from evverx/install-valgrind
Yu Watanabe [Wed, 4 May 2022 02:47:59 +0000 (11:47 +0900)] 
Merge pull request #23257 from evverx/install-valgrind

tests: make it possible to install valgrind

3 years agosd-network: Keep inotify watch if watch descriptor didn't change
Daan De Meyer [Tue, 3 May 2022 11:54:49 +0000 (13:54 +0200)] 
sd-network: Keep inotify watch if watch descriptor didn't change

In sd_network_monitor_flush(), we shouldn't remove the inotify
watch for the current directory if the directory the network
monitor is waiting for wasn't created yet.

inotify_add_watch() returns the same unique watch descriptor if a
path is already being watched. Let's return the watch descriptor
from monitor_add_inotify_watch() so we can check if it's the same
as the watch descriptor of the inotify event. If they are equal,
we're still watching the same path and we don't need to remove the
inotify watch just yet.

3 years agotests: make valgrind_wrapper track file descriptors 23257/head
Evgeny Vereshchagin [Tue, 3 May 2022 20:51:56 +0000 (20:51 +0000)] 
tests: make valgrind_wrapper track file descriptors

3 years agotests: make it possible to install valgrind
Evgeny Vereshchagin [Tue, 3 May 2022 20:50:39 +0000 (20:50 +0000)] 
tests: make it possible to install valgrind

3 years agoAdding a description of the keyboard shortcut Fn+F12 for the HP EliteBook 845 G7...
rodin-ia [Tue, 3 May 2022 20:40:55 +0000 (22:40 +0200)] 
Adding a description of the keyboard shortcut Fn+F12 for the HP EliteBook 845 G7 device. (#23253)

udevadm info /dev/input/event4
P: /devices/platform/i8042/serio0/input/input4/event4
N: input/event4
L: 0
S: input/by-path/platform-i8042-serio-0-event-kbd
E: DEVPATH=/devices/platform/i8042/serio0/input/input4/event4
E: DEVNAME=/dev/input/event4
E: MAJOR=13
E: MINOR=68
E: SUBSYSTEM=input
E: USEC_INITIALIZED=4165584
E: KEYBOARD_KEY_81=f20
E: KEYBOARD_KEY_89=battery
E: KEYBOARD_KEY_8a=screenlock
E: KEYBOARD_KEY_8b=camera
E: KEYBOARD_KEY_8c=media
E: KEYBOARD_KEY_8e=dvd
E: KEYBOARD_KEY_92=brightnessdown
E: KEYBOARD_KEY_97=brightnessup
E: KEYBOARD_KEY_b1=help
E: KEYBOARD_KEY_b3=unknown
E: KEYBOARD_KEY_d7=wlan
E: KEYBOARD_KEY_ee=switchvideomode
E: KEYBOARD_KEY_68=unknown
E: ID_INPUT=1
E: ID_INPUT_KEY=1
E: ID_INPUT_KEYBOARD=1
E: ID_BUS=i8042
E: ID_SERIAL=noserial
E: ID_PATH=platform-i8042-serio-0
E: ID_PATH_TAG=platform-i8042-serio-0
E: XKBMODEL=pc105
E: XKBLAYOUT=us
E: BACKSPACE=guess
E: LIBINPUT_DEVICE_GROUP=11/1/1:isa0060/serio0
E: DEVLINKS=/dev/input/by-path/platform-i8042-serio-0-event-kbd
E: TAGS=:power-switch:
E: CURRENT_TAGS=:power-switch:

3 years agomeson: Sort lines in tmpfiles.d/meson.build 23205/head
Daan De Meyer [Wed, 27 Apr 2022 11:42:59 +0000 (12:42 +0100)] 
meson: Sort lines in tmpfiles.d/meson.build

3 years agotmpfiles: Split networkd entries into a separate file
Daan De Meyer [Wed, 27 Apr 2022 09:25:22 +0000 (10:25 +0100)] 
tmpfiles: Split networkd entries into a separate file

Many distributions ship systemd-networkd as a separate file so we
need to be able to ship the tmpfiles networkd entries as part of
that separate networkd package. Let's split the networkd entries
into a separate file to make that possible.

3 years agojournal: Use header macros everywhere instead of JournalFile fields
Daan De Meyer [Wed, 20 Apr 2022 14:52:21 +0000 (16:52 +0200)] 
journal: Use header macros everywhere instead of JournalFile fields

Let's standardize on the journal header as a single source of truth
and remove redundant information from the JournalFile struct.

3 years agoudev: check stats of .link files and their drop-in files
Yu Watanabe [Fri, 22 Apr 2022 03:33:15 +0000 (12:33 +0900)] 
udev: check stats of .link files and their drop-in files

Fixes #23128.

3 years agoMerge pull request #23135 from DaanDeMeyer/journal-move
Lennart Poettering [Tue, 3 May 2022 08:01:39 +0000 (10:01 +0200)] 
Merge pull request #23135 from DaanDeMeyer/journal-move

journal: Only move to object if requested

3 years agobuild(deps): bump github/super-linter from 4.9.1 to 4.9.2
dependabot[bot] [Sun, 1 May 2022 09:04:18 +0000 (09:04 +0000)] 
build(deps): bump github/super-linter from 4.9.1 to 4.9.2

Bumps [github/super-linter](https://github.com/github/super-linter) from 4.9.1 to 4.9.2.
- [Release notes](https://github.com/github/super-linter/releases)
- [Changelog](https://github.com/github/super-linter/blob/main/docs/release-process.md)
- [Commits](https://github.com/github/super-linter/compare/3792fe5373cf2f5b22d590fcbbc4533d735c573e...ae4e373c56efad95924d9cc6b89624fdb2333007)

---
updated-dependencies:
- dependency-name: github/super-linter
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>