[OpenSIPS-Users] drouting: is_from_gw() does not detect requests from (redundant) PSTN gateways
Bogdan-Andrei Iancu
bogdan at voice-system.ro
Thu Jun 11 12:08:30 CEST 2009
Hi René,
Please try the last SVN trunk - I made a fix on SVN trunk and if ok, I
will backport it to 1.5 also. Test it please and let me know.
Regards,
Bogdan
Rene de Vall wrote:
> Hi Bogdan,
>
> ...sorry fo rmy late reply, we tested with svn branch 1.5 rev. 5768
> and it didn't work.
>
> It seems that the check in drouting.c
>
> "if( type==pgwa->type &&
> (pgwa->port==0 || pgwa->port==msg->rcv.src_port) &&
> ip_addr_cmp(&pgwa->ip, &msg->rcv.src_ip) )"
>
> fails because of the fact, that pgwa->port is not 0 but 5060 at this
> point, which might be caused by
>
> "if (port && *port==0)
> *port = (is_sips||((*proto)==PROTO_TLS))?SIPS_PORT:SIP_PORT;"
>
> in resolve.c which is (eg. for me it seems to be) called during
> add_dst in routing.c.
>
> I very much appreciate your efford to fix this, many thanks in advance.
>
> Best regards,
>
> René
>
>
>
> 2009/6/1 Bogdan-Andrei Iancu <bogdan at voice-system.ro
> <mailto:bogdan at voice-system.ro>>
>
> Hi Rene,
>
> I made the fix on the SVN trunk and 1.5 - upload and try again,
>
>
> Regards,
> Bogdan
>
> Rene de Vall wrote:
>
> Hi Bogdan,
>
> ...yes, you're right, the gateway "behaves asymmetric", when
> it sends out the request it uses just the next port (socket)
> which the underlying operating system (IOS, in this case)
> offers as source port.
>
> Your proposed fix sounds goof to me, as it would work for all
> types of gateways, no matter if they "behave symmetric" or
> "asymmetric". If one needs to diversify a gateway which uses
> one IP and different ports, she can always add the port to the
> datafilled address in table dr_gateways...
>
> Thank you for your fast response and best regards,
>
> René
>
>
>
More information about the Users
mailing list