00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef NETLINK_GENL_FAMILY_H_
00013 #define NETLINK_GENL_FAMILY_H_
00014
00015 #include <netlink/netlink.h>
00016 #include <netlink/cache.h>
00017
00018 #ifdef __cplusplus
00019 extern "C" {
00020 #endif
00021
00022 struct genl_family;
00023
00024 extern struct genl_family * genl_family_alloc(void);
00025 extern void genl_family_put(struct genl_family *);
00026
00027 extern unsigned int genl_family_get_id(struct genl_family *);
00028 extern void genl_family_set_id(struct genl_family *,
00029 unsigned int);
00030 extern char * genl_family_get_name(struct genl_family *);
00031 extern void genl_family_set_name(struct genl_family *,
00032 const char *name);
00033 extern uint8_t genl_family_get_version(struct genl_family *);
00034 extern void genl_family_set_version(struct genl_family *,
00035 uint8_t);
00036 extern uint32_t genl_family_get_hdrsize(struct genl_family *);
00037 extern void genl_family_set_hdrsize(struct genl_family *,
00038 uint32_t);
00039 extern uint32_t genl_family_get_maxattr(struct genl_family *);
00040 extern void genl_family_set_maxattr(struct genl_family *,
00041 uint32_t);
00042
00043 extern int genl_family_add_op(struct genl_family *,
00044 int, int);
00045 extern int genl_family_add_grp(struct genl_family *,
00046 uint32_t , const char *);
00047
00048
00049 #ifdef __cplusplus
00050 }
00051 #endif
00052
00053 #endif