Module: kamailio
Branch: 5.4
Commit: ac56dfde20c5e689fb911debdd33a6155f7b130c
URL:
https://github.com/kamailio/kamailio/commit/ac56dfde20c5e689fb911debdd33a61…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2020-08-27T12:36:11+02:00
usrloc: get_udomain() - safety checks for location table name parameter
(cherry picked from commit 29dde9fea1eb21b4bb484286f7443dd32f611bd2)
---
Modified: src/modules/usrloc/dlist.c
---
Diff:
https://github.com/kamailio/kamailio/commit/ac56dfde20c5e689fb911debdd33a61…
Patch:
https://github.com/kamailio/kamailio/commit/ac56dfde20c5e689fb911debdd33a61…
---
diff --git a/src/modules/usrloc/dlist.c b/src/modules/usrloc/dlist.c
index cba8ec425c..96a95fe3c9 100644
--- a/src/modules/usrloc/dlist.c
+++ b/src/modules/usrloc/dlist.c
@@ -792,13 +792,24 @@ int get_udomain(const char* _n, udomain_t** _d)
dlist_t* d;
str s;
+ if(_n == NULL) {
+ LM_ERR("null location table name\n");
+ goto notfound;
+ }
+
s.s = (char*)_n;
s.len = strlen(_n);
+ if(s.len <= 0) {
+ LM_ERR("empty location table name\n");
+ goto notfound;
+ }
if (find_dlist(&s, &d) == 0) {
*_d = d->d;
return 0;
}
+
+notfound:
*_d = NULL;
return -1;
}