Lines Matching refs:netlink

23 static void netlink_receive_link(struct netlink_data *netlink,  in netlink_receive_link()  argument
30 cb(netlink->cfg->ctx, NLMSG_DATA(h), in netlink_receive_link()
38 struct netlink_data *netlink = eloop_ctx; in netlink_receive() local
61 netlink_receive_link(netlink, netlink->cfg->newlink_cb, in netlink_receive()
65 netlink_receive_link(netlink, netlink->cfg->dellink_cb, in netlink_receive()
93 struct netlink_data *netlink; in netlink_init() local
96 netlink = os_zalloc(sizeof(*netlink)); in netlink_init()
97 if (netlink == NULL) in netlink_init()
100 netlink->sock = socket(PF_NETLINK, SOCK_RAW, NETLINK_ROUTE); in netlink_init()
101 if (netlink->sock < 0) { in netlink_init()
104 netlink_deinit(netlink); in netlink_init()
111 if (bind(netlink->sock, (struct sockaddr *) &local, sizeof(local)) < 0) in netlink_init()
115 netlink_deinit(netlink); in netlink_init()
119 eloop_register_read_sock(netlink->sock, netlink_receive, netlink, in netlink_init()
122 netlink->cfg = cfg; in netlink_init()
124 return netlink; in netlink_init()
128 void netlink_deinit(struct netlink_data *netlink) in netlink_deinit() argument
130 if (netlink == NULL) in netlink_deinit()
132 if (netlink->sock >= 0) { in netlink_deinit()
133 eloop_unregister_read_sock(netlink->sock); in netlink_deinit()
134 close(netlink->sock); in netlink_deinit()
136 os_free(netlink->cfg); in netlink_deinit()
137 os_free(netlink); in netlink_deinit()
169 int netlink_send_oper_ifla(struct netlink_data *netlink, int ifindex, in netlink_send_oper_ifla() argument
218 ret = send(netlink->sock, &req, req.hdr.nlmsg_len, 0); in netlink_send_oper_ifla()