]>
git.ipfire.org Git - thirdparty/systemd.git/log
Lennart Poettering [Fri, 2 Oct 2020 08:00:00 +0000 (10:00 +0200)]
udev: make use of NULL callback in IO handlers
Lennart Poettering [Fri, 2 Oct 2020 07:51:36 +0000 (09:51 +0200)]
sd-event: support callback=NULL in IO/child/inotify/defer event sources, too
Also, document this functionality more prominently, including with a
reference from sd_event_exit().
This is mostly to make things complete, as previously we supported NULL
callbacks only in _add_time() and _add_signal(). However, I think this
makes snese for IO event sources too (think: when some fd such as a pipe
end sees SIGHUP or so, exit), as well as defer or post event sources (i.e. exit
once we got nothing else to do). This also adds support for inotify
event sources, simply to complete things (I can't see the immediate use,
but maybe someone else comes up with it).
The only event source type that doesn't allow callback=NULL now are exit
callbacks, but for them they make little sense, as the event loop is
exiting then anyway.
Lennart Poettering [Fri, 2 Oct 2020 07:13:37 +0000 (09:13 +0200)]
udev-util: make use of sd-event's NULL callback support
Lennart Poettering [Fri, 2 Oct 2020 07:13:17 +0000 (09:13 +0200)]
test: add test that validates that PTR_TO_INT(INT_TO_PTR()) covers whole int range
Lennart Poettering [Thu, 1 Oct 2020 20:21:05 +0000 (22:21 +0200)]
socket-proxy: port to new sd_event_source_set_exit_on_failure() API
Lennart Poettering [Thu, 1 Oct 2020 20:20:42 +0000 (22:20 +0200)]
socket-proxy: close correct fd, log at right log level
Lennart Poettering [Fri, 2 Oct 2020 08:14:44 +0000 (10:14 +0200)]
man: add docs for sd_event_source_set_exit_on_failure()
Lennart Poettering [Thu, 1 Oct 2020 20:17:31 +0000 (22:17 +0200)]
sd-event: optionally, if an event source fails, exit the event loop
Currently, if an event source callback returns an error, we'll disable
the event source and continue. This adds a per-event source flag that if
turned on goes further: the event loop is also exited, propagating the
error code.
This is inspired by some patterns repeatedly seen in #15206.
The idea is that event sources that server the "primary" function of a
program are marked like this, so that if they fail the failure is
instantly propagated and terminates the program.
Yu Watanabe [Tue, 6 Oct 2020 22:42:40 +0000 (07:42 +0900)]
Merge pull request #17240 from yuwata/network-cleanup
network: several cleanups and fix IPv4DAD and IP Masqurade
Marco Wang [Tue, 6 Oct 2020 17:07:55 +0000 (01:07 +0800)]
boot/efi: Explicitly specify void in parameter list
Functions that accept no arguments should be
explicitly declared a void parameter in their parameter list.
Signed-off-by: Marco Wang <m.aesophor@gmail.com>
Yu Watanabe [Mon, 5 Oct 2020 20:25:01 +0000 (22:25 +0200)]
test-network: also remove IPv6 rules
Yu Watanabe [Mon, 5 Oct 2020 19:53:35 +0000 (21:53 +0200)]
test-network: add a missing netdev in the list
Yu Watanabe [Mon, 5 Oct 2020 19:51:29 +0000 (21:51 +0200)]
test-network: disable RA in test_sriov
We usually disable IPv6AcceptRA= if the test does not require any
dynamic address configuration, as it makes slightly slow down the test.
C.f.
491b79aeac323909e8cef60ba6e91e27fd731679 .
Yu Watanabe [Mon, 5 Oct 2020 19:47:44 +0000 (21:47 +0200)]
test-network: add missing file in the list
Yu Watanabe [Sun, 4 Oct 2020 10:54:56 +0000 (19:54 +0900)]
test-network: drop duplicated address
Yu Watanabe [Tue, 6 Oct 2020 18:21:59 +0000 (03:21 +0900)]
network: rename network_verify_xxx() -> network_drop_invalid_xxx()
As 'verify' implies a boolean result.
Yu Watanabe [Sun, 4 Oct 2020 02:06:23 +0000 (11:06 +0900)]
network: fix masquerade setting logic
Previously, address_establish() took Address object stored in Network
object. And address_release() took Address object stored in Link
object. Thus, address_release() always did nothing.
Yu Watanabe [Sun, 4 Oct 2020 01:57:03 +0000 (10:57 +0900)]
network: always use RT_SCOPE_HOST for IPv4 loopback addresses
For IPv6 case, use RT_SCOPE_HOST only when scope is not explicitly specified.
Yu Watanabe [Sun, 4 Oct 2020 00:27:42 +0000 (09:27 +0900)]
network: update MAC address in IPv4 ACD clients
When the MAC address of a link is updated, an address on the link may
be under checking address duplication. Or, (currently such code is not
implemented yet, but) address duplication check may be restarted later.
For that case, the IPv4 ACD clients must use the new updated MAC address.
Yu Watanabe [Sun, 4 Oct 2020 00:14:15 +0000 (09:14 +0900)]
network: configure IPv4 DAD per link address
Previously, IPv4 DAD is configured in each Address object stored in
Network object. If a .network file matches multipe links, then it causes
an assertion. To prevent it, now IPv4 DAD is configured in each Address
object belogs to Link object.
Yu Watanabe [Tue, 6 Oct 2020 17:57:54 +0000 (02:57 +0900)]
network: constify one argument
Yu Watanabe [Sat, 3 Oct 2020 23:47:42 +0000 (08:47 +0900)]
network: introduce address_copy()
Yu Watanabe [Sat, 3 Oct 2020 23:27:14 +0000 (08:27 +0900)]
network: do not update Address::flags in address_configure()
Yu Watanabe [Sat, 3 Oct 2020 23:14:27 +0000 (08:14 +0900)]
network: fix indentation
Yu Watanabe [Sat, 3 Oct 2020 22:43:41 +0000 (07:43 +0900)]
network: use sd_event stored in Manager
Yu Watanabe [Sat, 3 Oct 2020 22:37:22 +0000 (07:37 +0900)]
network: check feature is enabled in xxx_configure()
Yu Watanabe [Sat, 3 Oct 2020 21:50:55 +0000 (06:50 +0900)]
network: move link_enumerate_ipv6_tentative_addresses()
Yu Watanabe [Sat, 3 Oct 2020 21:37:12 +0000 (06:37 +0900)]
network: drop unused function
Yu Watanabe [Sat, 3 Oct 2020 21:25:44 +0000 (06:25 +0900)]
network: move sysctl related functions to networkd-sysctl.c
Yu Watanabe [Fri, 2 Oct 2020 11:55:18 +0000 (20:55 +0900)]
network: introduce radv_update_mac()
Yu Watanabe [Fri, 2 Oct 2020 11:41:41 +0000 (20:41 +0900)]
network: introduce dhcp6_update_mac()
Yu Watanabe [Fri, 2 Oct 2020 11:29:57 +0000 (20:29 +0900)]
network: introduce dhcp4_update_mac()
Yu Watanabe [Fri, 2 Oct 2020 11:25:11 +0000 (20:25 +0900)]
network: introduce ipv4ll_update_mac()
Yu Watanabe [Fri, 2 Oct 2020 11:15:44 +0000 (20:15 +0900)]
network: introduce link_serialize_dhcp6_client()
Yu Watanabe [Fri, 2 Oct 2020 09:24:07 +0000 (18:24 +0900)]
network: introduce link_serialize_ipv4ll()
Yu Watanabe [Fri, 2 Oct 2020 09:14:25 +0000 (18:14 +0900)]
network: introduce link_deserialize_ipv4ll()
Yu Watanabe [Fri, 2 Oct 2020 09:07:32 +0000 (18:07 +0900)]
network: introduce link_deserialize_dhcp4()
Yu Watanabe [Fri, 2 Oct 2020 08:53:18 +0000 (17:53 +0900)]
network: introduce network_verify_sr_iov()
Yu Watanabe [Fri, 2 Oct 2020 08:51:14 +0000 (17:51 +0900)]
network: move link_configure_sr_iov()
Yu Watanabe [Fri, 2 Oct 2020 08:48:59 +0000 (17:48 +0900)]
network: introduce network_verify_traffic_control()
Yu Watanabe [Fri, 2 Oct 2020 08:45:37 +0000 (17:45 +0900)]
network: move link_configure_traffic_control()
Yu Watanabe [Fri, 2 Oct 2020 08:37:54 +0000 (17:37 +0900)]
network: merge link_set_bridge_vlan() and br_vlan_configure()
Yu Watanabe [Fri, 2 Oct 2020 08:03:36 +0000 (17:03 +0900)]
network: move DUID related functions
Yu Watanabe [Fri, 2 Oct 2020 07:39:45 +0000 (16:39 +0900)]
network: move link_radv_enabled()
Yu Watanabe [Fri, 2 Oct 2020 07:35:54 +0000 (16:35 +0900)]
network: move link_dhcp4_server_enabled()
Yu Watanabe [Fri, 2 Oct 2020 07:30:23 +0000 (16:30 +0900)]
network: move link_ipv6_accept_ra_enabled()
Yu Watanabe [Fri, 2 Oct 2020 07:23:28 +0000 (16:23 +0900)]
network: unify link_ipv{4,6}_forward_enabled()
Yu Watanabe [Fri, 2 Oct 2020 07:09:25 +0000 (16:09 +0900)]
network: unify link_dhcp{4,6}_enabled()
Yu Watanabe [Fri, 2 Oct 2020 06:48:01 +0000 (15:48 +0900)]
network: move link_get_xxx_route_table()
Yu Watanabe [Fri, 2 Oct 2020 05:46:29 +0000 (14:46 +0900)]
network: manage address pools by OrderedSet
Yu Watanabe [Fri, 2 Oct 2020 05:38:22 +0000 (14:38 +0900)]
network: drop unused argument
Yu Watanabe [Fri, 2 Oct 2020 05:15:57 +0000 (14:15 +0900)]
network: move functions related to address pool
Yu Watanabe [Fri, 2 Oct 2020 05:01:59 +0000 (14:01 +0900)]
network: header cleanup
Yu Watanabe [Fri, 2 Oct 2020 04:50:36 +0000 (13:50 +0900)]
network: make several functions static
Yu Watanabe [Fri, 2 Oct 2020 04:39:02 +0000 (13:39 +0900)]
network: manage addresses from pool by Set
Yu Watanabe [Fri, 2 Oct 2020 03:34:19 +0000 (12:34 +0900)]
network: drop list of static addresses
[Address] sections are managed by both LIST and Hashmap. Let's drop the
list and manage them by OrderedHashmap.
Yu Watanabe [Fri, 2 Oct 2020 03:18:37 +0000 (12:18 +0900)]
network: make address_free() return NULL
Yu Watanabe [Fri, 2 Oct 2020 03:12:25 +0000 (12:12 +0900)]
network: introduce link_stop_ipv4_dad()
Yu Watanabe [Fri, 2 Oct 2020 03:05:20 +0000 (12:05 +0900)]
network: move link_configure_ipv4_dad()
Yu Watanabe [Fri, 2 Oct 2020 02:52:21 +0000 (11:52 +0900)]
network: introduce link_deserialize_addresses()
Yu Watanabe [Fri, 2 Oct 2020 02:40:37 +0000 (11:40 +0900)]
network: introduce link_serialize_addresses()
Yu Watanabe [Fri, 2 Oct 2020 02:35:44 +0000 (11:35 +0900)]
network: introduce network_verify_addresses()
Yu Watanabe [Tue, 6 Oct 2020 17:49:11 +0000 (02:49 +0900)]
network: update log messages
And drop unnecessary log for in_addr_to_string(), as its result is used
only for the consequent logs.
Yu Watanabe [Fri, 2 Oct 2020 02:32:35 +0000 (11:32 +0900)]
network: move manager_rtnl_process_address()
Yu Watanabe [Fri, 2 Oct 2020 02:30:33 +0000 (11:30 +0900)]
network: introduce link_drop_addresses()
Yu Watanabe [Fri, 2 Oct 2020 02:26:12 +0000 (11:26 +0900)]
network: introduce link_drop_foreign_addresses()
Yu Watanabe [Fri, 2 Oct 2020 02:17:49 +0000 (11:17 +0900)]
network: introduce link_set_addresses()
Yu Watanabe [Fri, 2 Oct 2020 01:55:06 +0000 (10:55 +0900)]
network: cleanup networkd-route.h
Yu Watanabe [Fri, 2 Oct 2020 01:41:55 +0000 (10:41 +0900)]
network: drop list of static routes
[Route] sections are managed by both LIST and Hashmap. Let's drop the
list.
Yu Watanabe [Sun, 4 Oct 2020 13:16:46 +0000 (22:16 +0900)]
network: introduce hashmap_find_free_section_line()
Yu Watanabe [Fri, 2 Oct 2020 01:16:25 +0000 (10:16 +0900)]
network: make several functions static
Yu Watanabe [Fri, 2 Oct 2020 01:08:39 +0000 (10:08 +0900)]
network: introduce network_verify_routes()
Yu Watanabe [Fri, 2 Oct 2020 02:56:12 +0000 (11:56 +0900)]
network: introduce link_serialize_routes()
Yu Watanabe [Fri, 2 Oct 2020 00:52:07 +0000 (09:52 +0900)]
network: introduce link_deserialize_routes()
Yu Watanabe [Fri, 2 Oct 2020 00:40:31 +0000 (09:40 +0900)]
network: introduce link_drop_routes()
Yu Watanabe [Fri, 2 Oct 2020 00:38:31 +0000 (09:38 +0900)]
network: introduce link_drop_foreign_routes()
Yu Watanabe [Fri, 2 Oct 2020 00:31:29 +0000 (09:31 +0900)]
network: make route_free() return NULL
Yu Watanabe [Fri, 2 Oct 2020 00:29:07 +0000 (09:29 +0900)]
network: move manager_rtnl_process_route()
Yu Watanabe [Fri, 2 Oct 2020 00:27:28 +0000 (09:27 +0900)]
network: move link_request_set_routes()
Yu Watanabe [Tue, 29 Sep 2020 21:28:44 +0000 (06:28 +0900)]
network: make network_get_ipv6_dns() always set return value on success
Yu Watanabe [Tue, 29 Sep 2020 21:17:04 +0000 (06:17 +0900)]
network: fix indentation
Yu Watanabe [Tue, 29 Sep 2020 21:10:02 +0000 (06:10 +0900)]
network: cleanup networkd-radv.h
Yu Watanabe [Tue, 29 Sep 2020 21:01:09 +0000 (06:01 +0900)]
network: introduce network_verify_prefix() and network_verify_route_prefix()
Yu Watanabe [Tue, 29 Sep 2020 20:56:05 +0000 (05:56 +0900)]
network: also check route prefixes are configured
Yu Watanabe [Tue, 29 Sep 2020 20:54:19 +0000 (05:54 +0900)]
network: drop redundant list of prefixes and route prefixes
Yu Watanabe [Tue, 29 Sep 2020 20:40:14 +0000 (05:40 +0900)]
network: make prefix_free() and route_prefix_free() return NULL
Yu Watanabe [Tue, 29 Sep 2020 20:29:42 +0000 (05:29 +0900)]
network: warn if IPv6ProxyNDPAddress= is set and IPv6ProxyNDP= is disabled
Yu Watanabe [Tue, 29 Sep 2020 20:24:03 +0000 (05:24 +0900)]
network: propagate errors in ipv6_proxy_ndp_set()
And ignore IPv6ProxyNDPAddress= settings if proxy_ndp is zero.
Yu Watanabe [Tue, 29 Sep 2020 20:16:25 +0000 (05:16 +0900)]
network: drop networkd-ipv6-proxy-ndp.h from networkd-network.h
Yu Watanabe [Tue, 29 Sep 2020 20:15:32 +0000 (05:15 +0900)]
network: rename ipv6_proxy_ndp_addresses_configure() -> link_set_ipv6_proxy_ndp_addresses()
Yu Watanabe [Tue, 29 Sep 2020 20:06:17 +0000 (05:06 +0900)]
network: drop struct IPv6ProxyNDPAddress
Its only important value is in6_addr. So, let's just use struct in6_addr
and drop IPv6ProxyNDPAddress.
Yu Watanabe [Tue, 29 Sep 2020 19:37:18 +0000 (04:37 +0900)]
network: move functions
Yu Watanabe [Tue, 29 Sep 2020 17:49:14 +0000 (02:49 +0900)]
network: cleanup networkd-mdb.h
Yu Watanabe [Tue, 29 Sep 2020 17:44:57 +0000 (02:44 +0900)]
network: introduce network_verify_mdb_entries()
Yu Watanabe [Tue, 29 Sep 2020 17:40:28 +0000 (02:40 +0900)]
network: drop list of bridge MDB entries
[BridgeMDB] sections are managed by LIST and Hashmap, and they contins
the completely same information. Let's drop the list.
Yu Watanabe [Tue, 29 Sep 2020 17:33:14 +0000 (02:33 +0900)]
network: move mdb_entry_free() and friends
Yu Watanabe [Tue, 29 Sep 2020 17:24:02 +0000 (02:24 +0900)]
network: cleanup networkd-fdb.h
Yu Watanabe [Tue, 29 Sep 2020 17:14:19 +0000 (02:14 +0900)]
network: drop unused fdb_ntf_flags_to_string()
Yu Watanabe [Tue, 29 Sep 2020 17:09:28 +0000 (02:09 +0900)]
network: introduce network_verify_fdb_entries()
Yu Watanabe [Tue, 29 Sep 2020 17:05:08 +0000 (02:05 +0900)]
network: move link_set_bridge_fdb()