Lines Matching refs:family

2  * lib/genl/family.c		Generic Netlink Family
16 * Object representing a kernel side registered Generic Netlink family
24 #include <netlink/genl/family.h>
39 struct genl_family *family = (struct genl_family *) c;
41 nl_init_list_head(&family->gf_ops);
42 nl_init_list_head(&family->gf_mc_grps);
47 struct genl_family *family = (struct genl_family *) c;
51 if (family == NULL)
54 nl_list_for_each_entry_safe(ops, tmp, &family->gf_ops, o_list) {
59 nl_list_for_each_entry_safe(grp, t_grp, &family->gf_mc_grps, list) {
92 struct genl_family *family = (struct genl_family *) obj;
95 family->gf_id, family->gf_name, family->gf_version);
113 struct genl_family *family = (struct genl_family *) obj;
117 family->gf_hdrsize, family->gf_maxattr);
119 if (family->ce_mask & FAMILY_ATTR_OPS) {
123 nl_list_for_each_entry(op, &family->gf_ops, o_list) {
126 genl_op2name(family->gf_id, op->o_id, buf, sizeof(buf));
139 nl_list_for_each_entry(grp, &family->gf_mc_grps, list) {
177 * Allocate new Generic Netlink family object
179 * @return Newly allocated Generic Netlink family object or NULL.
187 * Release reference on Generic Netlink family object
188 * @arg family Generic Netlink family object
190 * Reduces the reference counter of a Generic Netlink family object by one.
195 void genl_family_put(struct genl_family *family)
197 nl_object_put((struct nl_object *) family);
209 * @arg family Generic Netlink family object
213 unsigned int genl_family_get_id(struct genl_family *family)
215 if (family->ce_mask & FAMILY_ATTR_ID)
216 return family->gf_id;
223 * @arg family Generic Netlink family object
226 void genl_family_set_id(struct genl_family *family, unsigned int id)
228 family->gf_id = id;
229 family->ce_mask |= FAMILY_ATTR_ID;
241 * @arg family Generic Netlink family object
243 * @return Name of family or NULL if not available
245 char *genl_family_get_name(struct genl_family *family)
247 if (family->ce_mask & FAMILY_ATTR_NAME)
248 return family->gf_name;
255 * @arg family Generic Netlink family object
258 void genl_family_set_name(struct genl_family *family, const char *name)
260 strncpy(family->gf_name, name, GENL_NAMSIZ-1);
261 family->ce_mask |= FAMILY_ATTR_NAME;
271 * @arg family Generic Netlink family object
275 uint8_t genl_family_get_version(struct genl_family *family)
277 if (family->ce_mask & FAMILY_ATTR_VERSION)
278 return family->gf_version;
285 * @arg family Generic Netlink family object
288 void genl_family_set_version(struct genl_family *family, uint8_t version)
290 family->gf_version = version;
291 family->ce_mask |= FAMILY_ATTR_VERSION;
303 * @arg family Generic Netlink family object
307 uint32_t genl_family_get_hdrsize(struct genl_family *family)
309 if (family->ce_mask & FAMILY_ATTR_HDRSIZE)
310 return family->gf_hdrsize;
315 void genl_family_set_hdrsize(struct genl_family *family, uint32_t hdrsize)
317 family->gf_hdrsize = hdrsize;
318 family->ce_mask |= FAMILY_ATTR_HDRSIZE;
328 uint32_t genl_family_get_maxattr(struct genl_family *family)
330 if (family->ce_mask & FAMILY_ATTR_MAXATTR)
331 return family->gf_maxattr;
333 return family->gf_maxattr;
336 void genl_family_set_maxattr(struct genl_family *family, uint32_t maxattr)
338 family->gf_maxattr = maxattr;
339 family->ce_mask |= FAMILY_ATTR_MAXATTR;
349 int genl_family_add_op(struct genl_family *family, int id, int flags)
360 nl_list_add_tail(&op->o_list, &family->gf_ops);
361 family->ce_mask |= FAMILY_ATTR_OPS;
366 int genl_family_add_grp(struct genl_family *family, uint32_t id,
378 nl_list_add_tail(&grp->list, &family->gf_mc_grps);
387 .oo_name = "genl/family",