[asterisk-bugs] [Asterisk 0016643]: [patch] Setting "timerb" on chan_sip.conf doesn't work at all, in [general] or peer

Asterisk Bug Tracker noreply at bugs.digium.com
Wed Feb 3 14:46:23 CST 2010


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=16643 
====================================================================== 
Reported By:                nahuelgreco
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   16643
Category:                   Channels/chan_sip/General
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     acknowledged
Asterisk Version:           SVN 
JIRA:                       SWP-756 
Regression:                 No 
Reviewboard Link:            
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Request Review:              
====================================================================== 
Date Submitted:             2010-01-18 18:45 CST
Last Modified:              2010-02-03 14:46 CST
====================================================================== 
Summary:                    [patch] Setting "timerb" on chan_sip.conf doesn't
work at all, in [general] or peer
Description: 
Asterisk 1.6.0.20, 1.6.1.12, 1.6.2.0, trunk rev 241145, all come with an
example of the "timerb" usage as a global parameter in sip.conf.sample, but
setting it doesn't work at all, so his documented usage is misleading.

If you change it in the [general] section, then chan_sip.c will do nothing
with that declaration. His global_timer_b variable is only assigned to
"timert1"*64, and there is no presence of "timerb" in the reload_config()
function for the [general] section.

If you instead set this timer for an specific peer, then is treated in the
build_peer() function, but the treatment seems to be incomplete. There are
two possible outcomings: the timer is not valid and the global one is used,
or the timer has a lower setting that the recommended and a warning is
printed... but there is no other usage of the retrieved "timerb" peer
config value, so is lost and never assigned to any variable.

So, doesn't matter how you use the "timerb" parameter in sip.conf, it has
no effects at all. 

====================================================================== 

---------------------------------------------------------------------- 
 (0117663) oej (manager) - 2010-02-03 14:46
 https://issues.asterisk.org/view.php?id=16643#c117663 
---------------------------------------------------------------------- 
The config part is bad, it has a circular dependency of the order in the
config file...

Timer_t1 checks the value of timer_b and timer_b checks the setting of
timer_t1... Bad. The checks about correct values should move until after we
have parsed the complete peer.

nahuelgreco: I think you misunderstand the scanf statement, we actually
set the timer_b value in the peer and use it in the dialog timeouts. Can
you give a more specific example on how it is not used or hurts your
communication?

tilghman: Check create_addr_from_peer where we copy timer_B to the dialog
structure from the peer. Then in sip_call() we use dialog->timer_b to
schedule the timeout. So I do think the code is around. Haven't tested it
though. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2010-02-03 14:46 oej            Note Added: 0117663                          
======================================================================




More information about the asterisk-bugs mailing list