libnl 3.5.0

family.h
1 /*
2 * netlink/genl/family.h Generic Netlink Family
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation version 2.1
7 * of the License.
8 *
9 * Copyright (c) 2003-2012 Thomas Graf <tgraf@suug.ch>
10 */
11
12 #ifndef NETLINK_GENL_FAMILY_H_
13 #define NETLINK_GENL_FAMILY_H_
14
15 #include <netlink/netlink.h>
16 #include <netlink/cache.h>
17
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21
22 struct genl_family;
23
24 extern struct genl_family * genl_family_alloc(void);
25 extern void genl_family_put(struct genl_family *);
26
27 extern unsigned int genl_family_get_id(struct genl_family *);
28 extern void genl_family_set_id(struct genl_family *, unsigned int);
29 extern char * genl_family_get_name(struct genl_family *);
30 extern void genl_family_set_name(struct genl_family *, const char *);
31 extern uint8_t genl_family_get_version(struct genl_family *);
32 extern void genl_family_set_version(struct genl_family *, uint8_t);
33 extern uint32_t genl_family_get_hdrsize(struct genl_family *);
34 extern void genl_family_set_hdrsize(struct genl_family *, uint32_t);
35 extern uint32_t genl_family_get_maxattr(struct genl_family *);
36 extern void genl_family_set_maxattr(struct genl_family *, uint32_t);
37
38 extern int genl_family_add_op(struct genl_family *, int, int);
39 extern int genl_family_add_grp(struct genl_family *, uint32_t ,
40 const char *);
41
42
43 #ifdef __cplusplus
44 }
45 #endif
46
47 #endif
genl_family_set_version
void genl_family_set_version(struct genl_family *, uint8_t)
Set interface version.
Definition: family.c:291
genl_family_set_name
void genl_family_set_name(struct genl_family *, const char *)
Set human readable name.
Definition: family.c:261
genl_family_set_id
void genl_family_set_id(struct genl_family *, unsigned int)
Set the numeric identifier.
Definition: family.c:229
genl_family_get_version
uint8_t genl_family_get_version(struct genl_family *)
Return interface version.
Definition: family.c:278
genl_family_alloc
struct genl_family * genl_family_alloc(void)
Allocate new Generic Netlink family object.
Definition: family.c:184
genl_family_get_name
char * genl_family_get_name(struct genl_family *)
Return human readable name.
Definition: family.c:248
genl_family_put
void genl_family_put(struct genl_family *)
Release reference on Generic Netlink family object.
Definition: family.c:198
genl_family_get_id
unsigned int genl_family_get_id(struct genl_family *)
Return numeric identifier.
Definition: family.c:216
genl_family_get_hdrsize
uint32_t genl_family_get_hdrsize(struct genl_family *)
Return user header size expected by kernel component.
Definition: family.c:310