From ff04fa7c0bafb0b4c8caa18c6ac783195978e3b2 Mon Sep 17 00:00:00 2001 From: Koushik Dutta Date: Fri, 21 Nov 2014 12:39:37 -0800 Subject: [PATCH] Updates for new Widgets --- Superuser/AndroidManifest.xml | 4 ---- Superuser/Superuser-Superuser.iml | 36 +++++++++++++++++++++++------ Superuser/jni/su/daemon.c | 6 +++++ Superuser/jni/su/su.c | 12 ++++++---- Superuser/res/layout/log_item.xml | 4 ++-- Superuser/res/values-v14/dimens.xml | 2 -- Superuser/res/values-v16/styles.xml | 15 ------------ Superuser/res/values/styles.xml | 4 ++++ 8 files changed, 48 insertions(+), 35 deletions(-) delete mode 100644 Superuser/res/values-v14/dimens.xml delete mode 100644 Superuser/res/values-v16/styles.xml diff --git a/Superuser/AndroidManifest.xml b/Superuser/AndroidManifest.xml index 1adf1000..18dc2027 100644 --- a/Superuser/AndroidManifest.xml +++ b/Superuser/AndroidManifest.xml @@ -1,13 +1,9 @@ - - diff --git a/Superuser/Superuser-Superuser.iml b/Superuser/Superuser-Superuser.iml index 11ad0ec4..2ed1ea53 100644 --- a/Superuser/Superuser-Superuser.iml +++ b/Superuser/Superuser-Superuser.iml @@ -1,5 +1,5 @@ - + @@ -10,9 +10,10 @@ @@ -27,37 +28,58 @@ + + + - + - + - - + + + + + + + + + + + + + + + + + + + + - + diff --git a/Superuser/jni/su/daemon.c b/Superuser/jni/su/daemon.c index 9f75fff8..c75a5ea6 100644 --- a/Superuser/jni/su/daemon.c +++ b/Superuser/jni/su/daemon.c @@ -444,6 +444,9 @@ int run_daemon() { int previous_umask = umask(027); mkdir(REQUESTOR_DAEMON_PATH, 0777); + memset(sun.sun_path, 0, sizeof(sun.sun_path)); + memcpy(sun.sun_path, "\0" "SUPERUSER", strlen("SUPERUSER") + 1); + if (bind(fd, (struct sockaddr*)&sun, sizeof(sun)) < 0) { PLOGE("daemon bind"); goto err; @@ -551,6 +554,9 @@ int connect_daemon(int argc, char *argv[], int ppid) { sun.sun_family = AF_LOCAL; sprintf(sun.sun_path, "%s/server", REQUESTOR_DAEMON_PATH); + memset(sun.sun_path, 0, sizeof(sun.sun_path)); + memcpy(sun.sun_path, "\0" "SUPERUSER", strlen("SUPERUSER") + 1); + if (0 != connect(socketfd, (struct sockaddr*)&sun, sizeof(sun))) { PLOGE("connect"); exit(-1); diff --git a/Superuser/jni/su/su.c b/Superuser/jni/su/su.c index ee88065a..e16baff2 100644 --- a/Superuser/jni/su/su.c +++ b/Superuser/jni/su/su.c @@ -179,11 +179,13 @@ static int from_init(struct su_initiator *from) { /* If this isn't app_process, use the real path instead of argv[0] */ snprintf(path, sizeof(path), "/proc/%u/exe", from->pid); len = readlink(path, exe, sizeof(exe)); - if (len >= 0) { - exe[len] = '\0'; - if (strcmp(exe, "/system/bin/app_process")) { - argv0 = exe; - } + if (len < 0) { + PLOGE("Getting exe path"); + return -1; + } + exe[len] = '\0'; + if (strcmp(exe, "/system/bin/app_process")) { + argv0 = exe; } strncpy(from->bin, argv0, sizeof(from->bin)); diff --git a/Superuser/res/layout/log_item.xml b/Superuser/res/layout/log_item.xml index e2fc9c9f..73022f9d 100644 --- a/Superuser/res/layout/log_item.xml +++ b/Superuser/res/layout/log_item.xml @@ -3,8 +3,8 @@ android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" - android:paddingLeft="?attr/listPreferredItemPaddingLeft" - android:paddingRight="?attr/listPreferredItemPaddingRight" + android:paddingLeft="?attr/listPreferredItemPaddingLeft_" + android:paddingRight="?attr/listPreferredItemPaddingRight_" android:paddingBottom="@dimen/log_item_padding" android:paddingTop="@dimen/log_item_padding" > diff --git a/Superuser/res/values-v14/dimens.xml b/Superuser/res/values-v14/dimens.xml deleted file mode 100644 index e5f8fdc2..00000000 --- a/Superuser/res/values-v14/dimens.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/Superuser/res/values-v16/styles.xml b/Superuser/res/values-v16/styles.xml deleted file mode 100644 index 4005216d..00000000 --- a/Superuser/res/values-v16/styles.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - diff --git a/Superuser/res/values/styles.xml b/Superuser/res/values/styles.xml index 39ca7f2f..728da58b 100644 --- a/Superuser/res/values/styles.xml +++ b/Superuser/res/values/styles.xml @@ -35,6 +35,10 @@