Module: kamailio Branch: 5.0 Commit: 3f0d41742e41f117dc9426afd148cf906c271e46 URL: https://github.com/kamailio/kamailio/commit/3f0d41742e41f117dc9426afd148cf906c271e46
Author: Henning Westerholt <h...@kamailio.org> Committer: Henning Westerholt <h...@kamailio.org> Date: 2019-01-11T16:11:53+01:00 core: fix an error in check_via_address, reported from Mojtaba, mespio at gmail dot com - fix an error in check_via_address, reported from Mojtaba, mespio at gmail dot com - use the same logic for IPv4 string comparison as for IPv6 - the old comparison could return true for e.g. via="192.168.1.1", src="192.1.1.100" - the new logic is also faster for the trivial case with different string length (cherry picked from commit 98ee014a88ca951d82a0389f0be119078ba525f7) --- Modified: src/core/msg_translator.c --- Diff: https://github.com/kamailio/kamailio/commit/3f0d41742e41f117dc9426afd148cf906c271e46.diff Patch: https://github.com/kamailio/kamailio/commit/3f0d41742e41f117dc9426afd148cf906c271e46.patch --- diff --git a/src/core/msg_translator.c b/src/core/msg_translator.c index 54ed42b903..aa286788aa 100644 --- a/src/core/msg_translator.c +++ b/src/core/msg_translator.c @@ -176,7 +176,7 @@ static int check_via_address(struct ip_addr* ip, str *name, LM_CRIT("invalid Via host name\n"); return -1; } - if (strncmp(name->s, s, name->len)==0) + if (len==name->len&&(strncmp(name->s, s, name->len)==0)) return 0; } }else{ _______________________________________________ Kamailio (SER) - Development Mailing List sr-dev@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev