switch (quote) {
case T_BARE_WORD:
- /*
- * Deal with explicit casts...
- */
- if (!fr_type_is_null(t_rules->data.cast)) {
- fr_value_box_t tmp, *actual;
-
- if (!fr_type_is_leaf(t_rules->data.cast)) {
- fr_strerror_printf("%s is not a valid cast type",
- fr_type_to_str(t_rules->data.cast));
- return 0;
- }
-
- vpt = tmpl_alloc_null(ctx);
- slen = fr_value_box_from_substr(vpt, &tmp,
- t_rules->data.cast, t_rules->data.enumv,
- in, p_rules, false);
- if (slen < 0) {
- talloc_free(vpt);
- return slen;
- }
-
- tmpl_init(vpt, TMPL_TYPE_DATA, quote, fr_sbuff_start(&our_in), fr_sbuff_used(&our_in));
-
- actual = tmpl_value(vpt);
- fr_value_box_copy_shallow(NULL, actual, &tmp);
-
- return fr_sbuff_set(in, &our_in);
- }
-
/*
* Skip other bareword types if
* we find a '&' prefix.
return fr_sbuff_set(in, &our_in);
}
+ /*
+ * Deal with explicit casts...
+ */
+ if (!fr_type_is_null(t_rules->data.cast)) {
+ fr_value_box_t tmp, *actual;
+
+ if (!fr_type_is_leaf(t_rules->data.cast)) {
+ fr_strerror_printf("%s is not a valid cast type",
+ fr_type_to_str(t_rules->data.cast));
+ return 0;
+ }
+
+ vpt = tmpl_alloc_null(ctx);
+ slen = fr_value_box_from_substr(vpt, &tmp,
+ t_rules->data.cast, t_rules->data.enumv,
+ in, p_rules, false);
+ if (slen < 0) {
+ talloc_free(vpt);
+ return slen;
+ }
+
+ tmpl_init(vpt, TMPL_TYPE_DATA, quote, fr_sbuff_start(&our_in), fr_sbuff_used(&our_in));
+
+ actual = tmpl_value(vpt);
+ fr_value_box_copy_shallow(NULL, actual, &tmp);
+
+ return fr_sbuff_set(in, &our_in);
+ }
+
/*
* See if it's a boolean value
*/