libnl 3.10.0
nl-genl.h
1/* SPDX-License-Identifier: LGPL-2.1-only */
2/*
3 * Copyright (c) 2003-2013 Thomas Graf <tgraf@suug.ch>
4 */
5
6#ifndef NETLINK_GENL_PRIV_H_
7#define NETLINK_GENL_PRIV_H_
8
9#include <netlink/netlink.h>
10
11#include "nl-priv-dynamic-core/object-api.h"
12#include "nl-priv-dynamic-core/cache-api.h"
13
14#define GENL_HDRSIZE(hdrlen) (GENL_HDRLEN + (hdrlen))
15
16/*****************************************************************************/
17
18/* WARNING: this symbol is wrongly exported in libnl-genl-3.sym. */
19extern int genl_resolve_id(struct genl_ops *ops);
20
21/*****************************************************************************/
22
23#define GENL_OP_HAS_POLICY 1
24#define GENL_OP_HAS_DOIT 2
25#define GENL_OP_HAS_DUMPIT 4
26
28 struct genl_family *family; /* private */
29 struct nl_list_head list; /* private */
30 char name[GENL_NAMSIZ];
31 u_int32_t id;
32};
33
35{
36 NLHDR_COMMON
37
38 uint16_t gf_id;
39 char gf_name[GENL_NAMSIZ];
40 uint32_t gf_version;
41 uint32_t gf_hdrsize;
42 uint32_t gf_maxattr;
43
44 struct nl_list_head gf_ops;
45 struct nl_list_head gf_mc_grps;
46};
47
48#endif
Definition of a Generic Netlink family.
Definition mngt.h:127