Blame devlink/mnlg.h

Packit d3f73b
/*
Packit d3f73b
 *   mnlg.h	Generic Netlink helpers for libmnl
Packit d3f73b
 *
Packit d3f73b
 *              This program is free software; you can redistribute it and/or
Packit d3f73b
 *              modify it under the terms of the GNU General Public License
Packit d3f73b
 *              as published by the Free Software Foundation; either version
Packit d3f73b
 *              2 of the License, or (at your option) any later version.
Packit d3f73b
 *
Packit d3f73b
 * Authors:     Jiri Pirko <jiri@mellanox.com>
Packit d3f73b
 */
Packit d3f73b
Packit d3f73b
#ifndef _MNLG_H_
Packit d3f73b
#define _MNLG_H_
Packit d3f73b
Packit d3f73b
#include <libmnl/libmnl.h>
Packit d3f73b
Packit d3f73b
struct mnlg_socket;
Packit d3f73b
Packit d3f73b
struct nlmsghdr *mnlg_msg_prepare(struct mnlg_socket *nlg, uint8_t cmd,
Packit d3f73b
				  uint16_t flags);
Packit d3f73b
int mnlg_socket_send(struct mnlg_socket *nlg, const struct nlmsghdr *nlh);
Packit d3f73b
int mnlg_socket_recv_run(struct mnlg_socket *nlg, mnl_cb_t data_cb, void *data);
Packit d3f73b
int mnlg_socket_group_add(struct mnlg_socket *nlg, const char *group_name);
Packit d3f73b
struct mnlg_socket *mnlg_socket_open(const char *family_name, uint8_t version);
Packit d3f73b
void mnlg_socket_close(struct mnlg_socket *nlg);
Packit d3f73b
Packit d3f73b
#endif /* _MNLG_H_ */