]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
res_pjsip_header_funcs.c: Check URI parameter length before copying.
authorSean Bright <sean@seanbright.com>
Mon, 4 Dec 2023 14:33:26 +0000 (09:33 -0500)
committerAsterisk Development Team <asteriskteam@digium.com>
Fri, 12 Jan 2024 18:32:13 +0000 (18:32 +0000)
Fixes #477

(cherry picked from commit 002d6c2108184aacfcc3626de93ce85bfe83c051)

res/res_pjsip_header_funcs.c

index ad9be741eca8298b580992f29070cda925648130..3272d18c09f5e1378d31e1204b663a2bff3e3d6f 100644 (file)
@@ -1098,8 +1098,10 @@ static int read_param(void *obj)
 
        ast_debug(2, "Successfully read %s parameter %s (length %zu)\n",
                data->paramtype == PARAMETER_URI ? "URI" : "header", data->param_name, param_len);
-       ast_copy_string(data->buf, pj_strbuf(&param->value), data->len);
-       data->buf[pj_strlen(&param->value)] = '\0';
+       if (param_len) {
+               ast_copy_string(data->buf, pj_strbuf(&param->value), data->len);
+       }
+       data->buf[param_len] = '\0';
 
        return 0;
 }