From afd0e1fc0197f87eb4eb1c227f1a03f490ecae75 Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Wed, 12 Oct 2011 15:28:08 -0500 Subject: [PATCH] add t38_pass_broken_boolean to pass the brokeb boolean behaviour over to the other side of the call when detected --- src/mod/endpoints/mod_sofia/sofia_glue.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/mod/endpoints/mod_sofia/sofia_glue.c b/src/mod/endpoints/mod_sofia/sofia_glue.c index 93414e29f7..67df4f25c2 100644 --- a/src/mod/endpoints/mod_sofia/sofia_glue.c +++ b/src/mod/endpoints/mod_sofia/sofia_glue.c @@ -4439,10 +4439,16 @@ uint8_t sofia_glue_negotiate_sdp(switch_core_session_t *session, const char *r_s if (pass && switch_core_session_get_partner(session, &other_session) == SWITCH_STATUS_SUCCESS) { private_object_t *other_tech_pvt = switch_core_session_get_private(other_session); + switch_channel_t *other_channel = switch_core_session_get_channel(other_session); switch_core_session_message_t *msg; char *remote_host = switch_rtp_get_remote_host(tech_pvt->rtp_session); switch_port_t remote_port = switch_rtp_get_remote_port(tech_pvt->rtp_session); char tmp[32] = ""; + + if (switch_true(switch_channel_get_variable(tech_pvt->channel, "t38_broken_boolean")) && + switch_true(switch_channel_get_variable(tech_pvt->channel, "t38_pass_broken_boolean"))) { + switch_channel_set_variable(other_channel, "t38_broken_boolean", "true"); + } tech_pvt->remote_sdp_audio_ip = switch_core_session_strdup(tech_pvt->session, t38_options->remote_ip); tech_pvt->remote_sdp_audio_port = t38_options->remote_port; @@ -4469,7 +4475,7 @@ uint8_t sofia_glue_negotiate_sdp(switch_core_session_t *session, const char *r_s } - + sofia_glue_copy_t38_options(t38_options, other_session);