Merge "res_fax: allow 2400 transmission rate according to v.27ter standard"

changes/93/293/2
Matt Jordan 11 years ago committed by Gerrit Code Review
commit 08355350a2

@ -53,8 +53,8 @@ enum ast_fax_capabilities {
enum ast_fax_modems {
/*! V.17 */
AST_FAX_MODEM_V17 = (1 << 0),
/*! V.27 */
AST_FAX_MODEM_V27 = (1 << 1),
/*! V.27ter */
AST_FAX_MODEM_V27TER = (1 << 1),
/*! V.29 */
AST_FAX_MODEM_V29 = (1 << 2),
/*! V.34 */

@ -523,7 +523,7 @@ static AST_RWLIST_HEAD_STATIC(faxmodules, fax_module);
#define RES_FAX_MINRATE 4800
#define RES_FAX_MAXRATE 14400
#define RES_FAX_STATUSEVENTS 0
#define RES_FAX_MODEM (AST_FAX_MODEM_V17 | AST_FAX_MODEM_V27 | AST_FAX_MODEM_V29)
#define RES_FAX_MODEM (AST_FAX_MODEM_V17 | AST_FAX_MODEM_V27TER | AST_FAX_MODEM_V29)
#define RES_FAX_T38TIMEOUT 5000
struct fax_options {
@ -828,7 +828,7 @@ static int update_modem_bits(enum ast_fax_modems *bits, const char *value)
if (!strcasecmp(m[j], "v17")) {
*bits |= AST_FAX_MODEM_V17;
} else if (!strcasecmp(m[j], "v27")) {
*bits |= AST_FAX_MODEM_V27;
*bits |= AST_FAX_MODEM_V27TER;
} else if (!strcasecmp(m[j], "v29")) {
*bits |= AST_FAX_MODEM_V29;
} else if (!strcasecmp(m[j], "v34")) {
@ -907,7 +907,7 @@ static int ast_fax_modem_to_str(enum ast_fax_modems bits, char *tbuf, size_t buf
strcat(tbuf, "V17");
count++;
}
if (bits & AST_FAX_MODEM_V27) {
if (bits & AST_FAX_MODEM_V27TER) {
if (count) {
strcat(tbuf, ",");
}
@ -936,22 +936,14 @@ static int check_modem_rate(enum ast_fax_modems modems, unsigned int rate)
{
switch (rate) {
case 2400:
if (!(modems & (AST_FAX_MODEM_V34))) {
return 1;
}
break;
case 4800:
if (!(modems & (AST_FAX_MODEM_V27 | AST_FAX_MODEM_V34))) {
if (!(modems & (AST_FAX_MODEM_V27TER | AST_FAX_MODEM_V34))) {
return 1;
}
break;
case 7200:
if (!(modems & (AST_FAX_MODEM_V17 | AST_FAX_MODEM_V29 | AST_FAX_MODEM_V34))) {
return 1;
}
break;
case 9600:
if (!(modems & (AST_FAX_MODEM_V17 | AST_FAX_MODEM_V27 | AST_FAX_MODEM_V29 | AST_FAX_MODEM_V34))) {
if (!(modems & (AST_FAX_MODEM_V17 | AST_FAX_MODEM_V29 | AST_FAX_MODEM_V34))) {
return 1;
}
break;

@ -502,7 +502,7 @@ static int spandsp_modems(struct ast_fax_session_details *details)
if (AST_FAX_MODEM_V17 & details->modems) {
modems |= T30_SUPPORT_V17;
}
if (AST_FAX_MODEM_V27 & details->modems) {
if (AST_FAX_MODEM_V27TER & details->modems) {
modems |= T30_SUPPORT_V27TER;
}
if (AST_FAX_MODEM_V29 & details->modems) {

Loading…
Cancel
Save