Module: kamailio Branch: 4.2 Commit: 3af67d8142691e89aa4f9d77898c5af4ba026cbf URL: https://github.com/kamailio/kamailio/commit/3af67d8142691e89aa4f9d77898c5af4ba026cbf
Author: Stefan Mititelu <stefan.mitit...@1and1.ro> Committer: Stefan Mititelu <stefan.mitit...@1and1.ro> Date: 2015-11-03T16:52:03+02:00 uac: Sanity checks Sanity checks for decode_uri(). Add NULL and len > 0 checks. Segfault when vsf parameter was empty in the Route: header (e.g 'vsf='). (cherry picked from commit d956f397c8cea4774e5941bdad8f76ecc44acdd5) --- Modified: modules/uac/replace.c --- Diff: https://github.com/kamailio/kamailio/commit/3af67d8142691e89aa4f9d77898c5af4ba026cbf.diff Patch: https://github.com/kamailio/kamailio/commit/3af67d8142691e89aa4f9d77898c5af4ba026cbf.patch --- diff --git a/modules/uac/replace.c b/modules/uac/replace.c index ccb2d46..bf54aad 100644 --- a/modules/uac/replace.c +++ b/modules/uac/replace.c @@ -142,6 +142,22 @@ static inline int decode_uri( str *src , str *dst) int i,j; signed char c; + /* sanity checks */ + if (!src) { + LM_ERR("NULL src\n"); + return -1; + } + + if (!dst) { + LM_ERR("NULL dst\n"); + return -1; + } + + if (!src->s || src->len == 0) { + LM_ERR("empty src\n"); + return -1; + } + /* Count '-' at end and disregard them */ for( n=0,i=src->len-1; src->s[i]=='-'; i--) n++; _______________________________________________ sr-dev mailing list sr-dev@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev