Yu Watanabe
0a0c2672db
network/address: do not add Address object to Link on requesting
...
Then, all addresses managed by a link really exist (unless the kernel
silently removes addresses).
By this change, now Address objects managed by Link and owned by Request
are decoupled, and always requested settings will be applied.
Fixes #25843 .
2023-07-31 02:31:00 +09:00
Yu Watanabe
3c283289ae
network/address: make Address object more consistent with assigned address
...
This makes `manager_rtnl_process_address()`
- first read minimal information to get managed Address object,
- then update the managed Address object directly.
Previously, we updated the Address object managed by Link partially,
e.g. peer address did not updated.
This makes the managed Address object more consistent with the assigned
address.
2023-07-31 02:30:43 +09:00
Yu Watanabe
da59599d3d
network: fix typo
...
Follow-up for bbeceaf295 .
2023-07-31 02:08:43 +09:00
Kiran Vemula
bc837621a3
resolved: added show-server-state verb and DumpStatistics varlink method
...
Added show-server-state verb to resolvectl
Added DumpStatistics and ResetStatistics methods to varlink
2023-07-31 02:02:03 +09:00
Yu Watanabe
e2aee7ed90
Merge pull request #28591 from yuwata/network-neighbor-next
...
network/neighbor: follow the kernel's way how to manage neighbors
2023-07-31 01:42:39 +09:00
Yu Watanabe
86d1f7c974
Merge pull request #28575 from yuwata/network-address-next-part3
...
network: check specified address settings in more detail
2023-07-31 00:59:31 +09:00
Yu Watanabe
8b52860b86
Merge pull request #28572 from yuwata/network-ipv4acd
...
network: split-out sd_ipv4acd object management from Address object
2023-07-31 00:58:54 +09:00
Frantisek Sumsal
a3d610998a
tmpfiles.d: adjust /dev/vfio/vfio access mode
...
kmod-static-nodes.service sets the mode to 0600, but we want it
to be 0666 as specified in 50-udev-default.rules.
Resolves : #28588
2023-07-31 00:58:01 +09:00
Yu Watanabe
2ede355908
test-network: add tests for several invalid neighbor settings, and overriding settings
...
This also makes the checks stricter.
2023-07-31 00:40:03 +09:00
Yu Watanabe
5d098f5d36
network/neighbor: do not add Neighbor object to Link on requesting
...
Then, all neighbors managed by a link really exist (unless the kernel
silently removes neighbors).
2023-07-31 00:39:59 +09:00
Luca Boccassi
167338529b
Merge pull request #28428 from ldv-alt/ERRNO_IS
...
treewide: cleanup use of ERRNO_IS_*(r)
2023-07-30 16:31:16 +01:00
Yu Watanabe
aa9626ee3b
network/neighbor: follow the way how kernel distinguish neighbor settings
...
The kernel manages neighbors by the destination address, and the
LinkLayerAddress is mutable. Let's manage neighbors in the same way, and
dedup settings.
2023-07-31 00:00:07 +09:00
Yu Watanabe
bbeceaf295
network/neighbor: skip to request neighbors with unmatching link layer address length
2023-07-31 00:00:07 +09:00
Yu Watanabe
5385e5f940
network/ipv4acd: split out sd_ipv4acd management from Address to Link
...
Then, we can start IPv4ACD without adding corresponding Address object
to Link.
Hopefully, no functional change, just refactoring and preparation for
later commits.
2023-07-30 23:16:41 +09:00
Yu Watanabe
9701be563a
in-addr-util: introduce PTR_TO_IN4_ADDR() and IN4_ADDR_TO_PTR()
...
These should be useful when an IPv4 address is used as a key of a
hashmap.
2023-07-30 23:15:53 +09:00
Yu Watanabe
626d653a90
sd-ipv4acd: introduce sd_ipv4acd_is_bound()
2023-07-30 23:15:53 +09:00
Yu Watanabe
722ac24651
network/ipv4acd: drop unused argument
2023-07-30 23:15:53 +09:00
Yu Watanabe
262ac7fcf2
network/ipv4acd: use IN4_ADDR_TO_STRING()
2023-07-30 23:15:40 +09:00
Yu Watanabe
b1179a5d0b
network/address: ignore address settings with unsupported flags
2023-07-30 22:53:49 +09:00
Yu Watanabe
d9e2afc033
network/address: drop IPv6 settings when the kernel does not support IPv6
2023-07-30 22:53:15 +09:00
Susant Sahani
f141b2c053
network: ndisc - Honour CurHopLimit
...
RFC4861 Neighbor Discovery – Sections 4.2 and 6.3.4
From section 4.2. Router Advertisement Message Format:
Cur Hop Limit 8-bit unsigned integer. The default value that
should be placed in the Hop Count field of the IP
header for outgoing IP packets. A value of zero
means unspecified (by this router).
2023-07-30 14:37:21 +01:00
Yu Watanabe
1a1f4a8092
network/address: merge address_needs_to_set_broadcast() with address_get_broadcast()
...
No functional change, preparation for later commits.
2023-07-30 14:33:23 +01:00
Luca Boccassi
9dabe36cb0
Merge pull request #28574 from yuwata/network-queue-next
...
network/queue: preparations
2023-07-30 14:27:43 +01:00
Luca Boccassi
1665bbbddf
Merge pull request #28571 from yuwata/network-address-next-part1
...
network: several trivial cleanups
2023-07-30 14:01:53 +01:00
Yu Watanabe
4d4d7910d9
network/neighbor: drop IPv6 settings when the kernel does not support IPv6
2023-07-30 13:57:13 +01:00
Yu Watanabe
754252f923
network: rename sd_netlink_message* req -> m
...
This also merges neighbor_configure_message() with neighbor_configure().
2023-07-30 13:55:18 +01:00
Yu Watanabe
22b906dd96
Merge pull request #28564 from YHNdnzj/gpt-auto-kill-more-duplicate
...
gpt-auto: don't mount ESP if there's an fstab entry for it
2023-07-30 08:59:50 +09:00
Yu Watanabe
0c491d0f34
meson: use kwargs to declare efi binaries
...
No functional change, just refactoring.
2023-07-30 08:57:55 +09:00
Frantisek Sumsal
9fe4e68cab
analyze: fix pcrs verb output without TPM support
...
If we don't have TPM support then `alg` is NULL and passing this to
table_new() means we'd get a table with only two columns instead of
three, leading up to a very confusing output:
$ build/systemd-analyze pcrs
System lacks full TPM2 support, not showing PCR state.
NR NAME
0 platform-code
- 1
platform-config -
2 external-code
- 3
external-config -
4 boot-loader-code
- 5
boot-loader-config -
6 -
- 7
...
Let's name the header in this case with a simple dash, as it's going
to be hidden anyway, to make the table nice again:
$ build/systemd-analyze pcrs
System lacks full TPM2 support, not showing PCR state.
NR NAME
0 platform-code
1 platform-config
2 external-code
3 external-config
4 boot-loader-code
5 boot-loader-config
6 -
7 secure-boot-policy
...
2023-07-30 08:57:37 +09:00
Yu Watanabe
40c7d3c713
meson: unconditionally add version dependency for all executables and libraries
...
Otherwise, we can easily forget the dependency.
No functional change, just refactoring.
2023-07-30 05:36:22 +09:00
Yu Watanabe
bdb577f545
tree-wide: drop unnecessary inclusion of version.h
2023-07-30 04:56:38 +09:00
Yu Watanabe
4122d68682
boot: always set SBAT_DISTRO_VERSION
2023-07-30 04:54:47 +09:00
Yu Watanabe
e95acdfe1d
meson: drop short script to generate vcs tag
2023-07-30 04:54:03 +09:00
Yu Watanabe
cbcf76b193
tree-wide: fix typo
2023-07-30 00:23:28 +09:00
Yu Watanabe
008f1e5443
network/queue: detach request from queue when netlink reply received
...
Then, we can find and use the Request object after sending netlink
message.
Preparation for later commits.
2023-07-29 23:27:21 +09:00
Yu Watanabe
d256945fd0
network/queue: free assigned userdata only when a new request is queued
2023-07-29 23:27:19 +09:00
Yu Watanabe
a2532c9db8
network/address: split-out address_match_null()
...
No functional change, preparation for later commits.
2023-07-29 22:48:49 +09:00
Yu Watanabe
a3a25d01ce
network: drop unnecessary conditions
...
When link_get_by_index() succeeds, the result is always non-NULL.
2023-07-29 22:48:49 +09:00
Yu Watanabe
5fb1f929d5
network: use address_remove_and_drop()
2023-07-29 22:48:49 +09:00
Yu Watanabe
f60e65583e
network/address: free Address object by caller that passed to link_request_address()
...
Follow-up for 9684a8ded0 .
Now, the input Address object is always copied, hence it is not
necessary to free it in link_request_address().
2023-07-29 22:48:49 +09:00
Yu Watanabe
3327877ca3
udev-builtin-net_id: make parse_hotplug_slot_from_function_id() always set return value on success
...
This also updates comment in the code.
2023-07-29 22:14:24 +09:00
Yu Watanabe
ace308a73e
udev-builtin-net_id: make names_xen() self-contained
...
It is not necessary to store its partial result into NetNames.
No functional changes, just refactoring.
2023-07-29 22:14:24 +09:00
Yu Watanabe
bc710857d1
udev-builtin-net_id: use sd_device_get_sysnum() to get index of netdevsim
2023-07-29 22:14:24 +09:00
Yu Watanabe
f7abd9ede8
udev-builtin-net_id: make names_netdevsim() self-contained
...
It is not necessary to store its partial result into NetNames.
No functional changes, just refactoring.
2023-07-29 22:14:24 +09:00
Yu Watanabe
28141620d9
udev-builtin-net_id: do not assume the current ifname is ethX
...
Otherwise, `udevadm test-builtin` may not work.
2023-07-29 22:14:24 +09:00
Yu Watanabe
0bf8330d68
udev-builtin-net_id: make names_platform() self-contained
...
It is not necessary to store its partial result into NetNames.
No functional changes, just refactoring.
2023-07-29 22:14:24 +09:00
Yu Watanabe
ded2b1d093
udev-builtin-net_id: do not assume the current interface name is ethX
...
Otherwise, `udevadm test-builtin` does not work as expected.
2023-07-29 22:14:24 +09:00
Yu Watanabe
07e1841eb9
udev-builtin-net_id: make names_vio() self-contained
...
It is not necessary to store its partial result in NetNames.
No functional changes, just refactoring.
2023-07-29 22:14:24 +09:00
Yu Watanabe
80cd180807
udev-builtin-net_id: make names_ccw() self-contained
...
It is not necessary to store its partial result in NetNames.
No functional changes, just refactoring.
2023-07-29 22:14:24 +09:00
Yu Watanabe
a4f097e934
udev-builtin-net_id: make dev_devicetree_onboard() self-contained
...
and rename it to names_devicetree().
No functional changes, just refactoring.
2023-07-29 22:14:24 +09:00