Skip to content

Commit

Permalink
Process sequential messages received in CONFIRMED_NA state
Browse files Browse the repository at this point in the history
Due to UDP race conditions, sequential messages may be received
before the ACK confirming the initial INVITE ( eg. Re-INVITE sent
immediately as the call is established in order to force
a specific codec ) - also push these requests through the whole
dialog processing in order to avoid any future issues ( eg. CSEQ
updating which, if left unprocessed, will lead to generating out
of order sequentials by OpenSIPS )
  • Loading branch information
vladpaiu committed May 20, 2016
1 parent 6ce77bf commit bfaf022
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion modules/dialog/dlg_handlers.c
Expand Up @@ -1595,7 +1595,7 @@ void dlg_onroute(struct sip_msg* req, str *route_params, void *param)
}

if ( (event==DLG_EVENT_REQ || event==DLG_EVENT_REQACK)
&& new_state==DLG_STATE_CONFIRMED) {
&& (new_state==DLG_STATE_CONFIRMED || new_state==DLG_STATE_CONFIRMED_NA) ) {
LM_DBG("sequential request successfully processed (dst_leg=%d)\n",
dst_leg);

Expand Down

0 comments on commit bfaf022

Please sign in to comment.