Magisk/jni/magiskboot/magiskboot.h

45 lines
1.5 KiB
C
Raw Normal View History

2017-03-02 04:12:47 +08:00
#ifndef _MAGISKBOOT_H_
#define _MAGISKBOOT_H_
2017-02-28 05:37:47 +08:00
#include <sys/types.h>
#include "logging.h"
2017-02-28 05:37:47 +08:00
#include "bootimg.h"
2017-04-28 21:48:38 +08:00
#define KERNEL_FILE "kernel"
#define RAMDISK_FILE "ramdisk.cpio"
#define SECOND_FILE "second"
2017-10-07 22:08:10 +08:00
#define EXTRA_FILE "extra"
2017-04-28 21:48:38 +08:00
#define DTB_FILE "dtb"
#define NEW_BOOT "new-boot.img"
2017-02-28 05:37:47 +08:00
// Main entries
void unpack(const char *image);
2017-03-08 00:54:23 +08:00
void repack(const char* orig_image, const char* out_image);
2017-03-04 21:16:59 +08:00
void hexpatch(const char *image, const char *from, const char *to);
int parse_img(void *orig, size_t size, boot_img *boot);
2017-03-10 04:08:17 +08:00
int cpio_commands(const char *command, int argc, char *argv[]);
void comp_file(const char *method, const char *from, const char *to);
void decomp_file(char *from, const char *to);
2017-10-07 22:08:10 +08:00
void dtb_print(const char *file);
2017-09-15 02:52:27 +08:00
void dtb_patch(const char *file);
2017-02-28 05:37:47 +08:00
// Compressions
size_t gzip(int mode, int fd, const void *buf, size_t size);
size_t lzma(int mode, int fd, const void *buf, size_t size);
size_t lz4(int mode, int fd, const void *buf, size_t size);
size_t bzip2(int mode, int fd, const void *buf, size_t size);
size_t lz4_legacy(int mode, int fd, const void *buf, size_t size);
long long comp(file_t type, int to, const void *from, size_t size);
long long decomp(file_t type, int to, const void *from, size_t size);
2017-03-04 21:16:59 +08:00
// Utils
2017-09-14 23:11:56 +08:00
extern void write_zero(int fd, size_t size);
extern void mem_align(size_t *pos, size_t align);
extern void file_align(int fd, size_t align, int out);
extern int open_new(const char *filename);
2017-09-15 01:45:39 +08:00
extern int check_verity_pattern(const char *s);
extern int check_encryption_pattern(const char *s);
2017-02-28 05:37:47 +08:00
#endif