mirror of
https://git.jami.net/savoirfairelinux/jami-daemon.git
synced 2025-08-12 22:09:25 +08:00
* #27201: libiax: avoid out of bounds read in a more obvious way
This commit is contained in:
@ -239,7 +239,7 @@ static void history_calc_maxbuf(jitterbuf *jb)
|
|||||||
if (toins > jb->hist_maxbuf[j]) {
|
if (toins > jb->hist_maxbuf[j]) {
|
||||||
/* move over if there's space */
|
/* move over if there's space */
|
||||||
const size_t slide = (JB_HISTORY_MAXBUF_SZ - (j + 1)) * sizeof(jb->hist_maxbuf[0]);
|
const size_t slide = (JB_HISTORY_MAXBUF_SZ - (j + 1)) * sizeof(jb->hist_maxbuf[0]);
|
||||||
if (slide > 0)
|
if (j < (JB_HISTORY_MAXBUF_SZ - 1))
|
||||||
memmove(jb->hist_maxbuf + j + 1, jb->hist_maxbuf + j, slide);
|
memmove(jb->hist_maxbuf + j + 1, jb->hist_maxbuf + j, slide);
|
||||||
/* insert */
|
/* insert */
|
||||||
jb->hist_maxbuf[j] = toins;
|
jb->hist_maxbuf[j] = toins;
|
||||||
@ -258,7 +258,7 @@ static void history_calc_maxbuf(jitterbuf *jb)
|
|||||||
if (toins < jb->hist_minbuf[j]) {
|
if (toins < jb->hist_minbuf[j]) {
|
||||||
/* move over if there's space */
|
/* move over if there's space */
|
||||||
const size_t slide = (JB_HISTORY_MAXBUF_SZ - (j + 1)) * sizeof(jb->hist_minbuf[0]);
|
const size_t slide = (JB_HISTORY_MAXBUF_SZ - (j + 1)) * sizeof(jb->hist_minbuf[0]);
|
||||||
if (slide > 0)
|
if (j < (JB_HISTORY_MAXBUF_SZ - 1))
|
||||||
memmove(jb->hist_minbuf + j + 1, jb->hist_minbuf + j, slide);
|
memmove(jb->hist_minbuf + j + 1, jb->hist_minbuf + j, slide);
|
||||||
/* insert */
|
/* insert */
|
||||||
jb->hist_minbuf[j] = toins;
|
jb->hist_minbuf[j] = toins;
|
||||||
|
Reference in New Issue
Block a user