summaryrefslogtreecommitdiffstats
path: root/fuse_sideload.h
diff options
context:
space:
mode:
authorTao Bao <tbao@google.com>2017-11-04 15:27:48 +0100
committerGerrit Code Review <noreply-gerritcodereview@google.com>2017-11-04 15:27:48 +0100
commit73dca3e983d5ec2eaf01572eac57dbdb55367f22 (patch)
tree4625b6af91d462a53bf530c5c6d4b2853b88cb59 /fuse_sideload.h
parentMerge "recovery: remove make_ext4fs from updater" (diff)
parentClean up fuse_sideload and add a testcase. (diff)
downloadandroid_bootable_recovery-73dca3e983d5ec2eaf01572eac57dbdb55367f22.tar
android_bootable_recovery-73dca3e983d5ec2eaf01572eac57dbdb55367f22.tar.gz
android_bootable_recovery-73dca3e983d5ec2eaf01572eac57dbdb55367f22.tar.bz2
android_bootable_recovery-73dca3e983d5ec2eaf01572eac57dbdb55367f22.tar.lz
android_bootable_recovery-73dca3e983d5ec2eaf01572eac57dbdb55367f22.tar.xz
android_bootable_recovery-73dca3e983d5ec2eaf01572eac57dbdb55367f22.tar.zst
android_bootable_recovery-73dca3e983d5ec2eaf01572eac57dbdb55367f22.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