diff --git a/channels/pjsip/dialplan_functions.c b/channels/pjsip/dialplan_functions.c index c6971c89ee588aee14acc17ed2b79b6c20d2d1b7..76f351f1e897fba2263c88e7b8552ac474fe8b0f 100644 --- a/channels/pjsip/dialplan_functions.c +++ b/channels/pjsip/dialplan_functions.c @@ -1070,7 +1070,7 @@ static int parse_uri_cb(void *data) pj_strdup2_with_null(pool, &tmp, args->uri); uri = (pjsip_name_addr *)pjsip_parse_uri(pool, tmp.ptr, tmp.slen, PJSIP_PARSE_URI_AS_NAMEADDR); - if (!uri) { + if (!uri || (!PJSIP_URI_SCHEME_IS_SIP(uri) && !PJSIP_URI_SCHEME_IS_SIPS(uri))) { ast_log(LOG_WARNING, "Failed to parse URI '%s'\n", args->uri); pjsip_endpt_release_pool(ast_sip_get_pjsip_endpoint(), pool); args->ret = -1;