mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 12:16:00 +00:00
sip_to_pjsip: Parse register even with transport.
When using the migration script sip_to_pjsip.py and the register string started with a transport in sip.conf - like tls://... - register was not parsed correctly and therefore not migrated correctly to pjsip.conf. ASTERISK-22374 Change-Id: I44c12104eea2bd8558ada6d25d77edfecd92edd2
This commit is contained in:
@@ -907,6 +907,17 @@ class Registration:
|
|||||||
the right of the user, then finish by using rpartition calls to remove
|
the right of the user, then finish by using rpartition calls to remove
|
||||||
everything to the left of the user.
|
everything to the left of the user.
|
||||||
"""
|
"""
|
||||||
|
self.peer = ''
|
||||||
|
self.protocol = 'udp'
|
||||||
|
protocols = ['udp', 'tcp', 'tls']
|
||||||
|
for protocol in protocols:
|
||||||
|
position = user_part.find(protocol + '://')
|
||||||
|
if -1 < position:
|
||||||
|
post_transport = user_part[position + 6:]
|
||||||
|
self.peer, sep, self.protocol = user_part[:position + 3].rpartition('?')
|
||||||
|
user_part = post_transport
|
||||||
|
break
|
||||||
|
|
||||||
colons = user_part.count(':')
|
colons = user_part.count(':')
|
||||||
if (colons == 3):
|
if (colons == 3):
|
||||||
# :domainport:secret:authuser
|
# :domainport:secret:authuser
|
||||||
@@ -927,11 +938,7 @@ class Registration:
|
|||||||
# Invalid setting
|
# Invalid setting
|
||||||
raise
|
raise
|
||||||
|
|
||||||
pre_domain, sep, self.domain = pre_auth.partition('@')
|
self.user, sep, self.domain = pre_auth.partition('@')
|
||||||
self.peer, sep, post_peer = pre_domain.rpartition('?')
|
|
||||||
transport, sep, self.user = post_peer.rpartition('://')
|
|
||||||
|
|
||||||
self.protocol = transport if transport else 'udp'
|
|
||||||
|
|
||||||
def write(self, pjsip, nmapped):
|
def write(self, pjsip, nmapped):
|
||||||
"""
|
"""
|
||||||
|
Reference in New Issue
Block a user