diff options
author | Kevin Harwell <kharwell@digium.com> | 2014-01-16 19:13:05 +0000 |
---|---|---|
committer | Kevin Harwell <kharwell@digium.com> | 2014-01-16 19:13:05 +0000 |
commit | a48798ce95cdc0f47c4d05c4fd55fd58cf12b678 (patch) | |
tree | 295b82cb56ddd9b315d46a7715c4135de19e695b /res/res_fax.c | |
parent | 3373a5332bd63aedb8a0d0cd2e8cfa94281e5072 (diff) |
res_fax: check_modem_rate() returned incorrect rate for V.27
According to the new standard for V.27 and V.32 they are able to transmit
at a bit rate of 4,800 or 9,600. The check_mode_rate function needed to be
updated to reflect this. Also, because of this change the default 'minrate'
value was updated to be 4800.
(closes issue ASTERISK-22790)
Reported by: Paolo Compagnini
Patches:
res_fax.txt uploaded by looserouting (license 6548)
........
Merged revisions 405656 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 405693 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 405694 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@405695 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'res/res_fax.c')
-rw-r--r-- | res/res_fax.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/res/res_fax.c b/res/res_fax.c index 76fe0ca98..c4e64cd71 100644 --- a/res/res_fax.c +++ b/res/res_fax.c @@ -333,7 +333,7 @@ struct fax_module { }; static AST_RWLIST_HEAD_STATIC(faxmodules, fax_module); -#define RES_FAX_MINRATE 2400 +#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) @@ -708,7 +708,7 @@ static int check_modem_rate(enum ast_fax_modems modems, unsigned int rate) { switch (rate) { case 2400: - if (!(modems & (AST_FAX_MODEM_V27 | AST_FAX_MODEM_V34))) { + if (!(modems & (AST_FAX_MODEM_V34))) { return 1; } break; @@ -718,11 +718,15 @@ static int check_modem_rate(enum ast_fax_modems modems, unsigned int rate) } break; case 7200: - case 9600: 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))) { + return 1; + } + break; case 12000: case 14400: if (!(modems & (AST_FAX_MODEM_V17 | AST_FAX_MODEM_V34))) { |