add a new dialplan module

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@6205 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Anthony Minessale
2007-11-09 19:25:46 +00:00
parent b7b686ec4b
commit 4d2dfa633b
8 changed files with 301 additions and 1 deletions

View File

@@ -222,6 +222,28 @@ SWITCH_DECLARE(switch_bool_t) switch_is_lan_addr(const char *ip)
}
SWITCH_DECLARE(switch_bool_t) switch_ast2regex(char *pat, char *rbuf, size_t len)
{
char *p = pat;
memset(rbuf, 0, len);
while(p && *p) {
if (*p == 'N') {
strncat(rbuf, "[2-9]", len - strlen(rbuf));
} else if (*p == 'X') {
strncat(rbuf, "[0-9]", len - strlen(rbuf));
} else if (*p == 'Z') {
strncat(rbuf, "[1-9]", len - strlen(rbuf));
} else if (*p == '.') {
strncat(rbuf, ".*", len - strlen(rbuf));
} else if (strlen(rbuf) < len - 1) {
*(rbuf + strlen(rbuf)) = *p;
}
p++;
}
return strcmp(pat,rbuf) ? SWITCH_TRUE : SWITCH_FALSE;
}
SWITCH_DECLARE(char *) switch_replace_char(char *str, char from, char to, switch_bool_t dup)
{