diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/common.h | 3 | ||||
| -rw-r--r-- | include/fstree.h | 11 | 
2 files changed, 11 insertions, 3 deletions
| diff --git a/include/common.h b/include/common.h index b0c7abb..df3017a 100644 --- a/include/common.h +++ b/include/common.h @@ -33,9 +33,6 @@ typedef struct sqfs_hard_link_t {  	char *target;  } sqfs_hard_link_t; -#define container_of(ptr, type, member) \ -	((type *)((char *)ptr - offsetof(type, member))) -  int inode_stat(const sqfs_tree_node_t *node, struct stat *sb);  char *sqfs_tree_node_get_path(const sqfs_tree_node_t *node); diff --git a/include/fstree.h b/include/fstree.h index 5bdfc7a..9868e8e 100644 --- a/include/fstree.h +++ b/include/fstree.h @@ -15,6 +15,7 @@  #include <stdio.h>  #include "sqfs/predef.h" +#include "fstream.h"  #include "compat.h"  enum { @@ -41,6 +42,9 @@ typedef struct file_info_t file_info_t;  typedef struct dir_info_t dir_info_t;  typedef struct fstree_t fstree_t; +#define container_of(ptr, type, member) \ +	((type *)((char *)ptr - offsetof(type, member))) +  /*    Optionally used by fstree_from_dir and fstree_from_subdir to    execute custom actions for each discovered node. @@ -59,6 +63,11 @@ struct file_info_t {  	char *input_file;  	sqfs_inode_generic_t *inode; + +	/* used by sort file processing */ +	sqfs_s64 priority; +	int flags; +	bool already_matched;  };  /* Additional meta data stored in a tree_node_t for directories */ @@ -274,4 +283,6 @@ int fstree_from_subdir(fstree_t *fs, tree_node_t *root,  		       const char *path, const char *subdir,  		       scan_node_callback cb, void *user, unsigned int flags); +int fstree_sort_files(fstree_t *fs, istream_t *sortfile); +  #endif /* FSTREE_H */ | 
