Hello all,<div><br></div><div>I&#39;m having a problem with a particular device, that I&#39;m hoping some one on this list can help me with. The device is a Telsey IAD.</div><div><br></div><div>At first the device registers just fine. But when the registration expires and the device re-registers, freeswitch responds with a 403 Forbidden.</div>
<div><br></div><div>I realized that this must be because either the device og Freeswitch wasn&#39;t calculating the digest response correctly. So I tried to calculate it myself. This is a sample sent from the device, that Freeswitch responded with a 403 to:</div>
<div><br></div><div><div><div>REGISTER sip:<a href="http://test.sip.is">test.sip.is</a> SIP/2.0</div><div>Call-ID: <a href="mailto:5f880-1485c-aab33cd@10.171.32.9">5f880-1485c-aab33cd@10.171.32.9</a></div><div>From: &lt;<a href="mailto:sip%3A4151664@test.sip.is">sip:4151664@test.sip.is</a>;user=phone&gt;;tag=2f5c0-1485c</div>
<div>To: &lt;<a href="mailto:sip%3A4151664@test.sip.is">sip:4151664@test.sip.is</a>;user=phone&gt;</div><div>CSeq: 104 REGISTER</div><div>Via: SIP/2.0/UDP 10.171.32.9;branch=z9hG4bK-2f5c0-101315</div><div>Contact: &lt;<a href="mailto:sip%3A4151664@10.171.32.9">sip:4151664@10.171.32.9</a>;user=phone&gt;</div>
<div>Max-Forwards: 70</div><div>User-Agent: Telsey ver4_49_25</div><div>Expires: 30</div><div>Supported: timer</div><div>Authorization: Digest username=&quot;4151664&quot;,realm=&quot;<a href="http://test.sip.is">test.sip.is</a>&quot;,uri=&quot;sip:<a href="http://test.sip.is">test.sip.is</a>&quot;,response=&quot;c3b5cd8147fb883fbbe9acb183838717&quot;,algorithm=MD5,nonce=&quot;9202dbb4-292d-11e2-bac2-399d85a4015c&quot;,qop=auth,cnonce=&quot;0002f818&quot;,nc=00000001</div>
<div>Content-Length: 0</div></div><div><br></div></div><div>Assuming a password of &quot;1234&quot;, the digest response should be 041323244fc4bdac8d49872bf29d9a3a. But the device seems to increment the nc value to 00000002 and calculates the response as c3b5cd8147fb883fbbe9acb183838717.</div>
<div><br></div><div>The problem is that the device sends nc=00000001 so freeswitch uses that value to calculate the digest, while the device uses 00000002.</div><div><br></div><div>I think it is obviously the device that&#39;s broken but not Freeswitch. But, in this case I need to get this device to work as is. Is there any way I can have freeswitch authenticate the device without using digest method that requires a nonce count, like rfc2069?</div>
<div><br></div><div>Best regards,</div><div>Mani Hrolfsson </div><div><br></div>