[asterisk-commits] file: branch file/t38improvements r202891 - /team/file/t38improvements/channels/

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Jun 24 09:01:05 CDT 2009


Author: file
Date: Wed Jun 24 09:01:01 2009
New Revision: 202891

URL: http://svn.asterisk.org/svn-view/asterisk?view=rev&rev=202891
Log:
Give T38 parameters priority over the old control frame when sending into the core and ensure boolean values get turned off if set to be.

Modified:
    team/file/t38improvements/channels/chan_sip.c

Modified: team/file/t38improvements/channels/chan_sip.c
URL: http://svn.asterisk.org/svn-view/asterisk/team/file/t38improvements/channels/chan_sip.c?view=diff&rev=202891&r1=202890&r2=202891
==============================================================================
--- team/file/t38improvements/channels/chan_sip.c (original)
+++ team/file/t38improvements/channels/chan_sip.c Wed Jun 24 09:01:01 2009
@@ -4965,10 +4965,10 @@
 		message = parameters.request_response = AST_T38_REFUSED;
 
 	/* Woot we got a message, create a control frame and send it on! */
+	if (parameters.request_response)
+		ast_queue_control_data(chan, AST_CONTROL_T38_PARAMETERS, &parameters, sizeof(parameters));
 	if (message)
 		ast_queue_control_data(chan, AST_CONTROL_T38, &message, sizeof(message));
-	if (parameters.request_response)
-		ast_queue_control_data(chan, AST_CONTROL_T38_PARAMETERS, &parameters, sizeof(parameters));
 
 	if (ast_test_flag(&p->flags[1], SIP_PAGE2_FAX_DETECT) && !p->outgoing_call) {
 		/* fax detection is enabled and this is an incoming call */
@@ -6456,14 +6456,20 @@
 
 		if (parameters->fill_bit_removal) {
 			p->t38.capability = p->t38.jointcapability |= T38FAX_FILL_BIT_REMOVAL;
+		} else {
+			p->t38.capability = p->t38.jointcapability &= ~T38FAX_FILL_BIT_REMOVAL;
 		}
 
 		if (parameters->transcoding_mmr) {
 			p->t38.capability = p->t38.jointcapability |= T38FAX_TRANSCODING_MMR;
+		} else {
+			p->t38.capability = p->t38.jointcapability &= ~T38FAX_TRANSCODING_MMR;
 		}
 
 		if (parameters->transcoding_jbig) {
 			p->t38.capability = p->t38.jointcapability |= T38FAX_TRANSCODING_JBIG;
+		} else {
+			p->t38.capability = p->t38.jointcapability &= ~T38FAX_TRANSCODING_JBIG;
 		}
 
 		if (p->udptl && request_response == AST_T38_REQUEST_NEGOTIATE) {




More information about the asterisk-commits mailing list