Description

Use KEMI cfgutils.lock() and cfgutils.unlock().

Expect native behaviour of lock() unlock().

Instead segfault.

Troubleshooting

The KEMI wrappers do not have leading sip_msg_t* argument.

Wrapper for lock() is cfg_lock()

Prototype for cfg_lock() is static int cfg_lock(str *lkey). Notice the missing sig_msg_t * first argument.

Reproduction

Call cfgutils.lock() cfgutils.unlock() from scripting language

Debugging Data

#0 0x00007fdc6e7eff32 in core_case_hash (s1=0x7fdcb88ac1a0, s2=0x0, size=16) at ../../core/hashes.h:317
317 v=(ch_icase(*p)<<24)+(ch_icase(p[1])<<16)+(ch_icase(p[2])<<8)

s1 is actually the sip_msg_t* not the lock key string.
*s1 can actually be deferenced as (sip_msg_t) s1

Log Messages

SIP Traffic

Possible Solutions

KEMI wrappers for cfgutils.c should include dummy sip_msg_t* argument.

Additional Information


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.