[Devel] Last changes before CVS freez

Bogdan-Andrei Iancu bogdan at voice-system.ro
Mon May 22 18:20:07 CEST 2006

Hi everybody,

during the latest days there were committed some last pending changes 
before freezing the CVS for starting the test period before the next 

Here is a short summary of these changes:

0) Core

  - forward and send functions merged by including the protocol, host and port
    into a single parameter like [proto:]host[:port]. Aligned to t_relay() and
    t_forward() format and NAPTR lookup enabled also
  - provides TLS client domains
    (name/socket based) and more script config capabilities

1) Accounting

  bugs fixed:
  - the "missed call" report will display as outgoing uri exactly the RURI used
    for that branch
  - the accounting report will display as outgoing uri the RURI of the winning
  behaviour fix:
  - the "missed call" flag has effect only on the next serial fork - once
    triggered to report a missed call (a serial fork step ended), the flag is
    automatically reset by module. To catch the potential "missed call" reports
    due next serial forks, you need to re-arm the flag from failure route.
    This behaviour gives full control over what branches should be or not
    accounted as "missed calls".

  - null pseudo-variable values are stored as "n/a" to keep consistency with acc format

2) TM module

  - TM API exports a new function for making public the selected branch (how
    the winning branch is selected must be transparent for the other modules)
  - fixed the branch selection algorithm - if the transaction was cancelled, the
    "487 Request cancelled" reply will have priority and it will be sent to UAC.

  -t_replicate() takes as parameter a SIP URI instead of a destination (in
   order to align the format as for append_branch() ).  
  -t_replicate() uses the set branches to perform parallel replication to
   multiple destinations.

3) Registrar / USRLOC

  - usrloc is able to detect retransmissions based on Callid and Cseq. The
    retransmission detection is controlled via the new "cseq_delay" module
    REGISTER retransmissions (inside the cseq_delay interval) will not generate
    error, but they will be accepted and properly replied without any update on
    the location status.
    This solves the problem of retransmissions without having a statefull
    processing on requests.

4) TLSOPS module

    The idea was to have some TLS related functions which can be used in the
    routing script to check TLS parameters.
    There is only one function implemented : is_peer_verified()
    This function returns 1 if the message is received via
    TLS and the peer was verified during TLS connection handshake, otherwise
    it returns -1.
    All information from the certificate is exported to the script via


More information about the Devel mailing list