summaryrefslogtreecommitdiff
path: root/mkfs/mksquashfs.h
diff options
context:
space:
mode:
Diffstat (limited to 'mkfs/mksquashfs.h')
-rw-r--r--mkfs/mksquashfs.h34
1 files changed, 33 insertions, 1 deletions
diff --git a/mkfs/mksquashfs.h b/mkfs/mksquashfs.h
index 8dda29c..677dad4 100644
--- a/mkfs/mksquashfs.h
+++ b/mkfs/mksquashfs.h
@@ -3,8 +3,9 @@
#define MKSQUASHFS_H
#include "squashfs.h"
-#include "options.h"
+#include "compress.h"
#include "fstree.h"
+#include "config.h"
#include <unistd.h>
#include <stdlib.h>
@@ -13,10 +14,41 @@
#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 {
+ uint8_t data[SQFS_META_BLOCK_SIZE + 2];
+ size_t offset;
+ size_t block_offset;
+ int outfd;
+ compressor_t *cmp;
+} meta_writer_t;
+
+void process_command_line(options_t *opt, int argc, char **argv);
+
int sqfs_super_init(sqfs_super_t *s, const options_t *opt);
int sqfs_padd_file(sqfs_super_t *s, const options_t *opt, int outfd);
int sqfs_super_write(const sqfs_super_t *super, int outfd);
+meta_writer_t *meta_writer_create(int fd, compressor_t *cmp);
+
+void meta_writer_destroy(meta_writer_t *m);
+
+int meta_writer_flush(meta_writer_t *m);
+
+int meta_writer_append(meta_writer_t *m, const void *data, size_t size);
+
#endif /* MKSQUASHFS_H */