Branch data Line data Source code
1 : : /* SPDX-License-Identifier: LGPL-2.1+ */ 2 : : #pragma once 3 : : 4 : : #include "sd-netlink.h" 5 : : 6 : : #include "log-link.h" 7 : : #include "network-util.h" 8 : : 9 : : typedef struct Link Link; 10 : : typedef struct Manager Manager; 11 : : 12 : : struct Link { 13 : : Manager *manager; 14 : : 15 : : int ifindex; 16 : : char *ifname; 17 : : unsigned flags; 18 : : 19 : : bool required_for_online; 20 : : LinkOperationalState required_operstate; 21 : : LinkOperationalState operational_state; 22 : : char *state; 23 : : }; 24 : : 25 : : int link_new(Manager *m, Link **ret, int ifindex, const char *ifname); 26 : : Link *link_free(Link *l); 27 : : int link_update_rtnl(Link *l, sd_netlink_message *m); 28 : : int link_update_monitor(Link *l); 29 : : 30 [ # # ]: 0 : DEFINE_TRIVIAL_CLEANUP_FUNC(Link*, link_free);