Move minadb over to new API.
Change-Id: I889bcf2222245c7665287513669cae8831e37081
This commit is contained in:
parent
34c7731a0b
commit
4039933c62
2 changed files with 10 additions and 14 deletions
|
@ -20,6 +20,7 @@ LOCAL_CFLAGS := $(minadbd_cflags)
|
|||
LOCAL_CONLY_FLAGS := -Wimplicit-function-declaration
|
||||
LOCAL_C_INCLUDES := bootable/recovery system/core/adb
|
||||
LOCAL_WHOLE_STATIC_LIBRARIES := libadbd
|
||||
LOCAL_STATIC_LIBRARIES := libbase
|
||||
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
|
@ -31,6 +32,6 @@ LOCAL_SRC_FILES := fuse_adb_provider_test.cpp
|
|||
LOCAL_CFLAGS := $(minadbd_cflags)
|
||||
LOCAL_C_INCLUDES := $(LOCAL_PATH) system/core/adb
|
||||
LOCAL_STATIC_LIBRARIES := libminadbd
|
||||
LOCAL_SHARED_LIBRARIES := liblog
|
||||
LOCAL_SHARED_LIBRARIES := liblog libbase
|
||||
|
||||
include $(BUILD_NATIVE_TEST)
|
||||
|
|
|
@ -26,13 +26,10 @@
|
|||
#include "fuse_adb_provider.h"
|
||||
#include "fuse_sideload.h"
|
||||
|
||||
int read_block_adb(void* cookie, uint32_t block, uint8_t* buffer,
|
||||
uint32_t fetch_size) {
|
||||
struct adb_data* ad = (struct adb_data*)cookie;
|
||||
int read_block_adb(void* data, uint32_t block, uint8_t* buffer, uint32_t fetch_size) {
|
||||
adb_data* ad = reinterpret_cast<adb_data*>(data);
|
||||
|
||||
char buf[10];
|
||||
snprintf(buf, sizeof(buf), "%08u", block);
|
||||
if (!WriteStringFully(ad->sfd, buf)) {
|
||||
if (!WriteFdFmt(ad->sfd, "%08u", block)) {
|
||||
fprintf(stderr, "failed to write to adb host: %s\n", strerror(errno));
|
||||
return -EIO;
|
||||
}
|
||||
|
@ -45,20 +42,18 @@ int read_block_adb(void* cookie, uint32_t block, uint8_t* buffer,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void close_adb(void* cookie) {
|
||||
struct adb_data* ad = (struct adb_data*)cookie;
|
||||
|
||||
WriteStringFully(ad->sfd, "DONEDONE");
|
||||
static void close_adb(void* data) {
|
||||
adb_data* ad = reinterpret_cast<adb_data*>(data);
|
||||
WriteFdExactly(ad->sfd, "DONEDONE");
|
||||
}
|
||||
|
||||
int run_adb_fuse(int sfd, uint64_t file_size, uint32_t block_size) {
|
||||
struct adb_data ad;
|
||||
struct provider_vtab vtab;
|
||||
|
||||
adb_data ad;
|
||||
ad.sfd = sfd;
|
||||
ad.file_size = file_size;
|
||||
ad.block_size = block_size;
|
||||
|
||||
provider_vtab vtab;
|
||||
vtab.read_block = read_block_adb;
|
||||
vtab.close = close_adb;
|
||||
|
||||
|
|
Loading…
Reference in a new issue