Lines Matching full:len
199 * @len: Length of actual data
273 unsigned int len,
366 extern void skb_over_panic(struct sk_buff *skb, int len,
368 extern void skb_under_panic(struct sk_buff *skb, int len,
374 if (unlikely((int)skb->truesize < sizeof(struct sk_buff) + skb->len))
380 int len,int odd, struct sk_buff *skb),
791 return skb->len - skb->data_len;
796 int i, len = 0;
799 len += skb_shinfo(skb)->frags[i].size;
800 return len + skb_headlen(skb);
821 static inline unsigned char *__skb_put(struct sk_buff *skb, unsigned int len)
825 skb->tail += len;
826 skb->len += len;
833 * @len: amount of data to add
839 static inline unsigned char *skb_put(struct sk_buff *skb, unsigned int len)
843 skb->tail += len;
844 skb->len += len;
846 skb_over_panic(skb, len, current_text_addr());
850 static inline unsigned char *__skb_push(struct sk_buff *skb, unsigned int len)
852 skb->data -= len;
853 skb->len += len;
860 * @len: amount of data to add
866 static inline unsigned char *skb_push(struct sk_buff *skb, unsigned int len)
868 skb->data -= len;
869 skb->len += len;
871 skb_under_panic(skb, len, current_text_addr());
875 static inline unsigned char *__skb_pull(struct sk_buff *skb, unsigned int len)
877 skb->len -= len;
878 BUG_ON(skb->len < skb->data_len);
879 return skb->data += len;
885 * @len: amount of data to remove
892 static inline unsigned char *skb_pull(struct sk_buff *skb, unsigned int len)
894 return unlikely(len > skb->len) ? NULL : __skb_pull(skb, len);
899 static inline unsigned char *__pskb_pull(struct sk_buff *skb, unsigned int len)
901 if (len > skb_headlen(skb) &&
902 !__pskb_pull_tail(skb, len-skb_headlen(skb)))
904 skb->len -= len;
905 return skb->data += len;
908 static inline unsigned char *pskb_pull(struct sk_buff *skb, unsigned int len)
910 return unlikely(len > skb->len) ? NULL : __pskb_pull(skb, len);
913 static inline int pskb_may_pull(struct sk_buff *skb, unsigned int len)
915 if (likely(len <= skb_headlen(skb)))
917 if (unlikely(len > skb->len))
919 return __pskb_pull_tail(skb, len-skb_headlen(skb)) != NULL;
947 * @len: bytes to move
952 static inline void skb_reserve(struct sk_buff *skb, int len)
954 skb->data += len;
955 skb->tail += len;
1001 extern int ___pskb_trim(struct sk_buff *skb, unsigned int len);
1003 static inline void __skb_trim(struct sk_buff *skb, unsigned int len)
1009 skb->len = len;
1010 skb->tail = skb->data + len;
1016 * @len: new length
1022 static inline void skb_trim(struct sk_buff *skb, unsigned int len)
1024 if (skb->len > len)
1025 __skb_trim(skb, len);
1029 static inline int __pskb_trim(struct sk_buff *skb, unsigned int len)
1032 return ___pskb_trim(skb, len);
1033 __skb_trim(skb, len);
1037 static inline int pskb_trim(struct sk_buff *skb, unsigned int len)
1039 return (len < skb->len) ? __pskb_trim(skb, len) : 0;
1045 * @len: new length
1051 static inline void pskb_trim_unique(struct sk_buff *skb, unsigned int len)
1053 int err = pskb_trim(skb, len);
1178 * @len: minimal length
1186 static inline int skb_padto(struct sk_buff *skb, unsigned int len)
1188 unsigned int size = skb->len;
1189 if (likely(size >= len))
1191 return skb_pad(skb, len-size);
1197 const int off = skb->len;
1261 * @len: length of data pulled
1269 const void *start, unsigned int len)
1272 skb->csum = csum_sub(skb->csum, csum_partial(start, len, 0));
1275 unsigned char *skb_pull_rcsum(struct sk_buff *skb, unsigned int len);
1280 * @len: new length
1286 static inline int pskb_trim_rcsum(struct sk_buff *skb, unsigned int len)
1288 if (likely(len >= skb->len))
1292 return __pskb_trim(skb, len);
1338 int len, unsigned int csum);
1340 void *to, int len);
1342 void *from, int len);
1344 int offset, u8 *to, int len,
1348 struct sk_buff *skb1, const u32 len);
1353 int len, void *buffer)
1357 if (hlen - offset >= len)
1360 if (skb_copy_bits(skb, offset, buffer, len) < 0)