adb未授权,无法连接问题的解决措施

    xiaoxiao2021-12-01  160

    本例是解决ffbm模式 adb未授权,无法连接的问,其他情况类似,做个记录做备忘

    原理:

    如果是ffbm模式启动,则函数 int adb_auth_verify(uint8_t* token, uint8_t* sig, int siglen) 直接返回1

    路径:system/core/adb/adb_auth_client.cpp

    commit dd9ea32488c4064fd958019de1ae825d5bbfa038

    Author: xxx <xxx@localhost> Date:   Tue Nov 15 20:23:00 2016 +0800     user版本ffbm模式 adb未授权,无法连接          Change-Id: I1f847ab4bfe76eaef82e10bebf1e3d1dbcbe7848 diff --git a/system/core/adb/adb_auth_client.cpp b/system/core/adb/adb_auth_client.cpp index 8e7d38be..1ec4339 100644 --- a/system/core/adb/adb_auth_client.cpp +++ b/system/core/adb/adb_auth_client.cpp @@ -32,6 +32,8 @@  #include "fdevent.h"  #include "transport.h"   +#include "cutils/properties.h" +  struct adb_public_key {      struct listnode node;      RSAPublicKey key; @@ -43,6 +45,13 @@ static const char *key_paths[] = {      NULL  };   +static const char *ffbm_boot_mode_string[] = { +    "ffbm-00", +    "ffbm-01", +    "ffbm-02" +}; + +  static fdevent listener_fde;  static int framework_fd = -1;   @@ -143,6 +152,19 @@ int adb_auth_verify(uint8_t* token, uint8_t* sig, int siglen)      struct listnode *item;      struct listnode key_list;      int ret = 0; + +//jimbo add start for ffbm adb connect +    char boot_mode[PROPERTY_VALUE_MAX] = { 0 }; +    unsigned long i = 0; + +   /**Get mode from misc boot mode,overwrite the config file mode*/ +    property_get("ro.bootmode", boot_mode, "normal"); +    for(i = 0; i < sizeof(ffbm_boot_mode_string) / sizeof(char *); i++) { +        if(!strcmp(ffbm_boot_mode_string[i], boot_mode)) { +            return 1; +        } +    } +//jimbo add end        if (siglen != RSANUMBYTES)          return 0;
    转载请注明原文地址: https://ju.6miu.com/read-679305.html

    最新回复(0)