r65795 - in /branches/upstream/libnet-sip-perl/current: Changes META.yml lib/Net/SIP.pm lib/Net/SIP/Endpoint/Context.pm
ansgar at users.alioth.debian.org
ansgar at users.alioth.debian.org
Sun Dec 12 20:29:04 UTC 2010
Author: ansgar
Date: Sun Dec 12 20:28:46 2010
New Revision: 65795
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=65795
Log:
[svn-upgrade] new version libnet-sip-perl (0.62)
Modified:
branches/upstream/libnet-sip-perl/current/Changes
branches/upstream/libnet-sip-perl/current/META.yml
branches/upstream/libnet-sip-perl/current/lib/Net/SIP.pm
branches/upstream/libnet-sip-perl/current/lib/Net/SIP/Endpoint/Context.pm
Modified: branches/upstream/libnet-sip-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libnet-sip-perl/current/Changes?rev=65795&op=diff
==============================================================================
--- branches/upstream/libnet-sip-perl/current/Changes (original)
+++ branches/upstream/libnet-sip-perl/current/Changes Sun Dec 12 20:28:46 2010
@@ -1,5 +1,13 @@
Revision history for Net::SIP
+0.62 2010-12-06
+- overwrite route header from record-route only for 200 response
+ which established dialog, not for further responses
+ Thanks to vitspec[AT]gmail[DOT]com for reporting.
+0.61 2010-12-06
+- overwrite route header from record-route only for first INVITE
+ in context, not for re-INVITEs.
+ Thanks to vitspec[AT]gmail[DOT]com for reporting.
0.60 2010-11-30
- overwrite route header from record-route only for INVITE.
Thanks to vitspec[AT]gmail[DOT]com for reporting.
Modified: branches/upstream/libnet-sip-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libnet-sip-perl/current/META.yml?rev=65795&op=diff
==============================================================================
--- branches/upstream/libnet-sip-perl/current/META.yml (original)
+++ branches/upstream/libnet-sip-perl/current/META.yml Sun Dec 12 20:28:46 2010
@@ -1,6 +1,6 @@
--- #YAML:1.0
name: Net-SIP
-version: 0.60
+version: 0.62
abstract: ~
author: []
license: unknown
Modified: branches/upstream/libnet-sip-perl/current/lib/Net/SIP.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libnet-sip-perl/current/lib/Net/SIP.pm?rev=65795&op=diff
==============================================================================
--- branches/upstream/libnet-sip-perl/current/lib/Net/SIP.pm (original)
+++ branches/upstream/libnet-sip-perl/current/lib/Net/SIP.pm Sun Dec 12 20:28:46 2010
@@ -4,7 +4,7 @@
require 5.008;
package Net::SIP;
-our $VERSION = '0.60';
+our $VERSION = '0.62';
# this includes nearly everything else
use Net::SIP::Simple ();
Modified: branches/upstream/libnet-sip-perl/current/lib/Net/SIP/Endpoint/Context.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libnet-sip-perl/current/lib/Net/SIP/Endpoint/Context.pm?rev=65795&op=diff
==============================================================================
--- branches/upstream/libnet-sip-perl/current/lib/Net/SIP/Endpoint/Context.pm (original)
+++ branches/upstream/libnet-sip-perl/current/lib/Net/SIP/Endpoint/Context.pm Sun Dec 12 20:28:46 2010
@@ -347,15 +347,18 @@
} elsif ( $code =~m{^2\d\d} ) {
# 2xx OK
- # extract route information
- if ( my @route = $response->get_header( 'record-route' )) {
- $self->{route} = [ reverse @route ];
- }
-
if ( $method eq 'INVITE' ) {
# is response to INVITE, create ACK
# and propagate to upper layer
my $req = $tr->{request};
+
+ # extract route information on INVIE, but not on re-INVITE
+ # we assume, that it is a re-INVITE, if we have a remote_contact
+ # already
+ if ( ! $self->{remote_contact}
+ and my @route = $response->get_header( 'record-route' )) {
+ $self->{route} = [ reverse @route ];
+ }
# 12.1.2 - set URI for dialog to contact given in response which
# establishes the dialog
@@ -363,6 +366,7 @@
$contact = $1 if $contact =~m{<(\w+:[^>\s]+)>};
$self->{remote_contact} = $contact;
$req->set_uri( $contact );
+
}
# use to-tag from this request to update 'to'
@@ -458,12 +462,15 @@
}
# check with last request in transaction
+ my $ctx_is_new;
if ( my $trans = $self->{_last_transreq} ) {
my $last_cseq = $trans->cseq;
if ( $last_cseq eq $cseq ) {
DEBUG( 10,"retransmit of last request. DROP" );
return;
}
+ } else {
+ $ctx_is_new = 1;
}
$self->{_last_transreq} = $request;
@@ -492,7 +499,7 @@
# extract route information for future requests to the UAC (re-invites)
# only for INVITE (rfc3261,12.1.1)
- if ( $method eq 'INVITE' and
+ if ( $ctx_is_new and $method eq 'INVITE' and
my @route = $request->get_header( 'record-route' )) {
$self->{route} = \@route;
}
More information about the Pkg-perl-cvs-commits
mailing list