Lines Matching refs:attrlen

364 	int minlen = 0, attrlen = nla_len(nla), type = nla_type(nla);
378 if (nla_attr_len[pt->type] && attrlen != nla_attr_len[pt->type]) {
414 if (attrlen > 0)
419 if (attrlen != sizeof(struct nla_bitfield32))
429 minlen = min_t(int, attrlen, pt->len + 1);
431 minlen = attrlen;
440 if (attrlen < 1)
446 if (buf[attrlen - 1] == '\0')
447 attrlen--;
449 if (attrlen > pt->len)
455 if (pt->len && attrlen > pt->len)
463 if (attrlen == 0)
465 if (attrlen < NLA_HDRLEN)
485 if (attrlen == 0)
487 if (attrlen < NLA_HDRLEN)
511 if (attrlen < pt->len)
521 if (attrlen < minlen)
819 int attrlen = nla_len(nla);
822 while (attrlen > 0 && buf[attrlen - 1] == '\0')
823 attrlen--;
825 d = attrlen - len;
838 * @attrlen: length of attribute payload
846 struct nlattr *__nla_reserve(struct sk_buff *skb, int attrtype, int attrlen)
850 nla = skb_put(skb, nla_total_size(attrlen));
852 nla->nla_len = nla_attr_size(attrlen);
854 memset((unsigned char *) nla + nla->nla_len, 0, nla_padlen(attrlen));
864 * @attrlen: length of attribute payload
875 int attrlen, int padattr)
879 return __nla_reserve(skb, attrtype, attrlen);
886 * @attrlen: length of attribute payload
893 void *__nla_reserve_nohdr(struct sk_buff *skb, int attrlen)
895 return skb_put_zero(skb, NLA_ALIGN(attrlen));
903 * @attrlen: length of attribute payload
911 struct nlattr *nla_reserve(struct sk_buff *skb, int attrtype, int attrlen)
913 if (unlikely(skb_tailroom(skb) < nla_total_size(attrlen)))
916 return __nla_reserve(skb, attrtype, attrlen);
924 * @attrlen: length of attribute payload
934 struct nlattr *nla_reserve_64bit(struct sk_buff *skb, int attrtype, int attrlen,
940 len = nla_total_size_64bit(attrlen);
942 len = nla_total_size(attrlen);
946 return __nla_reserve_64bit(skb, attrtype, attrlen, padattr);
953 * @attrlen: length of attribute payload
960 void *nla_reserve_nohdr(struct sk_buff *skb, int attrlen)
962 if (unlikely(skb_tailroom(skb) < NLA_ALIGN(attrlen)))
965 return __nla_reserve_nohdr(skb, attrlen);
973 * @attrlen: length of attribute payload
979 void __nla_put(struct sk_buff *skb, int attrtype, int attrlen,
984 nla = __nla_reserve(skb, attrtype, attrlen);
985 memcpy(nla_data(nla), data, attrlen);
993 * @attrlen: length of attribute payload
1000 void __nla_put_64bit(struct sk_buff *skb, int attrtype, int attrlen,
1005 nla = __nla_reserve_64bit(skb, attrtype, attrlen, padattr);
1006 memcpy(nla_data(nla), data, attrlen);
1013 * @attrlen: length of attribute payload
1019 void __nla_put_nohdr(struct sk_buff *skb, int attrlen, const void *data)
1023 start = __nla_reserve_nohdr(skb, attrlen);
1024 memcpy(start, data, attrlen);
1032 * @attrlen: length of attribute payload
1038 int nla_put(struct sk_buff *skb, int attrtype, int attrlen, const void *data)
1040 if (unlikely(skb_tailroom(skb) < nla_total_size(attrlen)))
1043 __nla_put(skb, attrtype, attrlen, data);
1052 * @attrlen: length of attribute payload
1059 int nla_put_64bit(struct sk_buff *skb, int attrtype, int attrlen,
1065 len = nla_total_size_64bit(attrlen);
1067 len = nla_total_size(attrlen);
1071 __nla_put_64bit(skb, attrtype, attrlen, data, padattr);
1079 * @attrlen: length of attribute payload
1085 int nla_put_nohdr(struct sk_buff *skb, int attrlen, const void *data)
1087 if (unlikely(skb_tailroom(skb) < NLA_ALIGN(attrlen)))
1090 __nla_put_nohdr(skb, attrlen, data);
1098 * @attrlen: length of attribute payload
1104 int nla_append(struct sk_buff *skb, int attrlen, const void *data)
1106 if (unlikely(skb_tailroom(skb) < NLA_ALIGN(attrlen)))
1109 skb_put_data(skb, data, attrlen);