Hi all:
Have running this script on Openser 1.2.3-notls version managing forwards this way:
route[3] {
...
t_on_failure("1");
if avp_db_load("$ru", "*") {
if (is_avp_set("$avp(s:fwdbusy)/s")) {
setflag(23);
};
...
failure_route[1] {
...
if ((isflagset(23)) && (t_check_status("486"))) {
if (avp_pushto("$ru", "$avp(s:fwdbusy)")) {
t_reply("302","Moved Temporarily");
return;
};
};
...
User A calls user B and B has fwdbusy parameter set in user preferences; if B is busy, proxy sends 302 message back to A with contact set to $avp(s:fwdbusy) value. This setup usually works fine. However, sometimes the proxy shows a strange behaviour. It starts to append an arbitrary contact to the contact header in every forwarding it does. The contact appended has nothing to do with A or B or the uri set in the avp. The same uri is appended in all call forwardings performed in the system. If the proxy is restarted, the problem disappears.
Example:
SIP/2.0 302 Moved Temporarily
Via: SIP/2.0/UDP 10.100.2.254:5060;branch=z9hG4bK51461DD5
From: <sip:30132@10.100.2.254>;tag=92DAB388-EE7
To: <sip:20050@domain.com>;tag=880a5593aeb097bc75600b31d6e17107-78ac
Call-ID: C0C84A1C-33CE11DE-BEBEEAA9-C0D323DF@192.168.2.40
CSeq: 101 INVITE
Contact: sip:30050@domain.com, <sip:030410@10.172.0.254:5060;transport=udp>;q=0
Server: OpenSER (1.2.3-notls (i386/linux))
Content-Length: 0
<sip:030410@10.172.0.254:5060;transport=udp>;q=0 is added in all forwardings done the system.
Unfortunately I have no debug info cause it happens in production environment. I couldn't reproduce the problem in test environment. Have you got any idea on what could make it happen?
Thanks a lot:
Fran Lizaran