mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 20:20:07 +00:00
SRV and ENUM fixes (bug #'s 350 and 351)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1606 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
18
enum.c
18
enum.c
@@ -112,20 +112,23 @@ static int parse_naptr(unsigned char *dst, int dstsize, char *tech, int techsize
|
||||
if ((!strncasecmp(services, "e2u+sip", 7)) ||
|
||||
(!strncasecmp(services, "sip+e2u", 7))) {
|
||||
strncpy(tech, "sip", techsize -1);
|
||||
} else if ((!strncasecmp(services, "e2u+h323", 7)) ||
|
||||
(!strncasecmp(services, "h323+e2u", 7))) {
|
||||
} else if ((!strncasecmp(services, "e2u+h323", 8)) ||
|
||||
(!strncasecmp(services, "h323+e2u", 8))) {
|
||||
strncpy(tech, "h323", techsize -1);
|
||||
} else if ((!strncasecmp(services, "e2u+iax", 7)) ||
|
||||
(!strncasecmp(services, "iax+e2u", 7))) {
|
||||
strncpy(tech, "iax", techsize -1);
|
||||
} else if ((!strncasecmp(services, "e2u+iax2", 7)) ||
|
||||
(!strncasecmp(services, "iax2+e2u", 7))) {
|
||||
} else if ((!strncasecmp(services, "e2u+iax2", 8)) ||
|
||||
(!strncasecmp(services, "iax2+e2u", 8))) {
|
||||
strncpy(tech, "iax2", techsize -1);
|
||||
} else if ((!strncasecmp(services, "e2u+tel", 7)) ||
|
||||
(!strncasecmp(services, "tel+e2u", 7))) {
|
||||
strncpy(tech, "tel", techsize -1);
|
||||
} else if (strncasecmp(services, "e2u+voice:", 10)) {
|
||||
ast_log(LOG_WARNING, "Services must be e2u+sip, sip+e2u, e2u+h323, h323+e2u, e2u+iax, iax+e2u, e2u+iax2, iax2+e2u, e2u+tel, tel+e2u or e2u+voice:\n");
|
||||
} else if (!strncasecmp(services, "e2u+voice:", 10)) {
|
||||
strncpy(tech, services+10, techsize -1);
|
||||
} else {
|
||||
ast_log(LOG_WARNING,
|
||||
"Services must be e2u+${tech}, ${tech}+e2u, or e2u+voice: where $tech is from (sip, h323, tel, iax, iax2). \n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -202,9 +205,6 @@ static int parse_naptr(unsigned char *dst, int dstsize, char *tech, int techsize
|
||||
}
|
||||
*d = 0;
|
||||
strncpy(dst, temp, dstsize);
|
||||
d = strchr(services, ':');
|
||||
if (d)
|
||||
strncpy(tech, d+1, techsize -1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user