Skip to content
Snippets Groups Projects
  • Joshua Colp's avatar
    32b29d7b
    app: Queue hangup if channel is hung up during sub or macro execution. · 32b29d7b
    Joshua Colp authored
    This issue was exposed when executing a connected line subroutine.
    When connected or redirected subroutines or macros are executed it is
    expected that the underlying applications and logic invoked are fast
    and do not consume frames. In practice this constraint is not enforced
    and if not adhered to will cause channels to continue when they shouldn't.
    This is because each caller of the connected or redirected logic does not
    check whether the channel has been hung up on return. As a result the
    the hung up channel continues.
    
    This change makes it so when the API to execute a subroutine or
    macro is invoked the channel is checked to determine if it has hung up.
    If it has then a hangup is queued again so the caller will see it
    and stop.
    
    ASTERISK-25690 #close
    
    Change-Id: I1f9a8ceb1487df0389f0d346ce0f6dcbcaf476ea
    32b29d7b
    History
    app: Queue hangup if channel is hung up during sub or macro execution.
    Joshua Colp authored
    This issue was exposed when executing a connected line subroutine.
    When connected or redirected subroutines or macros are executed it is
    expected that the underlying applications and logic invoked are fast
    and do not consume frames. In practice this constraint is not enforced
    and if not adhered to will cause channels to continue when they shouldn't.
    This is because each caller of the connected or redirected logic does not
    check whether the channel has been hung up on return. As a result the
    the hung up channel continues.
    
    This change makes it so when the API to execute a subroutine or
    macro is invoked the channel is checked to determine if it has hung up.
    If it has then a hangup is queued again so the caller will see it
    and stop.
    
    ASTERISK-25690 #close
    
    Change-Id: I1f9a8ceb1487df0389f0d346ce0f6dcbcaf476ea