44a3dc21b4
"kind of" == directories aren't resized and overall space handling is crappy
30 lines
769 B
C
30 lines
769 B
C
#pragma once
|
|
#include "sys/types.h"
|
|
|
|
struct ext2_inode;
|
|
struct fs;
|
|
enum vnode_type;
|
|
struct vnode;
|
|
|
|
struct ext2_dirent {
|
|
uint32_t ino;
|
|
uint16_t ent_size;
|
|
uint8_t name_length_low;
|
|
union {
|
|
uint8_t type_indicator;
|
|
uint8_t name_length_high;
|
|
};
|
|
char name[0];
|
|
} __attribute__((packed));
|
|
|
|
int ext2_dir_insert_inode(struct fs *ext2,
|
|
struct ext2_inode *at_inode,
|
|
uint32_t at_ino,
|
|
const char *name,
|
|
uint32_t ino,
|
|
enum vnode_type type);
|
|
int ext2_dir_del_inode(struct fs *ext2,
|
|
struct ext2_inode *at_inode,
|
|
uint32_t at_ino,
|
|
struct vnode *vn);
|