Module: kamailio Branch: master Commit: 8e037f623ae6daf58e092d8a41430fd13d1d38ec URL: https://github.com/kamailio/kamailio/commit/8e037f623ae6daf58e092d8a41430fd13d1d38ec
Author: Juha Heinanen <j...@tutpro.com> Committer: Juha Heinanen <j...@tutpro.com> Date: 2017-04-08T10:31:23+03:00 modules/siputils: made tel2sip to return 2 if no conversion was needed --- Modified: src/modules/siputils/README Modified: src/modules/siputils/checks.c Modified: src/modules/siputils/doc/siputils_admin.xml --- Diff: https://github.com/kamailio/kamailio/commit/8e037f623ae6daf58e092d8a41430fd13d1d38ec.diff Patch: https://github.com/kamailio/kamailio/commit/8e037f623ae6daf58e092d8a41430fd13d1d38ec.patch --- diff --git a/src/modules/siputils/README b/src/modules/siputils/README index e7e5b79..8815baa 100644 --- a/src/modules/siputils/README +++ b/src/modules/siputils/README @@ -561,8 +561,8 @@ get_uri_param("nat", "$var(nat)"); Converts URI in first param (pseudo variable or string) to SIP URI, if it is a tel URI. If conversion was done, writes resulting SIP URI to - third param (pseudo variable). Returns 1 if conversion succeeded or if - no conversion was needed. + third param (pseudo variable). Returns 1 if conversion succeeded, 2 if + no conversion was needed, and -1 in case of error. The conversion follows the rules in RFC 3261 section 19.1.6: * Visual separators ( "-", ".", "(", ")" ) are removed from tel URI diff --git a/src/modules/siputils/checks.c b/src/modules/siputils/checks.c index ca6991f..0a33bdd 100644 --- a/src/modules/siputils/checks.c +++ b/src/modules/siputils/checks.c @@ -349,7 +349,7 @@ int add_uri_param(struct sip_msg* _msg, char* _param, char* _s2) /* * Converts URI, if it is tel URI, to SIP URI. Returns 1, if - * conversion succeeded or if no conversion was needed, i.e., URI was not + * conversion succeeded and 2 if no conversion was needed, i.e., URI was not * tel URI. Returns -1, if conversion failed. Takes SIP URI hostpart from * second parameter and (if needed) writes the result to third paramater. */ @@ -364,15 +364,17 @@ int tel2sip(struct sip_msg* _msg, char* _uri, char* _hostpart, char* _res) /* get parameters */ if (get_str_fparam(&uri, _msg, (fparam_t*)_uri) < 0) { LM_ERR("failed to get uri value\n"); + return -1; } if (get_str_fparam(&hostpart, _msg, (fparam_t*)_hostpart) < 0) { LM_ERR("failed to get hostpart value\n"); + return -1; } res = (pv_spec_t *)_res; /* check if anything needs to be done */ - if (uri.len < 4) return 1; - if (strncasecmp(uri.s, "tel:", 4) != 0) return 1; + if (uri.len < 4) return 2; + if (strncasecmp(uri.s, "tel:", 4) != 0) return 2; /* reserve memory for clean tel uri */ tel_uri.s = pkg_malloc(uri.len+1); diff --git a/src/modules/siputils/doc/siputils_admin.xml b/src/modules/siputils/doc/siputils_admin.xml index e28f7a2..2031ad2 100644 --- a/src/modules/siputils/doc/siputils_admin.xml +++ b/src/modules/siputils/doc/siputils_admin.xml @@ -513,8 +513,8 @@ get_uri_param("nat", "$var(nat)"); Converts URI in first param (pseudo variable or string) to SIP URI, if it is a tel URI. If conversion was done, writes resulting SIP URI to third param (pseudo variable). - Returns 1 if conversion succeeded or if no conversion - was needed. + Returns 1 if conversion succeeded, 2 if no conversion + was needed, and -1 in case of error. </para> <para> The conversion follows the rules in RFC 3261 section 19.1.6: _______________________________________________ sr-dev mailing list sr-dev@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev