1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2025-05-22 18:50:15 +03:00

36753 Commits

Author SHA1 Message Date
Yu Watanabe
c4165dac88 network: wireguard: warn about invalid allowed IP addresses
But handle them gracefully. Otherwise, when the route to the address is
being configured, kernel refuse the route.

Note that kernel's wireguard module handle e.g. 192.168.10.3/24 as
192.168.10.0/24.

Fixes #21929.

(cherry picked from commit af670fc635d1b7cd987fdb1acaf35d74c370e73f)
2022-01-04 16:22:19 +01:00
Yu Watanabe
17227e81ab nss-systemd: fix required buffer size calculation
This also fixes the pointer assigned to the gr_mem element of struct group.

Fixes a bug introduced by 47fd7fa6c650d7a0ac41bc89747e3b866ffb9534.

Fixes #21935.

(cherry picked from commit 1e65eb8f9b7d567462030b2e625998d77677e636)
2022-01-04 16:22:08 +01:00
Yu Watanabe
747b4f1ff8 sysusers: use filename if /proc is not mounted
During system install, /proc may not be mounted yet.

Fixes RHBZ#2036217 (https://bugzilla.redhat.com/show_bug.cgi?id=2036217).

(cherry picked from commit b78d7f246899687a1697cdcebe93d8512c5e7c4b)
2022-01-04 16:22:02 +01:00
Luca Boccassi
b59615dc76 systemd-run: ensure error logs suggest to use '--user' when appropriate
Before:

$ systemd-run --service-type=notify --user false
Job for run-rc3fe52ee6ddd4a6eaaf1a20e0a949cdf.service failed because the control process exited with error code.
See "systemctl status run-rc3fe52ee6ddd4a6eaaf1a20e0a949cdf.service" and "journalctl -xeu run-rc3fe52ee6ddd4a6eaaf1a20e0a949cdf.service" for details.

After:

$ systemd-run --service-type=notify --user false
Job for run-r7791e380a7b6400ea01d6a0e5a458b23.service failed because the control process exited with error code.
See "systemctl --user status run-r7791e380a7b6400ea01d6a0e5a458b23.service" and "journalctl --user -xeu run-r7791e380a7b6400ea01d6a0e5a458b23.service" for details.

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

(cherry picked from commit 466f2351bbb5c0fdc9f153e35506570e59b14c5f)
2022-01-04 16:21:55 +01:00
Luca Boccassi
0c4fe2e3dc dbus-wait-for-jobs: add extra_args to bus_wait_for_jobs_one()
And pass it through to bus_wait_for_jobs()

(cherry picked from commit 86980de64bf8c03505eec729808f52f3b3042998)
2022-01-04 16:21:54 +01:00
Jan Janssen
c926189767 boot: Introduce helper macros for offset checking
This fixes a subtle sizeof overflow on 32bit machines.

(cherry picked from commit aa1d0f25873f737fb9306a12f9283872012f2d9a)
2022-01-04 16:21:14 +01:00
Jan Janssen
d6d97abd78 boot: Reject unaligned data
The data seems to be properly aligned in real BCD stores, so it
should be fine to just reject bad ones.

Fixes: #21917
(cherry picked from commit 1cadb35fd68f0255e50627dffd25c83e7e2081e5)
2022-01-04 16:21:10 +01:00
Yu Watanabe
f85856c00d manager: always close idle pipe when sending ready notification
This fixes a bug introduced by 6d9326595592f98e8126eacb4176acd8c3516d5c.

The commit makes several functions skipped if the manager is already
in finished state, as
> In manager_check_finished(), more steps are skipped if MANAGER_IS_FINISHED().
> Those steps are idempotent, but no need to waste cycles trying to do them
> more than once.

However, the idle pipe may be re-opened after manager is finished:
manager_dispatch_run_queue() -> manager_watch_idle_pipe().
So, the closing the pipe is not idempotent here.

Fixes #21889.

(cherry picked from commit 9c1b17c3dc1541df02118ee3aaf6dd5dd540cdc2)
2022-01-04 16:18:55 +01:00
ksa678491784
202b1448aa stub: Do not assume having DeviceHandle
(cherry picked from commit 5204355861643a658a6d8e009b67e422cdb9194b)
2022-01-04 16:18:09 +01:00
Yu Watanabe
1690672140 network: ndisc: ignore route prefix to ::/0
Fixes #21912.

(cherry picked from commit 80bfc3b901317ca7c1aaede0cd69150789a6e9be)
2022-01-04 16:18:07 +01:00
Yu Watanabe
f47d962bb1 unti-file: fix symlinked drop-in directory handling
This fixes a bug introduced by 95ef0eaf0d5cd43fcc8e9eb541f2c342f25f8f2f.

Fixes #21920.

(cherry picked from commit 7f304b856164a70b240d66d279fe66e7c8e8887d)
2022-01-04 16:17:26 +01:00
Luca Boccassi
8b29809c11 core: do not touch /run/systemd/systemd-units-load from user session instances
Follow-up for: 15b9243c0d
Fixes: https://github.com/systemd/systemd/issues/21911

(cherry picked from commit 4b3ad81bfafcd97acb06db463495e348d159d8e6)
2022-01-04 16:15:31 +01:00
Jan Janssen
630da18817 boot: Fix name length comparison
(cherry picked from commit 2198a773916f0e4ecca01725118f1f5a6bbe27b1)
2022-01-04 16:14:18 +01:00
Jan Janssen
a4e4c3377d boot: Fix off-by-one offset sanity checks
(cherry picked from commit c3c5b93a0c04c4940724b7babca92f4e75f49b98)
2022-01-04 16:14:18 +01:00
Jan Janssen
0c7ef2c166 boot: Fix off-by-one NUL-termination
(cherry picked from commit fab82756462fd0ce82836e3d95721954d7ab2527)
2022-01-04 16:14:18 +01:00
Luca Boccassi
93ddabc26a chrattr-util: return EOPNOTSUPP from chrattr_full if no other failure was observed
When chattr_full tries to apply flags one-by-one, and one fails,
record which errno was returned. But record EOPNOTSUPP(&friends)
only if no other error is observed, and return it only in that case
(otherwise keep returning ENOANO), so that callers can respond
appropriately to EOPNOTSUPP vs more relevant errors.
For example, this lets tmpfiles.d log at debug level when a filesystem
flag cannot be applied because the filesystem does not support it,
but at warning level if something else went wrong when applying it.
Restores logging behaviour of tmpfiles.d to pre-250.

Follow-up for: c1631ee124

Fixes: https://github.com/systemd/systemd/issues/21901
(cherry picked from commit 7c3b51c469140cdbc1b7e9a232af3f250fea3884)
2022-01-04 16:13:27 +01:00
Mike Gilbert
4d889024ef random-util: use ssize_t for getrandom return value
This matches the prototype provided by glibc.

(cherry picked from commit 289b41aae7356b7a6c72ff4a3476193a084ff33f)
2022-01-04 16:10:10 +01:00
Yu Watanabe
9bcf483b11 meson: fix build with -Dcryptolib=openssl -Ddns-over-tls=false
Previously, when -Ddns-over-tls=false, libopenssl was missing in the
dependency of resolved.
Also, this drops libgpg_error when it is not necessary.

Replaces #21878.
2021-12-24 15:23:39 +00:00
Yu Watanabe
0764e3a327 missing-syscall: define all MOUNT_ATTR_* if missing
Fixes #21876.
2021-12-24 10:12:25 +00:00
Yu Watanabe
558ad6bd38
analyze: fix segfault when malloc() fails (#21874)
Fixes #21872.

log_syntax_callback sets 's', a.k.a. '*userdata', to POINTER_MAX to signal allocation failure.
If the error does not cause immediate failure of the program, and log_syntax_callback is called
again, it would try to use 's' as a pointer to a set and fail badly.
2021-12-23 21:03:16 +01:00
Zbigniew Jędrzejewski-Szmek
10c8c32f13
Merge pull request #21869 from yuwata/sd-journal-fix-segfault
sd-journal: fix segfault
2021-12-23 20:07:41 +01:00
Zbigniew Jędrzejewski-Szmek
90c8234e0c src/basic: adjust grammar in comments 2021-12-23 13:49:43 +01:00
Zbigniew Jędrzejewski-Szmek
a49a3564b5 shared: re-wrap comment 2021-12-23 13:49:12 +01:00
Zbigniew Jędrzejewski-Szmek
68cdeab343 hostname: use _cleanup_ in one more place 2021-12-23 13:49:12 +01:00
Yu Watanabe
39dfc0de05 sd-journal: fix segfault when match_new() fails
Fixes #21867.
2021-12-23 21:45:32 +09:00
Yu Watanabe
418cce628c sd-journal: free incomplete match on failure 2021-12-23 21:35:29 +09:00
Jan Janssen
e628944b11 boot: Use correct handle to find TextInputEx protocol
LibLocateProtocol will return the protocol for the first device that
supports it. But it may not actually come from the ConIn device that
we want to use here.

This should be the root cause of what was previously considered just
broken firmware. If you ask the wrong device to return some key, of
course it will never provide one.

This changes the way we handle input yet again in light of this new
knowledge and because using the correct TextInputEx with fallback to
ConIn can actually create double input in some cases.

Since we are now confident that we get the right TextInputEx, we can
use that exclusively, only falling back to ConIn if the console input
device does not support the better interface (the spec is pretty clear
that it must support it, though).

Because some firmware is broken, we still need to provide a fallback
to the previously used TextInputEx thats overrides ConIn/ConInEx if
it is functional.
2021-12-23 12:39:48 +01:00
Ludwig Nussel
a9c97bbbfb machined: set TTYPath for container shell
TTYPath is needed for proper utmp registration of the shell to
receive wall messages.
2021-12-23 11:27:56 +01:00
Yu Watanabe
8f7a0fcbec meson: fix typo 2021-12-23 17:01:55 +09:00
Luca Boccassi
741c4c8da9 analyze: do not connect to DBUS with --offline
Co-authored-by: Lucas Werkmeister <mail@lucaswerkmeister.de>
2021-12-23 09:44:42 +09:00
Luca Boccassi
743814d7a2
Merge pull request #21858 from yuwata/fix-test-home
test: workaround for TEST-46-HOMED
2021-12-22 16:14:53 +00:00
Jan Janssen
2ef28d054d boot: Use -fvisibility=hidden instead of -fwhole-program
It's functionally the same for sd-boot, but using visibilty
is generally preferred over whole-program.
2021-12-23 00:26:25 +09:00
Yu Watanabe
367649ee66 home: update log message
The ratelimit hits even when the all previous attempts are successfull.
2021-12-22 17:29:30 +09:00
Yu Watanabe
5bdeedb342 test: add test for errno-list.[ch] 2021-12-22 15:29:55 +09:00
Yu Watanabe
95d88436ea errno-name: drop aliases defined for specific arch
In kernel's arch/parisc/include/uapi/asm/errno.h, ECANCELLED and
EREFUSED are defined as aliases of ECANCELED and ECONNREFUSED,
respectively. Let's drop them.

Fixes #21844.
2021-12-22 15:29:55 +09:00
Yu Watanabe
c99d5efc2d
Merge pull request #21857 from loongarch64/dev-pr1
LoongArch: dmi, virt detection and testcase
2021-12-22 15:20:20 +09:00
Jan Janssen
a3aff1c47f test,static-destruct: Use retain attribute to prevent linker garbage collection
Fixes: #21847
2021-12-22 12:14:08 +09:00
Xiaotian Wu
646b01121a test: add LoongArch 64bit testcase 2021-12-22 11:07:56 +08:00
Xiaotian Wu
eebbd595f0 virt: add detection for LoongArch 64bit 2021-12-22 11:07:55 +08:00
Xiaotian Wu
ff6d286902 dmi: add LoongArch 64bit support 2021-12-22 11:07:54 +08:00
Jan Janssen
e67e6691e5 boot: Fix armhf build failure
Fixes: #21842
2021-12-21 16:34:51 +00:00
Daan De Meyer
9519b41e52 shared: Remove remaining usages of GPT_ROOT_NATIVE, GPT_USR_NATIVE from dissect-image.c
Follow-up for 49ae9d91f9ba68bf3f1a6928152a5969d329bbc2

Fixes #21843
2021-12-21 13:47:07 +00:00
Scott Worley
77ec2816c6 timedatectl: Uniform commas in NTPMessage output 2021-12-21 09:46:19 +09:00
Daan De Meyer
94c5a83c6e journal: Handle partially read HashItem's when punching holes 2021-12-21 02:29:57 +09:00
Zbigniew Jędrzejewski-Szmek
8ef114c692 nss-resolve: expose various source-disablement settings as variables
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2006761:
> systemd-resolved always (reverse)-resolves the host's IP addresses and FQDN.
> This can be harmful when an application (for instance, a DNS zone manager) is
> installed on the same server instance.  That application would expect
> NXDOMAIN to be returned if the current server's IP does not belong in an
> already managed reverse zone.

This allows clients of nss-resolve to use the same config options that are
available through the dbus api and as command-line options to resolvectl.

The man page text is is mostly copied directly from
c6f20515ab600098b5c2871bae2e9ecab3b41555.
2021-12-21 02:28:52 +09:00
Tom Yan
d8daed09f3 repart: use real disk start/end for bar production
Partitions are not always within our aligned scope. Bar printing
involves foreign partitions as well.

Fixes #21817.
2021-12-20 14:50:08 +01:00
Yu Watanabe
30df858f43 journal-remote: use MHD_HTTP_CONTENT_TOO_LARGE as MHD_HTTP_PAYLOAD_TOO_LARGE is deprecated since 0.9.74 2021-12-20 14:30:24 +01:00
Zbigniew Jędrzejewski-Szmek
c6f20515ab man: describe flags for record resolving 2021-12-20 10:56:14 +01:00
Daan De Meyer
3e6357de9d
Merge pull request #21807 from keszybz/bootcls-no-autodetect
Use KERNEL_INSTALL_MACHINE_ID and KERNEL_INSTALL_LAYOUT with bootctl install
2021-12-20 10:43:18 +01:00
Mike Gilbert
9a723ed6e8 basic: add a size check to format timex members properly
As of glibc-2.34, the size of members in struct timex varies depending on
the _TIME_BITS macro.

Fixes: https://github.com/systemd/systemd/issues/21826
2021-12-20 12:36:59 +09:00