]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
map_to_vp() Fix memory leak
authorJorge Pereira <jpereiran@gmail.com>
Mon, 13 May 2019 23:14:59 +0000 (20:14 -0300)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Mon, 13 May 2019 23:15:17 +0000 (19:15 -0400)
src/lib/server/map.c

index 827bf90e4aca6e59046fa6ccef006ceab7e30924..da7021bd2bc43214b58b9a95b3843ba39e25fc61 100644 (file)
@@ -2158,6 +2158,7 @@ int map_to_vp(TALLOC_CTX *ctx, VALUE_PAIR **out, REQUEST *request, vp_map_t cons
                slen = xlat_aeval(request, &str, request, map->rhs->name, NULL, NULL);
                if (slen < 0) {
                        rcode = slen;
+                       talloc_free(n);
                        goto error;
                }
 
@@ -2181,6 +2182,7 @@ int map_to_vp(TALLOC_CTX *ctx, VALUE_PAIR **out, REQUEST *request, vp_map_t cons
 
                if (fr_pair_value_from_str(n, map->rhs->name, -1, '\0', false) < 0) {
                        rcode = 0;
+                       talloc_free(n);
                        goto error;
                }
                n->op = map->op;