diff --git a/kamailio/auth.cfg b/kamailio/auth.cfg index 07356a4..820264d 100644 --- a/kamailio/auth.cfg +++ b/kamailio/auth.cfg @@ -81,11 +81,22 @@ route[SETUP_AUTH_HEADERS] $xavp(hf[0]=>X-AUTH-Token) = $avp(trusted_x_header); $xavp(hf[0]=>X-AUTH-URI-User) = $rU; $xavp(hf[0]=>X-AUTH-URI-Realm) = $rd; - if($ai != $null) { + if(is_present_hf("P-Asserted-Identity") && $(ai{uri.user}) != "") { $xavp(hf[0]=>X-AUTH-From-User) = $(ai{uri.user}); + } else if(is_present_hf("P-Preferred-Identity") && $pU != "") { + $xavp(hf[0]=>X-AUTH-From-User) = $pU; + } else if(is_present_hf("Remote-Party-ID") && $(re{uri.user}) != "") { + $xavp(hf[0]=>X-AUTH-From-User) = $(re{uri.user}); } else { $xavp(hf[0]=>X-AUTH-From-User) = $fU; } + if($xavp(hf=>X-AUTH-From-User) =~ "^\+?00+$") { + $xavp(hf[0]=>X-AUTH-From-Is-Anonymous) = "true"; + $xavp(hf[0]=>X-AUTH-From-User) = $null; + } else if($(xavp(hf=>X-AUTH-From-User){s.tolower}) =~ "^anonymous$") { + $xavp(hf[0]=>X-AUTH-From-Is-Anonymous) = "true"; + $xavp(hf[0]=>X-AUTH-From-User) = $null; + } return; }