提交 b156cbd6 authored 作者: Steve Underwood's avatar Steve Underwood

A slightly mroe elegant an commented fix for the potential overflow issue in udptl.c

上级 dbc550a2
......@@ -222,10 +222,12 @@ int udptl_rx_packet(udptl_state_t *s, const uint8_t buf[], int len)
do {
if ((stat = decode_length(buf, len, &ptr, &count)) < 0)
return -1;
if ((total_count + count) >= 16) {
/* There is too much stuff here to be real, and it would overflow the bufs array
if we continue */
return -1;
}
for (i = 0; i < count; i++) {
if (total_count + i >= 16) {
return -1;
}
if (decode_open_type(buf, len, &ptr, &bufs[total_count + i], &lengths[total_count + i]) != 0)
return -1;
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论