#include <cutils/sockets.h>
#include <sys/capability.h>
#include <sys/prctl.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+ #include <libril/ril_ex.h>
#include <private/android_filesystem_config.h>
#include "hardware/qemu_pipe.h"
extern void RIL_register (const RIL_RadioFunctions *callbacks);
+ extern void RIL_register_socket (RIL_RadioFunctions *(*rilUimInit)
+ (const struct RIL_Env *, int, char **), RIL_SOCKET_TYPE socketType, int argc, char **argv);
+
extern void RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
- void *response, size_t responselen);
+ void *response, size_t responselen);
+extern void RIL_setRilSocketName(char *);
#if defined(ANDROID_MULTI_SIM)
extern void RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
RLOGE("capset failed: %s", strerror(errno));
exit(EXIT_FAILURE);
}
+
+ /*
+ * Debuggable build only:
+ * Set DUMPABLE that was cleared by setuid() to have tombstone on RIL crash
+ */
+ property_get("ro.debuggable", debuggable, "0");
+ if (strcmp(debuggable, "1") == 0) {
+ prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
+ }
}
- int main(int argc, char **argv)
- {
+ int main(int argc, char **argv) {
const char * rilLibPath = NULL;
char **rilArgv;
void *dlHandle;