[asterisk-bugs] [JIRA] (ASTERISK-30396) res_pjsip: Retrieval of contacts with + at start is problematic.

George Joseph (JIRA) noreply at issues.asterisk.org
Tue Jan 24 05:14:03 CST 2023


    [ https://issues.asterisk.org/jira/browse/ASTERISK-30396?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=261234#comment-261234 ] 

George Joseph commented on ASTERISK-30396:
------------------------------------------

[~erebus] Any new info?


> res_pjsip: Retrieval of contacts with + at start is problematic.
> ----------------------------------------------------------------
>
>                 Key: ASTERISK-30396
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-30396
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Resources/res_pjsip
>    Affects Versions: 18.16.0
>         Environment: Debian x64, IPv6 only.
>            Reporter: erebus
>            Assignee: erebus
>
> Greetings programs!
> I got the following use case:
> Asterisk server with 2 SIP Clients registered to the same AOR and same endpoint. AOR identifier and extension number match the E123-formatted E164 number of the participant which is why the AOR and the extension begin with a + sign.
> My Asterisk is now suffering from contact amnesia. I. e. pjsip show endpoints will sometimes list either of the two phones and rarely even both will show up. But in most cases, either phone or even both are forgotten by the software. This means that my 2 phones aren't ringing reliably. Sometimes only 1 phone rings, sometimes neither rings.
> I managed to work around this bug by resurrecting an old work-around that I developed for bug ASTERISK-26151:
> For each AOR I want to have in pjsip.conf, I create a second which has the + sign escaped with a backslash.
> [aor_dynamic]\(!)
> type=aor
> max_contacts=15
> qualify_frequency=1
> qualify_timeout=1000
> [+12345](aor_dynamic)
> [\+12345](aor_dynamic) ; <==== WORKAROUND
> This made Asterisk work for me.
> I think that one of the changes that was made to location.c in the past years introduced this issue and that it is again caused by improper use of ast_sorcery_retrieve_by_regex() in lines 887 and/or 1051.



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list