Asterisk VoIP News

Monday, June 06, 2005

SIP changes in CVS head

Olle has posted details of some changes in CVS HEAD (and possibly one in STABLE):
Asterisk can fail an outbound registration

If you enter a register= statement with an incorrect password, wrong hostname or anything else that is wrong, Asterisk will give up registration after 10 attempts. If you do "sip show registry" you will see the registration status as "failed". Doing a "sip reload" will restart the attempts after you fixed the problem.

In earlier versions, Asterisk just kept sending packets endlessly.

Authentication changes Asterisk will now check that the authorisation user name (digest username=) in an incoming authentication is the same as the username part of the From: SIP uri. We've always based peer/user matching on the username part and now we will send an error if the authentication username is different from the From: username.

We have also fixed a problem that is occuring with Sipura devices, where the Sipura sends a proper authentication based on an old nonce.

Coming changes:
Changes that are in the bug tracker and hopefully will be implemented soon:
SIP domain support: As an option, you can configure your Asterisk to be SIP domain aware. If Asterisk gets messages directed to domains that are not configured as local domains, the message will be rejected. Very much like a mail server that doesn't forward or handle mail to other domains than local domains.

This feature also makes it possible to implement SIP transfers in a correct way, since Asterisk is able to judge whether a transfer is to a local or remote extension.

Support for supported/required headers: If a SIP service requires support of a SIP extension by using the Require: header, Asterisk doesn't understand that today. We should fail the transaction if we do not support the extension (which is simple, since Asterisk does not support any extensions at all today). This will also help implementing support for the Replaces: extension in SIP transfers.

Support of SIP call timers: This is something I just started exploring, but we need to implement. There are a lot of reports open in the bug tracker where we do not handle retransmissions properly. In some cases, this is because we retransmit too often according to the SIP standard, so we're getting totally out of sync with other devices.
The SIPURA bug fix will be implemented in the release ("stable") version of Asterisk if Russell approves, but the others are new functions that will only be implemented in the development version.

Meet me in Madrid to discuss chan_sip :-)