Lines Matching refs:nlh

494 	struct nlmsghdr		*nlh;  member
608 static inline void *nlmsg_data(const struct nlmsghdr *nlh) in nlmsg_data() argument
610 return (unsigned char *) nlh + NLMSG_HDRLEN; in nlmsg_data()
617 static inline int nlmsg_len(const struct nlmsghdr *nlh) in nlmsg_len() argument
619 return nlh->nlmsg_len - NLMSG_HDRLEN; in nlmsg_len()
630 static inline void *nlmsg_payload(const struct nlmsghdr *nlh, size_t len) in nlmsg_payload() argument
632 if (nlh->nlmsg_len < nlmsg_msg_size(len)) in nlmsg_payload()
635 return nlmsg_data(nlh); in nlmsg_payload()
643 static inline struct nlattr *nlmsg_attrdata(const struct nlmsghdr *nlh, in nlmsg_attrdata() argument
646 unsigned char *data = nlmsg_data(nlh); in nlmsg_attrdata()
655 static inline int nlmsg_attrlen(const struct nlmsghdr *nlh, int hdrlen) in nlmsg_attrlen() argument
657 return nlmsg_len(nlh) - NLMSG_ALIGN(hdrlen); in nlmsg_attrlen()
665 static inline int nlmsg_ok(const struct nlmsghdr *nlh, int remaining) in nlmsg_ok() argument
668 nlh->nlmsg_len >= sizeof(struct nlmsghdr) && in nlmsg_ok()
669 nlh->nlmsg_len <= remaining); in nlmsg_ok()
681 nlmsg_next(const struct nlmsghdr *nlh, int *remaining) in nlmsg_next() argument
683 int totlen = NLMSG_ALIGN(nlh->nlmsg_len); in nlmsg_next()
687 return (struct nlmsghdr *) ((unsigned char *) nlh + totlen); in nlmsg_next()
778 static inline int __nlmsg_parse(const struct nlmsghdr *nlh, int hdrlen, in __nlmsg_parse() argument
784 if (nlh->nlmsg_len < nlmsg_msg_size(hdrlen)) { in __nlmsg_parse()
789 return __nla_parse(tb, maxtype, nlmsg_attrdata(nlh, hdrlen), in __nlmsg_parse()
790 nlmsg_attrlen(nlh, hdrlen), policy, validate, in __nlmsg_parse()
805 static inline int nlmsg_parse(const struct nlmsghdr *nlh, int hdrlen, in nlmsg_parse() argument
810 return __nlmsg_parse(nlh, hdrlen, tb, maxtype, policy, in nlmsg_parse()
825 static inline int nlmsg_parse_deprecated(const struct nlmsghdr *nlh, int hdrlen, in nlmsg_parse_deprecated() argument
830 return __nlmsg_parse(nlh, hdrlen, tb, maxtype, policy, in nlmsg_parse_deprecated()
846 nlmsg_parse_deprecated_strict(const struct nlmsghdr *nlh, int hdrlen, in nlmsg_parse_deprecated_strict() argument
851 return __nlmsg_parse(nlh, hdrlen, tb, maxtype, policy, in nlmsg_parse_deprecated_strict()
863 static inline struct nlattr *nlmsg_find_attr(const struct nlmsghdr *nlh, in nlmsg_find_attr() argument
866 return nla_find(nlmsg_attrdata(nlh, hdrlen), in nlmsg_find_attr()
867 nlmsg_attrlen(nlh, hdrlen), attrtype); in nlmsg_find_attr()
923 static inline int nlmsg_validate_deprecated(const struct nlmsghdr *nlh, in nlmsg_validate_deprecated() argument
928 if (nlh->nlmsg_len < nlmsg_msg_size(hdrlen)) in nlmsg_validate_deprecated()
931 return __nla_validate(nlmsg_attrdata(nlh, hdrlen), in nlmsg_validate_deprecated()
932 nlmsg_attrlen(nlh, hdrlen), maxtype, in nlmsg_validate_deprecated()
944 static inline int nlmsg_report(const struct nlmsghdr *nlh) in nlmsg_report() argument
946 return nlh ? !!(nlh->nlmsg_flags & NLM_F_ECHO) : 0; in nlmsg_report()
955 static inline u32 nlmsg_seq(const struct nlmsghdr *nlh) in nlmsg_seq() argument
957 return nlh ? nlh->nlmsg_seq : 0; in nlmsg_seq()
967 #define nlmsg_for_each_attr(pos, nlh, hdrlen, rem) \ argument
968 nla_for_each_attr(pos, nlmsg_attrdata(nlh, hdrlen), \
969 nlmsg_attrlen(nlh, hdrlen), rem)
979 #define nlmsg_for_each_attr_type(pos, type, nlh, hdrlen, rem) \ argument
980 nlmsg_for_each_attr(pos, nlh, hdrlen, rem) \
1041 return nlmsg_put(skb, NETLINK_CB(cb->skb).portid, cb->nlh->nlmsg_seq, in nlmsg_put_answer()
1081 static inline void nlmsg_end(struct sk_buff *skb, struct nlmsghdr *nlh) in nlmsg_end() argument
1083 nlh->nlmsg_len = skb_tail_pointer(skb) - (unsigned char *)nlh; in nlmsg_end()
1120 static inline void nlmsg_cancel(struct sk_buff *skb, struct nlmsghdr *nlh) in nlmsg_cancel() argument
1122 nlmsg_trim(skb, nlh); in nlmsg_cancel()
1234 struct nlmsghdr *nlh) in nl_dump_check_consistent() argument
1237 nlh->nlmsg_flags |= NLM_F_DUMP_INTR; in nl_dump_check_consistent()