Index: apps/app_fax.c =================================================================== --- apps/app_fax.c (revision 194206) +++ apps/app_fax.c (working copy) @@ -446,6 +446,11 @@ ast_debug(1, "T38 negotiated, finishing audio loop\n"); res = 1; break; + } else if (t38control == AST_T38_REQUEST_NEGOTIATE) { + ast_debug(1, "T38 reinvite received from remote peer. Accepting.\n"); + t38control = AST_T38_REQUEST_NEGOTIATE; + ast_indicate_data(s->chan, AST_CONTROL_T38, &t38control, sizeof(t38control)); + detect_tone = 0; } } @@ -575,7 +580,6 @@ if (t38control == AST_T38_TERMINATED || t38control == AST_T38_REFUSED) { ast_debug(1, "T38 down, terminating\n"); - res = -1; break; } }