Merged revisions 203699 via svnmerge from

https://origsvn.digium.com/svn/asterisk/trunk

........
  r203699 | file | 2009-06-26 16:27:24 -0300 (Fri, 26 Jun 2009) | 2 lines
  
  Improve T.38 negotiation by exchanging session parameters between application and channel.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@203703 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Joshua Colp
2009-06-26 19:31:36 +00:00
parent 3cbfe8e962
commit 642b571683
7 changed files with 287 additions and 113 deletions

View File

@@ -853,6 +853,25 @@ void ast_frame_dump(const char *name, struct ast_frame *f, char *prefix)
}
snprintf(subclass, sizeof(subclass), "T38/%s", message);
break;
case AST_CONTROL_T38_PARAMETERS:
if (f->datalen != sizeof(struct ast_control_t38_parameters *)) {
message = "Invalid";
} else {
struct ast_control_t38_parameters *parameters = f->data.ptr;
enum ast_control_t38 state = parameters->request_response;
if (state == AST_T38_REQUEST_NEGOTIATE)
message = "Negotiation Requested";
else if (state == AST_T38_REQUEST_TERMINATE)
message = "Negotiation Request Terminated";
else if (state == AST_T38_NEGOTIATED)
message = "Negotiated";
else if (state == AST_T38_TERMINATED)
message = "Terminated";
else if (state == AST_T38_REFUSED)
message = "Refused";
}
snprintf(subclass, sizeof(subclass), "T38_Parameters/%s", message);
break;
case -1:
strcpy(subclass, "Stop generators");
break;