|
|
@ -2381,11 +2381,20 @@ int ast_bridge_call(struct ast_channel *chan,struct ast_channel *peer,struct ast
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case AST_CONTROL_OPTION:
|
|
|
|
case AST_CONTROL_OPTION:
|
|
|
|
aoh = f->data;
|
|
|
|
aoh = f->data;
|
|
|
|
/* Forward option Requests */
|
|
|
|
/* Forward option Requests, but only ones we know are safe
|
|
|
|
|
|
|
|
* These are ONLY sent by chan_iax2 and I'm not convinced that
|
|
|
|
|
|
|
|
* they are useful. I haven't deleted them entirely because I
|
|
|
|
|
|
|
|
* just am not sure of the ramifications of removing them. */
|
|
|
|
if (aoh && aoh->flag == AST_OPTION_FLAG_REQUEST) {
|
|
|
|
if (aoh && aoh->flag == AST_OPTION_FLAG_REQUEST) {
|
|
|
|
|
|
|
|
switch (ntohs(aoh->option)) {
|
|
|
|
|
|
|
|
case AST_OPTION_TONE_VERIFY:
|
|
|
|
|
|
|
|
case AST_OPTION_TDD:
|
|
|
|
|
|
|
|
case AST_OPTION_RELAXDTMF:
|
|
|
|
|
|
|
|
case AST_OPTION_AUDIO_MODE:
|
|
|
|
ast_channel_setoption(other, ntohs(aoh->option), aoh->data,
|
|
|
|
ast_channel_setoption(other, ntohs(aoh->option), aoh->data,
|
|
|
|
f->datalen - sizeof(struct ast_option_header), 0);
|
|
|
|
f->datalen - sizeof(struct ast_option_header), 0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} else if (f->frametype == AST_FRAME_DTMF_BEGIN) {
|
|
|
|
} else if (f->frametype == AST_FRAME_DTMF_BEGIN) {
|
|
|
|