mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
res_pjsip_t38: Don't pass T.38 control frames through to other hooks.
This crept up during gateway testing where the gateway would receive the request to negotiate and assume it came from the remote side, causing the gateway state machine to go a little, to a use a technical term, "wonky". ........ Merged revisions 403364 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@403365 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -113,11 +113,7 @@ static struct t38_parameters_task_data *t38_parameters_task_data_alloc(struct as
|
||||
|
||||
data->session = session;
|
||||
ao2_ref(session, +1);
|
||||
|
||||
if (!(data->frame = ast_frdup(frame))) {
|
||||
ao2_cleanup(data);
|
||||
return NULL;
|
||||
}
|
||||
data->frame = frame;
|
||||
|
||||
return data;
|
||||
}
|
||||
@@ -396,6 +392,8 @@ static struct ast_frame *t38_framehook_write(struct ast_sip_session *session, st
|
||||
if (ast_sip_push_task(session->serializer, t38_interpret_parameters, data)) {
|
||||
ao2_ref(data, -1);
|
||||
}
|
||||
|
||||
f = &ast_null_frame;
|
||||
} else if (f->frametype == AST_FRAME_MODEM) {
|
||||
RAII_VAR(struct ast_sip_session_media *, session_media, NULL, ao2_cleanup);
|
||||
|
||||
|
Reference in New Issue
Block a user