summaryrefslogtreecommitdiffstats
path: root/fuse_sideload.h
diff options
context:
space:
mode:
authorTao Bao <tbao@google.com>2017-11-04 15:36:28 +0100
committerandroid-build-merger <android-build-merger@google.com>2017-11-04 15:36:28 +0100
commit4d9ce1aa502c625e101cd91fe9b26aa8bfb2d26f (patch)
tree404792948fef70fb486d4bf8a28635c26355cc32 /fuse_sideload.h
parentMerge "recovery: remove make_ext4fs from updater" am: 3f06512714 am: 59b20d6565 (diff)
parentMerge "Clean up fuse_sideload and add a testcase." am: 73dca3e983 (diff)
downloadandroid_bootable_recovery-4d9ce1aa502c625e101cd91fe9b26aa8bfb2d26f.tar
android_bootable_recovery-4d9ce1aa502c625e101cd91fe9b26aa8bfb2d26f.tar.gz
android_bootable_recovery-4d9ce1aa502c625e101cd91fe9b26aa8bfb2d26f.tar.bz2
android_bootable_recovery-4d9ce1aa502c625e101cd91fe9b26aa8bfb2d26f.tar.lz
android_bootable_recovery-4d9ce1aa502c625e101cd91fe9b26aa8bfb2d26f.tar.xz
android_bootable_recovery-4d9ce1aa502c625e101cd91fe9b26aa8bfb2d26f.tar.zst
android_bootable_recovery-4d9ce1aa502c625e101cd91fe9b26aa8bfb2d26f.zip
Diffstat (limited to 'fuse_sideload.h')
-rw-r--r--fuse_sideload.h26
1 files changed, 14 insertions, 12 deletions
diff --git a/fuse_sideload.h b/fuse_sideload.h
index c0b16efbe..1b34cbdb0 100644
--- a/fuse_sideload.h
+++ b/fuse_sideload.h
@@ -17,22 +17,24 @@
#ifndef __FUSE_SIDELOAD_H
#define __FUSE_SIDELOAD_H
-// define the filenames created by the sideload FUSE filesystem
-#define FUSE_SIDELOAD_HOST_MOUNTPOINT "/sideload"
-#define FUSE_SIDELOAD_HOST_FILENAME "package.zip"
-#define FUSE_SIDELOAD_HOST_PATHNAME (FUSE_SIDELOAD_HOST_MOUNTPOINT "/" FUSE_SIDELOAD_HOST_FILENAME)
-#define FUSE_SIDELOAD_HOST_EXIT_FLAG "exit"
-#define FUSE_SIDELOAD_HOST_EXIT_PATHNAME (FUSE_SIDELOAD_HOST_MOUNTPOINT "/" FUSE_SIDELOAD_HOST_EXIT_FLAG)
+#include <functional>
+
+// Define the filenames created by the sideload FUSE filesystem.
+static constexpr const char* FUSE_SIDELOAD_HOST_MOUNTPOINT = "/sideload";
+static constexpr const char* FUSE_SIDELOAD_HOST_FILENAME = "package.zip";
+static constexpr const char* FUSE_SIDELOAD_HOST_PATHNAME = "/sideload/package.zip";
+static constexpr const char* FUSE_SIDELOAD_HOST_EXIT_FLAG = "exit";
+static constexpr const char* FUSE_SIDELOAD_HOST_EXIT_PATHNAME = "/sideload/exit";
struct provider_vtab {
- // read a block
- int (*read_block)(void* cookie, uint32_t block, uint8_t* buffer, uint32_t fetch_size);
+ // read a block
+ std::function<int(uint32_t block, uint8_t* buffer, uint32_t fetch_size)> read_block;
- // close down
- void (*close)(void* cookie);
+ // close down
+ std::function<void(void)> close;
};
-int run_fuse_sideload(struct provider_vtab* vtab, void* cookie,
- uint64_t file_size, uint32_t block_size);
+int run_fuse_sideload(const provider_vtab& vtab, uint64_t file_size, uint32_t block_size,
+ const char* mount_point = FUSE_SIDELOAD_HOST_MOUNTPOINT);
#endif