Lines Matching defs:fval
272 dccp_feat_val fval = { .sp.vec = list, .sp.len = len };
275 fval.nn = dccp_decode_value_var(list, len);
276 dccp_feat_printval(feat_num, &fval);
306 const bool is_local, dccp_feat_val const *fval)
316 if (fval == NULL) {
319 if (fval->sp.vec == NULL) {
328 val = fval->sp.vec[0];
331 val = fval->nn;
339 fval ? "" : "default ", (unsigned long long)val);
349 * @fval: the value (SP or NN) to activate, or NULL to use the default value
354 dccp_feat_val const *fval)
356 return __dccp_feat_activate(sk, dccp_feat_index(feat_num), local, fval);
366 /* copy constructor, fval must not already contain allocated memory */
367 static int dccp_feat_clone_sp_val(dccp_feat_val *fval, u8 const *val, u8 len)
369 fval->sp.len = len;
370 if (fval->sp.len > 0) {
371 fval->sp.vec = kmemdup(val, len, gfp_any());
372 if (fval->sp.vec == NULL) {
373 fval->sp.len = 0;
479 * @fval: pointer to NN/SP value to be inserted (will be copied)
482 u8 mandatory, dccp_feat_val *fval)
494 new->val = *fval;
505 * @fval: pointer to NN/SP value to be inserted or NULL
510 dccp_feat_val *fval)
521 new->empty_confirm = (fval == NULL);
524 new->val = *fval;
702 dccp_feat_val fval = { .nn = nn_val };
712 return dccp_feat_push_change(fn, feat, 1, mandatory, &fval);
727 dccp_feat_val fval;
737 if (dccp_feat_clone_sp_val(&fval, sp_val, sp_len))
740 if (dccp_feat_push_change(fn, feat, is_local, mandatory, &fval)) {
741 kfree(fval.sp.vec);
808 dccp_feat_val fval = { .nn = nn_val };
830 return dccp_feat_push_change(fn, feat, 1, 0, &fval);
1068 * When successful, > 0 is returned and the reconciled list is in @fval.
1113 dccp_feat_val fval;
1125 if (local || len > sizeof(fval.nn))
1129 fval.nn = dccp_decode_value_var(val, len);
1130 if (!dccp_feat_is_valid_nn_val(feat, fval.nn))
1133 return dccp_feat_push_confirm(fn, feat, local, &fval);
1151 if (dccp_feat_clone_sp_val(&fval, val, 1))
1157 fval.sp.vec[0] = defval;
1158 } else if (!dccp_feat_is_valid_sp_val(feat, fval.sp.vec[0])) {
1159 kfree(fval.sp.vec);
1164 if (feat == DCCPF_CCID && !ccid_support_check(fval.sp.vec, 1)) {
1165 kfree(fval.sp.vec);
1169 return dccp_feat_push_confirm(fn, feat, local, &fval);
1322 dccp_feat_val fval;
1341 if (len == 0 || len > sizeof(fval.nn))
1345 fval.nn = dccp_decode_value_var(val, len);
1346 if (!dccp_feat_is_valid_nn_val(feat, fval.nn))
1349 if (dccp_feat_push_confirm(fn, feat, local, &fval) ||
1350 dccp_feat_activate(sk, feat, local, &fval))
1361 fval.nn = dccp_decode_value_var(val, len);
1368 if (fval.nn != entry->val.nn)
1372 dccp_feat_activate(sk, feat, local, &fval);