1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 05:08:13 +00:00

Kernel: Have File virtuals take a FileDescriptor& rather than a Process&.

This will allow us to implement different behaviors depending on the role
of the descriptor a File is being accessed through.
This commit is contained in:
Andreas Kling 2019-04-29 13:58:40 +02:00
parent 3761bc3ed7
commit 8cbb7f101f
39 changed files with 156 additions and 155 deletions

View file

@ -81,17 +81,17 @@ void FIFO::detach(Direction direction)
}
}
bool FIFO::can_read(Process&) const
bool FIFO::can_read(FileDescriptor&) const
{
return !m_buffer.is_empty() || !m_writers;
}
bool FIFO::can_write(Process&) const
bool FIFO::can_write(FileDescriptor&) const
{
return m_buffer.bytes_in_write_buffer() < 4096;
}
ssize_t FIFO::read(Process&, byte* buffer, ssize_t size)
ssize_t FIFO::read(FileDescriptor&, byte* buffer, ssize_t size)
{
if (!m_writers && m_buffer.is_empty())
return 0;
@ -105,7 +105,7 @@ ssize_t FIFO::read(Process&, byte* buffer, ssize_t size)
return nread;
}
ssize_t FIFO::write(Process&, const byte* buffer, ssize_t size)
ssize_t FIFO::write(FileDescriptor&, const byte* buffer, ssize_t size)
{
if (!m_readers)
return 0;