Handle registration setups better when username contains an @

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1093 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Mark Spencer
2003-06-15 22:53:05 +00:00
parent 226e31d86d
commit b04542e11e

View File

@@ -2613,8 +2613,13 @@ static int transmit_register(struct sip_registry *r, char *cmd, char *auth)
ast_log(LOG_DEBUG, "Scheduled a timeout # %d\n", r->timeout);
}
snprintf(from, sizeof(from), "<sip:%s@%s>;tag=as%08x", r->username, r->hostname, p->tag);
snprintf(to, sizeof(to), "<sip:%s@%s>", r->username, r->hostname);
if (strchr(r->username, '@')) {
snprintf(from, sizeof(from), "<sip:%s>;tag=as%08x", r->username, p->tag);
snprintf(to, sizeof(to), "<sip:%s>", r->username);
} else {
snprintf(from, sizeof(from), "<sip:%s@%s>;tag=as%08x", r->username, r->hostname, p->tag);
snprintf(to, sizeof(to), "<sip:%s@%s>", r->username, r->hostname);
}
snprintf(addr, sizeof(addr), "sip:%s", r->hostname);
strncpy(p->uri, addr, sizeof(p->uri) - 1);