blob: 11c835301b50dff3d3f5ba92b16f17c31c3ce97b [file] [log] [blame]
Harald Welte53a2fde2020-12-01 22:21:14 +01001/*! \file select.h
2 * libmnl integration
3 */
4#pragma once
5
6#include <osmocom/core/select.h>
7#include <libmnl/libmnl.h>
8
9/*! osmocom wrapper around libmnl abstraction of netlink socket */
10struct osmo_mnl {
11 /*! osmo-wrapped netlink file descriptor */
12 struct osmo_fd ofd;
13 /*! libmnl socket abstraction */
14 struct mnl_socket *mnls;
15 /*! call-back called for received netlink messages */
16 mnl_cb_t mnl_cb;
17 /*! opaque data provided by user */
18 void *priv;
19};
20
21struct osmo_mnl *osmo_mnl_init(void *ctx, int bus, unsigned int groups, mnl_cb_t mnl_cb, void *priv);
22void osmo_mnl_destroy(struct osmo_mnl *omnl);