From 67e666762e60080ee85b750220db4664d691fea2 Mon Sep 17 00:00:00 2001 From: Ian Moffett Date: Sat, 18 Oct 2025 16:44:36 -0400 Subject: kern: filedesc: Expose fd allocation API Signed-off-by: Ian Moffett --- src/sys/include/os/filedesc.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src/sys/include') diff --git a/src/sys/include/os/filedesc.h b/src/sys/include/os/filedesc.h index b773de9..95400ed 100644 --- a/src/sys/include/os/filedesc.h +++ b/src/sys/include/os/filedesc.h @@ -51,6 +51,18 @@ struct filedesc { mode_t mode; }; +/* + * Allocate a file descriptor from a specific process's + * file descriptor table + * + * @procp: Process to allocate fd from + * @fd_res: Result pointer is written here + * + * Returns zero on success, otherwise a less than + * zero value upon failure + */ +int fd_alloc(struct proc *procp, struct filedesc **fd_res); + /* * Duplicate a file descriptor * @@ -62,6 +74,18 @@ struct filedesc { */ struct filedesc *fd_dup(struct proc *procp, int fd); +/* + * Look up a file descriptor that belongs to a specific + * process by using its fd number + * + * @procp: Process to look up + * @fd: File descriptor number + * + * Returns the file descriptor pointer on success, + * otherwise a less than zero value on failure + */ +struct filedesc *fd_get(struct proc *procp, int fd); + /* * Initialize a process file descriptor table * and set up standard streams -- cgit v1.2.3