mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-07 10:28:32 +00:00
Don't allow more than 10 seconds of audio for callerid (bug #2920)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4315 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -4700,6 +4700,7 @@ static void *ss_thread(void *data)
|
||||
int receivedRingT;
|
||||
int counter1;
|
||||
int counter;
|
||||
int samples = 0;
|
||||
|
||||
int flags;
|
||||
int i;
|
||||
@@ -5296,6 +5297,7 @@ static void *ss_thread(void *data)
|
||||
} else if (p->cid_signalling == CID_SIG_V23) {
|
||||
cs = callerid_new(cid_signalling);
|
||||
if (cs) {
|
||||
samples = 0;
|
||||
#if 1
|
||||
bump_gains(p);
|
||||
#endif
|
||||
@@ -5327,12 +5329,15 @@ static void *ss_thread(void *data)
|
||||
}
|
||||
break;
|
||||
}
|
||||
samples += res;
|
||||
res = callerid_feed(cs, buf, res, AST_LAW(p));
|
||||
if (res < 0) {
|
||||
ast_log(LOG_WARNING, "CallerID feed failed: %s\n", strerror(errno));
|
||||
break;
|
||||
} else if (res)
|
||||
break;
|
||||
else if (samples > (8000 * 10))
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (res == 1) {
|
||||
@@ -5466,6 +5471,7 @@ static void *ss_thread(void *data)
|
||||
#if 1
|
||||
bump_gains(p);
|
||||
#endif
|
||||
samples = 0;
|
||||
len = 0;
|
||||
distMatches = 0;
|
||||
/* Clear the current ring data array so we dont have old data in it. */
|
||||
@@ -5520,12 +5526,15 @@ static void *ss_thread(void *data)
|
||||
res = -1;
|
||||
break;
|
||||
}
|
||||
samples += res;
|
||||
res = callerid_feed(cs, buf, res, AST_LAW(p));
|
||||
if (res < 0) {
|
||||
ast_log(LOG_WARNING, "CallerID feed failed: %s\n", strerror(errno));
|
||||
break;
|
||||
} else if (res)
|
||||
break;
|
||||
else if (samples > (8000 * 10))
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (p->usedistinctiveringdetection == 1) {
|
||||
|
||||
Reference in New Issue
Block a user