Files
mop3/kernel/fs/tarfs.h
kamkow1 389f250d0b
All checks were successful
Build documentation / build-and-deploy (push) Successful in 2m24s
Rename fs_desc_buffer to desc
2026-02-22 00:11:09 +01:00

44 lines
947 B
C

#ifndef _KERNEL_FS_TARFS_H
#define _KERNEL_FS_TARFS_H
#include <desc.h>
#include <device/device.h>
#include <libk/std.h>
#include <proc/proc.h>
#include <proc/reschedule.h>
struct tar_header {
char filename[100];
uint8_t mode[8];
uint8_t uid[8];
uint8_t gid[8];
uint8_t size[12];
uint8_t mtime[12];
uint8_t checksum[8];
uint8_t type_flag;
} PACKED;
struct tar_file {
struct tar_header* header;
uint8_t* content;
size_t size;
};
#define TARFS_FILES_MAX 128
struct tarfs {
struct tar_file tarfs_files[TARFS_FILES_MAX];
uint8_t* buffer;
};
struct vfs_mountpoint;
int tarfs_mount (struct vfs_mountpoint* mountpoint, struct proc* proc, struct reschedule_ctx* rctx);
int tarfs_describe (struct vfs_mountpoint* mountpoint, const char* path, struct desc* desc);
int tarfs_read (struct vfs_mountpoint* mountpoint, const char* path, uint8_t* buffer, size_t off,
size_t size);
#endif // _KERNEL_FS_TARFS_H