diff options
Diffstat (limited to 'doc/src/examples/nlmsg_parse.c')
-rw-r--r-- | doc/src/examples/nlmsg_parse.c | 29 |
1 files changed, 0 insertions, 29 deletions
diff --git a/doc/src/examples/nlmsg_parse.c b/doc/src/examples/nlmsg_parse.c deleted file mode 100644 index ac6acb3..0000000 --- a/doc/src/examples/nlmsg_parse.c +++ /dev/null @@ -1,29 +0,0 @@ -#include <netlink/msg.h> -#include <netlink/attr.h> - -enum { - MY_ATTR_FOO = 1, - MY_ATTR_BAR, - __MY_ATTR_MAX, -}; - -#define MY_ATTR_MAX (__MY_ATTR_MAX - 1) - -static struct nla_policy my_policy[MY_ATTR_MAX+1] = { - [MY_ATTR_FOO] = { .type = NLA_U32 }, - [MY_ATTR_BAR] = { .type = NLA_STRING, - .maxlen = 16 }, -}; - -void parse_msg(struct nlmsghdr *nlh) -{ - struct nlattr *attrs[MY_ATTR_MAX+1]; - - if (nlmsg_parse(nlh, 0, attrs, MY_ATTR_MAX, my_policy) < 0) - /* error */ - - if (attrs[MY_ATTR_FOO]) { - /* MY_ATTR_FOO is present in message */ - printf("value: %u\n", nla_get_u32(attrs[MY_ATTR_FOO])); - } -} |