@miconda thanks for the info.
after digging more , i think the issue is not related to `kazoo`. can you try the below
script (note that kazoo is not used) ? also maybe fake a transaction to a external auth
and set the `$xavp(ulattrs=>extra_info)` on the `continue`block ?
with this configuration, the 1st registration doesn't leak but the re-registrations do
leak.
```
...
modparam("usrloc", "xavp_contact", "ulattrs")
modparam("registrar", "xavp_rcd", "ulrcd")
modparam("registrar", "xavp_cfg", "regcfg")
modparam("htable", "htable",
"auth_cache=>size=16;autoexpire=7200;")
...
route[REGISTRAR]
{
$xavp(regcfg=>match_received) = $su;
if($sht(auth_cache=>$Au) != $null && registered("location",
"$rz:$Au", 2, 1) == 1) {
xlog("L_INFO", "$ci|register|found cached registration for
$rz:$Au\n");
$var(password) = $sht(auth_cache=>$Au);
route(SAVE_LOCATION);
}
if( !is_present_hf("Authorization")) {
auth_challenge("$fd", "0");
exit();
}
$xavp(ulattrs=>extra_info) = '{"test" : true}';
route(SAVE_LOCATION);
}
route[SAVE_LOCATION]
{
if ($sht(auth_cache=>$Au) == $null) {
xlog("L_INFO", "$ci|log|caching sip credentials for $Au\n");
};
$sht(auth_cache=>$Au) = $var(password);
$var(save_result) = save("location", "0x04");
if($var(save_result) == -1) {
auth_challenge("$fd", "0");
xlog("L_INFO", "$ci|end|issued auth challenge after failed attempt
to save contact for $Au $si:$sp\n");
exit;
} else {
if($var(save_result) == 1) {
$var(new_reg) = "true";
} else {
$var(new_reg) = "false";
}
}
xlog("L_INFO", "$ci|end|save result $var(save_result) with contact
$xavp(ulrcd=>ruid) : $ct\n");
}
```
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/1111#issuecomment-301643800