Hi, I've multidomain OpenSer and I want the possibility of adding new domains
without having to write in conf file and restart OpenSer, so I use "domain"
module and functions. It works fine.
The problem is that WengoPhone includes a "Route" in the REGISTER so it is
matches in "loose_route" and creates an infinite loop:
-------------------------------------------
U 2007/09/12 11:00:47.770226 212.121.235.18:1029 -> 88.95.0.210:5060
REGISTER
sip:sip.domain.net SIP/2.0
Via: SIP/2.0/UDP 192.168.1.58:5061;rport;branch=123456789
Route: <sip:sip.domain.net;lr>
U 2007/09/12 11:00:47.772884 88.95.0.210:5060 -> 88.95.0.210:5060
REGISTER
sip:sip.domain.net SIP/2.0
Max-Forwards: 10
Via: SIP/2.0/UDP 88.95.0.210;branch=z9hG4bK734e.08122386.0
Via: SIP/2.0/UDP
192.168.1.58:5061;received=212.121.235.18;rport=1029;branch=123456789
Route: <sip:sip.domain.net;lr>
U 2007/09/12 11:00:47.775153 88.95.0.210:5060 -> 88.95.0.210:5060
REGISTER
sip:sip.domain.net SIP/2.0
Max-Forwards: 9
Via: SIP/2.0/UDP 88.95.0.210;branch=z9hG4bK734e.18122386.0
Via: SIP/2.0/UDP 88.95.0.210;rport=5060;branch=z9hG4bK734e.08122386.0
Via: SIP/2.0/UDP
192.168.1.58:5061;received=212.121.235.18;rport=1029;branch=123456789
Route: <sip:sip.domain.net;lr>
etc etc...
-------------------------------------------
A developer of WengoPhone said me that this "Route" header is not necessary
but still valid, and that I can solve it by adding:
alias=sip.domain.org
But I don't want to write in conf file for each new added domain, and I don't
want to restart OpenSer when it.
I'm thinking in change:
if (loose_route()) {
by
if (loose_route() && method!="REGISTER") {
but it doesn't seem very ellegatn solution.
How could I solve it? Thanks for any help.
--
Iñaki Baz Castillo
ibc(a)in.ilimit.es