Issue 7208 - Handle ; in userinfo part of URI too

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32207 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.4
Olle Johansson 19 years ago
parent 404f8db694
commit 8bc0599b11

@ -7142,16 +7142,16 @@ static int get_destination(struct sip_pvt *p, struct sip_request *oreq)
return -1; return -1;
} }
from += 4; from += 4;
from = strsep(&from, ";");
if ((a = strchr(from, '@'))) if ((a = strchr(from, '@')))
*a++ = '\0'; *a++ = '\0';
else else
a = from; /* just a domain */ a = from; /* just a domain */
from = strsep(&from, ";"); /* Remove userinfo options */
a = strsep(&a, ";"); /* Remove URI options */
ast_string_field_set(p, fromdomain, a); ast_string_field_set(p, fromdomain, a);
} }
/* Skip any options and find the domain */ /* Skip any options and find the domain */
uri = strsep(&uri, ";");
/* Get the target domain */ /* Get the target domain */
if ((a = strchr(uri, '@'))) { if ((a = strchr(uri, '@'))) {
@ -7164,6 +7164,9 @@ static int get_destination(struct sip_pvt *p, struct sip_request *oreq)
if (colon) if (colon)
*colon = '\0'; *colon = '\0';
uri = strsep(&uri, ";"); /* Remove userinfo options */
a = strsep(&a, ";"); /* Remove URI options */
ast_string_field_set(p, domain, a); ast_string_field_set(p, domain, a);
if (!AST_LIST_EMPTY(&domain_list)) { if (!AST_LIST_EMPTY(&domain_list)) {

Loading…
Cancel
Save