Add `adb features`.
Shows the features supported by the active adb server.
Change-Id: I4a58a2ca082823c43f7a49e2c62ff80df6426756
diff --git a/adb/adb.cpp b/adb/adb.cpp
index 180954b..29c9481 100644
--- a/adb/adb.cpp
+++ b/adb/adb.cpp
@@ -956,6 +956,13 @@
return 1;
}
+ if (!strcmp(service, "features")) {
+ SendOkay(reply_fd);
+ SendProtocolString(
+ reply_fd, android::base::Join(supported_features(), '\n'));
+ return 0;
+ }
+
// remove TCP transport
if (!strncmp(service, "disconnect:", 11)) {
const std::string address(service + 11);
diff --git a/adb/commandline.cpp b/adb/commandline.cpp
index 1c5b5bd..c7b7675 100644
--- a/adb/commandline.cpp
+++ b/adb/commandline.cpp
@@ -1460,6 +1460,9 @@
fprintf(stdout, "%s", adb_version().c_str());
return 0;
}
+ else if (!strcmp(argv[0], "features")) {
+ return adb_query_command("host:features");
+ }
usage();
return 1;