fix fax negotiation issue

This commit is contained in:
Anthony Minessale 2010-05-24 14:38:43 -05:00
parent fa9a59a88b
commit 8c3fc792b0
1 changed files with 4 additions and 3 deletions

View File

@ -685,7 +685,7 @@ static t38_mode_t configure_t38(pvt_t *pvt)
switch_t38_options_t *t38_options = switch_channel_get_private(channel, "t38_options"); switch_t38_options_t *t38_options = switch_channel_get_private(channel, "t38_options");
int method = 2; int method = 2;
if (!t38_options) { if (!t38_options || !pvt || !pvt->t38_core) {
pvt->t38_mode = T38_MODE_REFUSED; pvt->t38_mode = T38_MODE_REFUSED;
return pvt->t38_mode; return pvt->t38_mode;
} }
@ -1481,6 +1481,7 @@ static switch_status_t t38_gateway_on_soft_execute(switch_core_session_t *sessio
} }
if (pvt->t38_mode == T38_MODE_REQUESTED) { if (pvt->t38_mode == T38_MODE_REQUESTED) {
spanfax_init(pvt, T38_GATEWAY_MODE);
configure_t38(pvt); configure_t38(pvt);
pvt->t38_mode = T38_MODE_NEGOTIATED; pvt->t38_mode = T38_MODE_NEGOTIATED;
} else { } else {
@ -1489,9 +1490,9 @@ static switch_status_t t38_gateway_on_soft_execute(switch_core_session_t *sessio
switch_channel_hangup(channel, SWITCH_CAUSE_DESTINATION_OUT_OF_ORDER); switch_channel_hangup(channel, SWITCH_CAUSE_DESTINATION_OUT_OF_ORDER);
goto end_unlock; goto end_unlock;
} }
}
spanfax_init(pvt, T38_GATEWAY_MODE); spanfax_init(pvt, T38_GATEWAY_MODE);
}
/* This will change the rtp stack to udptl mode */ /* This will change the rtp stack to udptl mode */
msg.from = __FILE__; msg.from = __FILE__;