Merge "sip_to_pjsip: Parse register even with transport."

changes/40/3640/1
Joshua Colp 9 years ago committed by Gerrit Code Review
commit 2dba6d0371

@ -926,6 +926,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
@ -946,11 +957,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):
""" """

Loading…
Cancel
Save