Module: kamailio Branch: master Commit: 28cd81c9ad7a64ee8953ba9438756b88740b7820 URL: https://github.com/kamailio/kamailio/commit/28cd81c9ad7a64ee8953ba9438756b88740b7820
Author: Daniel-Constantin Mierla <mico...@gmail.com> Committer: Daniel-Constantin Mierla <mico...@gmail.com> Date: 2025-06-12T08:15:34+02:00 dispatcher: rework MIXSOCKPRPORT (16) matching mode - GH #4236 --- Modified: src/modules/dispatcher/dispatch.c --- Diff: https://github.com/kamailio/kamailio/commit/28cd81c9ad7a64ee8953ba9438756b88740b7820.diff Patch: https://github.com/kamailio/kamailio/commit/28cd81c9ad7a64ee8953ba9438756b88740b7820.patch --- diff --git a/src/modules/dispatcher/dispatch.c b/src/modules/dispatcher/dispatch.c index 370aac8f4e2..3f0c1ab857f 100644 --- a/src/modules/dispatcher/dispatch.c +++ b/src/modules/dispatcher/dispatch.c @@ -3827,30 +3827,31 @@ int ds_is_addr_from_set(sip_msg_t *_m, struct ip_addr *pipaddr, if(mode & DS_MATCH_MIXSOCKPRPORT) { node_strictness = DS_MATCHED_ADDR; if(node->dlist[j].port) { - if(tport != node->dlist[j].port) - continue; - else + if(tport == node->dlist[j].port) { node_strictness |= DS_MATCHED_PORT; + } } if(node->dlist[j].proto) { - if(tproto != node->dlist[j].proto) - continue; - else + if(tproto == node->dlist[j].proto) { node_strictness |= DS_MATCHED_PROTO; + } } if(node->dlist[j].sock) { - if(node->dlist[j].sock != _m->rcv.bind_address) - continue; - else + if(node->dlist[j].sock == _m->rcv.bind_address) { node_strictness |= DS_MATCHED_SOCK; + } } if(node_strictness == (DS_MATCHED_ADDR | DS_MATCHED_PORT | DS_MATCHED_PROTO - | DS_MATCHED_SOCK)) + | DS_MATCHED_SOCK)) { + ds_strictest_match = node_strictness; + ds_strictest_node = node; + ds_strictest_idx = j; return ds_set_vars(_m, node, j, export_set_pv); + } if(ds_strictest_match < node_strictness) { ds_strictest_match = node_strictness; _______________________________________________ Kamailio - Development Mailing List -- sr-dev@lists.kamailio.org To unsubscribe send an email to sr-dev-le...@lists.kamailio.org Important: keep the mailing list in the recipients, do not reply only to the sender!