Commit Graph
45031 Commits
Author SHA1 Message Date
Lennart Poettering 82b7bf8c1c Merge pull request #28957 from yuwata/core-mount-set-dirty-on-umount
core/credential,mount: re-read /proc/self/mountinfo before invoking umount command
2023-09-07 11:54:52 +02:00
Luca Boccassi 7d84904925 Merge pull request #29098 from keszybz/man-page-postreview-fixup
man/systemd-id128: fix example
2023-09-06 18:58:27 +01:00
Lennart Poettering ef65c0f6cc openssl-util: add common implementation of digest+sign 2023-09-06 18:34:21 +01:00
Yu Watanabe 1e1225614c core/credential,mount: re-read /proc/self/mountinfo before invoking umount command
When a unit has credentials, stopping the service unmounts the credentials
directory. On shutdown, stopping the service and the corresponding mount
unit may be done mostly simultaneously, and if we invoke umount command soon
after umount() being called on stopping the service, the mount unit will
fail.

This makes Mount.invalidated_state flag set when umount() is called for a path,
and re-read /proc/self/mouninfo before invoking umount command if the flag is set.

Fixes #25527.
Replaces #26959.
2023-09-07 01:05:13 +09:00
Yu Watanabe 133e4de23f core/exec-credential: introduce exec_context_get_credential_directory() helper function
No functional change, just refactoring.
2023-09-07 00:53:28 +09:00
Yu Watanabe 43962c30fb core: rename credential.[ch] -> exec-credential.[ch]
Also rename setup_credentials() -> exec_setup_credentials().

Addresses the post-merge review
https://github.com/systemd/systemd/pull/28787#pullrequestreview-1592065048.
2023-09-07 00:53:28 +09:00
Yu Watanabe 73ff4d48de Revert "core: do not leak mount for credentials directory if mount namespace is enabled"
This reverts commits
- 9ae3624889
  "test-execute: add tests for credentials directory with mount namespace"↲
- 94fe4cf255
  "core: do not leak mount for credentials directory if mount namespace is enabled",
- 7241b9cd72
  "core/credential: make setup_credentials() return path to credentials directory",
- fbaf3b23ae
  "core: set $CREDENTIALS_DIRECTORY only when we set up credentials"

Before the commits, credentials directory set up on ExecStart= was kept
on e.g. ExecStop=. But, with the changes, if a service requests a
private mount namespace, the credentials directory is discarded after
ExecStart= is finished.

Let's revert the change, and find better way later.

Addresses the post-merge comment
https://github.com/systemd/systemd/pull/28787#issuecomment-1690614202.
2023-09-07 00:53:28 +09:00
Zbigniew Jędrzejewski-Szmek bf91ab6e1e id128: add forgotten option to --help 2023-09-06 16:58:50 +02:00
Thorsten Kukuk 53c0397b1d shared/wall: use logind if build without utmp support
If systemd is build without utmp support, use sd_get_sessions() in
utmp_wall() to get a list of logged in users with the corresponding tty.
2023-09-06 13:19:26 +01:00
Yu Watanabe 468018703c core: allow to run generators without sandboxing on qemu-user
When running on non-native userland architecture via systemd-nspawn
and qemu-user-static QEMU-emulator, clone() with CLONE_NEWNS fails with
EINVAL.

Fixes #28901.

[zjs: add a comment in the code]
2023-09-06 13:18:50 +01:00
Yu Watanabe 5546506650 Merge pull request #29088 from yuwata/libsystemd-network-headers
libsystemd-network: split headers
2023-09-06 08:27:28 +09:00
Yu Watanabe 754d27e098 Merge pull request #29094 from yuwata/network-dbus-doc
man: update documents for network DBus interfaces
2023-09-06 08:25:35 +09:00
Luca Boccassi d5bfee578c Merge pull request #29091 from yuwata/sd-dhcp-client-use-usec
sd-dhcp-client: use usec_t for time values
2023-09-05 22:23:06 +01:00
Yu Watanabe b386ff3651 sd-dhcp6-client: split out sd-dhcp6-protocol.h 2023-09-06 06:14:55 +09:00
Yu Watanabe 1f3a52d5b8 sd-dhcp-server: fix typo in arguments 2023-09-06 06:14:28 +09:00
Yu Watanabe 409f014e23 sd-dhcp: split out sd-dhcp-protocol.h from sd-dhcp-client.h 2023-09-06 06:14:15 +09:00
Yu Watanabe 18fe822101 meson: sort headers 2023-09-06 06:12:29 +09:00
Yu Watanabe 0f9a2b802b network/ndisc: split out ndisc_router_process_icmp6_ratelimit()
Otherwise, if ndisc_router_process_default() return earlier, e.g.
when Network.ipv6_accept_ra_use_gateway is false, then the
ratelimit is not applied.
2023-09-05 22:03:34 +01:00
Luca Boccassi 0e9bf034bb Merge pull request #29089 from yuwata/network-ndisc-pref64-follow-ups
network/ndisc: follow-ups for PREF64 handling
2023-09-05 22:02:47 +01:00
Yu Watanabe 53dff954d3 network: reorder bus implementations
Otherwise, in the man page, DHCPServer interface is listed in the Link
object.
2023-09-06 06:01:31 +09:00
Luca Boccassi ee6cf8eaf1 dissect: add 'f2fs' to allow-listed filesystems
f2fs is actively maintained upstream, and popular in certain device
categories (phones, embedded), so allow-list by default.

Fixes https://github.com/systemd/systemd/issues/29026
2023-09-05 21:38:29 +01:00
Yu Watanabe 0ad8d953de sd-dhcp-client: introduce sd_dhcp_lease_has_6rd() helper function
No functional change, just refactoring.
2023-09-06 02:02:21 +09:00
Yu Watanabe a93538e892 dhcp: introduce sd_dhcp_lease_get_timestamp()
And drop sd_dhcp_client_get_lease_timestamp().

Also, this introduce sd_dhcp_lease_get_lifetime_timestamp() and friends,
which provides timestamp of the lifetime and so on, while
sd_dhcp_lease_get_lifetime() provides timestamp.
2023-09-06 02:02:21 +09:00
Yu Watanabe 7cd0755198 time-util: introduce triple_timestamp_from_boottime() 2023-09-06 02:02:21 +09:00
Yu Watanabe 5fde4d37d4 sd-dhcp-client: store lifetime and friends in usec_t 2023-09-06 02:02:21 +09:00
Lennart Poettering 08237f062e logind: give better error messages when failing to attach devices to seats
When the user tries to attach a device lacking ID_FOR_SEAT they
currently get a very cryptic error message. Let's improve the situation
a bit. Still a bit cryptic maybe, but much less so.

Inspired-by: https://lists.freedesktop.org/archives/systemd-devel/2023-September/049469.html
Inspired-by: https://lists.freedesktop.org/archives/systemd-devel/2023-September/049484.html
Also-see: https://lists.freedesktop.org/archives/systemd-devel/2023-September/049470.html
Also-see: https://lists.freedesktop.org/archives/systemd-devel/2023-September/049489.html
2023-09-05 17:57:57 +01:00
Yu Watanabe 4df16cd018 network/ndisc: refuse too many PREF64 prefixes
Follow-up for 6e8f5e4c1f.

Addresses https://github.com/systemd/systemd/pull/29009#issuecomment-1705700926.
2023-09-06 01:22:43 +09:00
Yu Watanabe fabea9c092 network/ndisc: drop outdated PREF64 prefixes
Follow-up for 6e8f5e4c1f.

Addresses https://github.com/systemd/systemd/pull/29009#issuecomment-1705741844.
2023-09-06 01:22:43 +09:00
Lennart Poettering fb9578d768 uki: document section name size limit 2023-09-05 14:38:13 +01:00
Jan Janssen 5169177fb0 ask-password: Use unicode for password echo 2023-09-05 12:54:51 +02:00
Mike Yuan 11da61658f systemctl: drop unnecessary else
Follow-up for 8a826a979a
2023-09-05 12:55:45 +08:00
Mike Yuan 7b5ff4391c journalctl: reset --lines= correctly if no argument
Follow-up for 8d6791d2aa
2023-09-05 12:52:28 +08:00
Frantisek Sumsal d8f281abce network: make the build happy on i*86 again
In file included from ../src/basic/macro.h:455,
                 from ../src/basic/alloc-util.h:10,
                 from ../src/basic/hash-funcs.h:4,
                 from ../src/basic/hashmap.h:8,
                 from ../src/shared/dns-domain.h:10,
                 from ../src/network/networkd-radv.c:9:
../src/network/networkd-radv.c: In function ‘config_parse_router_home_agent_lifetime’:
../src/network/networkd-radv.c:1626:28: error: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 11 has type ‘long long unsigned int’ [-Werror=format=]
 1626 |                            "Invalid %s= must be in the range 1...%lu seconds, ignoring: %s", lvalue,
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/basic/log.h:361:125: note: in definition of macro ‘log_syntax’
  361 |                         ? log_syntax_internal(unit, _level, config_file, config_line, _e, PROJECT_FILE, __LINE__, __func__, __VA_ARGS__) \
      |                                                                                                                             ^~~~~~~~~~~
../src/network/networkd-radv.c:1626:68: note: format string is defined here
 1626 |                            "Invalid %s= must be in the range 1...%lu seconds, ignoring: %s", lvalue,
      |                                                                  ~~^
      |                                                                    |
      |                                                                    long unsigned int
      |                                                                  %llu
cc1: all warnings being treated as errors

Addresses: https://github.com/systemd/systemd/pull/28964#issuecomment-1705550404
Follow-up to 6a6d27bc5b.
2023-09-05 04:53:25 +09:00
Susant Sahani b677e5cc5f network: Fix memory leak PREF64 (#29064)
Follow-up for 6e8f5e4c1f.

Fixes #29062.
2023-09-05 04:43:56 +09:00
Luca Boccassi 7874b98f38 Merge pull request #29059 from YHNdnzj/catalog-followup
Follow-ups for recently-added catalogs
2023-09-04 17:57:19 +01:00
Yu Watanabe a832087979 Merge pull request #29023 from pelaufer/dhcp-prefix-dbus
Add dhcp client prefix lease information to networkd json output
2023-09-05 00:16:19 +09:00
Yu Watanabe 8b1bd20722 Merge pull request #29052 from yuwata/icmp6-util-cleanups
icmp6-util: several cleanups and fixlets
2023-09-05 00:15:23 +09:00
Mike Yuan acee9a9c09 core/crash-handler: correct indentation 2023-09-04 22:45:45 +08:00
Mike Yuan 15cae43f18 sd-messages.h: correct alignment 2023-09-04 22:45:45 +08:00
Susant Sahani 6e8f5e4c1f network: ndisc - Allow to parse PREF64 prefix 2023-09-04 23:41:02 +09:00
Susant Sahani 6a6d27bc5b network: sd-radv - Allow to configure Mobile IPv6 Home Agent 2023-09-04 23:40:40 +09:00
Yu Watanabe 690afe79dd test: extract dummy icmp6 utils for tests
This extracts common implementation of dummy icmp6 utils used by tests.
2023-09-04 21:54:51 +09:00
Yu Watanabe 4961f56646 icmp6-util: make icmp6_receive() accept the null source address
Fixes #29050.
2023-09-04 21:54:43 +09:00
Yu Watanabe 5121163832 icmp6-util: several cleanups for icmp6_receive()
- Rename the argument for storing the sender address,
- allow to call it with NULL for ret_xyz,
- reduce needless copy of timestamp when the message does not have
  timestamp.
2023-09-04 21:52:55 +09:00
Yu Watanabe 47d8770aac Merge pull request #28896 from pelaufer/dhcp_dbus_notify
Add DHCP client state and change notification to networkd dbus interface
2023-09-04 21:48:43 +09:00
Yu Watanabe 4674f407b2 sd-ndisc,sd-radv: fix use of uninitialized value
When icmp6_receive() fails, then the source address is not initialized yet.
2023-09-04 19:31:40 +09:00
Luca Boccassi 626a9eba09 Merge pull request #28988 from keszybz/sd128-arbitrary-values
Add sd-id128 and systemd-id128 functionality to do "app specific" with any "base"
2023-09-03 14:05:32 +01:00
Luca Boccassi 809eb17134 Merge pull request #28976 from yuwata/network-ndisc-drop-on-zero-lifetime
network/ndisc: also drop configurations with infinite lifetime on RA …
2023-09-03 14:04:58 +01:00
Luca Boccassi 4b246347ba Merge pull request #28963 from YHNdnzj/loginctl-table
loginctl: use vertical table for {user,session,seat}-status
2023-09-03 14:04:24 +01:00
pelaufer f8da534e25 Adding dhcp client and dhcp6 client dbus status interface 2023-09-02 14:52:35 -06:00