Skip to content

[BUG] Shared memory leak on using $shv #3872

@ankogan

Description

@ankogan

OpenSIPS version you are running

version: opensips 3.6.4 (x86_64/linux)
flags: STATS: On, SHM_EXTRA_STATS, DISABLE_NAGLE, USE_MCAST, SHM_MMAP, PKG_MALLOC, Q_MALLOC, F_MALLOC, HP_MALLOC, F_PARALLEL_MALLOC, DBG_MALLOC, FAST_LOCK-ADAPTIVE_WAIT
ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16, MAX_URI_SIZE 4096, BUF_SIZE 65535
poll method support: poll, epoll, sigio_rt, select.
git revision: 2367deb8e
main.c compiled on  with gcc 8

Describe the bug
There is a memory leak on using $shv in such a case:

$var(sdp) = $(var(sdp){re.subst,/^s=.*/s=$shv(voip_sdp_session)\r/});
...
add_body_part("$var(sdp)", "application/sdp");

There is no leaks in case

$var(voip_sdp_session) = $shv(voip_sdp_session);
$var(sdp) = $(var(sdp){re.subst,/^s=.*/s=$var(voip_sdp_session)\r/});
...
add_body_part("$var(sdp)", "application/sdp");

OS/environment information

  • Operating System: Debian 10, 12
  • OpenSIPS installation: manual packages

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions