]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
respect escape rules for tainted inputs
authorAlan T. DeKok <aland@freeradius.org>
Wed, 22 Jun 2022 15:22:22 +0000 (11:22 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Thu, 23 Jun 2022 12:50:42 +0000 (08:50 -0400)
when concatenating a value-box list to a string

src/lib/util/value.c

index a38278ba75de1ce31312bb74005dafe4d0b19f46..4c004a63e95baeb66fb5f775bed09aa9b23f51c9 100644 (file)
@@ -5318,10 +5318,14 @@ ssize_t fr_value_box_list_concat_as_string(bool *tainted, fr_sbuff_t *sbuff, fr_
                        break;
 
                case FR_TYPE_OCTETS:
+                       if (vb->tainted && e_rules) goto cast;
+
                        slen = fr_sbuff_in_bstrncpy(&our_sbuff, (char const *)vb->vb_strvalue, vb->vb_length);
                        break;
 
                case FR_TYPE_STRING:
+                       if (vb->tainted && e_rules) goto cast;
+
                        slen = fr_sbuff_in_bstrncpy(&our_sbuff, vb->vb_strvalue, vb->vb_length);
                        break;