X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/ac9c5346f3f10ac7adf3772521fa4d18f17c97c7..b58b151ff3f69422ba1d553f66455700cd3c204b:/lunaix-os/includes/lunaix/fs.h diff --git a/lunaix-os/includes/lunaix/fs.h b/lunaix-os/includes/lunaix/fs.h index d233ff0..bc22fd5 100644 --- a/lunaix-os/includes/lunaix/fs.h +++ b/lunaix-os/includes/lunaix/fs.h @@ -27,6 +27,7 @@ #define VFS_WALK_MKPARENT 0x1 #define VFS_WALK_FSRELATIVE 0x2 #define VFS_WALK_PARENT 0x4 +#define VFS_WALK_NOFOLLOW 0x4 #define VFS_IOBUF_FDIRTY 0x1 @@ -101,6 +102,7 @@ struct v_fd { struct v_file* file; int pos; + int flags; }; struct v_inode @@ -123,6 +125,8 @@ struct v_inode int (*rmdir)(struct v_inode* this); int (*unlink)(struct v_inode* this); int (*link)(struct v_inode* this, struct v_dnode* new_name); + int (*read_symlink)(struct v_inode* this, const char** path_out); + int (*symlink)(struct v_inode* this, const char* target); int (*dir_lookup)(struct v_inode* this, struct v_dnode* dnode); } ops; };