Lines Matching refs:len

22 u64 dccp_decode_value_var(const u8 *bf, const u8 len)  in dccp_decode_value_var()  argument
26 if (len >= DCCP_OPTVAL_MAXLEN) in dccp_decode_value_var()
28 if (len > 4) in dccp_decode_value_var()
30 if (len > 3) in dccp_decode_value_var()
32 if (len > 2) in dccp_decode_value_var()
34 if (len > 1) in dccp_decode_value_var()
36 if (len > 0) in dccp_decode_value_var()
59 unsigned char opt, len; in dccp_parse_options() local
68 opt = len = 0; in dccp_parse_options()
71 len = 0; in dccp_parse_options()
79 len = *opt_ptr++; in dccp_parse_options()
80 if (len < 2) in dccp_parse_options()
86 len -= 2; in dccp_parse_options()
88 opt_ptr += len; in dccp_parse_options()
113 if (len > 6) in dccp_parse_options()
116 opt_recv->dccpor_ndp = dccp_decode_value_var(value, len); in dccp_parse_options()
123 if (len == 0) in dccp_parse_options()
126 *value, value + 1, len - 1); in dccp_parse_options()
131 if (len != 4) in dccp_parse_options()
160 if (len != 4 && len != 6 && len != 8) in dccp_parse_options()
169 len + 2, in dccp_parse_options()
175 if (len == 4) { /* no elapsed time included */ in dccp_parse_options()
180 if (len == 6) { /* 2-byte elapsed time */ in dccp_parse_options()
198 if (len == 2) { in dccp_parse_options()
201 } else if (len == 4) { in dccp_parse_options()
216 pkt_type, opt, value, len)) in dccp_parse_options()
231 pkt_type, opt, value, len)) in dccp_parse_options()
236 "implemented, ignoring", sk, opt, len); in dccp_parse_options()
256 DCCP_WARN("DCCP(%p): Option %d (len=%d) error=%u\n", sk, opt, len, rc); in dccp_parse_options()
259 DCCP_SKB_CB(skb)->dccpd_reset_data[1] = len > 0 ? value[0] : 0; in dccp_parse_options()
260 DCCP_SKB_CB(skb)->dccpd_reset_data[2] = len > 1 ? value[1] : 0; in dccp_parse_options()
266 void dccp_encode_value_var(const u64 value, u8 *to, const u8 len) in dccp_encode_value_var() argument
268 if (len >= DCCP_OPTVAL_MAXLEN) in dccp_encode_value_var()
270 if (len > 4) in dccp_encode_value_var()
272 if (len > 3) in dccp_encode_value_var()
274 if (len > 2) in dccp_encode_value_var()
276 if (len > 1) in dccp_encode_value_var()
278 if (len > 0) in dccp_encode_value_var()
290 const void *value, const unsigned char len) in dccp_insert_option() argument
294 if (DCCP_SKB_CB(skb)->dccpd_opt_len + len + 2 > DCCP_MAX_OPT_LEN) in dccp_insert_option()
297 DCCP_SKB_CB(skb)->dccpd_opt_len += len + 2; in dccp_insert_option()
299 to = skb_push(skb, len + 2); in dccp_insert_option()
301 *to++ = len + 2; in dccp_insert_option()
303 memcpy(to, value, len); in dccp_insert_option()
322 const int len = ndp_len + 2; in dccp_insert_option_ndp() local
324 if (DCCP_SKB_CB(skb)->dccpd_opt_len + len > DCCP_MAX_OPT_LEN) in dccp_insert_option_ndp()
327 DCCP_SKB_CB(skb)->dccpd_opt_len += len; in dccp_insert_option_ndp()
329 ptr = skb_push(skb, len); in dccp_insert_option_ndp()
331 *ptr++ = len; in dccp_insert_option_ndp()
358 u32 elapsed_time, elapsed_time_len, len; in dccp_insert_option_timestamp_echo() local
371 len = 6 + elapsed_time_len; in dccp_insert_option_timestamp_echo()
373 if (DCCP_SKB_CB(skb)->dccpd_opt_len + len > DCCP_MAX_OPT_LEN) in dccp_insert_option_timestamp_echo()
376 DCCP_SKB_CB(skb)->dccpd_opt_len += len; in dccp_insert_option_timestamp_echo()
378 to = skb_push(skb, len); in dccp_insert_option_timestamp_echo()
380 *to++ = len; in dccp_insert_option_timestamp_echo()
404 u16 len = buflen + 2 * nr_opts; in dccp_insert_option_ackvec() local
409 if (dcb->dccpd_opt_len + len > DCCP_MAX_OPT_LEN) { in dccp_insert_option_ackvec()
410 DCCP_WARN("Lacking space for %u bytes on %s packet\n", len, in dccp_insert_option_ackvec()
419 if (len > DCCPAV_MIN_OPTLEN && in dccp_insert_option_ackvec()
420 len + dcb->dccpd_opt_len + skb->len > dp->dccps_mss_cache) { in dccp_insert_option_ackvec()
422 "MPS=%u ==> reduce payload size?\n", len, skb->len, in dccp_insert_option_ackvec()
427 dcb->dccpd_opt_len += len; in dccp_insert_option_ackvec()
429 to = skb_push(skb, len); in dccp_insert_option_ackvec()
430 len = buflen; in dccp_insert_option_ackvec()
435 int copylen = len; in dccp_insert_option_ackvec()
437 if (len > DCCP_SINGLE_OPT_MAXLEN) in dccp_insert_option_ackvec()
455 len -= tailsize; in dccp_insert_option_ackvec()
463 len -= copylen; in dccp_insert_option_ackvec()
505 u8 *val, u8 len, bool repeat_first) in dccp_insert_fn_opt() argument
510 if (len > (DCCP_SINGLE_OPT_MAXLEN - 2)) { in dccp_insert_fn_opt()
511 DCCP_WARN("length %u for feature %u too large\n", len, feat); in dccp_insert_fn_opt()
515 if (unlikely(val == NULL || len == 0)) in dccp_insert_fn_opt()
516 len = repeat_first = false; in dccp_insert_fn_opt()
517 tot_len = 3 + repeat_first + len; in dccp_insert_fn_opt()
532 if (len) in dccp_insert_fn_opt()
533 memcpy(to, val, len); in dccp_insert_fn_opt()