Info Node: (libext2fs.info)Creating and removing directory entries
(libext2fs.info)Creating and removing directory entries
Creating and removing directory entries
---------------------------------------
- Function: errcode_t ext2fs_link (ext2_filsys FS, ext2_ino_t DIR,
const char *NAME, ext2_ino_t INO, int flags)
This function adds a new directory entry to the directory DIR,
with NAME and INO specifying the name and inode number in the
directory entry, respectively.
The low 3 bits of the flags field is used to specify the file type
of inode: (No other flags are currently defined.)
`EXT2_FT_UNKNOWN'
The file type is unknown.
`EXT2_FT_REG_FILE'
The file type is a normal file.
`EXT2_FT_DIR'
The file type is a directory.
`EXT2_FT_CHRDEV'
The file type is a character device.
`EXT2_FT_BLKDEV'
The file type is a block device.
`EXT2_FT_FIFO'
The file type is a named pipe.
`EXT2_FT_SOCK'
The file type is a unix domain socket.
`EXT2_FT_SYMLINK'
The file type is a symbolic link.
- Function: errcode_t ext2fs_unlink (ext2_filsys FS, ext2_ino_t DIR,
const char *NAME, ext2_ino_t INO, int FLAGS)
This function removes a directory entry from DIR. The directory
entry to be removed is the first one which is matched by NAME and
INO. If NAME is non-NULL, the directory entry's name must match
NAME. If INO is non-zero, the directory entry's inode number must
match INO. No flags are currently defined for `ext2fs_unlink';
callers should pass in zero to this parameter.