Yu Watanabe
b7591658f0
man,network: fix typo
...
Follow-up for a06e884264 .
2025-04-23 13:42:12 +09:00
Yu Watanabe
cda045882e
network: enable ARP when IPv4LL and/or IPv4ACD is enabled ( #37190 )
2025-04-23 08:53:49 +09:00
Yu Watanabe
1393c5a2a4
sd-device: fix sysname check in sd_device_new_from_subsystem_sysname()
...
For example, consider the following device:
- syspath: /sys/bus/mdio_bus/drivers/Qualcomm Atheros AR8031!AR8033
- subsystem: "drivers"
- driver subsystem: "mdio_bus"
- sysname: "Qualcomm Atheros AR8031/AR8033" <-- '!' is replaced with '/'
When sd_device_new_from_subsystem_sysname() is called to get the device,
the arguments to sd_device_new_from_subsystem_sysname() should be
- subsystem: "drivers"
- sysname (concatenated with driver subsystem): "mdio_bus:Qualcomm Atheros AR8031/AR8033"
In that case, we need to pass to device_new_from_path_join() the following:
- subsystem: "drivers"
- driver subsystem: "mdio_bus"
- sysname: "Qualcomm Atheros AR8031/AR8033"
- a: "/sys/bus"
- b: "drivers"
- c: "mdio_bus"
- d: "Qualcomm Atheros AR8031!AR8033"
Here, the important point is that the `sysname` argument and the
last argument `d` are differnt: the `sysname` argument needs to match
the sysname obtained by `sd_device_get_sysname()`, but `d` must be
the last path component of the syspath.
Previously, we passed a wrong sysname to device_new_from_path_join().
This fixes the issue.
Fixes a bug in cd7c71154c (v257).
2025-04-23 08:52:29 +09:00
Yu Watanabe
f35a48bd57
mkosi: Add extra packages to the tools tree ( #37218 )
2025-04-23 08:51:44 +09:00
Yu Watanabe
87541e254f
meson: use deprecated tag for dns-over-tls and cryptolib meson options
...
Follow-up for #36937 .
2025-04-22 10:10:53 +02:00
Yu Watanabe
b4d5115264
test-specifier: replace /dev/initctl with /dev/fd
...
To make the test work even when systemd is built without SysV compat.
2025-04-22 10:24:42 +09:00
Yu Watanabe
33f90ddefd
test: drop nonexistent units from test-unit-name
...
The test does not request each unit file exists, but keeping legacy unit
names in test sounds spurious. Let's remove them. Hopefully we still
have enough test cases.
2025-04-22 10:24:42 +09:00
Yu Watanabe
97b2e136eb
man/systemd: drop explanation about SysV compatibilities
...
Sooner or later, we will drop the explained SysV compatibilities.
Let's remove them from the man page now to make not people rely on that.
2025-04-22 10:24:42 +09:00
Yu Watanabe
70fd998c40
man/systemd: fix mapping from SysV runlevel to actual target name
...
See runlevel_to_target() in src/shared/unit-file.c.
2025-04-22 10:24:42 +09:00
Yu Watanabe
ca7c4d4d89
unit-file: use STRV_FOREACH_PAIR() macro at one more place
2025-04-22 10:24:42 +09:00
Yu Watanabe
f7586abfe0
man/systemctl: list-sockets command sorts the result
...
This updates the example output of list-sockets command.
2025-04-22 10:24:42 +09:00
Yu Watanabe
efe0fe43a8
core: kill StartAuxiliaryScope() DBus method ( #37184 )
...
This removes StartAuxiliaryScope() DBus method as already planned and
announced.
This effectively reverts #28836 .
2025-04-22 10:18:06 +09:00
Yu Watanabe
a0e078e785
NEWS: mention org.freedesktop.systemd1.StartAuxiliaryScope() has been removed
2025-04-22 09:02:48 +09:00
Yu Watanabe
8c35e8a9d2
core: remove deprecated StartAuxiliaryScope() DBus method
...
The method is deprecated since 64f173324e
(v257) and announced that it will be removed in v258.
Let's remove it now.
This effectively reverts 84c01612de .
2025-04-22 09:02:45 +09:00
Yu Watanabe
acd65ba1cd
Revert "tests: add test for StartAuxiliaryScope()"
...
This reverts commit fd7fd59b6d .
The DBus method StartAuxiliaryScope() will be removed in the next
commit.
2025-04-22 09:00:19 +09:00
Yu Watanabe
f62465b870
cgroup-util: drop cg_freezer_supported() and cg_ns_supported() ( #37201 )
2025-04-22 08:58:52 +09:00
Yu Watanabe
7137e0bf24
ssh-proxy: use % as an alternative separator
...
Since OpenSSH 10.0p1, specifically
https://anongit.mindrot.org/openssh.git/commit/?id=487cf4c18c123b66c1f3f733398cd37e6b2ab6ab
ssh refuses comma in hostname by default.
Let's use % as an alternative separator.
Follow-up for defd5060d6 .
2025-04-20 15:15:54 +02:00
Yu Watanabe
a06e884264
network: enable ARP= when IPv4LL/IPv4ACD is enabled
...
We can run sd-ipv4ll/sd-ipv4acd also on an interface with IFF_NOARP
flag, but that may cause address conflict with other hosts.
Let's enable ARPing when sd-ipv4ll/sd-ipv4acd are enabled unless ARP= is
explicitly disabled.
2025-04-20 10:49:15 +09:00
Yu Watanabe
b5c83cd5a7
network/ipv4ll: introduce ipv4ll_start() helper function
...
No effective functional change. Just refactoring.
2025-04-20 10:48:52 +09:00
Yu Watanabe
07021ed4f5
network/link: move logging
2025-04-20 09:46:29 +09:00
Yu Watanabe
6f9d8b685d
Add two new paragraphs to coding style about header files ( #37188 )
2025-04-19 20:46:02 +09:00
Yu Watanabe
e895a490b7
NEWS: mention that F20 and friends has been replaced with micmute and so on
...
Follow-up for #34325 .
2025-04-19 05:30:32 +09:00
Yu Watanabe
cdf3339c56
bootctl: fix typo
...
Follow-up for bbeeea4362 .
2025-04-19 04:49:29 +09:00
Yu Watanabe
a4f003bac0
TEST-17-UDEV: add test case for queued events serialization/deserialization
2025-04-19 01:51:59 +09:00
Yu Watanabe
95e78b5e53
udev: serialize queued events on exit, and deserialize them in the next invocation
...
To make systemd-udevd not lose received uevents on restart. This may be
important on switching root, even though we typically trigger all devices
after switching root by systemd-udev-trigger.service, but it may be
disabled or modified by admin.
2025-04-19 01:51:50 +09:00
Yu Watanabe
2a6ca54154
hashmap: kill hashmap_free_with_destructor() and friends ( #37111 )
...
Now destructor is always set in hash_ops when necessary. Hence,
hashmap_free_with_destructor() and friends are not necessary anymore.
Let's kill them.
2025-04-18 17:40:51 +09:00
Yu Watanabe
39dd06dbc4
meson: build tests for nspawn even -Dnspawn= is disabled
...
Follow-up for d95818f522 .
Fixes #36880 .
2025-04-18 09:03:33 +02:00
Yu Watanabe
8e7ef6abb8
NEWS: mention integration-tests meson option is deprecated
...
Follow-up for 710653d3bc .
2025-04-18 09:36:29 +09:00
Yu Watanabe
bdf4f200fd
network: update comment as hashmap_free_with_destructor() does not exist anymore
2025-04-18 09:16:44 +09:00
Yu Watanabe
4cbc25ab4c
hashmap: drop hashmap_free_with_destructor() and friends
2025-04-18 09:16:44 +09:00
Yu Watanabe
885001ed5d
hashmap: drop unused free func arguments in hashmap_free() and hashmap_clear()
2025-04-18 09:16:44 +09:00
Yu Watanabe
2d4c4d9e10
set: drop unused set_free_free()
2025-04-18 09:16:44 +09:00
Yu Watanabe
828513ee3e
test: make the copied set not take the ownership of elements
2025-04-18 09:16:44 +09:00
Yu Watanabe
b0a2d49b61
test: use string_hash_ops_free
2025-04-18 09:16:44 +09:00
Yu Watanabe
f6a2a9ba93
daemon-util: remove existing fds with the same name from fdstore
...
Currently, all use cases of notify_push_fd()/notify_push_fdf()
assume that the name of each fd in the fdstore is unique.
For safety, let's remove the existing fds before pushing a new one
to avoid multiple fds with the same name stored in the fdstore.
2025-04-18 09:12:43 +09:00
Yu Watanabe
1785961660
udev: re-add unintentionally dropped error log
...
Follow-up for 9b6bf4e10e .
2025-04-18 09:06:09 +09:00
Yu Watanabe
7baf24c949
network/manager: hash_ops related cleanups ( #37121 )
2025-04-18 06:00:15 +09:00
Yu Watanabe
ce921df8d1
network/network: hash_ops related cleanups ( #37120 )
2025-04-18 05:59:47 +09:00
Yu Watanabe
c96a5d9912
misc: hash_ops related cleanups ( #37117 )
2025-04-18 05:59:15 +09:00
Yu Watanabe
6858c1fd8b
libudev: several trivial cleanups ( #37106 )
2025-04-18 05:58:41 +09:00
Yu Watanabe
bf478dcffb
sd-netlink: prepare buffer for dropping unexpected message
...
Follow-up for c7460cce79 (v219).
Fixes #35654 .
2025-04-17 01:52:17 +01:00
Yu Watanabe
76cb6f535e
network/netdev: hash_ops related cleanups ( #37119 )
2025-04-17 03:22:36 +09:00
Yu Watanabe
86aa7cb4b8
network/macsec: use hash_ops with destructor
2025-04-16 23:29:45 +09:00
Yu Watanabe
c64c71fbe5
network/macsec: replace security_association_init() with structured initializer
2025-04-16 23:29:45 +09:00
Yu Watanabe
2af1f13c6f
network/wireguard: use hash_ops with destructor for managing WireguardPeer
2025-04-16 23:29:45 +09:00
Yu Watanabe
643f1c1306
network/l2tp: use hash_ops with destructor for managing sessions
2025-04-16 23:29:45 +09:00
Yu Watanabe
ef79411c31
use hashmap_dump_sorted() and friends at more several places ( #37150 )
2025-04-16 19:20:19 +09:00
Yu Watanabe
f477751b10
docs: fix mkosi section for Environment= setting
2025-04-16 08:30:25 +09:00
Yu Watanabe
667fc1d993
conf-files: use hashmap_dump_sorted() at one more place
2025-04-16 08:17:52 +09:00
Yu Watanabe
dcf1c14b95
resolve: use set_dump_sorted() at one more place
2025-04-16 08:16:21 +09:00
Yu Watanabe
a0fa3f1616
resolve: fix memleak
...
Follow-up for 5c274555c3 .
2025-04-15 23:34:49 +01:00
Yu Watanabe
8a05dbb31a
core: remove cgroup v1 properties ( #37026 )
2025-04-16 06:22:46 +09:00
Yu Watanabe
b2b270e1d1
cgroup-setup: use path_join() to get path to cgroup attribute
...
We already have the path to the cgroup. Hence, it is not necessary to
call cg_get_path() again.
2025-04-16 03:56:04 +09:00
Yu Watanabe
188286eec6
cgroup-setup: drop unnecessary controller argument
...
This also removes unnecessary cg_{create,attach,trim}_everywhere(),
and rename cg_enable_everywhere() -> cg_enable().
2025-04-16 03:56:04 +09:00
Yu Watanabe
c35a585763
cgroup-setup: drop cgroup v1 support
2025-04-16 03:56:04 +09:00
Yu Watanabe
3988e2489a
core: drop several more cgroup version check
2025-04-16 03:56:04 +09:00
Yu Watanabe
3fcb98cbff
core/bpf-foreign: drop unnecessary check for cgroup v1
2025-04-16 03:56:04 +09:00
Yu Watanabe
ff7f99db30
core/bpf-devices: drop cgroup v1 support
2025-04-16 03:55:00 +09:00
Yu Watanabe
4ee64e4365
core/cgroup: drop cgroup v1 specific code in unit_update_cgroup()
2025-04-16 03:42:11 +09:00
Yu Watanabe
35f88201f2
core/cgroup: drop unnecessary cgroup version check in several getters
...
After 2b61489e5a , these checks are not
necessary anymore.
2025-04-16 03:25:46 +09:00
Yu Watanabe
0818300288
core/cgroup: drop unnecessary _unified_ modifier from function names
2025-04-16 03:25:45 +09:00
Yu Watanabe
f1c5534eb6
core/cgroup: remove logic of CGroup v1 attribute assignment
2025-04-16 03:19:16 +09:00
Yu Watanabe
a7b06f6c30
core/cgroup: remove unused legacy parameters in CGroupContext
2025-04-15 22:34:22 +09:00
Yu Watanabe
3e316a6699
core/cgroup: remove CGroup v1 settings in dump message
2025-04-15 22:34:22 +09:00
Yu Watanabe
5da476ac77
bus-unit-util: refuse setting CGroup v1 properties through DBus
2025-04-15 22:34:22 +09:00
Yu Watanabe
db6986e02c
core: deprecate CGroup v1 DBus properties
2025-04-15 22:34:22 +09:00
Yu Watanabe
98d64ff500
core: remove deprecated CGroup v1 settings
2025-04-15 22:34:22 +09:00
Yu Watanabe
051675ea80
test: replace deprecated CGroup v1 settings with v2 ones
2025-04-15 22:34:22 +09:00
Yu Watanabe
5d902cc21f
journal: hash_ops related cleanups ( #37115 )
2025-04-15 22:32:15 +09:00
Yu Watanabe
9fdb01ed66
resolve: hash_ops related cleanups ( #37116 )
2025-04-15 22:31:57 +09:00
Yu Watanabe
7a7a9bbed3
network-tools: hash_ops related cleanups ( #37118 )
2025-04-15 22:31:40 +09:00
Yu Watanabe
3cb9ac88a0
journal: drop old kernels support ( #37137 )
...
This drops several codes for supporting old kernels.
Also, this cleanups code a bit.
2025-04-15 22:30:51 +09:00
Yu Watanabe
7566bbc5cb
journal/kmsg: drop old kernels (<3.6) support
...
The flags field was added by kernel v3.6:
https://github.com/torvalds/linux/commit/d39f3d77c9b1fe7cc33a14beb4a4849af0a4ac22
Now our baseline on the kernel is v5.4, so we can assume there exists
the flags field after the monotonic timestamp.
This also adds several short comments.
2025-04-15 06:19:07 +09:00
Yu Watanabe
9ec1e87bf3
journal/kmsg: modernize server_open_dev_kmsg()
...
Let's assign fd and event source only on success.
2025-04-15 06:18:52 +09:00
Yu Watanabe
117aa1cab4
journal/kmsg: drop Server.dev_kmsg_readable flag and use Server.read_kmsg
...
When /dev/kmsg is opened, the two flags have the same value.
This also adds an assertion in server_read_dev_kmsg().
2025-04-15 06:17:22 +09:00
Yu Watanabe
da741d9fd9
journal/kmsg: drop support old kernels (<3.5) without reading /dev/kmsg support
...
/dev/kmsg is readable since kernel v3.5:
https://github.com/torvalds/linux/commit/e11fea92e13fb91c50bacca799a6131c81929986
Now our baseline on the kernel is v5.4. Let's assume /dev/kmsg is always
readable.
2025-04-15 05:22:28 +09:00
Yu Watanabe
d127423ce6
journal: remove old kernels (<3.2) support in monitoring hostname
...
Similar to cc983fc9dc .
2025-04-15 04:24:12 +09:00
Yu Watanabe
b01f00e9c5
test: drop error conditions for old kernels (<3.2)
...
Now our baseline on the kernel is 5.4.
2025-04-15 03:41:40 +09:00
Yu Watanabe
d50cfa98aa
tree-wide: IFA_FLAGS is supported since kernel v3.14
...
Now our baseline on the kernel is v5.4.
Let's unconditionally use the IFA_FLAGS attribute, and drop the getter
and setter for the deprecated header element.
Continuation of 29c2d4e158 .
2025-04-15 03:41:16 +09:00
Yu Watanabe
6dbf2c1beb
sd-netlink,sd-device: drop old kernels (<4.2) support
...
NETLINK_LIST_MEMBERSHIPS is supported since kernel v4.2, specifically
https://github.com/torvalds/linux/commit/b42be38b2778eda2237fc759e55e3b698b05b315
Our baseline on the kernel is v5.4. Let's drop unnecessary conditions.
2025-04-15 03:40:40 +09:00
Yu Watanabe
d3d375a686
udev-builtin-net_id: drop old kernels (<4.20) support
...
Since kernel v4.20, specifically since
https://github.com/torvalds/linux/commit/9b8b2a323008aedd39a8debb861b825707f01420
IP-over-Infiniband driver also uses dev_port.
As our baseline on the kernel is v5.4. Let's remove the fallback code.
For more details about the fallback, see
https://github.com/systemd/systemd/pull/10082#issuecomment-421416461
2025-04-15 03:40:14 +09:00
Yu Watanabe
6d203bd830
test-condition: drop cgroup version check
...
After f74ca66e68 , we do not check the
cgroup version of the runtime environment, and unconditionally returns 0
for "v1", and 1 for "v2".
2025-04-14 17:22:46 +01:00
Yu Watanabe
cc983fc9dc
resolve: drop code for supporting old kernels (<3.2)
...
Now our baseline on the kernel is 5.4.
Note, the removed code triggered assert_return() in
sd_event_source_set_description().
2025-04-14 22:26:40 +09:00
Yu Watanabe
5e3887e6c1
loop-util: drop workaround for kernel older than v5.0
...
Now our baseline on the kernel is v5.4.
2025-04-14 21:57:53 +09:00
Yu Watanabe
cde55c44ed
core: hash_ops related cleanups ( #37114 )
2025-04-14 03:17:26 +09:00
Yu Watanabe
308a3872e9
shared/condition: remove cgroup hierarchy check ( #37101 )
2025-04-14 03:17:01 +09:00
Yu Watanabe
be1f90d97f
socket-proxy: fix use-after-free
...
Fixes a bug in 10e41cdddc .
Fixes CID#1609061.
2025-04-13 10:24:50 +01:00
Yu Watanabe
52278e0634
network/wiphy: use hash_ops with destructor for managing Wiphy objects
2025-04-13 10:15:02 +09:00
Yu Watanabe
4cf443e644
network/link: use hash_ops with destructor for managing Link objects
2025-04-13 10:15:02 +09:00
Yu Watanabe
a85f73fa55
network/network: use hash_ops with destructor for managing Network objects
2025-04-13 10:15:02 +09:00
Yu Watanabe
09ddaf2af3
hashmap: introduce ordered_hashmap_free_and_replace()
2025-04-13 10:15:02 +09:00
Yu Watanabe
919aeb666a
network/network: use hash_ops with destructor for managing stacked netdevs
2025-04-13 10:15:02 +09:00
Yu Watanabe
1b25b88f82
network/bridge-fdb,mdb: use hash_ops with destructor
2025-04-13 10:10:29 +09:00
Yu Watanabe
5c6e6f5ad1
network/dhcp-server: use hash_ops with destructor for static lease
2025-04-13 10:10:29 +09:00
Yu Watanabe
10d786458c
network/radv: use hash_ops with destructor for managing prefixes
2025-04-13 10:10:29 +09:00
Yu Watanabe
d3af116afd
network,udev: use hash_ops with destructor to manage SR-IOV configs
2025-04-13 10:09:53 +09:00
Yu Watanabe
32b5deb1b2
network/ndisc: replace set_free_free() with set_free()
...
They uses in_addr_prefix_hash_ops_free, hence set_free() is enough.
2025-04-13 10:09:45 +09:00
Yu Watanabe
6d1a69d0f0
network: use in6_addr_hash_ops_free in Network.ipv6_proxy_ndp_addresses
...
This also one adjustment to network_adjust_ipv6_proxy_ndp().
2025-04-13 10:09:45 +09:00
Yu Watanabe
25a9bd72ef
network: use dns_name_hash_ops_free in dnssec negative trust anchors
2025-04-13 10:09:45 +09:00
Yu Watanabe
fadc825c5b
test-networkd-conf: config_parse_ether_addrs() uses ether_addr_hash_ops_free
...
Hence, set_free() is enough to free the result.
2025-04-13 10:04:08 +09:00