summaryrefslogtreecommitdiff
path: root/src/network
Commit message (Collapse)AuthorAgeFilesLines
* network: make route_configure() return all created routesYu Watanabe2021-05-121-12/+38
|
* network: make log_route_debug() show multipath routes and Gateway=_dhcp4 or ↵Yu Watanabe2021-05-121-6/+27
| | | | _ipv6ra
* network: use request queue to configure addresses, routes, and nexthopsYu Watanabe2021-05-1216-572/+896
| | | | | | | | | | | | | | | | | | | | Why is this necessary? Several examples below. - When a route sets prefsrc, then the address must be already assigned (see issue #19285), and also it must be ready if IPv6. - When a route or nexthop sets gateway, then the address must be reachable. - When a route sets nexthop ID, then the corresponding nexthop must be assigned. - When a route sets multipath routes on another interface, then the interface must exist and be ready to configure. - When configuring address, the same address must not be under removing (see issue #18108). Etc,. etc,... So, this makes all requests about addresses, routes, and nethops are once stored in the queue, and will be processed when they are ready to configure. Fixes #18108 and #19285.
* network: use request queue to configure neighborsYu Watanabe2021-05-126-36/+94
|
* network: use request queue to configure routing policy rulesYu Watanabe2021-05-128-63/+144
|
* network: introduce link_is_ready_to_configure() helper functionYu Watanabe2021-05-122-0/+21
| | | | This will be used in later commits.
* network: add skeleton of request queueYu Watanabe2021-05-126-2/+192
| | | | This will be used in later commits.
* network: nexthop: add NextHop object before sending netlink requestYu Watanabe2021-05-121-6/+6
| | | | | Otherwise, if nexthop_add() fails, then assertion about nexthop_messages in static_nexthop_handler() will be triggered.
* network: split out common part of route or address handlersYu Watanabe2021-05-128-171/+155
|
* network: change order of dropping network configsYu Watanabe2021-05-121-8/+8
| | | | | As routes may requires nexthops and addresses, nexthops may requires addresses.
* network: simplify and rename routing_policy_rule_copy()Yu Watanabe2021-05-121-38/+20
|
* network: introduce route_dup()Yu Watanabe2021-05-122-0/+39
| | | | The function will be used in later commits.
* network: introduce manager_address_is_reachable()Yu Watanabe2021-05-122-0/+41
| | | | The function will be used in later commits.
* network: introduce link_has_route()Yu Watanabe2021-05-122-5/+68
| | | | The function will be used in later commits.
* network: delay resolving interface specifier in MultiPathRoute=Yu Watanabe2021-05-121-27/+38
| | | | The interface may not exist when .network files are loaded.
* network: introduce manager_has_address()Yu Watanabe2021-05-122-0/+58
| | | | The function will be used in later commits.
* network: use IPV4_ADDRESS_FMT_STR/VAL macros and in6_addr_to_string() or friendsYu Watanabe2021-05-125-128/+121
|
* in-addr-util: move IPV4_ADDRESS_FMT_STR/VAL macros from networkd-address.hYu Watanabe2021-05-121-7/+0
|
* network: use in6_addr_is_link_local() or friendsYu Watanabe2021-05-121-4/+4
|
* network: rename routing_policy_rule_configure_internal() and make it take ↵Yu Watanabe2021-05-121-55/+62
| | | | callback
* network: make nexthop_configure() take callbackYu Watanabe2021-05-121-33/+39
|
* network: make neighbor_configure() take callbackYu Watanabe2021-05-121-30/+35
|
* Merge pull request #19542 from yuwata/unit-after-socketZbigniew Jędrzejewski-Szmek2021-05-101-0/+3
|\ | | | | network, timesync, resolve: check bus is ready before emitting property change or signal
| * network: check that bus is ready at one more placeYu Watanabe2021-05-081-0/+3
| |
* | networkd: correct batman-adv setting name (GatewayBandwidth) (#19539)Jörg Deckert2021-05-081-0/+2
| | | | | | Co-authored-by: Jörg Deckert <jdeckert@unitas-network.de>
* | rfc3046 implementationYegor Alexeyev2021-05-085-4/+53
|/
* network: do not bring up CAN interface on configureYu Watanabe2021-04-301-0/+4
|
* network: make CAN device follow activation policyYu Watanabe2021-04-301-10/+9
|
* network: introduce link_activate()Yu Watanabe2021-04-302-7/+17
|
* network: do not try to configure address or etc on can deviceYu Watanabe2021-04-303-0/+25
|
* network: can: shorten code a bitYu Watanabe2021-04-301-13/+5
|
* network: can: do not warn if link does not exist anymoreYu Watanabe2021-04-301-1/+5
|
* network: drop duplicated link_up_can()Yu Watanabe2021-04-303-45/+4
|
* network: neighbor: use sd_netlink_message_read_data() at one more placeYu Watanabe2021-04-301-30/+7
|
* network: introduce log_neighbor_debug()Yu Watanabe2021-04-301-34/+35
|
* network: reduce indentation in log_address_debug() or friendsYu Watanabe2021-04-304-70/+74
|
* network: do not set nexthop ID, gateway, and multipath routes simultaneouslyYu Watanabe2021-04-291-8/+20
| | | | | | | | | | | | | | | See kernel's rtm_to_fib_config() in net/ipv4/fib_frontend.c and rtm_to_fib6_config() in net/ipv6/route.c. Note that if both gateway and multipath routes are specified, then kernel ignores gateway. So, strictly speaking, setting both gateway and multipath routes is allowed by kernel. But such situation is mostly user's misconfiguration. Let's refuse it. Note that the conditions newly added in route_configure() are redundant, as all static configurations are already verified in route_section_verify(), and dynamic configurations do not set nexthop_id or multipath routes. Just for safety.
* network: do not remove reject type routes more than onceYu Watanabe2021-04-292-0/+6
| | | | | | | | | | | Usually, removing non-existing addresses, routes, and etc, are safe. However, when multiple interfaces lost their carriers simultaneously, then manager_drop_routes() and manager_drop_nexthop() are called multiple times. If a route with a blackhole nexthop is removed in that process, the later removal requests of the route fail with -EINVAL, rathar than -ESRCH, as the corresponding nexthop does not exist anymore. So, let's not remove routes which managed by Manager more than once.
* network: do not set route type on specific route removalYu Watanabe2021-04-291-4/+20
|
* network: unify log_link_message_full_errno() and log_message_warning_errno()Yu Watanabe2021-04-294-25/+29
| | | | This also introduces log_message_error_errno() or friends.
* network: dhcp4: downgrade log level when interface is removedYu Watanabe2021-04-291-1/+3
|
* network: drop meaningless bitfield specifiersYu Watanabe2021-04-291-2/+2
|
* Merge pull request #19449 from yuwata/network-downgrade-log-levelYu Watanabe2021-04-294-7/+6
|\ | | | | network: downgrade log level and fix typo
| * network: ndisc: fix ipv6 route preference for routes with Gateway=_ipv6raYu Watanabe2021-04-291-1/+1
| |
| * network: neighbor: downgrade log levelYu Watanabe2021-04-291-4/+3
| | | | | | | | | | As commented in the code, kernel sends messages about neighbors after a link is removed.
| * network: link: downgrade log levelYu Watanabe2021-04-291-1/+1
| | | | | | | | The error is harmless, and will be ignored. Let's downgrade log level.
| * network: dhcp4: downgrade log levelYu Watanabe2021-04-291-1/+1
| | | | | | | | It is not necessary to log such information on higher level.
* | Merge pull request #19374 from yuwata/network-dhcp-routes-to-ntpLennart Poettering2021-04-284-17/+64
|\ \ | |/ |/| network: dhcp4: introduce RoutesToNTP= boolean setting
| * network: dhcp4: introduce RoutesToNTP= boolean settingYu Watanabe2021-04-274-0/+29
| |
| * network: dhcp4: split and rename link_set_dns_routes()Yu Watanabe2021-04-271-17/+34
| |