Index: res/res_phoneprov.c =================================================================== --- res/res_phoneprov.c (revision 310330) +++ res/res_phoneprov.c (working copy) @@ -422,7 +422,11 @@ goto out404; } - snprintf(path, sizeof(path), "%s/phoneprov/%s", ast_config_AST_DATA_DIR, route->file->template); + if (route->file->template[0] == '/') { + strncpy(path, route->file->template, sizeof(path)); + } else { + snprintf(path, sizeof(path), "%s/phoneprov/%s", ast_config_AST_DATA_DIR, route->file->template); + } if (!route->user) { /* Static file */ @@ -1157,7 +1161,11 @@ return 0; } - snprintf(path, sizeof(path), "%s/phoneprov/%s", ast_config_AST_DATA_DIR, args.template); + if (args.template[0] == '/') { + strncpy(path, args.template, sizeof(path)); + } else { + snprintf(path, sizeof(path), "%s/phoneprov/%s", ast_config_AST_DATA_DIR, args.template); + } filelen = load_file(path, &file); if (filelen < 0) { ast_log(LOG_WARNING, "Could not load file: %s (%d)\n", path, filelen);