1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 13:57:35 +00:00

Kernel: Use u64 instead of size_t for File::can_read offset

This ensures offsets will not be truncated on large files on i686.
This commit is contained in:
Idan Horowitz 2022-01-25 20:17:49 +02:00
parent 0c630d5687
commit 9ce537d703
47 changed files with 47 additions and 47 deletions

View file

@ -31,7 +31,7 @@ public:
virtual StringView purpose() const override { return class_name(); }
// ^CharacterDevice
virtual bool can_read(const OpenFileDescription&, size_t) const override { return false; }
virtual bool can_read(const OpenFileDescription&, u64) const override { return false; }
virtual bool can_write(const OpenFileDescription&, size_t) const override { return true; }
virtual ErrorOr<void> ioctl(OpenFileDescription&, unsigned, Userspace<void*>) override;
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override;

View file

@ -184,7 +184,7 @@ void SB16::set_irq_line(u8 irq_number)
change_irq_number(irq_number);
}
bool SB16::can_read(OpenFileDescription const&, size_t) const
bool SB16::can_read(OpenFileDescription const&, u64) const
{
return false;
}

View file

@ -26,7 +26,7 @@ public:
static RefPtr<SB16> try_detect_and_create();
// ^CharacterDevice
virtual bool can_read(const OpenFileDescription&, size_t) const override;
virtual bool can_read(const OpenFileDescription&, u64) const override;
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override;
virtual ErrorOr<size_t> write(OpenFileDescription&, u64, const UserOrKernelBuffer&, size_t) override;
virtual bool can_write(const OpenFileDescription&, size_t) const override { return true; }

View file

@ -32,7 +32,7 @@ UNMAP_AFTER_INIT ConsoleDevice::~ConsoleDevice()
{
}
bool ConsoleDevice::can_read(const Kernel::OpenFileDescription&, size_t) const
bool ConsoleDevice::can_read(const Kernel::OpenFileDescription&, u64) const
{
return false;
}

View file

@ -21,7 +21,7 @@ public:
virtual ~ConsoleDevice() override;
// ^CharacterDevice
virtual bool can_read(const Kernel::OpenFileDescription&, size_t) const override;
virtual bool can_read(const Kernel::OpenFileDescription&, u64) const override;
virtual bool can_write(const Kernel::OpenFileDescription&, size_t) const override { return true; }
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, Kernel::UserOrKernelBuffer&, size_t) override;
virtual ErrorOr<size_t> write(OpenFileDescription&, u64, const Kernel::UserOrKernelBuffer&, size_t) override;

View file

@ -17,7 +17,7 @@ UNMAP_AFTER_INIT NonnullRefPtr<DeviceControlDevice> DeviceControlDevice::must_cr
return device_control_device_or_error.release_value();
}
bool DeviceControlDevice::can_read(const OpenFileDescription&, size_t) const
bool DeviceControlDevice::can_read(const OpenFileDescription&, u64) const
{
return true;
}

View file

@ -24,7 +24,7 @@ private:
virtual ErrorOr<void> ioctl(OpenFileDescription&, unsigned request, Userspace<void*> arg) override;
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override;
virtual ErrorOr<size_t> write(OpenFileDescription&, u64, const UserOrKernelBuffer&, size_t) override { return Error::from_errno(ENOTSUP); }
virtual bool can_read(const OpenFileDescription&, size_t) const override;
virtual bool can_read(const OpenFileDescription&, u64) const override;
virtual bool can_write(const OpenFileDescription&, size_t) const override { return false; }
virtual StringView class_name() const override { return "DeviceControlDevice"sv; }
};

View file

@ -29,7 +29,7 @@ UNMAP_AFTER_INIT FullDevice::~FullDevice()
{
}
bool FullDevice::can_read(const OpenFileDescription&, size_t) const
bool FullDevice::can_read(const OpenFileDescription&, u64) const
{
return true;
}

View file

@ -23,7 +23,7 @@ private:
// ^CharacterDevice
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override;
virtual ErrorOr<size_t> write(OpenFileDescription&, u64, const UserOrKernelBuffer&, size_t) override;
virtual bool can_read(const OpenFileDescription&, size_t) const override;
virtual bool can_read(const OpenFileDescription&, u64) const override;
virtual bool can_write(const OpenFileDescription&, size_t) const override { return true; }
virtual StringView class_name() const override { return "FullDevice"sv; }
};

View file

@ -280,7 +280,7 @@ UNMAP_AFTER_INIT KeyboardDevice::~KeyboardDevice()
{
}
bool KeyboardDevice::can_read(const OpenFileDescription&, size_t) const
bool KeyboardDevice::can_read(const OpenFileDescription&, u64) const
{
return !m_queue.is_empty();
}

View file

@ -26,7 +26,7 @@ public:
// ^CharacterDevice
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override;
virtual bool can_read(const OpenFileDescription&, size_t) const override;
virtual bool can_read(const OpenFileDescription&, u64) const override;
virtual ErrorOr<size_t> write(OpenFileDescription&, u64, const UserOrKernelBuffer&, size_t) override { return EINVAL; }
virtual bool can_write(const OpenFileDescription&, size_t) const override { return true; }

View file

@ -18,7 +18,7 @@ MouseDevice::~MouseDevice()
{
}
bool MouseDevice::can_read(const OpenFileDescription&, size_t) const
bool MouseDevice::can_read(const OpenFileDescription&, u64) const
{
SpinlockLocker lock(m_queue_lock);
return !m_queue.is_empty();

View file

@ -24,7 +24,7 @@ public:
// ^CharacterDevice
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override;
virtual bool can_read(const OpenFileDescription&, size_t) const override;
virtual bool can_read(const OpenFileDescription&, u64) const override;
virtual ErrorOr<size_t> write(OpenFileDescription&, u64, const UserOrKernelBuffer&, size_t) override { return EINVAL; }
virtual bool can_write(const OpenFileDescription&, size_t) const override { return true; }

View file

@ -30,7 +30,7 @@ protected:
virtual StringView class_name() const override { return "KCOVDevice"sv; }
virtual bool can_read(const OpenFileDescription&, size_t) const override final { return true; }
virtual bool can_read(const OpenFileDescription&, u64) const override final { return true; }
virtual bool can_write(const OpenFileDescription&, size_t) const override final { return true; }
virtual void start_request(AsyncBlockDeviceRequest& request) override final { request.complete(AsyncDeviceRequest::Failure); }
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override { return EINVAL; }

View file

@ -25,7 +25,7 @@ private:
MemoryDevice();
virtual StringView class_name() const override { return "MemoryDevice"sv; }
virtual bool can_read(const OpenFileDescription&, size_t) const override { return true; }
virtual bool can_read(const OpenFileDescription&, u64) const override { return true; }
virtual bool can_write(const OpenFileDescription&, size_t) const override { return false; }
virtual bool is_seekable() const override { return true; }
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override;

View file

@ -28,7 +28,7 @@ UNMAP_AFTER_INIT NullDevice::~NullDevice()
{
}
bool NullDevice::can_read(const OpenFileDescription&, size_t) const
bool NullDevice::can_read(const OpenFileDescription&, u64) const
{
return true;
}

View file

@ -24,7 +24,7 @@ private:
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override;
virtual ErrorOr<size_t> write(OpenFileDescription&, u64, const UserOrKernelBuffer&, size_t) override;
virtual bool can_write(const OpenFileDescription&, size_t) const override { return true; }
virtual bool can_read(const OpenFileDescription&, size_t) const override;
virtual bool can_read(const OpenFileDescription&, u64) const override;
virtual StringView class_name() const override { return "NullDevice"sv; }
virtual bool is_seekable() const override { return true; }
};

View file

@ -28,7 +28,7 @@ UNMAP_AFTER_INIT RandomDevice::~RandomDevice()
{
}
bool RandomDevice::can_read(const OpenFileDescription&, size_t) const
bool RandomDevice::can_read(const OpenFileDescription&, u64) const
{
return true;
}

View file

@ -23,7 +23,7 @@ private:
// ^CharacterDevice
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override;
virtual ErrorOr<size_t> write(OpenFileDescription&, u64, const UserOrKernelBuffer&, size_t) override;
virtual bool can_read(const OpenFileDescription&, size_t) const override;
virtual bool can_read(const OpenFileDescription&, u64) const override;
virtual bool can_write(const OpenFileDescription&, size_t) const override { return true; }
virtual StringView class_name() const override { return "RandomDevice"sv; }
};

View file

@ -56,7 +56,7 @@ UNMAP_AFTER_INIT SerialDevice::~SerialDevice()
{
}
bool SerialDevice::can_read(const OpenFileDescription&, size_t) const
bool SerialDevice::can_read(const OpenFileDescription&, u64) const
{
return (get_line_status() & DataReady) != 0;
}

View file

@ -20,7 +20,7 @@ public:
virtual ~SerialDevice() override;
// ^CharacterDevice
virtual bool can_read(const OpenFileDescription&, size_t) const override;
virtual bool can_read(const OpenFileDescription&, u64) const override;
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override;
virtual bool can_write(const OpenFileDescription&, size_t) const override;
virtual ErrorOr<size_t> write(OpenFileDescription&, u64, const UserOrKernelBuffer&, size_t) override;

View file

@ -28,7 +28,7 @@ UNMAP_AFTER_INIT ZeroDevice::~ZeroDevice()
{
}
bool ZeroDevice::can_read(const OpenFileDescription&, size_t) const
bool ZeroDevice::can_read(const OpenFileDescription&, u64) const
{
return true;
}

View file

@ -23,7 +23,7 @@ private:
// ^CharacterDevice
virtual ErrorOr<size_t> read(OpenFileDescription&, u64, UserOrKernelBuffer&, size_t) override;
virtual ErrorOr<size_t> write(OpenFileDescription&, u64, const UserOrKernelBuffer&, size_t) override;
virtual bool can_read(const OpenFileDescription&, size_t) const override;
virtual bool can_read(const OpenFileDescription&, u64) const override;
virtual bool can_write(const OpenFileDescription&, size_t) const override { return true; }
virtual StringView class_name() const override { return "ZeroDevice"sv; }
};