1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
5 #include "sd-netlink.h"
6 #include "sd-network.h"
9 #include "network-util.h"
10 #include "time-util.h"
12 typedef struct Manager Manager
;
13 typedef struct Link Link
;
17 Hashmap
*links_by_name
;
19 /* Do not free the two members below. */
23 LinkOperationalStateRange required_operstate
;
24 AddressFamily required_family
;
28 sd_event_source
*rtnl_event_source
;
30 sd_network_monitor
*network_monitor
;
31 sd_event_source
*network_monitor_event_source
;
36 Manager
* manager_free(Manager
*m
);
37 int manager_new(Manager
**ret
, Hashmap
*interfaces
, char **ignore
,
38 LinkOperationalStateRange required_operstate
,
39 AddressFamily required_family
,
40 bool any
, usec_t timeout
);
42 DEFINE_TRIVIAL_CLEANUP_FUNC(Manager
*, manager_free
);
44 bool manager_configured(Manager
*m
);