]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
return correct offset
authorAlan T. DeKok <aland@freeradius.org>
Mon, 25 Oct 2021 17:02:56 +0000 (13:02 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Mon, 25 Oct 2021 17:12:40 +0000 (13:12 -0400)
src/protocols/dns/decode.c

index 6efd445ecac5e0f677dc9a96b41205b3046fe129..03fe888a5ba0c742b2be335a2ac3bf168ccfed5e 100644 (file)
@@ -477,11 +477,10 @@ static ssize_t decode_tlvs(TALLOC_CTX *ctx, fr_pair_list_t *out, fr_dict_t const
 
                slen = decode_option(vp, &vp->vp_group, dict, parent, p, (end - p), decode_ctx);
                if (slen <= 0) {
-                       if (!do_raw) return slen;
+                       if (!do_raw) return slen - (p - data);
 
                        slen = decode_raw(vp, &vp->vp_group, dict, parent, p, (end - p), decode_ctx);
-                       if (slen <= 0) return slen;
-                       break;
+                       if (slen <= 0) return slen - (p - data);
                }
 
                p += slen;