Hi list,

I am trying to implement something a little bit odd and against the RFC, but 
hope will get some help anyways :)

There is a SIP UAC (used for events notification) written by a person who has 
left the project and will not fix it. 
That SIP UAC has a really silly bug - it doesn't send back ACKs to 4XX//5XX 
responses. I do not have access
to the source of his code so I can't fix the trouble there.

Instead I am writing my own mini SIP stack that would send back the ACK on 
behalf of the buggy UAC.
I have put my app on the way as a transparent SIP stateless proxy. The issue 
here also is that I do not
keep a copy of the original INVITE, so I am trying to construct my ACK based on 
the received 4XX message:

* I keep the From, To, Call-ID, From and VIA fields as-it-is from the 4XX 
message
* The Cseq is modified according to the RFC
* The Request URI - I am constructing it by myself, I know that the called 
number is always 444302

However the other devices (Cisco 7960 SIP phones and SJPhone softphones) keep 
resending me
the "Request Timeout" messages (or "NOT FOUND", if I configure them in a way to 
not accept 444302 calls)

Any help / tips ?


SIP/2.0 408 Request Timeout
Via: SIP/2.0/UDP 192.168.2.100:5060;branch=z9hG4bK-2648876703;rport
From: "600" 
<sip:6...@2.2.2.2>;tag=3534656462393035313363340132323835373136383133
To: "600" <sip:6...@2.2.2.2>
Call-ID: 731758454452099338546627
CSeq: 1 ACK
Content-Length: 0

ACK sip:444...@192.168.2.40 SIP/2.0
Content-Length: 0
Via: SIP/2.0/UDP 192.168.2.100:5060;branch=z9hG4bK-2648876703;rport
From: "600" 
<sip:6...@2.2.2.2>;tag=3534656462393035313363340132323835373136383133
User-Agent: tgSIP
To: "600" <sip:6...@2.2.2.2>
CSeq: 1 ACK
Call-ID: 731758454452099338546627


2.100 is my SIP app, 2.40 is the buggy SIP UAC









_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

Reply via email to