]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
lib/server/cf_parse: OOB read in cf_pair_unescape() on trailing backslash
authorAlexander Bainbridge-Sedivy <alex.bainbridge@inkbridge.io>
Wed, 24 Jun 2026 20:57:31 +0000 (16:57 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Tue, 7 Jul 2026 14:00:31 +0000 (10:00 -0400)
src/lib/server/cf_parse.c

index 7379bafaa30aceb913c177a186da0764c7d5e458..7ccdc0f3e6897308482f43af1e27e78d89c4e3ca 100644 (file)
@@ -447,6 +447,10 @@ static int cf_pair_unescape(CONF_PAIR *cp, conf_parser_t const *rule)
                }
 
                p++;
+               if (*p == '\0') {
+                       *q++ = '\\';
+                       continue;
+               }
                switch (*p) {
                case 'r':
                        *q++ = '\r';