Lines Matching refs:feat_num

129 	u8			feat_num;		/* DCCPF_xxx */  member
172 static int dccp_feat_index(u8 feat_num) in dccp_feat_index() argument
175 if (feat_num > DCCPF_RESERVED && feat_num <= DCCPF_DATA_CHECKSUM) in dccp_feat_index()
176 return feat_num - 1; in dccp_feat_index()
182 switch (feat_num) { in dccp_feat_index()
189 static u8 dccp_feat_type(u8 feat_num) in dccp_feat_type() argument
191 int idx = dccp_feat_index(feat_num); in dccp_feat_type()
198 static int dccp_feat_default_value(u8 feat_num) in dccp_feat_default_value() argument
200 int idx = dccp_feat_index(feat_num); in dccp_feat_default_value()
254 static void dccp_feat_printval(u8 feat_num, dccp_feat_val const *val) in dccp_feat_printval() argument
256 u8 i, type = dccp_feat_type(feat_num); in dccp_feat_printval()
269 static void dccp_feat_printvals(u8 feat_num, u8 *list, u8 len) in dccp_feat_printvals() argument
271 u8 type = dccp_feat_type(feat_num); in dccp_feat_printvals()
276 dccp_feat_printval(feat_num, &fval); in dccp_feat_printvals()
282 dccp_feat_fname(entry->feat_num)); in dccp_feat_print_entry()
283 dccp_feat_printval(entry->feat_num, &entry->val); in dccp_feat_print_entry()
338 dccp_feat_fname(dccp_feat_table[idx].feat_num), in __dccp_feat_activate()
353 static int dccp_feat_activate(struct sock *sk, u8 feat_num, bool local, in dccp_feat_activate() argument
356 return __dccp_feat_activate(sk, dccp_feat_index(feat_num), local, fval); in dccp_feat_activate()
360 static inline int dccp_feat_must_be_understood(u8 feat_num) in dccp_feat_must_be_understood() argument
362 return feat_num == DCCPF_CCID || feat_num == DCCPF_SHORT_SEQNOS || in dccp_feat_must_be_understood()
363 feat_num == DCCPF_SEQUENCE_WINDOW; in dccp_feat_must_be_understood()
380 static void dccp_feat_val_destructor(u8 feat_num, dccp_feat_val *val) in dccp_feat_val_destructor() argument
384 if (dccp_feat_type(feat_num) == FEAT_SP) in dccp_feat_val_destructor()
393 u8 type = dccp_feat_type(original->feat_num); in dccp_feat_clone_entry()
414 dccp_feat_val_destructor(entry->feat_num, &entry->val); in dccp_feat_entry_destructor()
429 u8 feat_num, bool is_local) in dccp_feat_list_lookup() argument
434 if (entry->feat_num == feat_num && entry->is_local == is_local) in dccp_feat_list_lookup()
436 else if (entry->feat_num > feat_num) in dccp_feat_list_lookup()
456 if (entry->feat_num == feat && entry->is_local == local) { in dccp_feat_entry_new()
457 dccp_feat_val_destructor(entry->feat_num, &entry->val); in dccp_feat_entry_new()
459 } else if (entry->feat_num > feat) { in dccp_feat_entry_new()
466 entry->feat_num = feat; in dccp_feat_entry_new()
489 new->feat_num = feat; in dccp_feat_push_change()
517 new->feat_num = feat; in dccp_feat_push_confirm()
577 static u8 dccp_feat_valid_nn_length(u8 feat_num) in dccp_feat_valid_nn_length() argument
579 if (feat_num == DCCPF_ACK_RATIO) /* RFC 4340, 11.3 and 6.6.8 */ in dccp_feat_valid_nn_length()
581 if (feat_num == DCCPF_SEQUENCE_WINDOW) /* RFC 4340, 7.5.2 and 6.5 */ in dccp_feat_valid_nn_length()
586 static u8 dccp_feat_is_valid_nn_val(u8 feat_num, u64 val) in dccp_feat_is_valid_nn_val() argument
588 switch (feat_num) { in dccp_feat_is_valid_nn_val()
598 static u8 dccp_feat_is_valid_sp_val(u8 feat_num, u8 val) in dccp_feat_is_valid_sp_val() argument
600 switch (feat_num) { in dccp_feat_is_valid_sp_val()
617 static u8 dccp_feat_sp_list_ok(u8 feat_num, u8 const *sp_list, u8 sp_len) in dccp_feat_sp_list_ok() argument
622 if (!dccp_feat_is_valid_sp_val(feat_num, *sp_list++)) in dccp_feat_sp_list_ok()
644 type = dccp_feat_type(pos->feat_num); in dccp_feat_insert_opts()
656 len = dccp_feat_valid_nn_length(pos->feat_num); in dccp_feat_insert_opts()
660 DCCP_BUG("unknown feature %u", pos->feat_num); in dccp_feat_insert_opts()
664 dccp_feat_print_opt(opt, pos->feat_num, ptr, len, 0); in dccp_feat_insert_opts()
666 if (dccp_insert_fn_opt(skb, opt, pos->feat_num, ptr, len, rpt)) in dccp_feat_insert_opts()
988 if (entry->feat_num == DCCPF_CCID && entry->val.sp.len == 1) in dccp_feat_finalise_settings()
1528 idx = dccp_feat_index(cur->feat_num); in dccp_feat_activate_values()
1530 DCCP_BUG("Unknown feature %u", cur->feat_num); in dccp_feat_activate_values()
1536 dccp_feat_fname(cur->feat_num), in dccp_feat_activate_values()