summaryrefslogtreecommitdiffstats
path: root/rild
diff options
context:
space:
mode:
authorDavid Turner <digit@google.com>2016-06-23 09:51:02 +0000
committerandroid-build-merger <android-build-merger@google.com>2016-06-23 09:51:02 +0000
commitfee63df3d23280da60243e94f3ab084eeca1d38e (patch)
treef91b0dbc659dd34235f0a42a6743bb552d800c3f /rild
parent3b9ec9bb3cf508319a5e01815b37e97817eba92e (diff)
parent5d6ef9767220a4f2cd4a9a62fb79c287725bc0f5 (diff)
downloadandroid_hardware_ril-fee63df3d23280da60243e94f3ab084eeca1d38e.tar.gz
android_hardware_ril-fee63df3d23280da60243e94f3ab084eeca1d38e.tar.bz2
android_hardware_ril-fee63df3d23280da60243e94f3ab084eeca1d38e.zip
resolve merge conflicts of d027477 to nyc-mr1-dev-plus-aosp
am: 5d6ef97672 Change-Id: Id8844f27c56acd111a975d7a74153b5289281bb8
Diffstat (limited to 'rild')
-rw-r--r--rild/rild.c121
1 files changed, 0 insertions, 121 deletions
diff --git a/rild/rild.c b/rild/rild.c
index f425379..7bd525f 100644
--- a/rild/rild.c
+++ b/rild/rild.c
@@ -37,7 +37,6 @@
#include <libril/ril_ex.h>
#include <private/android_filesystem_config.h>
-#include <system/qemu_pipe.h>
#define LIB_PATH_PROPERTY "rild.libpath"
#define LIB_ARGS_PROPERTY "rild.libargs"
@@ -177,126 +176,6 @@ int main(int argc, char **argv) {
}
}
- /* special override when in the emulator */
-#if 1
- {
- static char* arg_overrides[5];
- static char arg_device[32];
- int done = 0;
-
-#define REFERENCE_RIL_PATH "libreference-ril.so"
-
- /* first, read /proc/cmdline into memory */
- char buffer[2048] = {'\0'}, *p, *q;
- int len;
- struct stat st;
- int fd = open("/proc/cmdline",O_RDONLY);
-
- if (fd < 0) {
- RLOGE("could not open /proc/cmdline:%s", strerror(errno));
- goto OpenLib;
- }
-
- if (fstat(fd, &st)) {
- RLOGE("fstat error: %s", strerror(errno));
- close(fd);
- goto OpenLib;
- }
-
- if (st.st_size > sizeof(buffer) - 1) {
- RLOGE("Size of /proc/cmdline exceeds buffer");
- close(fd);
- goto OpenLib;
- }
-
- do {
- len = read(fd,buffer,sizeof(buffer) - 1); }
- while (len == -1 && errno == EINTR);
-
- if (len < 0) {
- RLOGE("could not read /proc/cmdline:%s", strerror(errno));
- close(fd);
- goto OpenLib;
- }
- close(fd);
-
- if (strstr(buffer, "android.qemud=") != NULL)
- {
- /* the qemud daemon is launched after rild, so
- * give it some time to create its GSM socket
- */
- int tries = 5;
-#define QEMUD_SOCKET_NAME "qemud"
-
- while (1) {
- int fd;
-
- sleep(1);
-
- fd = qemu_pipe_open("pipe:qemud:gsm");
- if (fd < 0) {
- fd = socket_local_client(
- QEMUD_SOCKET_NAME,
- ANDROID_SOCKET_NAMESPACE_RESERVED,
- SOCK_STREAM );
- }
- if (fd >= 0) {
- close(fd);
- snprintf( arg_device, sizeof(arg_device), "%s/%s",
- ANDROID_SOCKET_DIR, QEMUD_SOCKET_NAME );
-
- arg_overrides[1] = "-s";
- arg_overrides[2] = arg_device;
- done = 1;
- break;
- }
- RLOGD("could not connect to %s socket: %s",
- QEMUD_SOCKET_NAME, strerror(errno));
- if (--tries == 0)
- break;
- }
- if (!done) {
- RLOGE("could not connect to %s socket (giving up): %s",
- QEMUD_SOCKET_NAME, strerror(errno));
- while(1)
- sleep(0x00ffffff);
- }
- }
-
- /* otherwise, try to see if we passed a device name from the kernel */
- if (!done) do {
-#define KERNEL_OPTION "android.ril="
-#define DEV_PREFIX "/dev/"
-
- p = strstr( buffer, KERNEL_OPTION );
- if (p == NULL)
- break;
-
- p += sizeof(KERNEL_OPTION)-1;
- q = strpbrk( p, " \t\n\r" );
- if (q != NULL)
- *q = 0;
-
- snprintf( arg_device, sizeof(arg_device), DEV_PREFIX "%s", p );
- arg_device[sizeof(arg_device)-1] = 0;
- arg_overrides[1] = "-d";
- arg_overrides[2] = arg_device;
- done = 1;
-
- } while (0);
-
- if (done) {
- argv = arg_overrides;
- argc = 3;
- i = 1;
- hasLibArgs = 1;
- rilLibPath = REFERENCE_RIL_PATH;
-
- RLOGD("overriding with %s %s", arg_overrides[1], arg_overrides[2]);
- }
- }
-OpenLib:
-#endif
switchUser();
dlHandle = dlopen(rilLibPath, RTLD_NOW);