mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-02-21 00:07:36 +08:00
Cygwin: fallocate(2): fix offset and length sanity check
- len must not be <= 0 - offset + len must not exceed off_t (max. file size) Fixes: e01c50c7b0a6 ("Cygwin: introduce fallocate(2)") Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
parent
295bef07d6
commit
7f88c8e0b3
@ -3005,8 +3005,10 @@ fallocate (int fd, int mode, off_t offset, off_t len)
|
||||
else if ((mode & (FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE))
|
||||
== FALLOC_FL_PUNCH_HOLE)
|
||||
res = EOPNOTSUPP;
|
||||
else if (offset < 0 || len == 0)
|
||||
else if (offset < 0 || len <= 0)
|
||||
res = EINVAL;
|
||||
else if (INT64_MAX - len < offset)
|
||||
res = EFBIG;
|
||||
else
|
||||
{
|
||||
cygheap_fdget cfd (fd);
|
||||
|
Loading…
x
Reference in New Issue
Block a user