diff --git a/UPGRADE.txt b/UPGRADE.txt index e331e92c72..9410d501ff 100644 --- a/UPGRADE.txt +++ b/UPGRADE.txt @@ -19,6 +19,11 @@ === UPGRADE-10.txt -- Upgrade info for 1.8 to 10 === =========================================================== +from 11.8 to 11.9 +* res_fax now returns the correct rates for V.27ter (4800 or 9600 bit/s). + Because of this the default settings would not load, so the minrate (minimum + transmission rate) option was changed to default to 4800 since that is the + minimum rate for v.27 which is included in the default modem options. From 11.7 to 11.8: * The per console verbose level feature as previously implemented caused a diff --git a/configs/res_fax.conf.sample b/configs/res_fax.conf.sample index 19933e39d1..47ea35e044 100644 --- a/configs/res_fax.conf.sample +++ b/configs/res_fax.conf.sample @@ -8,8 +8,8 @@ maxrate=14400 ; Minimum Transmission Rate ; Possible values are { 2400 | 4800 | 7200 | 9600 | 12000 | 14400 } -; Set this value to the minimum desired transfer rate. Default: 2400 -minrate=2400 +; Set this value to the minimum desired transfer rate. Default: 4800 +minrate=4800 ; Send Progress/Status events to manager session ; Manager events with 'call' class permissions will receive events indicating the diff --git a/res/res_fax.c b/res/res_fax.c index 073777a904..853bfb4653 100644 --- a/res/res_fax.c +++ b/res/res_fax.c @@ -323,7 +323,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) @@ -704,7 +704,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; @@ -714,11 +714,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))) {