diff --git a/src/modules/cplc/cplc.c b/src/modules/cplc/cplc.c index 5a2b8972dca..cb47ffc4e05 100644 --- a/src/modules/cplc/cplc.c +++ b/src/modules/cplc/cplc.c @@ -62,6 +62,7 @@ static str db_table = str_init("cpl"); /* database table */ static char *dtd_file = 0; /* name of the DTD file for CPL parser */ static char *lookup_domain = 0; static str timer_avp = STR_NULL; /* name of variable timer AVP */ +static str proxy_route = STR_NULL; struct cpl_enviroment cpl_env = { @@ -132,7 +133,7 @@ static param_export_t params[] = { {"db_table", PARAM_STR, &db_table }, {"cpl_dtd_file", PARAM_STRING, &dtd_file }, {"proxy_recurse", INT_PARAM, &cpl_env.proxy_recurse }, - {"proxy_route", INT_PARAM, &cpl_env.proxy_route }, + {"proxy_route", PARAM_STR, &proxy_route }, {"log_dir", PARAM_STRING, &cpl_env.log_dir }, {"case_sensitive", INT_PARAM, &cpl_env.case_sensitive }, {"realm_prefix", PARAM_STR, &cpl_env.realm_prefix }, @@ -232,6 +233,14 @@ static int cpl_init(void) goto error; } + if (proxy_route.len>0) { + cpl_env.proxy_route=route_lookup(&main_rt, proxy_route.s); + if (cpl_env.proxy_route==-1) { + LM_CRIT("route <%s> defined in proxy_route does not exist\n",proxy_route.s); + goto error; + } + } + /* fix the timer_avp name */ if (timer_avp.s && timer_avp.len > 0) { if (pv_parse_spec(&timer_avp, &avp_spec)==0 diff --git a/src/modules/cplc/doc/cplc_admin.xml b/src/modules/cplc/doc/cplc_admin.xml index ac832a1e5fa..9d7ed7749e0 100644 --- a/src/modules/cplc/doc/cplc_admin.xml +++ b/src/modules/cplc/doc/cplc_admin.xml @@ -280,7 +280,7 @@ modparam("cpl-c","proxy_recurse",2)
- <varname>proxy_route</varname> (int) + <varname>proxy_route</varname> (string) Before doing proxy (forward), a script route can be executed. All modifications made by that route will be reflected only for @@ -288,14 +288,14 @@ modparam("cpl-c","proxy_recurse",2) - Default value of this parameter is 0 (none). + Default value of this parameter is NULL (none). Set <varname>proxy_route</varname> parameter ... -modparam("cpl-c","proxy_route",1) +modparam("cpl-c","proxy_route","1") ...