aboutsummaryrefslogtreecommitdiff
path: root/mkfs/mkfs.h
diff options
context:
space:
mode:
authorDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-05-04 21:02:09 +0200
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-05-04 22:22:48 +0200
commit04aa1d971efb44eefa2290ed981c61842b7f62b7 (patch)
treea9059276e9b58ccc54a0eaa206e6d1ca53c7b125 /mkfs/mkfs.h
parent7070857b47373dafc1ab93fadec79243da589a1a (diff)
Rename tools to not collide with squashfs-tools
This commit changes the names of the tools to gensquashfs and rdsquashfs so they don't collide with the names used by the squashfs-tools package and the two can be installed side by side. Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'mkfs/mkfs.h')
-rw-r--r--mkfs/mkfs.h61
1 files changed, 61 insertions, 0 deletions
diff --git a/mkfs/mkfs.h b/mkfs/mkfs.h
new file mode 100644
index 0000000..8a867f2
--- /dev/null
+++ b/mkfs/mkfs.h
@@ -0,0 +1,61 @@
+/* SPDX-License-Identifier: GPL-3.0-or-later */
+#ifndef MKFS_H
+#define MKFS_H
+
+#include "squashfs.h"
+#include "compress.h"
+#include "id_table.h"
+#include "fstree.h"
+#include "config.h"
+#include "table.h"
+
+#include <unistd.h>
+#include <stdlib.h>
+#include <string.h>
+#include <stdio.h>
+#include <fcntl.h>
+#include <errno.h>
+
+typedef struct {
+ unsigned int def_uid;
+ unsigned int def_gid;
+ unsigned int def_mode;
+ unsigned int def_mtime;
+ int outmode;
+ int compressor;
+ int blksz;
+ int devblksz;
+ const char *infile;
+ const char *outfile;
+} options_t;
+
+typedef struct {
+ int outfd;
+ options_t opt;
+ sqfs_super_t super;
+ fstree_t fs;
+ void *block;
+ void *fragment;
+ void *scratch;
+
+ sqfs_fragment_t *fragments;
+ size_t num_fragments;
+ size_t max_fragments;
+
+ int file_block_count;
+ file_info_t *frag_list;
+ size_t frag_offset;
+
+ id_table_t idtbl;
+ size_t inode_counter;
+
+ compressor_t *cmp;
+} sqfs_info_t;
+
+void process_command_line(options_t *opt, int argc, char **argv);
+
+int write_data_to_image(sqfs_info_t *info);
+
+int sqfs_write_inodes(sqfs_info_t *info);
+
+#endif /* MKFS_H */