From da34ecf150ca91e98d32de144a3a77285e1e262c Mon Sep 17 00:00:00 2001 From: Daniel-Constantin Mierla Date: Tue, 14 Jul 2015 17:40:05 +0200 Subject: [PATCH] pv: catch early setting $rU with empty string - avoids backing up and restoring last char, which can create inappropriate access when using static empty string value (cherry picked from commit adf1bca4a820e9cb5fcc94a1953b0fcdbd8a20da) (cherry picked from commit 3551d707fa497554f3da767e9fba8e046f83b417) --- modules/pv/pv_core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/pv/pv_core.c b/modules/pv/pv_core.c index 56253b8b8d2..fc96cb527ac 100644 --- a/modules/pv/pv_core.c +++ b/modules/pv/pv_core.c @@ -2095,7 +2095,8 @@ int pv_set_ruri_user(struct sip_msg* msg, pv_param_t *param, return -1; } - if((val==NULL) || (val->flags&PV_VAL_NULL)) + if((val==NULL) || (val->flags&PV_VAL_NULL) + || ((val->flags&PV_VAL_STR) && val->rs.len<=0)) { memset(&act, 0, sizeof(act)); act.type = SET_USER_T;