Lennart Poettering
803e12f36b
tree-wide: some coccinelle fixes
2022-02-16 17:26:26 +01:00
Yu Watanabe
cc46d3be68
Merge pull request #22502 from yuwata/udev-net-virtual-wlan-interface
...
network: add virtual wlan interface support
2022-02-16 23:03:52 +09:00
Yu Watanabe
dedf2d0054
network: add support to create wlan virtual interface
...
Closes #18977 .
2022-02-15 23:24:55 +09:00
Lennart Poettering
ec00453b1c
Merge pull request #22412 from yuwata/sd-dhcp6-client-cleanups
...
sd-dhcp6-client: several fixes and cleanups
2022-02-15 14:18:55 +01:00
Yu Watanabe
edb69db2b0
network: manage WLAN phy
2022-02-15 16:06:43 +09:00
Yu Watanabe
1d4312d5f9
network: netdev: add flag to skip kind check
...
It will be used in later commit.
2022-02-15 16:06:43 +09:00
Yu Watanabe
5d4a925af0
network: netdev: use request queue to create independent netdevs
2022-02-15 16:06:37 +09:00
Yu Watanabe
efa7b8adde
network: netdev: increment reference counter on request
...
Otherwise, it may be freed on reload.
2022-02-15 15:54:02 +09:00
Yu Watanabe
d708bc6e4f
network: netdev: make netdev_is_ready_to_create() return negative errno on fatal error
2022-02-15 15:54:02 +09:00
Yu Watanabe
709055dabb
network: rename REQUEST_TYPE_STACKED_NETDEV -> REQUEST_TYPE_NETDEV_STACKED
2022-02-15 15:54:02 +09:00
Yu Watanabe
6dc07e095d
meson: sort listed files
2022-02-15 15:54:02 +09:00
Yu Watanabe
8b1cfab962
network: do not restart DHCPv6 client when it is already running in managed mode
...
Otherwise, if a network has two router and one provides M flag and the
other provides O flag, then the DHCPv6 client switches the running mode
repeatedly. That makes the IPv6 network configuration of the host
unstable.
2022-02-14 15:02:33 +09:00
Yu Watanabe
81db4f3dd8
network: drop managed configs on reconfigure when KeepConfiguration=yes
...
Otherwise, the managed configs, that is addresses, routes and so on
configured by the previously assigned .network file will not be dropped
on reconfiguring the interface.
2022-02-13 20:01:42 +09:00
Yu Watanabe
07c160a65c
network: drop redundant condition
...
The function `link_drop_foreign_addresses()` is only called in
`link_drop_foreign_config()`, and the same condition is located in the
caller.
2022-02-13 20:01:29 +09:00
Yu Watanabe
2d88df457a
Merge pull request #22471 from yuwata/network-bridge-vlan-protocol
...
network: bridge: fix vlan protocol
2022-02-10 20:40:04 +09:00
Yu Watanabe
ac7e18be76
Merge pull request #22452 from yuwata/network-ipv6ll
...
network: use sysctl to set IPv6LL address generation mode when the interface is already up
2022-02-10 20:38:56 +09:00
Yu Watanabe
6eb35be8e0
network: bridge: fix endian of vlan protocol
...
Fixes #22469 .
2022-02-10 17:47:17 +09:00
Joerie de Gram
77d65e5659
network: attempt to trigger kernel IPv6LL address generation
...
Try to ensure kernel IPv6 link local address generation occurs by
setting the per-if addr_gen_mode sysctl when the link is already up,
instead of the netlink interface (IFLA_INET6_ADDR_GEN_MODE).
The netlink setting is sufficient in cases where the interface is not
yet up when networkd configures an interface - bringing the interface
up will trigger in-kernel address generation.
If the interface is already up, yet the interface has no IPv6LL assigned
setting IFLA_INET6_ADDR_GEN_MODE has no effect.
Writing the addr_gen_mode sysctl is a best effort attempt at triggering
address generation regardless of interface state because it also works
in cases where the interface is already up.
Fixes #22424 .
2022-02-10 17:35:41 +09:00
Yu Watanabe
2b25f4eb23
network: move link_set_ipv6ll_stable_secret() to networkd-ipv6ll.c
2022-02-10 17:34:06 +09:00
Yu Watanabe
05b8fc498e
network: skip to set IPv6LL address generation mode if the requested mode is already set
2022-02-10 17:34:06 +09:00
Yu Watanabe
6614116458
network: use log_link_warning_errno() or friends where applicable
2022-02-10 17:34:06 +09:00
Yu Watanabe
7d0d832d67
network: monitor current IPv6LL address generation mode
2022-02-10 17:34:06 +09:00
Yu Watanabe
80f2647dfb
network: introduce two helper functions for setting IPv6LL address generation mode
2022-02-10 17:34:02 +09:00
Luca Boccassi
0b0ad494a0
Merge pull request #22458 from poettering/parse-safe-string
...
some safety tweaks to conf-parser.[ch]
2022-02-09 16:59:14 +00:00
Yu Watanabe
e6e2b66b8f
Merge pull request #22248 from yuwata/network-tc-use-request-queue
...
network: tc: use request queue to configure QDisc or TClass
2022-02-09 18:57:37 +09:00
Lennart Poettering
a99a85242c
tree-wide: use config_parse_safe_string() at various places
2022-02-09 10:17:33 +01:00
Santa Wiryaman
97f27f8a16
Add support for isolated parameter
...
Add the "Isolated" parameter in the *.network file, e.g.,
[Bridge]
Isolated=true|false
When the Isolated parameter is true, traffic coming out of this port
will only be forward to other ports whose Isolated parameter is false.
When Isolated is not specified, the port uses the kernel default
setting (false).
The "Isolated" parameter was introduced in Linux 4.19.
See man bridge(8) for more details.
But even though the kernel and bridge/iproute2 recognize the "Isolated"
parameter, systemd-networkd did not have a way to set it.
2022-02-09 17:37:37 +09:00
Yu Watanabe
e4bbd9c61e
network: tc: use hashmap to store traffic control settings in .network files
...
As now each qdisc or tclass is configured when it is ready.
2022-02-09 14:43:19 +09:00
Yu Watanabe
7ec1846242
network: tc: introduce order dependency of traffic control
2022-02-09 14:43:19 +09:00
Yu Watanabe
1dec9d816b
network: tc: use request queue to configure traffic control
...
But no dependency resolution is implemented.
2022-02-09 14:43:19 +09:00
Yu Watanabe
b3208e0fad
network: tc/teql: set tca_kind in verify()
...
Then, qdisc_configure() can be simplified.
2022-02-09 14:43:19 +09:00
Yu Watanabe
828a81a937
network: tc: monitor qdisc and tclass
2022-02-09 14:43:19 +09:00
Yu Watanabe
f50b93fed7
sd-netlink: unify sd_rtnl_message_new_qdisc() and sd_rtnl_message_new_tclass()
...
As the netlink message header types for both qdisc and tclass are
equivalent.
2022-02-09 14:35:25 +09:00
Yu Watanabe
89346ac6f6
network: coding style fixes
2022-02-09 14:35:25 +09:00
Yu Watanabe
55c6f705ba
network: tc: drop unnecessary conditions
...
As TC_H_UNSPEC is 0.
2022-02-09 14:35:25 +09:00
Yu Watanabe
058fd55efa
network: tc: drop unused QDisc::family element
2022-02-09 14:35:25 +09:00
Yu Watanabe
de2f372ea2
network: move ipv6ll related functions to networkd-ipv6ll.[ch]
2022-02-09 02:14:40 +09:00
Yu Watanabe
ea853de57d
network: enable KeepConfiguration= when running on network filesystem
...
Also, set KeepConfiguration=dhcp-on-stop by default when running in
initrd.
Fixes #21967 .
2022-02-05 09:42:32 +09:00
Yu Watanabe
318a53d10a
network-generator: rename DHCP_TYPE_DHCP -> DHCP_TYPE_DHCP4
...
To emphasize this is DHCPv4. No behavior is changed.
2022-02-04 13:59:42 +09:00
Yu Watanabe
1ae308abb5
network: tunnel: support external mode
...
Closes #22352 .
2022-02-03 11:12:01 +09:00
Yu Watanabe
acd8abb7f9
network: tunnel: reorder setting ip6tnl attributes
...
Just for improving readability.
2022-02-03 11:10:15 +09:00
Yu Watanabe
a07e07cd9c
network: tunnel: reduce indentation in config_parse_encap_limit()
2022-02-03 11:10:15 +09:00
Yu Watanabe
59c8bef008
network: tunnel: reduce indentation in config_parse_ipv6_flowlabel()
2022-02-03 11:10:15 +09:00
Yu Watanabe
396dfe0a14
network: tunnel: use "data" field to assign result
2022-02-03 11:10:15 +09:00
Yu Watanabe
613d65d88f
network: update operational state when we remove an address
2022-02-02 20:44:47 +09:00
Yu Watanabe
faa1b3c6c4
network: dhcp-server: make empty string to DNS= or friends clear previously specified servers
2022-02-02 10:02:57 +09:00
Yu Watanabe
32f8a613c5
sd-dhcp-lease: store static routes and classless static routes in different arrays
...
When classless static routes option is provided, then static routes
option should not be used. Hence, let's not mix and store them in one
storage.
This introduce sd_dhcp_lease_get_static_routes() and
sd_dhcp_lease_get_classless_routes().
2022-02-02 10:02:44 +09:00
Yu Watanabe
6a8ab6dd1e
Merge pull request #22332 from yuwata/network-dhcp-server-dns-server-address
...
network: dhcp-server: allow to specify server address for DNS= or friends
2022-02-02 07:07:22 +09:00
Yu Watanabe
5f468b9f57
network: dhcp-server: introduce special value DNS=_server_address
...
Closes #15026 .
2022-02-02 05:01:53 +09:00
Luca Boccassi
98fd285c28
Merge pull request #22331 from yuwata/network-xfrm-interface-id
...
network: xfrm: refuse zero interface ID
2022-02-01 13:25:38 +00:00