Loading adb/adb.c +1 −2 Original line number Diff line number Diff line Loading @@ -1347,12 +1347,11 @@ int adb_main(int is_daemon, int server_port) ** AID_NET_BT and AID_NET_BT_ADMIN to diagnose bluetooth (hcidump) ** AID_SDCARD_R to allow reading from the SD card ** AID_SDCARD_RW to allow writing to the SD card ** AID_MOUNT to allow unmounting the SD card before rebooting ** AID_NET_BW_STATS to read out qtaguid statistics */ gid_t groups[] = { AID_ADB, AID_LOG, AID_INPUT, AID_INET, AID_GRAPHICS, AID_NET_BT, AID_NET_BT_ADMIN, AID_SDCARD_R, AID_SDCARD_RW, AID_MOUNT, AID_NET_BW_STATS }; AID_NET_BW_STATS }; if (setgroups(sizeof(groups)/sizeof(groups[0]), groups) != 0) { exit(1); } Loading adb/services.c +1 −14 Original line number Diff line number Diff line Loading @@ -116,23 +116,10 @@ void reboot_service(int fd, void *arg) { char buf[100]; char property_val[PROPERTY_VALUE_MAX]; int pid, ret; int ret; sync(); /* Attempt to unmount the SD card first. * No need to bother checking for errors. */ pid = fork(); if (pid == 0) { /* ask vdc to unmount it */ execl("/system/bin/vdc", "/system/bin/vdc", "volume", "unmount", getenv("EXTERNAL_STORAGE"), "force", NULL); } else if (pid > 0) { /* wait until vdc succeeds or fails */ waitpid(pid, &ret, 0); } ret = snprintf(property_val, sizeof(property_val), "reboot,%s", (char *) arg); if (ret >= (int) sizeof(property_val)) { snprintf(buf, sizeof(buf), "reboot string too long. length=%d\n", ret); Loading rootdir/init.rc +15 −1 Original line number Diff line number Diff line Loading @@ -144,6 +144,11 @@ loglevel 3 # checker programs. mkdir /dev/fscklogs 0770 root system # pstore/ramoops previous console log mount pstore pstore /sys/fs/pstore chown system log /sys/fs/pstore/console-ramoops chmod 0440 /sys/fs/pstore/console-ramoops on post-fs # once everything is setup, no need to modify / mount rootfs rootfs / ro remount Loading Loading @@ -381,6 +386,9 @@ on boot setprop net.tcp.buffersize.gprs 4092,8760,48000,4096,8760,48000 setprop net.tcp.buffersize.evdo 4094,87380,262144,4096,16384,262144 # Define default initial receive window size in segments. setprop net.tcp.default_init_rwnd 60 class_start core class_start main Loading Loading @@ -413,9 +421,15 @@ on property:vold.decrypt=trigger_shutdown_framework on property:sys.powerctl=* powerctl ${sys.powerctl} # system server cannot write to /proc/sys files, so proxy it through init # system server cannot write to /proc/sys files, # and chown/chmod does not work for /proc/sys/ entries. # So proxy writes through init. on property:sys.sysctl.extra_free_kbytes=* write /proc/sys/vm/extra_free_kbytes ${sys.sysctl.extra_free_kbytes} # "tcp_default_init_rwnd" Is too long! on property:sys.sysctl.tcp_def_init_rwnd=* write /proc/sys/net/ipv4/tcp_default_init_rwnd ${sys.sysctl.tcp_def_init_rwnd} ## Daemon processes to be run by init. ## Loading Loading
adb/adb.c +1 −2 Original line number Diff line number Diff line Loading @@ -1347,12 +1347,11 @@ int adb_main(int is_daemon, int server_port) ** AID_NET_BT and AID_NET_BT_ADMIN to diagnose bluetooth (hcidump) ** AID_SDCARD_R to allow reading from the SD card ** AID_SDCARD_RW to allow writing to the SD card ** AID_MOUNT to allow unmounting the SD card before rebooting ** AID_NET_BW_STATS to read out qtaguid statistics */ gid_t groups[] = { AID_ADB, AID_LOG, AID_INPUT, AID_INET, AID_GRAPHICS, AID_NET_BT, AID_NET_BT_ADMIN, AID_SDCARD_R, AID_SDCARD_RW, AID_MOUNT, AID_NET_BW_STATS }; AID_NET_BW_STATS }; if (setgroups(sizeof(groups)/sizeof(groups[0]), groups) != 0) { exit(1); } Loading
adb/services.c +1 −14 Original line number Diff line number Diff line Loading @@ -116,23 +116,10 @@ void reboot_service(int fd, void *arg) { char buf[100]; char property_val[PROPERTY_VALUE_MAX]; int pid, ret; int ret; sync(); /* Attempt to unmount the SD card first. * No need to bother checking for errors. */ pid = fork(); if (pid == 0) { /* ask vdc to unmount it */ execl("/system/bin/vdc", "/system/bin/vdc", "volume", "unmount", getenv("EXTERNAL_STORAGE"), "force", NULL); } else if (pid > 0) { /* wait until vdc succeeds or fails */ waitpid(pid, &ret, 0); } ret = snprintf(property_val, sizeof(property_val), "reboot,%s", (char *) arg); if (ret >= (int) sizeof(property_val)) { snprintf(buf, sizeof(buf), "reboot string too long. length=%d\n", ret); Loading
rootdir/init.rc +15 −1 Original line number Diff line number Diff line Loading @@ -144,6 +144,11 @@ loglevel 3 # checker programs. mkdir /dev/fscklogs 0770 root system # pstore/ramoops previous console log mount pstore pstore /sys/fs/pstore chown system log /sys/fs/pstore/console-ramoops chmod 0440 /sys/fs/pstore/console-ramoops on post-fs # once everything is setup, no need to modify / mount rootfs rootfs / ro remount Loading Loading @@ -381,6 +386,9 @@ on boot setprop net.tcp.buffersize.gprs 4092,8760,48000,4096,8760,48000 setprop net.tcp.buffersize.evdo 4094,87380,262144,4096,16384,262144 # Define default initial receive window size in segments. setprop net.tcp.default_init_rwnd 60 class_start core class_start main Loading Loading @@ -413,9 +421,15 @@ on property:vold.decrypt=trigger_shutdown_framework on property:sys.powerctl=* powerctl ${sys.powerctl} # system server cannot write to /proc/sys files, so proxy it through init # system server cannot write to /proc/sys files, # and chown/chmod does not work for /proc/sys/ entries. # So proxy writes through init. on property:sys.sysctl.extra_free_kbytes=* write /proc/sys/vm/extra_free_kbytes ${sys.sysctl.extra_free_kbytes} # "tcp_default_init_rwnd" Is too long! on property:sys.sysctl.tcp_def_init_rwnd=* write /proc/sys/net/ipv4/tcp_default_init_rwnd ${sys.sysctl.tcp_def_init_rwnd} ## Daemon processes to be run by init. ## Loading