34 lines
618 B
C++
34 lines
618 B
C++
#pragma once
|
|
#include "fs/devices/DeviceRegistry.h"
|
|
|
|
class FullDevice : public Device
|
|
{
|
|
public:
|
|
// Initializer for DeviceRegistry.
|
|
static Result<void> create();
|
|
|
|
Result<usize> read(u8* buf, usize, usize length) const override
|
|
{
|
|
__builtin_memset(buf, 0, length);
|
|
|
|
return length;
|
|
}
|
|
|
|
Result<usize> write(const u8*, usize, usize) override
|
|
{
|
|
return err(ENOSPC);
|
|
}
|
|
|
|
bool will_block_if_read() const override
|
|
{
|
|
return false;
|
|
}
|
|
|
|
StringView device_path() const override
|
|
{
|
|
return "full";
|
|
}
|
|
|
|
virtual ~FullDevice() = default;
|
|
};
|