<div dir="ltr">





<div class="gmail_quote"><div link="blue" vlink="purple" lang="EN-US">
<div>Hi,
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">  We observe that the following kamailio API is trying to find out user registration by comparing source IP and port with stored contact, if it fails, then it compares based on incoming SIP msg contact uri.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">is_registered(struct sip_msg* _m, udomain_t* _d){<u></u><u></u></p>
<p class="MsoNormal">               getContactP(_m,_d);<u></u><u></u></p>
<p class="MsoNormal">}<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">pcontact_t * getContactP(struct sip_msg* _m, udomain_t* _d) {);<u></u><u></u></p>
<p class="MsoNormal">                                             //Getting pcontact from source IP and port<u></u><u></u></p>
<p class="MsoNormal">                                             if (ul.get_pcontact_by_src(_d, &received_host, _m->rcv.src_port, _m->rcv.proto, &c) == 1) {<u></u><u></u></p>
<p class="MsoNormal">                                                            LM_DBG("No entry in usrloc for %.*s:%i (Proto %i) found!\n", received_host.len, received_host.s, _m->rcv.src_port, _m->rcv.proto);<u></u><u></u></p>
<p class="MsoNormal">                                             } <u></u><u></u></p>
<p class="MsoNormal">                              if (c == NULL) {<u></u><u></u></p>
<p class="MsoNormal">                                             //Getting pcontact from contact uri.<u></u><u></u></p>
<p class="MsoNormal" style="margin-left:1.0in;text-indent:.5in">if (ul.get_pcontact(_d, &ct->uri, &c) == 0) {<u></u><u></u></p>
<p class="MsoNormal">                                                                          
<u></u><u></u></p>
<p class="MsoNormal">                                             }<u></u><u></u></p>
<p class="MsoNormal">                              }<u></u><u></u></p>
<p class="MsoNormal">We have use case where INVITE message is from same source IP and port but having unregistered contact.With this scenario,is_registered() will return success.         
<u></u><u></u></p>
<p class="MsoNormal">We would like to know reason behind comparing the source IP and port to fetch the pcontact?<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Regards,<u></u><u></u></p>
<p class="MsoNormal">Prashant<u></u><u></u></p>
</div>

</div></div></div>