aboutsummaryrefslogtreecommitdiffstats
path: root/applypatch/applypatch.h
diff options
context:
space:
mode:
Diffstat (limited to 'applypatch/applypatch.h')
-rw-r--r--applypatch/applypatch.h22
1 files changed, 18 insertions, 4 deletions
diff --git a/applypatch/applypatch.h b/applypatch/applypatch.h
index 3cb8021..10c0125 100644
--- a/applypatch/applypatch.h
+++ b/applypatch/applypatch.h
@@ -19,6 +19,7 @@
#include <sys/stat.h>
#include "mincrypt/sha.h"
+#include "edify/expr.h"
typedef struct _Patch {
uint8_t sha1[SHA_DIGEST_SIZE];
@@ -42,8 +43,21 @@ typedef struct _FileContents {
typedef ssize_t (*SinkFn)(unsigned char*, ssize_t, void*);
// applypatch.c
+int ShowLicenses();
size_t FreeSpaceForFile(const char* filename);
-int applypatch(int argc, char** argv);
+int CacheSizeCheck(size_t bytes);
+int ParseSha1(const char* str, uint8_t* digest);
+
+int applypatch(const char* source_filename,
+ const char* target_filename,
+ const char* target_sha1_str,
+ size_t target_size,
+ int num_patches,
+ char** const patch_sha1_str,
+ Value** patch_data);
+int applypatch_check(const char* filename,
+ int num_patches,
+ char** const patch_sha1_str);
// Read a file into memory; store it and its associated metadata in
// *file. Return 0 on success.
@@ -53,15 +67,15 @@ void FreeFileContents(FileContents* file);
// bsdiff.c
void ShowBSDiffLicense();
int ApplyBSDiffPatch(const unsigned char* old_data, ssize_t old_size,
- const char* patch_filename, ssize_t offset,
+ const Value* patch, ssize_t patch_offset,
SinkFn sink, void* token, SHA_CTX* ctx);
int ApplyBSDiffPatchMem(const unsigned char* old_data, ssize_t old_size,
- const char* patch_filename, ssize_t patch_offset,
+ const Value* patch, ssize_t patch_offset,
unsigned char** new_data, ssize_t* new_size);
// imgpatch.c
int ApplyImagePatch(const unsigned char* old_data, ssize_t old_size,
- const char* patch_filename,
+ const Value* patch,
SinkFn sink, void* token, SHA_CTX* ctx);
// freecache.c