Loading .gitignore 0 → 100644 +1 −0 Original line number Diff line number Diff line *~ adb/adb.c +22 −14 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ #include <errno.h> #include <string.h> #include <time.h> #include <sys/time.h> #include "sysdeps.h" #include "adb.h" Loading Loading @@ -657,10 +658,25 @@ void start_logging(void) void start_device_log(void) { int fd; char path[100]; char path[PATH_MAX]; struct tm now; time_t t; char value[PROPERTY_VALUE_MAX]; snprintf(path, sizeof path, "/data/adb_%ld.txt", (long)time(NULL)); fd = unix_open(path, O_WRONLY | O_CREAT | O_APPEND, 0640); // read the trace mask from persistent property persist.adb.trace_mask // give up if the property is not set or cannot be parsed property_get("persist.adb.trace_mask", value, ""); if (sscanf(value, "%x", &adb_trace_mask) != 1) return; adb_mkdir("/data/adb", 0775); tzset(); time(&t); localtime_r(&t, &now); strftime(path, sizeof(path), "/data/adb/adb-%Y-%m-%d-%H-%M-%S.txt", &now); fd = unix_open(path, O_WRONLY | O_CREAT | O_TRUNC, 0640); if (fd < 0) return; Loading @@ -671,11 +687,6 @@ void start_device_log(void) fd = unix_open("/dev/null", O_RDONLY); dup2(fd, 0); // log everything adb_trace_mask = ~0; // except TRACE_RWX is a bit too verbose adb_trace_mask &= ~TRACE_RWX; } #endif Loading Loading @@ -875,9 +886,10 @@ int adb_main(int is_daemon) ** AID_INET to diagnose network issues (netcfg, ping) ** AID_GRAPHICS to access the frame buffer ** AID_NET_BT and AID_NET_BT_ADMIN to diagnose bluetooth (hcidump) ** AID_SDCARD_RW to allow writing to the SD card */ gid_t groups[] = { AID_ADB, AID_LOG, AID_INPUT, AID_INET, AID_GRAPHICS, AID_NET_BT, AID_NET_BT_ADMIN }; AID_NET_BT, AID_NET_BT_ADMIN, AID_SDCARD_RW }; setgroups(sizeof(groups)/sizeof(groups[0]), groups); /* then switch user and group to "shell" */ Loading Loading @@ -919,9 +931,6 @@ int adb_main(int is_daemon) fdevent_loop(); usb_cleanup(); #if ADB_HOST usb_vendors_cleanup(); #endif return 0; } Loading Loading @@ -1081,9 +1090,8 @@ int main(int argc, char **argv) adb_device_banner = "recovery"; recovery_mode = 1; } #if ADB_DEVICE_LOG start_device_log(); #endif return adb_main(0); #endif } adb/adb.h +3 −9 Original line number Diff line number Diff line Loading @@ -345,11 +345,6 @@ typedef enum { #endif /* set this to log to /data/adb/adb_<time>.txt on the device. * has no effect if the /data/adb/ directory does not exist. */ #define ADB_DEVICE_LOG 0 #if !TRACE_PACKETS #define print_packet(tag,p) do {} while (0) #endif Loading @@ -357,11 +352,10 @@ typedef enum { #define ADB_PORT 5037 #define ADB_LOCAL_TRANSPORT_PORT 5555 // Google's USB Vendor ID #define VENDOR_ID_GOOGLE 0x18d1 #define ADB_CLASS 0xff #define ADB_SUBCLASS 0x42 #define ADB_PROTOCOL 0x1 // HTC's USB Vendor ID #define VENDOR_ID_HTC 0x0bb4 void local_init(); int local_connect(int port); Loading adb/adb_client.c +1 −1 Original line number Diff line number Diff line Loading @@ -213,7 +213,7 @@ int adb_connect(const char *service) fprintf(stdout,"* daemon started successfully *\n"); } /* give the server some time to start properly and detect devices */ adb_sleep_ms(2000); adb_sleep_ms(3000); // fall through to _adb_connect } else { // if server was running, check its version to make sure it is not out of date Loading adb/transport_usb.c +3 −5 Original line number Diff line number Diff line Loading @@ -135,12 +135,10 @@ int is_adb_interface(int vid, int pid, int usb_class, int usb_subclass, int usb_ unsigned i; for (i = 0; i < vendorIdCount; i++) { if (vid == vendorIds[i]) { /* class:vendor (0xff) subclass:android (0x42) proto:adb (0x01) */ if(usb_class == 0xff) { if((usb_subclass == 0x42) && (usb_protocol == 0x01)) { if (usb_class == ADB_CLASS && usb_subclass == ADB_SUBCLASS && usb_protocol == ADB_PROTOCOL) { return 1; } } return 0; } Loading Loading
adb/adb.c +22 −14 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ #include <errno.h> #include <string.h> #include <time.h> #include <sys/time.h> #include "sysdeps.h" #include "adb.h" Loading Loading @@ -657,10 +658,25 @@ void start_logging(void) void start_device_log(void) { int fd; char path[100]; char path[PATH_MAX]; struct tm now; time_t t; char value[PROPERTY_VALUE_MAX]; snprintf(path, sizeof path, "/data/adb_%ld.txt", (long)time(NULL)); fd = unix_open(path, O_WRONLY | O_CREAT | O_APPEND, 0640); // read the trace mask from persistent property persist.adb.trace_mask // give up if the property is not set or cannot be parsed property_get("persist.adb.trace_mask", value, ""); if (sscanf(value, "%x", &adb_trace_mask) != 1) return; adb_mkdir("/data/adb", 0775); tzset(); time(&t); localtime_r(&t, &now); strftime(path, sizeof(path), "/data/adb/adb-%Y-%m-%d-%H-%M-%S.txt", &now); fd = unix_open(path, O_WRONLY | O_CREAT | O_TRUNC, 0640); if (fd < 0) return; Loading @@ -671,11 +687,6 @@ void start_device_log(void) fd = unix_open("/dev/null", O_RDONLY); dup2(fd, 0); // log everything adb_trace_mask = ~0; // except TRACE_RWX is a bit too verbose adb_trace_mask &= ~TRACE_RWX; } #endif Loading Loading @@ -875,9 +886,10 @@ int adb_main(int is_daemon) ** AID_INET to diagnose network issues (netcfg, ping) ** AID_GRAPHICS to access the frame buffer ** AID_NET_BT and AID_NET_BT_ADMIN to diagnose bluetooth (hcidump) ** AID_SDCARD_RW to allow writing to the SD card */ gid_t groups[] = { AID_ADB, AID_LOG, AID_INPUT, AID_INET, AID_GRAPHICS, AID_NET_BT, AID_NET_BT_ADMIN }; AID_NET_BT, AID_NET_BT_ADMIN, AID_SDCARD_RW }; setgroups(sizeof(groups)/sizeof(groups[0]), groups); /* then switch user and group to "shell" */ Loading Loading @@ -919,9 +931,6 @@ int adb_main(int is_daemon) fdevent_loop(); usb_cleanup(); #if ADB_HOST usb_vendors_cleanup(); #endif return 0; } Loading Loading @@ -1081,9 +1090,8 @@ int main(int argc, char **argv) adb_device_banner = "recovery"; recovery_mode = 1; } #if ADB_DEVICE_LOG start_device_log(); #endif return adb_main(0); #endif }
adb/adb.h +3 −9 Original line number Diff line number Diff line Loading @@ -345,11 +345,6 @@ typedef enum { #endif /* set this to log to /data/adb/adb_<time>.txt on the device. * has no effect if the /data/adb/ directory does not exist. */ #define ADB_DEVICE_LOG 0 #if !TRACE_PACKETS #define print_packet(tag,p) do {} while (0) #endif Loading @@ -357,11 +352,10 @@ typedef enum { #define ADB_PORT 5037 #define ADB_LOCAL_TRANSPORT_PORT 5555 // Google's USB Vendor ID #define VENDOR_ID_GOOGLE 0x18d1 #define ADB_CLASS 0xff #define ADB_SUBCLASS 0x42 #define ADB_PROTOCOL 0x1 // HTC's USB Vendor ID #define VENDOR_ID_HTC 0x0bb4 void local_init(); int local_connect(int port); Loading
adb/adb_client.c +1 −1 Original line number Diff line number Diff line Loading @@ -213,7 +213,7 @@ int adb_connect(const char *service) fprintf(stdout,"* daemon started successfully *\n"); } /* give the server some time to start properly and detect devices */ adb_sleep_ms(2000); adb_sleep_ms(3000); // fall through to _adb_connect } else { // if server was running, check its version to make sure it is not out of date Loading
adb/transport_usb.c +3 −5 Original line number Diff line number Diff line Loading @@ -135,12 +135,10 @@ int is_adb_interface(int vid, int pid, int usb_class, int usb_subclass, int usb_ unsigned i; for (i = 0; i < vendorIdCount; i++) { if (vid == vendorIds[i]) { /* class:vendor (0xff) subclass:android (0x42) proto:adb (0x01) */ if(usb_class == 0xff) { if((usb_subclass == 0x42) && (usb_protocol == 0x01)) { if (usb_class == ADB_CLASS && usb_subclass == ADB_SUBCLASS && usb_protocol == ADB_PROTOCOL) { return 1; } } return 0; } Loading