From 5dced3d1b3deca80e01415a2e35dc7972dcbfae7 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 11:25:10 +0200 Subject: Adding upstream version 1.47.0. Signed-off-by: Daniel Baumann --- misc/create_inode.h | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 misc/create_inode.h (limited to 'misc/create_inode.h') diff --git a/misc/create_inode.h b/misc/create_inode.h new file mode 100644 index 0000000..b5eeb42 --- /dev/null +++ b/misc/create_inode.h @@ -0,0 +1,57 @@ +#ifndef _CREATE_INODE_H +#define _CREATE_INODE_H + +#include +#include +#include +#include "et/com_err.h" +#include "e2p/e2p.h" +#include "ext2fs/ext2fs.h" + +struct hdlink_s +{ + dev_t src_dev; + ino_t src_ino; + ext2_ino_t dst_ino; +}; + +struct hdlinks_s +{ + int count; + int size; + struct hdlink_s *hdl; +}; + +#define HDLINK_CNT (4) + +struct fs_ops_callbacks { + errcode_t (* create_new_inode)(ext2_filsys fs, const char *target_path, + const char *name, ext2_ino_t parent_ino, ext2_ino_t root, + mode_t mode); + errcode_t (* end_create_new_inode)(ext2_filsys fs, + const char *target_path, const char *name, + ext2_ino_t parent_ino, ext2_ino_t root, mode_t mode); +}; + +extern int no_copy_xattrs; /* this should eventually be a flag + passed to populate_fs3() */ + +/* For populating the filesystem */ +extern errcode_t populate_fs(ext2_filsys fs, ext2_ino_t parent_ino, + const char *source_dir, ext2_ino_t root); +extern errcode_t populate_fs2(ext2_filsys fs, ext2_ino_t parent_ino, + const char *source_dir, ext2_ino_t root, + struct fs_ops_callbacks *fs_callbacks); +extern errcode_t do_mknod_internal(ext2_filsys fs, ext2_ino_t cwd, + const char *name, unsigned int st_mode, + unsigned int st_rdev); +extern errcode_t do_symlink_internal(ext2_filsys fs, ext2_ino_t cwd, + const char *name, char *target, + ext2_ino_t root); +extern errcode_t do_mkdir_internal(ext2_filsys fs, ext2_ino_t cwd, + const char *name, ext2_ino_t root); +extern errcode_t do_write_internal(ext2_filsys fs, ext2_ino_t cwd, + const char *src, const char *dest, + ext2_ino_t root); + +#endif /* _CREATE_INODE_H */ -- cgit v1.2.3