diff --git a/src/switch_core_io.c b/src/switch_core_io.c index a36d55776b..e27bf86d0f 100644 --- a/src/switch_core_io.c +++ b/src/switch_core_io.c @@ -1435,7 +1435,7 @@ SWITCH_DECLARE(switch_status_t) switch_core_session_send_dtmf_string(switch_core dur = switch_core_default_dtmf_duration(0) / 8; if ((p = strchr(argv[i], '@'))) { *p++ = '\0'; - if ((dur = atoi(p)) > 50) { + if ((dur = atoi(p)) > (int)switch_core_min_dtmf_duration(0) / 8) { dtmf.duration = dur * 8; } } @@ -1444,7 +1444,7 @@ SWITCH_DECLARE(switch_status_t) switch_core_session_send_dtmf_string(switch_core for (p = argv[i]; p && *p; p++) { if (is_dtmf(*p)) { dtmf.digit = *p; - + if (dtmf.duration > switch_core_max_dtmf_duration(0)) { switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH_LOG_WARNING, "%s EXCESSIVE DTMF DIGIT [%c] LEN [%d]\n", switch_channel_get_name(session->channel), dtmf.digit, dtmf.duration);