[Serusers] Maxforwards problem

Martin Koenig martin.koenig at toplink-plannet.de
Tue Sep 21 10:38:22 CEST 2004


Hello List,

Version for all three proxies is

version:  0.8.14 (i386/linux)
@(#) $Id: main.c,v 1.168.4.3 2004/06/28 15:41:21 andrei Exp $
main.c compiled on 11:19:08 Sep  7 2004 with gcc 3.3


This is called at the beginning of every ser.cfg

if (!mf_process_maxfwd_header("10")) {
    sl_send_reply("483","Too Many Hops");
    break;
};

This is what happens:

Phone sends to Proxy1:
INVITE sip:07111204665 at proxy1 SIP/2.0.

Proxy1 sends to Proxy2:
INVITE sip:+497111204665 at proxy2:5070 SIP/2.0.
Max-Forwards: 10.
Record-Route:
<sip:07111204665 at proxy1;ftag=0006283e0a68001d23678a97-57412d71;lr>.

Proxy2 sends to Proxy3:
INVITE sip:+497111204665 at proxy3:5070 SIP/2.0.
Record-Route:
<sip:+497111204665 at proxy2:5070;ftag=0006283e0a68001d23678a97-57412d71;lr>.
Max-Forwards: 9 .
Record-Route:
<sip:07111204665 at proxy1;ftag=0006283e0a68001d23678a97-57412d71;lr>.

Proxy3 sends to Gateway:
INVITE sip:+497111204665 at gateway:5060 SIP/2.0.
Record-Route:
<sip:+497111204665 at proxy3:5070;ftag=0006283e0a68001d23678a97-57412d71;lr>.
Record-Route:
<sip:+497111204665 at proxy2:5070;ftag=0006283e0a68001d23678a97-57412d71;lr>.
Max-Forwards: 8 .
Record-Route:
<sip:07111204665 at proxy1;ftag=0006283e0a68001d23678a97-57412d71;lr>.

Gateway complains about the white space at the max fwd header field and
rejects the call.
Dirty Workaround is to use mf_process_maxfwd_header("9"), but this only
works if the Max-Forwards Field is not already present.

Question 1: Is this a bug? Shouldn't the white space be removed after
processing the header field?

Question 2: Shouldn't the Max-Forwards Field be either appended before or
after all of the Record-Route Fields?

Regards,
Martin




More information about the sr-users mailing list