From 9be6ff345c6cb1766bd3f92f29213be3e99a58e2 Mon Sep 17 00:00:00 2001 From: Matheus Date: Sun, 1 Sep 2024 19:05:15 -0300 Subject: [PATCH] pseudodevices: handle seek --- kernel-src/io/pseudodevices.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/kernel-src/io/pseudodevices.c b/kernel-src/io/pseudodevices.c index de2833f2..36526ecc 100644 --- a/kernel-src/io/pseudodevices.c +++ b/kernel-src/io/pseudodevices.c @@ -24,6 +24,11 @@ static int null_read(int minor, void *buffer, size_t count, uintmax_t offset, in return 0; } +static int maxseek(int minor, size_t *max) { + *max = 0; + return 0; +} + static long current = 0xdeadbeefbadc0ffe; static uint8_t getrand8() { @@ -42,22 +47,26 @@ static int urandom_read(int minor, void *_buffer, size_t count, uintmax_t offset static devops_t nullops = { .read = null_read, - .write = null_write + .write = null_write, + .maxseek = maxseek }; static devops_t fullops = { .read = zero_read, - .write = full_write + .write = full_write, + .maxseek = maxseek }; static devops_t zeroops = { .read = zero_read, - .write = null_write + .write = null_write, + .maxseek = maxseek }; static devops_t urandomops = { .read = urandom_read, - .write = null_write + .write = null_write, + .maxseek = maxseek }; void pseudodevices_init() {