summaryrefslogtreecommitdiff
path: root/res
diff options
context:
space:
mode:
authorJoshua Colp <jcolp@digium.com>2015-07-07 17:12:18 -0500
committerGerrit Code Review <gerrit2@gerrit.digium.api>2015-07-07 17:12:18 -0500
commit618b97c143fe45ccaf945ea4835bb9c19b43be34 (patch)
treef073341c1e955ac153dcee809f5c09150482c2f8 /res
parent2bc9245d9d0ef5701f64a21542f2a07d18ca7452 (diff)
parent38bace4fbb8d2c47cc38230645de2aa0769726fb (diff)
Merge "res_pjsip_t38.c: Fix always false if test." into 13
Diffstat (limited to 'res')
-rw-r--r--res/res_pjsip_t38.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/res/res_pjsip_t38.c b/res/res_pjsip_t38.c
index 06a73cc11..c44dc4b88 100644
--- a/res/res_pjsip_t38.c
+++ b/res/res_pjsip_t38.c
@@ -324,9 +324,13 @@ static int t38_interpret_parameters(void *obj)
case AST_T38_REQUEST_NEGOTIATE: /* Request T38 */
/* Negotiation can not take place without a valid max_ifp value. */
if (!parameters->max_ifp) {
- t38_change_state(data->session, session_media, state, T38_REJECTED);
if (data->session->t38state == T38_PEER_REINVITE) {
+ t38_change_state(data->session, session_media, state, T38_REJECTED);
ast_sip_session_resume_reinvite(data->session);
+ } else if (data->session->t38state == T38_ENABLED) {
+ t38_change_state(data->session, session_media, state, T38_DISABLED);
+ ast_sip_session_refresh(data->session, NULL, NULL, NULL,
+ AST_SIP_SESSION_REFRESH_METHOD_INVITE, 1);
}
break;
} else if (data->session->t38state == T38_PEER_REINVITE) {