Merge "Let users with SYSTEM permission set debug. properties" into jb-dev
diff --git a/adb/commandline.c b/adb/commandline.c
index 7af8163..47c9bec 100644
--- a/adb/commandline.c
+++ b/adb/commandline.c
@@ -120,10 +120,12 @@
" dev:<character device name>\n"
" jdwp:<process pid> (remote only)\n"
" adb jdwp - list PIDs of processes hosting a JDWP transport\n"
- " adb install [-l] [-r] [-s] <file> - push this package file to the device and install it\n"
+ " adb install [-l] [-r] [-s] [--algo <algorithm name> --key <hex-encoded key> --iv <hex-encoded iv>] <file>\n"
+ " - push this package file to the device and install it\n"
" ('-l' means forward-lock the app)\n"
" ('-r' means reinstall the app, keeping its data)\n"
" ('-s' means install on SD card instead of internal storage)\n"
+ " ('--algo', '--key', and '--iv' mean the file is encrypted already)\n"
" adb uninstall [-k] <package> - remove this app package from the device\n"
" ('-k' means keep the data and cache directories)\n"
" adb bugreport - return all information from the device\n"
@@ -1532,6 +1534,7 @@
int file_arg = -1;
int err;
int i;
+ int verify_apk = 1;
for (i = 1; i < argc; i++) {
if (*argv[i] != '-') {
@@ -1542,6 +1545,15 @@
i++;
} else if (!strcmp(argv[i], "-s")) {
where = SD_DEST;
+ } else if (!strcmp(argv[i], "--algo")) {
+ verify_apk = 0;
+ i++;
+ } else if (!strcmp(argv[i], "--iv")) {
+ verify_apk = 0;
+ i++;
+ } else if (!strcmp(argv[i], "--key")) {
+ verify_apk = 0;
+ i++;
}
}
@@ -1573,7 +1585,7 @@
}
}
- err = do_sync_push(apk_file, apk_dest, 1 /* verify APK */);
+ err = do_sync_push(apk_file, apk_dest, verify_apk);
if (err) {
goto cleanup_apk;
} else {
diff --git a/include/sysutils/NetlinkEvent.h b/include/sysutils/NetlinkEvent.h
index 3494a9c..25a56f7 100644
--- a/include/sysutils/NetlinkEvent.h
+++ b/include/sysutils/NetlinkEvent.h
@@ -34,8 +34,6 @@
const static int NlActionChange;
const static int NlActionLinkDown;
const static int NlActionLinkUp;
- const static int NlActionIfaceActive;
- const static int NlActionIfaceIdle;
NetlinkEvent();
virtual ~NetlinkEvent();
diff --git a/libsysutils/src/NetlinkEvent.cpp b/libsysutils/src/NetlinkEvent.cpp
index 6439711..4beebb7 100644
--- a/libsysutils/src/NetlinkEvent.cpp
+++ b/libsysutils/src/NetlinkEvent.cpp
@@ -25,7 +25,6 @@
#include <sys/socket.h>
#include <linux/if.h>
#include <linux/netfilter/nfnetlink.h>
-#include <linux/netfilter/xt_IDLETIMER.h>
#include <linux/netfilter_ipv4/ipt_ULOG.h>
/* From kernel's net/netfilter/xt_quota2.c */
const int QLOG_NL_EVENT = 112;
@@ -39,8 +38,6 @@
const int NetlinkEvent::NlActionChange = 3;
const int NetlinkEvent::NlActionLinkUp = 4;
const int NetlinkEvent::NlActionLinkDown = 5;
-const int NetlinkEvent::NlActionIfaceActive = 6;
-const int NetlinkEvent::NlActionIfaceIdle = 7;
NetlinkEvent::NetlinkEvent() {
mAction = NlActionUnknown;
@@ -73,8 +70,7 @@
}
/*
- * Parse an binary message from a NETLINK_ROUTE netlink socket
- * and IDLETIMER netlink socket.
+ * Parse an binary message from a NETLINK_ROUTE netlink socket.
*/
bool NetlinkEvent::parseBinaryNetlinkMessage(char *buffer, int size) {
size_t sz = size;
@@ -131,14 +127,6 @@
mSubsystem = strdup("qlog");
mAction = NlActionChange;
- } else if (nh->nlmsg_type == NL_EVENT_TYPE_ACTIVE
- || nh->nlmsg_type == NL_EVENT_TYPE_INACTIVE) {
- char *ifacename;
- ifacename = (char *)NLMSG_DATA(nh);
- asprintf(&mParams[0], "INTERFACE=%s", ifacename);
- mSubsystem = strdup("idletimer");
- mAction = (nh->nlmsg_type == NL_EVENT_TYPE_ACTIVE) ?
- NlActionIfaceActive : NlActionIfaceIdle;
} else {
SLOGD("Unexpected netlink message. type=0x%x\n", nh->nlmsg_type);
}
diff --git a/rootdir/init.rc b/rootdir/init.rc
index d00cbe4..48a5f25 100644
--- a/rootdir/init.rc
+++ b/rootdir/init.rc
@@ -272,6 +272,8 @@
chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load
chown system system /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay
chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay
+ chown system system /sys/devices/system/cpu/cpufreq/interactive/boost
+ chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/boost
# Assume SMP uses shared cpufreq policy for all CPUs
chown system system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq