4 #include <netlink/netlink.h>
5 #include <netlink/genl/genl.h>
6 #include <netlink/genl/family.h>
11 struct nl_cache
*cache
;
12 struct genl_family
*family
;
18 int unl_genl_init(struct unl
*unl
, const char *family
);
19 void unl_free(struct unl
*unl
);
21 typedef int (*unl_cb
)(struct nl_msg
*, void *);
23 struct nl_msg
*unl_genl_msg(struct unl
*unl
, int cmd
, bool dump
);
24 int unl_genl_request(struct unl
*unl
, struct nl_msg
*msg
, unl_cb handler
, void *arg
);
25 int unl_genl_request_single(struct unl
*unl
, struct nl_msg
*msg
, struct nl_msg
**dest
);
26 void unl_genl_loop(struct unl
*unl
, unl_cb handler
, void *arg
);
28 int unl_genl_subscribe(struct unl
*unl
, const char *name
);
29 int unl_genl_unsubscribe(struct unl
*unl
, const char *name
);
31 int unl_nl80211_phy_lookup(const char *name
);
32 int unl_nl80211_wdev_to_phy(struct unl
*unl
, int wdev
);
33 struct nl_msg
*unl_nl80211_phy_msg(struct unl
*unl
, int phy
, int cmd
, bool dump
);
34 struct nl_msg
*unl_nl80211_vif_msg(struct unl
*unl
, int dev
, int cmd
, bool dump
);
36 static inline void unl_loop_done(struct unl
*unl
)
38 unl
->loop_done
= true;
41 static inline struct nlattr
*unl_find_attr(struct unl
*unl
, struct nl_msg
*msg
, int attr
)
43 return nlmsg_find_attr(nlmsg_hdr(msg
), unl
->hdrlen
, attr
);
This page took 0.068842 seconds and 5 git commands to generate.