Copy yet one check for SEEK_END overflow

This commit is contained in:
Andrey A. Chernov 2001-08-23 17:12:42 +00:00
parent 6fb9fbceab
commit 2a31175b6e

View File

@ -998,7 +998,8 @@ smbfs_advlock(ap)
break;
case SEEK_END:
/* 'size' is always >= 0 */
if (fl->l_start > 0 && size > OFF_MAX - fl->l_start)
if ((fl->l_start > 0 && size > OFF_MAX - fl->l_start) ||
(fl->l_start < 0 && size + fl->l_start > OFF_MAX))
return EOVERFLOW;
start = fl->l_start + size;
break;