Status Message Handler always ignores login
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SIPServer |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Due to MsgType not having an account field handle_sc_status should be checking $server, not $self, for account information. As a result of checking the wrong field handle_sc_status always assumes the session is not logged in and returns status based on the first account. When this account is not flagged for some capabilities and the client expects/needs those capabilities the client may determine it can't function and disconnect, even though the login actually has those capabilities.
Furthermore, checking if $server->{account} exists will fail when $server->{account} has been set to undef. Instead I believe we should be checking if $server->{account} is defined.
I have placed fixes for both in the following branch:
Changed in sipserver: | |
status: | New → Fix Committed |
Changed in sipserver: | |
status: | Fix Committed → Fix Released |
I have tested and pushed a sign-off branch that squashes the two patches to user/gmcharlt/ lp1463459_ signed_ off in the working/SIPServer repository. However, see bug 1464748; the pull request for that will include the patch for this bug.