mirror of
https://github.com/netbirdio/gvisor.git
synced 2026-05-22 17:12:49 -07:00
Check for invalid offset when submitting an AIO read/write request.
PiperOrigin-RevId: 202528335 Change-Id: Ic32312cf4337bcb40a7155cb2174e5cd89a280f7
This commit is contained in:
committed by
Shentubot
parent
8459390cdd
commit
1ceed49ba9
@@ -319,6 +319,14 @@ func submitCallback(t *kernel.Task, id uint64, cb *ioCallback, cbAddr usermem.Ad
|
||||
return err
|
||||
}
|
||||
|
||||
// Check offset for reads/writes.
|
||||
switch cb.OpCode {
|
||||
case _IOCB_CMD_PREAD, _IOCB_CMD_PREADV, _IOCB_CMD_PWRITE, _IOCB_CMD_PWRITEV:
|
||||
if cb.Offset < 0 {
|
||||
return syserror.EINVAL
|
||||
}
|
||||
}
|
||||
|
||||
// Prepare the request.
|
||||
ctx, ok := t.MemoryManager().LookupAIOContext(t, id)
|
||||
if !ok {
|
||||
|
||||
Reference in New Issue
Block a user